类 | |
| class | EvpackInstanceSetLoader |
Capability-aware eve.instance-set/5 EVINST decoder with v1-v4 compatibility. 更多... | |
| class | EvpackPointGraphLoader |
Capability-aware loader for compiled eve.pcg-graph/1 execution plans. 更多... | |
| class | EvpackTerrainLoader |
Capability-aware decoder from eve.terrain/1 to procgen terrain data. 更多... | |
| class | EvpackTerrainMaterialLoader |
Strict eve.terrain-material/3 EVDEF loader with one-version compatibility. 更多... | |
| struct | InstanceSetLoadLimits |
| Bounds applied before allocating untrusted instance records and strings. 更多... | |
| class | ITerrainVegetationGpuResolver |
| Provider boundary from stable prototype names to backend table slots. 更多... | |
| struct | LoadedInstanceSet |
| Owning exact static-instance set selected for one runtime variant. 更多... | |
| struct | LoadedPointGraph |
| Owning executable graph and its selected output node. 更多... | |
| struct | LoadedTerrain |
| Owning heightmap plus queryable procgen spatial representation. 更多... | |
| struct | LoadedTerrainMaterial |
| Owning capability-selected terrain material candidate. 更多... | |
| struct | PackedTerrainMaterialAtlases |
| Single-draw terrain textures covering up to sixteen layers. 更多... | |
| struct | PackedTerrainMaterialGpuSet |
| Backend-owned texture set for a single draw of up to sixteen layers. 更多... | |
| struct | RuntimeInstance |
| One exact canonical static instance using meters and an XYZW quaternion. 更多... | |
| struct | RuntimeInstancePrototype |
| Runtime vegetation prototype metadata retained from the source terrain. 更多... | |
| struct | RuntimeTerrainLayer |
| One owning canonical terrain layer independent of its source engine. 更多... | |
| struct | TerrainAssetLoadLimits |
| Explicit resource limits applied before terrain allocation. 更多... | |
| struct | TerrainAtlasImage |
| Owning base-level linear RGBA8 image ready for backend upload. 更多... | |
| struct | TerrainDetailCardGeometry |
| Owning unit geometry whose instance transform supplies Unity's exact width and height. 更多... | |
| class | TerrainDetailGpuResolver |
| Owning lazy GPU resource resolver for texture-backed terrain Detail prototypes. @ownership Uploaded meshes and images are owned by the bound Graphics backend and leased by this resolver. @lifetime The reader and Graphics backend must outlive this object and its explicit release. @thread Construction, resolve, release, and destruction are graphics-thread affine. @reentrancy Calls no scripts or caller callbacks and must not be entered recursively. 更多... | |
| class | TerrainDetailRuntime |
| Owning runtime for one cooked Unity Terrain Detail instance set. @ownership Owns the realization, GPU resolver leases, and render registration. @lifetime The reader and Graphics backend passed to load must outlive this object and release. @thread Load, frame updates, rendering callbacks, release, and destruction are graphics-thread affine. @reentrancy Calls no scripts; release must not run from a render callback. 更多... | |
| struct | TerrainMaterialAtlases |
| Complete terrain material image set; up to four groups cover sixteen layers. 更多... | |
| struct | TerrainMaterialAtlasGroup |
| Four-layer atlas group driven by one RGBA control image. 更多... | |
| struct | TerrainMaterialAtlasLimits |
| Bounds for deterministic terrain atlas construction. 更多... | |
| struct | TerrainMaterialGpuGroup |
| Four backend-owned textures for one uploaded terrain group. 更多... | |
| struct | TerrainMaterialGpuSet |
| Backend-owned terrain textures released together on their graphics thread. 更多... | |
| struct | TerrainMaterialLoadLimits |
| Admission budgets for terrain material definitions. 更多... | |
| struct | TerrainVegetationBucket |
| Contiguous prototype range suitable for one instanced render submission. 更多... | |
| struct | TerrainVegetationGpuFrame |
| Explicit frame inputs for deterministic terrain Detail animation. 更多... | |
| struct | TerrainVegetationGpuPlan |
| Detached CPU upload plan accepted by both Vulkan and WebGPU GPU-driven paths. 更多... | |
| struct | TerrainVegetationGpuPrototype |
| GPU table slots resolved for one vegetation prototype. 更多... | |
| struct | TerrainVegetationGpuPrototypeRequest |
| One owning realization's prototype request passed to the graphics resource provider. 更多... | |
| struct | TerrainVegetationInstance |
| One stable terrain vegetation transform and its source attributes. 更多... | |
| struct | TerrainVegetationLimits |
| Hard limits for one deterministic terrain vegetation realization. 更多... | |
| struct | TerrainVegetationRealization |
| Owning, prototype-sorted result plus scalability evidence. 更多... | |
| class | TerrainVegetationRenderer |
| Own one realized terrain Detail set and submit it from RenderSystem3D's forward phase. 更多... | |
| struct | TerrainVegetationWeightDomain |
| Explicit world-to-control-map projection for terrain layer filtering. 更多... | |
函数 | |
| Result< asset_import::PreparedAssetImport > | prepareGtsTerrainLodPackage (const asset_import::ImportPackageIdentity &package, const procgen::GtsTerrainLodSet &lods, const std::string &terrainName, const asset_import::AssetImportLimits &limits={}) |
Prepare a complete .eva source package containing every non-empty GTS tile LOD as eve.mesh/2. | |
| Result< TerrainDetailCardGeometry > | buildTerrainDetailCard (const RuntimeInstancePrototype &prototype) |
| Build bottom-anchored unit cards for a texture-backed terrain Detail prototype. | |
| Result< TerrainMaterialAtlases > | buildTerrainMaterialAtlases (const asset::EvpackResourceReader &reader, const LoadedTerrainMaterial &material, const asset::EvpackCapabilities &capabilities, const TerrainMaterialAtlasLimits &limits={}) |
| Resolve canonical image references and assemble one 2x2 atlas per control map. | |
| Result< PackedTerrainMaterialAtlases > | packTerrainMaterialAtlases (const TerrainMaterialAtlases &atlases, const LoadedTerrainMaterial &material, const TerrainMaterialAtlasLimits &limits={}) |
| Repack grouped CPU atlases and material parameters for one terrain draw. | |
| Result< void > | releaseTerrainMaterialAtlases (graphics::IResourceFactory &factory, TerrainMaterialGpuSet &set) |
| Release every texture in a GPU set and clear it even if one backend release fails. | |
| Result< TerrainMaterialGpuSet > | uploadTerrainMaterialAtlases (graphics::IResourceFactory &factory, const TerrainMaterialAtlases &atlases) |
| Upload every atlas transactionally; partial failure releases earlier textures. | |
| Result< void > | releasePackedTerrainMaterialAtlases (graphics::IResourceFactory &factory, PackedTerrainMaterialGpuSet &set) |
| Release and clear a packed terrain GPU set. | |
| Result< PackedTerrainMaterialGpuSet > | uploadPackedTerrainMaterialAtlases (graphics::IResourceFactory &factory, const PackedTerrainMaterialAtlases &atlases) |
| Upload a packed terrain set transactionally. | |
| Result< void > | bindPackedTerrainMaterial (graphics::Shader &shader, const PackedTerrainMaterialGpuSet &gpu) |
| Bind a packed terrain set for one draw and publish its feature counts. | |
| Result< void > | bindTerrainMaterialGroup (graphics::Shader &shader, const TerrainMaterialGpuSet &gpu, const LoadedTerrainMaterial &material, std::size_t groupIndex) |
| Bind one uploaded group and its four layer values to a terrain shader. | |
| Result< TerrainVegetationGpuPlan > | buildTerrainVegetationGpuPlan (const TerrainVegetationRealization &realization, ITerrainVegetationGpuResolver &resolver, const TerrainVegetationGpuFrame &frame={}) |
| Resolve every prototype and build GPU records transactionally. | |
| Result< void > | submitTerrainVegetation (graphics::Graphics &graphics, const TerrainVegetationRealization &realization, ITerrainVegetationGpuResolver &resolver, const TerrainVegetationGpuFrame &frame={}) |
| Build and submit one terrain vegetation realization to the current GPU-driven frame. | |
| Result< TerrainVegetationRealization > | realizeTerrainVegetation (LoadedPointGraph *graph, const LoadedInstanceSet *explicitInstances, const TerrainVegetationLimits &limits={}) |
| Execute an optional terrain PCG graph and merge an optional baked instance set. | |
| Result< TerrainVegetationRealization > | filterTerrainVegetationByLayerWeights (const TerrainVegetationRealization &realization, const LoadedTerrainMaterial &material, const TerrainMaterialAtlases &atlases, const TerrainVegetationWeightDomain &domain) |
| Apply terrain RGBA layer weights to procedural instances using stable stochastic thinning. | |
函数说明
◆ bindPackedTerrainMaterial()
| EVENGINE_API_ORCHESTRATION Result< void > eve::asset_procgen::bindPackedTerrainMaterial | ( | graphics::Shader & | shader, |
| const PackedTerrainMaterialGpuSet & | gpu | ||
| ) |
Bind a packed terrain set for one draw and publish its feature counts.
在文件 TerrainMaterialAtlas.cpp 第 362 行定义.
引用了 eve::asset_procgen::PackedTerrainMaterialGpuSet::albedo, eve::asset_procgen::PackedTerrainMaterialGpuSet::controls, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::asset_procgen::PackedTerrainMaterialGpuSet::hasHoles, eve::InvalidArgument, eve::asset_procgen::PackedTerrainMaterialGpuSet::layerCount, eve::asset_procgen::PackedTerrainMaterialGpuSet::mask, eve::asset_procgen::PackedTerrainMaterialGpuSet::normal, eve::asset_procgen::PackedTerrainMaterialGpuSet::parameters, shader , 以及 eve::Result< T >::success().
◆ bindTerrainMaterialGroup()
| EVENGINE_API_ORCHESTRATION Result< void > eve::asset_procgen::bindTerrainMaterialGroup | ( | graphics::Shader & | shader, |
| const TerrainMaterialGpuSet & | gpu, | ||
| const LoadedTerrainMaterial & | material, | ||
| std::size_t | groupIndex | ||
| ) |
Bind one uploaded group and its four layer values to a terrain shader.
- 参数
-
shader Borrowed shader configured by Procgen::createTerrainMaterialShader. group Borrowed uploaded group retained through the draw. material Owning metadata retained for the call. groupIndex Group in [0, groups); selects layers groupIndex*4 through +3.
- 返回
- Success after all bindings are published, or failure before an invalid index is used. @thread Graphics thread only; synchronous and non-reentrant.
在文件 TerrainMaterialAtlas.cpp 第 379 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), group, eve::asset_procgen::TerrainMaterialGpuSet::groups, eve::asset_procgen::TerrainMaterialGpuSet::holes, eve::InvalidArgument, layer, material, metallic, shader , 以及 eve::Result< T >::success().
◆ buildTerrainDetailCard()
| EVENGINE_API_ORCHESTRATION Result< TerrainDetailCardGeometry > eve::asset_procgen::buildTerrainDetailCard | ( | const RuntimeInstancePrototype & | prototype | ) |
Build bottom-anchored unit cards for a texture-backed terrain Detail prototype.
- 参数
-
prototype Borrowed immutable prototype metadata.
- 返回
- One camera-facing quad for GrassBillboard or two crossed quads for Grass. @thread Worker-safe; allocates only detached CPU arrays and invokes no callbacks.
- 备注
- Mesh-backed and VertexLit prototypes return Unsupported so their authored mesh is never replaced.
在文件 TerrainDetailCard.cpp 第 19 行定义.
引用了 eve::asset_procgen::TerrainDetailCardGeometry::cameraFacing, eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), eve::InvalidArgument, eve::asset_procgen::RuntimeInstancePrototype::prototype, eve::asset_procgen::RuntimeInstancePrototype::renderMode, eve::Result< T >::success(), eve::Unsupported , 以及 eve::asset_procgen::RuntimeInstancePrototype::usePrototypeMesh.
◆ buildTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< TerrainMaterialAtlases > eve::asset_procgen::buildTerrainMaterialAtlases | ( | const asset::EvpackResourceReader & | reader, |
| const LoadedTerrainMaterial & | material, | ||
| const asset::EvpackCapabilities & | capabilities, | ||
| const TerrainMaterialAtlasLimits & | limits = {} |
||
| ) |
Resolve canonical image references and assemble one 2x2 atlas per control map.
- 参数
-
reader Borrowed immutable package reader valid for the call. material Owning loaded terrain metadata; image references are observed only for the call. capabilities Runtime capability selection used for every image. limits Layer, dimension and allocation budgets.
- 返回
- Detached linear RGBA8 atlases. Missing layer images use documented neutral texels; group zero without a control map uses red, and missing holes use white. @thread Worker-safe when reader is read concurrently; performs no GPU calls or callbacks.
在文件 TerrainMaterialAtlas.cpp 第 87 行定义.
引用了 albedo, count, eve::Diagnostic::error(), eve::Result< T >::failure(), first, eve::asset_procgen::TerrainMaterialAtlasGroup::firstLayer, group, eve::asset_procgen::TerrainMaterialAtlases::groups, eve::asset_procgen::TerrainMaterialAtlases::holes, image, eve::InvalidArgument, layer, limits, mask, material, normal, eve::NotFound, eve::asset_procgen::TerrainAtlasImage::pixels, eve::Result< T >::success() , 以及 eve::Result< T >::takeValue().
◆ buildTerrainVegetationGpuPlan()
| EVENGINE_API_ORCHESTRATION Result< TerrainVegetationGpuPlan > eve::asset_procgen::buildTerrainVegetationGpuPlan | ( | const TerrainVegetationRealization & | realization, |
| ITerrainVegetationGpuResolver & | resolver, | ||
| const TerrainVegetationGpuFrame & | frame = {} |
||
| ) |
Resolve every prototype and build GPU records transactionally.
- 参数
-
realization Borrowed immutable prototype-sorted realization. resolver Borrowed provider invoked once per bucket.
- 返回
- Detached GPU records, or failure before any graphics submission. @thread Graphics thread only because resolver resources are backend-owned.
在文件 TerrainVegetationGpu.cpp 第 18 行定义.
引用了 bucket, eve::asset_procgen::TerrainVegetationRealization::buckets, eve::Conflict, detail, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::asset_procgen::TerrainVegetationGpuPlan::instances, eve::asset_procgen::TerrainVegetationRealization::instances, eve::InvalidArgument, eve::graphics::kInvalidGpuDrivenSlot, eve::graphics::GpuInstance::model, model, eve::NotFound, offset, eve::asset_procgen::TerrainVegetationRealization::prototypes, eve::asset_procgen::ITerrainVegetationGpuResolver::resolve(), rotation, source, eve::Result< T >::success(), terrainWave, terrainWaveTint, eve::asset_procgen::TerrainVegetationGpuFrame::timeSeconds, eve::asset_procgen::TerrainVegetationRealization::wavingGrassAmount, eve::asset_procgen::TerrainVegetationRealization::wavingGrassSpeed, eve::asset_procgen::TerrainVegetationRealization::wavingGrassStrength , 以及 eve::asset_procgen::TerrainVegetationRealization::wavingGrassTint.
被这些函数引用 eve::asset_procgen::TerrainDetailRuntime::load(), submitTerrainVegetation() , 以及 eve::asset_procgen::TerrainVegetationRenderer::TerrainVegetationRenderer().
◆ filterTerrainVegetationByLayerWeights()
| EVENGINE_API_ORCHESTRATION Result< TerrainVegetationRealization > eve::asset_procgen::filterTerrainVegetationByLayerWeights | ( | const TerrainVegetationRealization & | realization, |
| const LoadedTerrainMaterial & | material, | ||
| const TerrainMaterialAtlases & | atlases, | ||
| const TerrainVegetationWeightDomain & | domain | ||
| ) |
Apply terrain RGBA layer weights to procedural instances using stable stochastic thinning.
- 参数
-
realization Borrowed realization; only instances with a non-empty layer are filtered. material Borrowed layer table whose names resolve instance layer attributes. atlases Borrowed linear RGBA8 control maps, one per four layers. domain Explicit world XZ projection and source V orientation.
- 返回
- Detached, re-bucketed realization; invalid maps or unknown layers fail atomically. @thread Worker-safe while all inputs remain immutable.
在文件 TerrainVegetationRuntime.cpp 第 170 行定义.
引用了 eve::Conflict, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::asset_procgen::TerrainVegetationWeightDomain::flipV, found, eve::asset_procgen::TerrainVegetationRealization::generatedCount, group, eve::asset_procgen::TerrainMaterialAtlases::groups, index, eve::asset_procgen::TerrainVegetationRealization::instances, eve::InvalidArgument, layer, material, eve::asset_procgen::TerrainVegetationWeightDomain::maximumX, eve::asset_procgen::TerrainVegetationWeightDomain::maximumZ, eve::asset_procgen::TerrainVegetationWeightDomain::minimumX, eve::asset_procgen::TerrainVegetationWeightDomain::minimumZ, eve::NotFound, eve::Result< T >::success(), u, v, weight , 以及 eve::asset_procgen::TerrainVegetationRealization::weightCulledCount.
◆ packTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< PackedTerrainMaterialAtlases > eve::asset_procgen::packTerrainMaterialAtlases | ( | const TerrainMaterialAtlases & | atlases, |
| const LoadedTerrainMaterial & | material, | ||
| const TerrainMaterialAtlasLimits & | limits | ||
| ) |
Repack grouped CPU atlases and material parameters for one terrain draw.
在文件 TerrainMaterialAtlas.cpp 第 186 行定义.
引用了 eve::asset_procgen::PackedTerrainMaterialAtlases::albedo, cell, eve::asset_procgen::PackedTerrainMaterialAtlases::controls, eve::Diagnostic::error(), eve::Result< T >::failure(), group, eve::asset_procgen::TerrainMaterialAtlases::groups, eve::asset_procgen::PackedTerrainMaterialAtlases::hasHoles, eve::asset_procgen::TerrainAtlasImage::height, eve::asset_procgen::TerrainMaterialAtlases::holes, image, eve::InvalidArgument, layer, eve::asset_procgen::PackedTerrainMaterialAtlases::layerCount, limits, eve::asset_procgen::PackedTerrainMaterialAtlases::mask, material, eve::asset_procgen::PackedTerrainMaterialAtlases::normal, eve::asset_procgen::PackedTerrainMaterialAtlases::parameters, eve::asset_procgen::TerrainAtlasImage::pixels, source, eve::Result< T >::success(), values, eve::asset_procgen::TerrainAtlasImage::width, x , 以及 y.
◆ prepareGtsTerrainLodPackage()
| EVENGINE_API_ORCHESTRATION Result< asset_import::PreparedAssetImport > eve::asset_procgen::prepareGtsTerrainLodPackage | ( | const asset_import::ImportPackageIdentity & | package, |
| const procgen::GtsTerrainLodSet & | lods, | ||
| const std::string & | terrainName, | ||
| const asset_import::AssetImportLimits & | limits = {} |
||
| ) |
Prepare a complete .eva source package containing every non-empty GTS tile LOD as eve.mesh/2.
- 参数
-
package Stable caller-owned package identity copied into the result. lods Borrowed immutable generated LOD set consumed synchronously. terrainName Filesystem-safe source terrain name used for audit mappings and mesh labels. limits Allocation and output limits applied before candidate publication.
- 返回
- Owned import candidate ready for
buildEvaArchive, or a structured failure with no partial result. @thread Worker-safe; performs no filesystem, graphics, script or callback operation.
在文件 GtsTerrainLodPackage.cpp 第 14 行定义.
引用了 eve::asset_import::detail::assetRef(), eve::asset_import::detail::baseManifest(), blob, eve::asset::buildEvaArchive(), eve::detail::Id128< Tag >::child(), eve::asset::CanonicalMeshData::colors, eve::asset::encodeCanonicalMesh(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::asset_import::detail::finalizeImportReport(), eve::procgen::GtsTerrainLodSet::getLevelCount(), eve::procgen::GtsTerrainLodSet::getTileCount(), eve::asset::CanonicalMeshData::indices, eve::InvalidArgument, key, limits, eve::asset::CanonicalMeshLimits::maximumDecodedBytes, eve::asset::CanonicalMeshLimits::maximumIndices, eve::asset::CanonicalMeshLimits::maximumVertices, mesh, eve::asset::CanonicalMeshData::normals, eve::asset_import::ImportPackageIdentity::packageId, eve::procgen::planGtsTerrainLodAssets(), eve::asset::CanonicalMeshData::positions, positions, eve::asset_import::detail::sha256(), eve::Result< T >::success(), eve::asset::CanonicalMeshData::texcoords , 以及 eve::procgen::GtsTerrainLodSet::tileAt().
◆ realizeTerrainVegetation()
| EVENGINE_API_ORCHESTRATION Result< TerrainVegetationRealization > eve::asset_procgen::realizeTerrainVegetation | ( | LoadedPointGraph * | graph, |
| const LoadedInstanceSet * | explicitInstances, | ||
| const TerrainVegetationLimits & | limits = {} |
||
| ) |
Execute an optional terrain PCG graph and merge an optional baked instance set.
- 参数
-
graph Mutable owning graph because execution updates its cache and metrics; caller serializes access for the duration of this call. Null omits procedural vegetation. explicitInstances Borrowed immutable baked instances. Null omits baked vegetation. limits Allocation and execution limits checked before publishing the detached result.
- 返回
- Prototype-sorted instances and buckets, or a structured failure with no partial result. @thread Worker-safe across distinct graph objects. Does not perform GPU calls or callbacks. @reentrancy Not reentrant for the same graph object.
在文件 TerrainVegetationRuntime.cpp 第 81 行定义.
引用了 eve::procgen::derivePointId(), ended, eve::Diagnostic::error(), eve::asset_procgen::TerrainVegetationRealization::explicitCount, eve::Result< T >::failure(), finite, eve::asset_procgen::TerrainVegetationRealization::generatedCount, graph, eve::asset_procgen::TerrainVegetationRealization::graphMilliseconds, eve::asset_procgen::TerrainVegetationRealization::graphNodesEvaluated, eve::asset_procgen::TerrainVegetationInstance::id, index, eve::asset_procgen::LoadedInstanceSet::instances, eve::asset_procgen::TerrainVegetationRealization::instances, eve::InvalidArgument, eve::asset_procgen::TerrainVegetationInstance::layer, limits, eve::asset_procgen::TerrainVegetationInstance::normal, eve::NotFound, eve::ParseError, point, points, eve::asset_procgen::TerrainVegetationInstance::position, eve::asset_procgen::TerrainVegetationInstance::prototype, eve::asset_procgen::LoadedInstanceSet::prototypes, eve::asset_procgen::TerrainVegetationRealization::prototypes, eve::asset_procgen::TerrainVegetationInstance::rotation, eve::asset_procgen::TerrainVegetationInstance::scale, eve::asset_procgen::TerrainVegetationInstance::seed, source, eve::Result< T >::success(), eve::asset_procgen::LoadedInstanceSet::wavingGrassAmount, eve::asset_procgen::TerrainVegetationRealization::wavingGrassAmount, eve::asset_procgen::LoadedInstanceSet::wavingGrassSpeed, eve::asset_procgen::TerrainVegetationRealization::wavingGrassSpeed, eve::asset_procgen::LoadedInstanceSet::wavingGrassStrength, eve::asset_procgen::TerrainVegetationRealization::wavingGrassStrength, eve::asset_procgen::LoadedInstanceSet::wavingGrassTint , 以及 eve::asset_procgen::TerrainVegetationRealization::wavingGrassTint.
◆ releasePackedTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< void > eve::asset_procgen::releasePackedTerrainMaterialAtlases | ( | graphics::IResourceFactory & | factory, |
| PackedTerrainMaterialGpuSet & | set | ||
| ) |
Release and clear a packed terrain GPU set.
在文件 TerrainMaterialAtlas.cpp 第 325 行定义.
引用了 eve::asset_procgen::PackedTerrainMaterialGpuSet::albedo, eve::asset_procgen::PackedTerrainMaterialGpuSet::controls, eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), handle, eve::asset_procgen::PackedTerrainMaterialGpuSet::hasHoles, eve::asset_procgen::PackedTerrainMaterialGpuSet::layerCount, eve::asset_procgen::PackedTerrainMaterialGpuSet::mask, eve::asset_procgen::PackedTerrainMaterialGpuSet::normal, eve::asset_procgen::PackedTerrainMaterialGpuSet::parameters, eve::graphics::IResourceFactory::releaseTexture() , 以及 eve::Result< T >::success().
被这些函数引用 uploadPackedTerrainMaterialAtlases().
◆ releaseTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< void > eve::asset_procgen::releaseTerrainMaterialAtlases | ( | graphics::IResourceFactory & | factory, |
| TerrainMaterialGpuSet & | set | ||
| ) |
Release every texture in a GPU set and clear it even if one backend release fails.
在文件 TerrainMaterialAtlas.cpp 第 280 行定义.
引用了 eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), group, eve::asset_procgen::TerrainMaterialGpuSet::groups, handle, eve::asset_procgen::TerrainMaterialGpuSet::holes, eve::graphics::IResourceFactory::releaseTexture() , 以及 eve::Result< T >::success().
被这些函数引用 uploadTerrainMaterialAtlases().
◆ submitTerrainVegetation()
| Result< void > eve::asset_procgen::submitTerrainVegetation | ( | graphics::Graphics & | graphics, |
| const TerrainVegetationRealization & | realization, | ||
| ITerrainVegetationGpuResolver & | resolver, | ||
| const TerrainVegetationGpuFrame & | frame = {} |
||
| ) |
Build and submit one terrain vegetation realization to the current GPU-driven frame.
- 返回
- Applied status after submission, or a structured failure without a partial submit. @thread Graphics thread only; synchronous and non-reentrant.
在文件 TerrainVegetationGpu.cpp 第 117 行定义.
引用了 buildTerrainVegetationGpuPlan(), eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), eve::graphics::Graphics::gpuDrivenSubmitOpaque() , 以及 eve::Result< T >::success().
◆ uploadPackedTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< PackedTerrainMaterialGpuSet > eve::asset_procgen::uploadPackedTerrainMaterialAtlases | ( | graphics::IResourceFactory & | factory, |
| const PackedTerrainMaterialAtlases & | atlases | ||
| ) |
Upload a packed terrain set transactionally.
在文件 TerrainMaterialAtlas.cpp 第 340 行定义.
引用了 eve::asset_procgen::PackedTerrainMaterialAtlases::albedo, eve::asset_procgen::PackedTerrainMaterialGpuSet::albedo, eve::asset_procgen::PackedTerrainMaterialAtlases::controls, eve::asset_procgen::PackedTerrainMaterialGpuSet::controls, eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), eve::asset_procgen::PackedTerrainMaterialAtlases::hasHoles, eve::asset_procgen::PackedTerrainMaterialGpuSet::hasHoles, image, eve::asset_procgen::PackedTerrainMaterialAtlases::layerCount, eve::asset_procgen::PackedTerrainMaterialGpuSet::layerCount, eve::asset_procgen::PackedTerrainMaterialAtlases::mask, eve::asset_procgen::PackedTerrainMaterialGpuSet::mask, eve::graphics::IResourceFactory::newTexture(), eve::asset_procgen::PackedTerrainMaterialAtlases::normal, eve::asset_procgen::PackedTerrainMaterialGpuSet::normal, eve::asset_procgen::PackedTerrainMaterialAtlases::parameters, eve::asset_procgen::PackedTerrainMaterialGpuSet::parameters, releasePackedTerrainMaterialAtlases() , 以及 eve::Result< T >::success().
◆ uploadTerrainMaterialAtlases()
| EVENGINE_API_ORCHESTRATION Result< TerrainMaterialGpuSet > eve::asset_procgen::uploadTerrainMaterialAtlases | ( | graphics::IResourceFactory & | factory, |
| const TerrainMaterialAtlases & | atlases | ||
| ) |
Upload every atlas transactionally; partial failure releases earlier textures.
在文件 TerrainMaterialAtlas.cpp 第 297 行定义.
引用了 eve::asset_procgen::TerrainMaterialGpuGroup::albedo, eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), group, eve::asset_procgen::TerrainMaterialAtlases::groups, eve::asset_procgen::TerrainMaterialGpuSet::groups, eve::asset_procgen::TerrainMaterialAtlases::holes, eve::asset_procgen::TerrainMaterialGpuSet::holes, image, eve::graphics::IResourceFactory::newTexture(), releaseTerrainMaterialAtlases(), source , 以及 eve::Result< T >::success().