载入中...
搜索中...
未找到
CaveBreakdown.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
5#include <cstdint>
6#include <vector>
7
8namespace eve::procgen {
9
12 float x = 0.f, y = 0.f, z = 0.f;
13 float rx = 0.2f, ry = 0.15f, rz = 0.2f;
14};
15
18 float x = 0.f, y = 0.f, z = 0.f;
19 float hx = 0.04f, hy = 0.025f, hz = 0.04f;
20 float yaw = 0.f;
21};
22
25 float x = 0.f, ceilingY = 0.f, z = 0.f;
26 float scarX = 0.1f, scarY = 0.04f, scarZ = 0.1f;
27 float yaw = 0.f;
28 std::vector<CaveBreakdownBlock> blocks;
29};
30
33 std::vector<CaveBreakdownEvent> events;
34 int blockCount = 0;
35 float detachedVolume = 0.f;
36 float depositedVolume = 0.f;
37};
38
47EVENGINE_API_DOMAINS CaveBreakdownSet createCaveBreakdown(const std::vector<CaveBreakdownChamber>& chambers,
48 int eventCount, float strength, uint32_t seed);
49
51EVENGINE_API_DOMAINS float carveCaveBreakdownScars(float x, float y, float z, float current,
52 const CaveBreakdownSet& breakdown);
53
55EVENGINE_API_DOMAINS float addCaveBreakdownBlocks(float x, float y, float z, float current,
56 const CaveBreakdownSet& breakdown);
57
59EVENGINE_API_DOMAINS bool isCaveBreakdownBlockSurface(float x, float y, float z, float tolerance,
60 const CaveBreakdownSet& breakdown);
61
62} // namespace eve::procgen
float y
Definition AnimClip.cpp:738
float x
Definition AnimClip.cpp:738
float z
Definition AnimClip.cpp:738
#define EVENGINE_API_DOMAINS
Definition Export.h:110
std::uint32_t seed
Definition PointSet.cpp:807
double current
float addCaveBreakdownBlocks(float x, float y, float z, float current, const CaveBreakdownSet &breakdown)
Union the event's landed breakdown blocks into a cave SDF.
bool isCaveBreakdownBlockSurface(float x, float y, float z, float tolerance, const CaveBreakdownSet &breakdown)
Test whether a point lies on a generated breakdown block surface.
CaveBreakdownSet createCaveBreakdown(const std::vector< CaveBreakdownChamber > &chambers, int eventCount, float strength, uint32_t seed)
Create paired ceiling-spall scars and floor blocks from host chambers.
float carveCaveBreakdownScars(float x, float y, float z, float current, const CaveBreakdownSet &breakdown)
Carve the event's shallow ceiling detachment scars from a cave SDF.
CaveBreakdownBlock public API.
CaveBreakdownChamber public API.
CaveBreakdownEvent public API.
std::vector< CaveBreakdownBlock > blocks
CaveBreakdownSet public API.
std::vector< CaveBreakdownEvent > events