#include "procgen/algorithms/HexTerrain.h"#include <algorithm>#include <array>#include <cmath>#include <cstdint>#include <limits>#include <random>#include <vector>命名空间 | |
| namespace | eve |
| Build metadata (engine git commit, build time, third-party version). | |
| namespace | eve::procgen |
函数 | |
| bool | eve::procgen::generateHexTerrainMesh (const Params ¶ms, MeshBuild &out, std::string &error) |
| Build a deterministic, flat-top hexagonal continent mesh. | |
变量说明
◆ biome
| int biome = Ocean |
在文件 HexTerrain.cpp 第 34 行定义.
被这些函数引用 eve::biome_editor::BiomeEditorModule::TargetFactory::create(), eve::procgen::exposeBiomeRules(), eve::procgen::generateHexTerrainMesh(), eve::pixelworld::generatePixelWorld(), eve::procgen::Procgen::generateTerrainAlbedoMap(), eve::procgen::TerrainLayers::getBiomeName(), eve::procgen::TerrainAsset::loadChunk() , 以及 eve::biome_editing::registerEditingCommands().
◆ blend
| float blend = 0.f |
在文件 HexTerrain.cpp 第 36 行定义.
被这些函数引用 eve::procgen::applyCaveSurfaceNormals(), eve::procgen::bakeGtsColorMapAlbedo(), eve::stylize::MeshEffectRenderer::beginBatch(), eve::animation_editing::AnimationStateGraphRuntimeBuilder::build(), eve::graphics::webgpu::PipelineBuilder::build(), eve::animation_editing::AnimationStateGraphDomain::compile(), eve::graphics::vulkan::Graphics::configureMeshShaderSurface(), eve::graphics::webgpu::Graphics::configureMeshShaderSurface(), eve::fluids::FluidSurfaceRenderer::configureRendererSettings(), eve::graphics::vulkan::Graphics::drawSolidRect(), eve::graphics::webgpu::Graphics::drawSolidRect(), eve::graphics::vulkan::Graphics::drawSolidRectRotated(), eve::graphics::webgpu::Graphics::drawSolidRectRotated(), eve::graphics::vulkan::Graphics::drawTexturedRectLitUV(), eve::graphics::webgpu::Graphics::drawTexturedRectLitUV(), eve::graphics::vulkan::Graphics::drawTexturedRectLitUVRotated(), eve::graphics::webgpu::Graphics::drawTexturedRectLitUVRotated(), eve::graphics::vulkan::Graphics::drawTexturedRectShaderUV(), eve::graphics::webgpu::Graphics::drawTexturedRectShaderUV(), eve::graphics::vulkan::Graphics::drawTexturedRectShaderUVRotated(), eve::graphics::webgpu::Graphics::drawTexturedRectShaderUVRotated(), eve::editor::exposeActionTimelineScriptBindings(), eve::graphics::exposeShaderScriptBindings(), eve::graphics::Renderable2D::getBlend(), eve::particles::ParticleEmitter::getBlendMode(), eve::editor::ActionTimelineWidget::inspectSelection(), eve::asset_graphics::detail::readCookedMaterial(), eve::procgen::MeshDeformationSession::recoverSurfaceResult(), eve::editor::ActionTimelineEditor::scaleSelection(), eve::graphics::Renderable2D::setBlend(), eve::decal::DecalManager::setBlend(), eve::graphics::vulkan::Graphics::setMesh3DSurface(), eve::graphics::webgpu::Graphics::setMesh3DSurface(), eve::procgen::SplinePath::travelFrameResult(), eve::camera::PcgCarCameraSetup::update() , 以及 eve::decal_editing::DecalDocumentTarget::validate().
◆ elevation
| float elevation = 0.f |
在文件 HexTerrain.cpp 第 30 行定义.
被这些函数引用 eve::hexmap::HexMap::addRoad(), eve::hexmap::HexSphereMap::addRoad(), eve::archspace::appendWallWithOpenings(), eve::buildingfx::BuildingFx::buildEdgeCurveMesh(), eve::procgen::TerrainPipeline::buildHydrology(), eve::building::PlacementSystem::canPlaceElev(), eve::hexmap::HexMap::cellPosition(), eve::building::PlacementWorld::cellToWorld3D(), eve::building::PlacementWorld::cellToWorld3DX(), eve::building::PlacementWorld::cellToWorld3DY(), eve::building::PlacementWorld::cellToWorld3DZ(), eve::building_editing::BuildingPlacementTarget::edgeCubicBezierGizmo(), eve::hexmap::HexMap::edgeTypeTo(), eve::hexmap::HexSphereMap::edgeTypeTo(), eve::hexmap::HexMap::editElevation(), eve::hexmap::HexSphereMap::editElevation(), eve::hexmap::HexMetrics::elevationY(), eve::graphics::SkyWispsAsset::generate(), eve::procgen::generateHexTerrainMesh(), eve::hexmap::generateSphereMap(), eve::building_editing::BuildingPlacementTarget::makeMoveFree(), eve::building::PlacementSystem::moveFreeResult(), eve::building::PlacementSystem::moveFreeSurfaceResult(), eve::building::PlacementWorld::placeFree(), eve::building::PlacementSystem::placeFree(), eve::building::PlacementSystem::placeFreeResult(), eve::building::PlacementSystem::placeFreeSurfaceResult(), eve::building_editing::BuildingPlacementTarget::preview(), eve::building::Ghost::setElevation(), eve::hexmap::HexMap::setElevation(), eve::hexmap::HexSphereMap::setElevation(), eve::building::Ghost::setFree(), eve::hexmap::HexMap::setOutgoingRiver(), eve::hexmap::HexSphereMap::setOutgoingRiver(), eve::rts::RTS::setScriptTerrainElevation(), eve::hexmap::HexMetrics::streamBedY(), eve::hexmap::HexSphereMap::surfaceRadius(), eve::buildingfx::BuildingFx::updateEdgeCurvePreview() , 以及 eve::building::PlacementSession::updateFree().
◆ lake
| bool lake = false |
在文件 HexTerrain.cpp 第 38 行定义.
被这些函数引用 eve::procgen::TerrainPipeline::buildClimate() , 以及 eve::procgen::Procgen::generateTerrainLakeMesh().
◆ moisture
| float moisture = 0.f |
在文件 HexTerrain.cpp 第 31 行定义.
◆ river
| float river = 0.f |
◆ riverEdges
| uint8_t riverEdges = 0 |
在文件 HexTerrain.cpp 第 37 行定义.
◆ secondary
| int secondary = Ocean |
在文件 HexTerrain.cpp 第 35 行定义.
被这些函数引用 eve::graphics::Renderable3D::getMeshLodSecondaryLevelAtDistance(), eve::graphics::Renderable3D::getMeshLodSecondaryWeightAtDistance(), eve::graphics::Renderable3D::MeshRenderer::lodBlendForDistance(), eve::graphics::RenderSystem3D::render(), eve::graphics::RenderSystem3D::renderToCanvas(), eve::procgen::sampleCaveFloodPlucking(), eve::procgen::sampleCavePotholeErosion() , 以及 eve::procgen::sampleCaveStreamKarren().
◆ temperature
| float temperature = 0.f |
在文件 HexTerrain.cpp 第 32 行定义.