#include "procgen/algorithms/TreeMesh.h"#include <algorithm>#include <cmath>#include <cstdint>#include <random>#include <vector>命名空间 | |
| namespace | eve |
| namespace | eve::procgen |
函数 | |
| bool | eve::procgen::generateTreeMesh (const Params ¶ms, MeshBuild &out, std::string &error) |
Build a deterministic procedural tree. Registered as the mesh.tree recipe. | |
变量说明
◆ attractorCount
| int attractorCount |
在文件 TreeMesh.cpp 第 192 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ budHeight
| float budHeight = 0.f |
在文件 TreeMesh.cpp 第 181 行定义.
◆ children
| int children = 0 |
在文件 TreeMesh.cpp 第 177 行定义.
被这些函数引用 eve::ui::DatabasePanel::build(), eve::ui::Inspector::build(), eve::ui::ScenePanel::build(), eve::ui::child(), eve::ui::collapsingHeader(), eve::ui::column(), eve::ui::flex(), eve::scene::group(), eve::ui::group(), eve::ui::list(), eve::scene::node(), eve::ui::row(), eve::ui::scrollList() , 以及 eve::ui::window().
◆ crownRadius
| float crownRadius |
在文件 TreeMesh.cpp 第 187 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ depth
| int depth = 0 |
在文件 TreeMesh.cpp 第 178 行定义.
◆ descendants
| int descendants = 1 |
在文件 TreeMesh.cpp 第 176 行定义.
◆ dir
| V3 dir |
在文件 TreeMesh.cpp 第 121 行定义.
被这些函数引用 eve::filesystem::FileWatch::add(), eve::dev::SceneInspect::capture(), eve::cmd::Cmdline::Create(), eve::filesystem::physfs::Filesystem::createDirectory(), eve::voxel::decodePackedRect(), eve::map::Fov::Impl::extendVertical(), eve::voxel::Chunk::faceAOPackedData(), eve::voxel::Chunk::facePackedData(), eve::voxel::Chunk::faceRectCount(), eve::voxel::Chunk::faceRects(), eve::procgen::generateBushMesh(), eve::procgen::generateTreeMesh(), eve::filesystem::physfs::Filesystem::getDirectoryItems(), eve::filesystem::physfs::Filesystem::getRealDirectory(), eve::filesystem::physfs::Filesystem::getUserDirectory(), eve::ui::EditorHost::loadEditorsFromDisk(), eve::voxel::GreedyMesher::meshFace(), eve::scene::Scene::pickRayAt(), eve::filesystem::FileWatch::remove(), eve::graphics::RenderSystem3D::render(), eve::voxel::resolveFaceTex(), eve::voxel::rotateFaceY(), eve::ui::EditorHost::saveEditor(), eve::graphics::Camera3D::screenToRay(), eve::voxel::VoxelWorld::selectVisible(), eve::dev::SceneInspect::setCacheDir(), eve::graphics::vulkan::Graphics::setMesh3DLight(), eve::graphics::webgpu::Graphics::setMesh3DLight(), eve::filesystem::HotReload::setRemoteHotDir() , 以及 eve::filesystem::HotReload::watchTree().
◆ droop
| float droop |
在文件 TreeMesh.cpp 第 190 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ endDirection
| V3 endDirection |
在文件 TreeMesh.cpp 第 127 行定义.
◆ foliageStart
| float foliageStart |
在文件 TreeMesh.cpp 第 186 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ heading
在文件 TreeMesh.cpp 第 174 行定义.
◆ height
| float height |
在文件 TreeMesh.cpp 第 185 行定义.
◆ inertia
| float inertia |
在文件 TreeMesh.cpp 第 191 行定义.
◆ influenceRadius
| float influenceRadius |
在文件 TreeMesh.cpp 第 194 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ iterations
| int iterations |
◆ killRadius
| float killRadius |
在文件 TreeMesh.cpp 第 195 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ lengthFalloff
| float lengthFalloff |
在文件 TreeMesh.cpp 第 199 行定义.
◆ lowerLeafCoverage
| float lowerLeafCoverage |
在文件 TreeMesh.cpp 第 201 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ maxChildren
| int maxChildren |
在文件 TreeMesh.cpp 第 203 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ maxCumulativeAngle
| float maxCumulativeAngle |
在文件 TreeMesh.cpp 第 198 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ maxTurnAngle
| float maxTurnAngle |
在文件 TreeMesh.cpp 第 197 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ p
| V3 p |
在文件 TreeMesh.cpp 第 120 行定义.
◆ parent
| int parent = -1 |
在文件 TreeMesh.cpp 第 175 行定义.
被这些函数引用 eve::ui::UI::addListItem(), eve::virtualgeometry::VirtualGeometryBuilder::build(), eve::animation::AnimPose::computeWorld(), eve::ik::Skeleton2D::createBone(), eve::ik::Skeleton3D::createBone(), eve::sceneloader::SceneLoader::diff(), eve::map::Pathfinder::findPath(), eve::procgen::generateTreeMesh(), eve::animation::SpineSkeletonData::getBoneParent(), eve::animation::AnimSkeleton::getParent(), eve::animation::AnimImporter::importEva(), eve::housegen::HouseLayout::instantiate(), eve::animation::SpineSkeletonData::loadFromJson(), eve::ui::UI::setFlexAlign(), eve::ui::UI::setFlexJustify(), eve::ui::UI::setItemAbsolute(), eve::ui::UI::setItemFlexGrow(), eve::ui::UI::setItemMargin(), eve::ui::UI::setItemMaxSize(), eve::ui::UI::setItemMinSize(), eve::ui::UI::setItemPadding(), eve::ui::UI::setItemPercent(), eve::ui::UI::setItemSize(), eve::window::sdl::Window::showMessageBox() , 以及 eve::animation::SpineSkeleton::updateWorldTransform().
◆ points
| std::vector<V3> points |
在文件 TreeMesh.cpp 第 126 行定义.
被这些函数引用 eve::graphics::grass::buildBillboards() , 以及 eve::graphics::buildClusteredLighting().
◆ radiusFalloff
| float radiusFalloff |
在文件 TreeMesh.cpp 第 200 行定义.
◆ remainingLength
| float remainingLength = 0.f |
在文件 TreeMesh.cpp 第 179 行定义.
◆ scale
| float scale |
在文件 TreeMesh.cpp 第 122 行定义.
被这些函数引用 eve::tensor::Func::emitLayerNorm(), eve::tensor::Func::emitRMSNorm(), eve::tensor::Func::emitSdpa(), eve::procgen::fillDensityField(), eve::procgen::generateLinearStructure(), eve::procgen::generateRockMesh(), eve::scene::Scene::getNodeWorldRotationAt(), eve::scene::Scene::getNodeWorldScaleAt(), eve::tensor::kernels::layernorm(), eve::tensor::TF::layernormWB(), eve::graphics::parallaxOffsetUV(), eve::graphics::Graphics::print(), eve::card::printCentered(), eve::tensor::q::quantize(), eve::tensor::kernels::rmsnorm(), eve::tensor::TF::rmsnormW(), eve::tensor::kernels::sdpa(), eve::tensor::TF::sdpa(), eve::tensor::TF::sdpaMasked(), eve::particles::ParticleEmitter::setAttachScale(), eve::graphics::vulkan::Graphics::setMesh3DParallax(), eve::graphics::webgpu::Graphics::setMesh3DParallax(), eve::graphics::Material::setParallax(), eve::graphics::Renderable3D::setParallax(), eve::map::Fov::setPerceptionRadiusScale(), eve::procgen::TerrainSampler::setScale(), eve::ui::UI::setScale(), eve::ui::ImGuiBackend::setScale(), eve::particles::ParticleEmitter::setSkinScale(), eve::voxel::VoxelWorld::setTerrainParams(), eve::ui::setThemeUiScale(), eve::particles::stepEmitterSim(), eve::particles::stepEmitterSimGpu() , 以及 eve::graphics::texCellBombSampleUV().
◆ sides
| int sides |
在文件 TreeMesh.cpp 第 204 行定义.
被这些函数引用 eve::housegen::HouseGenerator::generate(), eve::procgen::generateBushMesh() , 以及 eve::procgen::generateTreeMesh().
◆ step
| float step |
在文件 TreeMesh.cpp 第 196 行定义.
被这些函数引用 eve::editor::EditorInspector::addFloat(), eve::map::Fov::Impl::computeHexShadowcast(), eve::map::Fov::Impl::computeRaycast(), eve::physics::Fluid::emit(), eve::map::Fov::Impl::extendVertical(), eve::map::Pathfinder::followFlow(), eve::tensor::TF::linspace(), eve::procgen::ColorRamp::sampleBanded(), eve::utf8_byte_offset_for_codepoints() , 以及 eve::utf8_codepoint_count().
◆ tropism
| float tropism |
在文件 TreeMesh.cpp 第 189 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ trunkRadius
| float trunkRadius |
在文件 TreeMesh.cpp 第 188 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ upperLeafCoverage
| float upperLeafCoverage |
在文件 TreeMesh.cpp 第 202 行定义.
被这些函数引用 eve::procgen::generateTreeMesh().
◆ vigor
| float vigor = 1.f |
在文件 TreeMesh.cpp 第 180 行定义.
◆ x
| float x = 0.f |
在文件 TreeMesh.cpp 第 15 行定义.
◆ y
| float y = 0.f |
在文件 TreeMesh.cpp 第 15 行定义.
◆ z
| float z = 0.f |
在文件 TreeMesh.cpp 第 15 行定义.