载入中...
搜索中...
未找到
TerrainObjectPlacement.h
浏览该文件的文档.
60 std::uint64_t namespaceId = 1;
87[[nodiscard]] EVENGINE_API_DOMAINS Result<int> removeTerrainObjectPoints(PointSet& output, const PointSet& input,
128 [[nodiscard]] Result<int> addTile(const std::string& name, const PointSet& objects, const Heightmap& heights,
132 [[nodiscard]] Result<int> apply(const Heightmap& fitness, const TerrainObjectPlacementSettings& settings,
Move-only, checked operation results for the common layer.
In-memory terrain heightmap: a dense float grid (row-major, index = y * width + x) materialized from ...
Definition Heightmap.h:21
Owning transactional multi-terrain object workspace with undo and redo snapshots.
Definition TerrainObjectPlacement.h:115
~TerrainMultiObjectWorkspace()
Terrain multi object workspace.
TerrainMultiObjectWorkspace(TerrainMultiObjectWorkspace &&) noexcept
Terrain multi object workspace.
@ PointSet
Definition EvpackPointGraphLoader.h:12
Result< int > removeTerrainObjectPoints(PointSet &output, const PointSet &input, const Heightmap &fitness, const TerrainObjectPlacementSettings &s, float removalStrength)
Remove matching prototype points wherever fitness is strictly above removalStrength.
Definition TerrainObjectPlacement.cpp:216
Result< TerrainMultiTileReport > applyTerrainObjectsMultiTile(const std::vector< TerrainObjectTile > &tiles, const Heightmap &fitness, const TerrainObjectPlacementSettings &s, const TerrainStampSettings &operationSettings, TerrainObjectOperationMode mode, bool worldMapOperation, const std::vector< std::string > &validTerrainNames)
Apply one Pcg-style game-object rule over mapped terrain tiles atomically.
Definition TerrainObjectPlacement.cpp:235
TerrainObjectScaleMode
Pcg-compatible scale policy for one terrain object instance resource.
Definition TerrainObjectPlacement.h:17
@ FitnessRandomized
Result< int > exportTerrainObjectPoints(PointSet &output, const Heightmap &fitness, const Heightmap &heights, const TerrainObjectPlacementSettings &s)
Export Pcg-style terrain game-object resources into an attributed PointSet atomically.
Definition TerrainObjectPlacement.cpp:92
TerrainObjectYOffsetMode
Height reference used by one terrain object instance resource.
Definition TerrainObjectPlacement.h:19
@ TerrainHeight
TerrainObjectOperationMode
Mutation performed by a multi-terrain game-object operation.
Definition TerrainObjectPlacement.h:21
Definition Container.h:602
One resource entry emitted around each accepted Pcg game-object prototype location.
Definition TerrainObjectPlacement.h:24
float failureRate
Definition TerrainObjectPlacement.h:27
float minimumScaleX
Definition TerrainObjectPlacement.h:36
bool rotateToSlope
Definition TerrainObjectPlacement.h:46
float minimumRotationY
Definition TerrainObjectPlacement.h:42
TerrainObjectScaleMode scaleMode
Definition TerrainObjectPlacement.h:33
float minimumScaleY
Definition TerrainObjectPlacement.h:37
float scaleRandomPercentageX
Definition TerrainObjectPlacement.h:40
float maximumOffsetX
Definition TerrainObjectPlacement.h:28
float maximumScaleY
Definition TerrainObjectPlacement.h:37
float minimumScale
Definition TerrainObjectPlacement.h:35
float maximumRotationY
Definition TerrainObjectPlacement.h:42
float minimumScaleZ
Definition TerrainObjectPlacement.h:38
bool yOffsetAlongSlope
Definition TerrainObjectPlacement.h:44
float scaleRandomPercentage
Definition TerrainObjectPlacement.h:39
float minimumOffsetY
Definition TerrainObjectPlacement.h:29
std::string asset
Definition TerrainObjectPlacement.h:25
float minimumRotationZ
Definition TerrainObjectPlacement.h:43
bool commonScale
Definition TerrainObjectPlacement.h:34
float minimumOffsetZ
Definition TerrainObjectPlacement.h:30
float maximumScaleX
Definition TerrainObjectPlacement.h:36
float scaleRandomPercentageY
Definition TerrainObjectPlacement.h:40
float maximumRotationX
Definition TerrainObjectPlacement.h:41
float customOffset
Definition TerrainObjectPlacement.h:32
int maximumInstances
Definition TerrainObjectPlacement.h:26
float minimumOffsetX
Definition TerrainObjectPlacement.h:28
float scaleRandomPercentageZ
Definition TerrainObjectPlacement.h:40
float maximumRotationZ
Definition TerrainObjectPlacement.h:43
float maximumOffsetY
Definition TerrainObjectPlacement.h:29
float maximumScale
Definition TerrainObjectPlacement.h:35
int minimumInstances
Definition TerrainObjectPlacement.h:26
TerrainObjectYOffsetMode yOffsetMode
Definition TerrainObjectPlacement.h:31
bool alignForwardToSlope
Definition TerrainObjectPlacement.h:45
float maximumOffsetZ
Definition TerrainObjectPlacement.h:30
float minimumRotationX
Definition TerrainObjectPlacement.h:41
float maximumScaleZ
Definition TerrainObjectPlacement.h:38
Deterministic Pcg SetTerrainGameObjects scan, collision and resource configuration.
Definition TerrainObjectPlacement.h:50
std::vector< TerrainObjectInstanceSettings > instances
Definition TerrainObjectPlacement.h:63
std::string prototype
Definition TerrainObjectPlacement.h:62
One exclusively borrowed terrain object owner and its immutable height source.
Definition TerrainObjectPlacement.h:93
int objectResolutionY
Definition TerrainObjectPlacement.h:98
int objectResolutionX
Definition TerrainObjectPlacement.h:98
const Heightmap * heights
Definition TerrainObjectPlacement.h:96
Value configuration for a rectangular stamp in world X/Z coordinates.
Definition TerrainStamp.h:22