Deterministic CPU terrain baking stages shared by editors and runtime tools. 更多...
#include <TerrainPipeline.h>
静态 Public 成员函数 | |
| static void | erodeThermal (Heightmap &heightmap, const ThermalErosionSettings &settings={}) |
| Relax slopes exceeding the configured talus angle while conserving mass. | |
| static void | erodeHydraulic (Heightmap &heightmap, const HydraulicErosionSettings &settings={}) |
| Grid-based water/sediment simulation that carves channels and deposits sediment. | |
| static void | erodeFluvial (Heightmap &heightmap, const FluvialErosionSettings &settings={}) |
| Cut branching river valleys using depression-free drainage and stream power. | |
| static TerrainErosionMap | erodeFluvialDetailed (Heightmap &heightmap, const FluvialErosionSettings &settings={}) |
| Cut river valleys and return wear, deposition, and net-change diagnostic layers. | |
| static HydrologyMap | buildHydrology (const Heightmap &heightmap, float riverThreshold=0.025f, float seaLevel=0.25f, float coordinateScale=1.f, bool classifyLakes=true) |
| Compute D8 drainage, upstream contributing area, and a thresholded river mask. | |
| static ClimateMap | buildClimate (const Heightmap &heightmap, const HydrologyMap &hydrology, float seaLevel=0.25f, float latitude=0.35f, float coordinateScale=1.f) |
| Derive temperature, moisture, and biome layers from terrain and hydrology. | |
详细描述
Deterministic CPU terrain baking stages shared by editors and runtime tools.
在文件 TerrainPipeline.h 第 125 行定义.
成员函数说明
◆ buildClimate()
|
static |
Derive temperature, moisture, and biome layers from terrain and hydrology.
在文件 TerrainPipeline.cpp 第 962 行定义.
引用了 eve::procgen::Alpine, at, eve::procgen::Beach, eve::procgen::ClimateMap::biomes, count, d, eve::procgen::Heightmap::data(), eve::procgen::Desert, eve::procgen::HydrologyMap::flowAccumulation, eve::procgen::Forest, eve::procgen::Heightmap::getHeight(), eve::procgen::Heightmap::getWidth(), eve::procgen::Grassland, h, eve::procgen::ClimateMap::height, lake, eve::procgen::Lake, eve::procgen::HydrologyMap::lakeDepth, eve::procgen::ClimateMap::moisture, n, nx, ny, eve::procgen::Ocean, eve::procgen::Rainforest, river, eve::procgen::River, eve::procgen::HydrologyMap::rivers, eve::procgen::Taiga, eve::procgen::ClimateMap::temperature, eve::procgen::Tundra, w, eve::procgen::Wetland, eve::procgen::ClimateMap::width, x, y , 以及 z.
◆ buildHydrology()
|
static |
Compute D8 drainage, upstream contributing area, and a thresholded river mask.
在文件 TerrainPipeline.cpp 第 671 行定义.
引用了 a, at, b, cell, count, current, d, eve::procgen::Heightmap::data(), depth, direction, distance, dx, dy, elevation, eve::procgen::HydrologyMap::flowAccumulation, eve::procgen::HydrologyMap::flowDirection, eve::procgen::HydrologyMap::flowVectorX, eve::procgen::HydrologyMap::flowVectorY, eve::procgen::Heightmap::getHeight(), eve::procgen::Heightmap::getWidth(), h, eve::procgen::HydrologyMap::height, index, eve::procgen::HydrologyMap::lakeDepth, n, nx, ny, order, eve::procgen::HydrologyMap::rivers, score, seed, steps, eve::procgen::HydrologyMap::streamOrder, w, weight, weights, eve::procgen::HydrologyMap::width, x, y , 以及 z.
被这些函数引用 eve::procgen::Procgen::analyzeTerrainScaled() , 以及 erodeFluvialDetailed().
◆ erodeFluvial()
|
static |
Cut branching river valleys using depression-free drainage and stream power.
在文件 TerrainPipeline.cpp 第 219 行定义.
引用了 erodeFluvialDetailed() , 以及 s.
◆ erodeFluvialDetailed()
|
static |
Cut river valleys and return wear, deposition, and net-change diagnostic layers.
在文件 TerrainPipeline.cpp 第 223 行定义.
引用了 a, at, b, buildHydrology(), c, count, d, eve::procgen::Heightmap::data(), eve::procgen::TerrainErosionMap::deposition, distance, dx, dy, edge, eve::procgen::HydrologyMap::flowAccumulation, eve::procgen::HydrologyMap::flowDirection, eve::procgen::HydrologyMap::flowVectorX, eve::procgen::HydrologyMap::flowVectorY, eve::procgen::Heightmap::getHeight(), eve::procgen::Heightmap::getWidth(), h, eve::procgen::TerrainErosionMap::height, eve::procgen::TerrainErosionMap::heightDelta, eve::procgen::HydrologyMap::lakeDepth, n, nx, ny, order, ox, oy, radius, s, target, terrain, w, eve::procgen::TerrainErosionMap::wear, weight, width, eve::procgen::TerrainErosionMap::width, x , 以及 y.
被这些函数引用 erodeFluvial() , 以及 eve::procgen::Procgen::erodeTerrainFluvialDetailed().
◆ erodeHydraulic()
|
static |
Grid-based water/sediment simulation that carves channels and deposits sediment.
在文件 TerrainPipeline.cpp 第 179 行定义.
引用了 at, best, capacity, d, eve::procgen::Heightmap::data(), distance, dx, dy, eve::procgen::Heightmap::getHeight(), eve::procgen::Heightmap::getWidth(), h, n, nx, ny, s, sediment, terrain, v, w, water, x , 以及 y.
◆ erodeThermal()
|
static |
Relax slopes exceeding the configured talus angle while conserving mass.
在文件 TerrainPipeline.cpp 第 146 行定义.
引用了 at, d, eve::procgen::Heightmap::data(), distance, dx, dy, from, eve::procgen::Heightmap::getHeight(), eve::procgen::Heightmap::getWidth(), h, height, nx, ny, s, w, x , 以及 y.
该类的文档由以下文件生成:
- src/modules/procgen/heightmap/TerrainPipeline.h
- src/modules/procgen/heightmap/TerrainPipeline.cpp