载入中...
搜索中...
未找到
TerrainStamp.h
浏览该文件的文档.
1#pragma once
2
3#include "common/Result.h"
4
5namespace eve::procgen {
6class Heightmap;
7
10
13
23 double originX = 0, originZ = 0;
24 double spacingX = 1, spacingZ = 1;
25 double centerX = 0, centerZ = 0;
26 double width = 1, depth = 1, rotation = 0;
27 float amplitude = 1, baseHeight = 0;
28 float blendStrength = 0.5F;
30};
31
46 TerrainMaskBlend mode, float strength = 1,
47 bool invert = false);
48
69 const Heightmap& localMask,
70 const Heightmap& globalMask);
71} // namespace eve::procgen
LogicalId target
#define EVENGINE_API_DOMAINS
Definition Export.h:110
Move-only, checked operation results for the common layer.
TerrainThermalSettings settings
Heightmap stamp
const UnitySourceAsset & source
Move-only operation result carrying either a value or Status.
Definition Result.h:155
In-memory terrain heightmap: a dense float grid (row-major, index = y * width + x) materialized from ...
Definition Heightmap.h:21
Result< int > blendTerrainMask(Heightmap &target, const Heightmap &source, TerrainMaskBlend mode, float strength, bool invert)
Blend one scalar raster into an existing mask stack, in call order.
TerrainMaskBlend
Ordered scalar-mask arithmetic; intermediate values are not clamped.
Definition TerrainStamp.h:9
Result< int > applyTerrainStamp(Heightmap &target, const Heightmap &stamp, const TerrainStampSettings &s, const Heightmap &localMask, const Heightmap &globalMask)
Apply a rotated, bilinearly sampled stamp; publish only after all checks succeed.
TerrainStampOperation
Native height operations, in terrain height units (not Unity packed heights).
Value configuration for a rectangular stamp in world X/Z coordinates.
TerrainStampOperation operation