14enum class TerrainSculptMode : uint8_t
24struct TerrainHeightChange
33struct TerrainSculptOptions
35 TerrainSculptMode mMode = TerrainSculptMode::Raise;
36 float mBrushRadius = 5.0f;
37 float mBrushStrength = 0.5f;
38 float mBrushFalloff = 0.5f;
39 float mFlattenHeight = 0.0f;
40 int32_t mPaintSlot = 0;
47class TerrainSculptManager
50 TerrainSculptManager();
51 ~TerrainSculptManager();
54 void HandleNodeDestroy(
Node* node);
56 TerrainSculptOptions mOptions;
59 bool mHoverValid =
false;
60 glm::vec3 mHoverWorldPos = {};
61 int32_t mHoverGridX = 0;
62 int32_t mHoverGridZ = 0;
69 void ApplyBrush(
Terrain3D* terrain, glm::vec3 worldCenter);
70 float ComputeFalloff(
float distance,
float radius)
const;
71 float SampleBrushMask(
float dx,
float dz,
float radius)
const;
73 static uint64_t GridKey(int32_t x, int32_t z);
76 bool mStrokeActive =
false;
78 std::vector<TerrainHeightChange> mPendingChanges;
79 std::set<uint64_t> mModifiedSet;
bool Update()
Definition Engine.cpp:710
Definition Terrain3d.h:13