载入中...
搜索中...
未找到
TerrainMultiTile.h 文件参考
#include <cstdint>
#include <string>
#include <memory>
#include <vector>
#include "common/Result.h"

浏览源代码.

类

struct  eve::procgen::TerrainHeightStitchSettings
 Pcg terrain-height seam controls; maxDifference is retained for source-profile compatibility. 更多...
 
struct  eve::procgen::TerrainHeightTile
 Borrowed mutable height tile participating in one synchronous world operation. 更多...
 
struct  eve::procgen::TerrainOperationTile
 Immutable tile geometry and raster resolution used to calculate a shared operation window. 更多...
 
struct  eve::procgen::TerrainDetailTile
 Borrowed mutable detail layer participating in one synchronous world operation. 更多...
 
struct  eve::procgen::TerrainAffectedPixels
 Integer rectangles mapping one tile into the shared operation raster. 更多...
 
struct  eve::procgen::TerrainMultiTileReport
 Completed multi-tile stamp statistics and Pcg-compatible affected-pixel mappings. 更多...
 
class  eve::procgen::TerrainMultiTileWorkspace
 Owning script-safe collection of height tiles with atomic multi-tile operations. Tiles are copied on insertion and never retain caller rasters. The workspace is one mutable owner, move-only, and caller-thread affine. It invokes no callbacks and exposes only copied outputs. 更多...
 
class  eve::procgen::TerrainMultiDetailWorkspace
 Owning script-safe multi-terrain detail transaction workspace. Input layers are copied on insertion. Operations, reports and all-layer undo snapshots publish by one owner-thread swap; no borrowed raster or callback survives a call. The explicit seed creates one deterministic stream per apply. 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::procgen
 

枚举

enum class  eve::procgen::TerrainOperationDomain {
  eve::procgen::Heightmap , eve::procgen::Texture , eve::procgen::Tree , eve::procgen::TerrainDetail ,
  eve::procgen::GameObject , eve::procgen::BakedMask
}
 Pcg multi-terrain pixel domain; only heightmaps share the border sample between adjacent tiles. 更多...
 

函数

Result< TerrainMultiTileReport > eve::procgen::mapTerrainOperationMultiTile (const std::vector< TerrainOperationTile > &tiles, const TerrainStampSettings &settings, TerrainOperationDomain domain, bool worldMapOperation=false, const std::vector< std::string > &validTerrainNames={})
 Calculate Pcg-compatible local and shared pixel rectangles for any multi-terrain raster domain.
 
EVENGINE_API_DOMAINS Result< TerrainMultiTileReport > eve::procgen::applyTerrainDetailMultiTile (const std::vector< TerrainDetailTile > &tiles, const Heightmap &operationFitness, const TerrainDetailSettings &settings, const TerrainStampSettings &operationSettings, std::int32_t seed, bool worldMapOperation=false, const std::vector< std::string > &validTerrainNames={})
 Apply one shared Pcg detail-distribution raster to every selected tile atomically.
 
Result< TerrainMultiTileReport > eve::procgen::applyTerrainStampMultiTile (const std::vector< TerrainHeightTile > &tiles, const Heightmap &stamp, const TerrainStampSettings &settings, const Heightmap &localMask, const Heightmap &globalMask, bool worldMapOperation=false, const std::vector< std::string > &validTerrainNames={})
 Apply one world-space stamp to all selected intersecting height tiles atomically.
 
Result< int > eve::procgen::stitchTerrainHeightmaps (const TerrainHeightTile &terrainA, const TerrainHeightTile &terrainB, const TerrainHeightStitchSettings &settings={})
 Stitch the overlapping shared edge of two grid-aligned height tiles with Pcg's seam interpolation.