载入中...
搜索中...
未找到
PcgBiomeController.cpp
浏览该文件的文档.
7bool finiteBounds(double minX, double minY, double minZ, double sizeX, double sizeY, double sizeZ) {
8 return std::isfinite(minX) && std::isfinite(minY) && std::isfinite(minZ) && std::isfinite(sizeX) &&
28 return Result<void>::failure(Diagnostic::error(DiagnosticCode::InvalidArgument, "finite position, non-negative ranges, and a valid load mode are required", {}, {},
36 if (width < 0.0) return Result<void>::failure(Diagnostic::error(DiagnosticCode::InvalidArgument, "enabled biome range must be at least 0.25 world units", {}, {},
69 return Result<void>::failure(Diagnostic::error(DiagnosticCode::InvalidArgument, "finite terrain origin and non-negative terrain size are required", {}, {},
78 return Result<void>::failure(Diagnostic::error(DiagnosticCode::InvalidArgument, "finite world bounds and non-negative world size are required", {}, {},
85 if (!std::isfinite(x) || !std::isfinite(y) || !std::isfinite(z) || mode_ == PcgBiomeLoadMode::Disabled)
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
Result< void > configure(double x, double y, double z, double range, double impostorLoadingRange, PcgBiomeLoadMode mode)
Configure the controller and reproduce Pcg's automatic regular/impostor bound calculation.
Definition PcgBiomeController.cpp:61
PcgTerrainStreamingTier tierAt(double x, double y, double z) const noexcept
Return the representation requested for a world-space point.
Definition PcgBiomeController.cpp:84
Result< void > fitToTerrain(double minX, double originY, double minZ, double sizeX, double sizeY, double sizeZ)
Fit to one terrain: use its X/Z center, origin Y, and X half-size as the biome range.
Definition PcgBiomeController.cpp:66
Result< void > fitToAllTerrains(double minX, double minY, double minZ, double sizeX, double sizeY, double sizeZ)
Fit to aggregate terrain bounds: use the full bounds center and X half-size.
Definition PcgBiomeController.cpp:75
Definition EvpackPointGraphLoader.h:12
PcgTerrainStreamingTier
Runtime representation selected by Pcg's regular and impostor ranges.
Definition PcgTerrainStreaming.h:11
PcgBiomeLoadMode
Pcg TerrainLoader activation modes retained by a biome controller.
Definition PcgBiomeController.h:9
@ Disabled
@ RuntimeAlways
@ InvalidArgument