载入中...
搜索中...
未找到
CaveSediment.cpp
浏览该文件的文档.
18 std::sqrt((along * along) / (bar.length * bar.length) + (across * across) / (bar.width * bar.width) +
37float parageneticChannelDistance(float x, float y, float z, const CaveSedimentBar& bar, float strength) {
46 std::sqrt((endDistance * endDistance + across * across) / (bar.channelHalfWidth * bar.channelHalfWidth) +
57 const float across = -dx * bar.flowZ + dz * bar.flowX - std::sin(phase * Pi) * bar.channelMeander * 0.45f;
58 const float q = std::sqrt((endDistance * endDistance) / (bar.notchHalfWidth * bar.notchHalfWidth) +
66CaveSedimentSet createCaveSediment(const std::vector<CaveSedimentPathPoint>& path, int barCount, float strength,
111 // with sediment supply. Passage radius is the deterministic discharge proxy used by this recipe.
123 result.maximumNotchRetreat = std::max(result.maximumNotchRetreat, bar.notchHalfWidth - bar.passageRadius);
146 result.depositedVolume += 4.f / 3.f * Pi * clast.longRadius * clast.thickRadius * clast.shortRadius;
153 if (result.clastCount > 0) result.meanImbricationDegrees = totalPitch / float(result.clastCount);
163float carveCaveParagenesis(float x, float y, float z, float current, const CaveSedimentSet& sediment) {
171float addCaveSediment(float x, float y, float z, float current, const CaveSedimentSet& sediment) {
179bool isCaveSedimentSurface(float x, float y, float z, float tolerance, const CaveSedimentSet& sediment) {
Definition EvpackPointGraphLoader.h:12
CaveSedimentSet createCaveSediment(const std::vector< CaveSedimentPathPoint > &path, int barCount, float strength, float paragenesis, uint32_t seed)
Create flow-aligned cave sediment bars with upstream-imbricated gravel.
Definition CaveSediment.cpp:66
float carveCaveParagenesis(float x, float y, float z, float current, const CaveSedimentSet &sediment)
Carve flow-aligned antigravitative ceiling channels above generated sediment bars.
Definition CaveSediment.cpp:163
bool isCaveSedimentSurface(float x, float y, float z, float tolerance, const CaveSedimentSet &sediment)
Test whether a point lies on a generated sediment surface.
Definition CaveSediment.cpp:179
float addCaveSediment(float x, float y, float z, float current, const CaveSedimentSet &sediment)
Union sediment bars and imbricated clasts into a cave SDF.
Definition CaveSediment.cpp:171
std::vector< CaveSedimentClast > clasts
Definition CaveSediment.h:34
float meanParageneticWidth
Definition CaveSediment.h:46
float meanPalaeofillRatio
Definition CaveSediment.h:47
float maximumCeilingLift
Definition CaveSediment.h:45
float paragenesisStrength
Definition CaveSediment.h:43
int parageneticChannels
Definition CaveSediment.h:44
float meanNotchThickness
Definition CaveSediment.h:49
float meanImbricationDegrees
Definition CaveSediment.h:42
float maximumNotchRetreat
Definition CaveSediment.h:48