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. 更多...
#include <TerrainDetailGpuResolver.h>
Public 成员函数 | |
| ~TerrainDetailRuntime () | |
| Releases TerrainDetailRuntime resources. | |
| TerrainDetailRuntime (const TerrainDetailRuntime &)=delete | |
| TerrainDetailRuntime & | operator= (const TerrainDetailRuntime &)=delete |
| Result< void > | setFrame (TerrainVegetationGpuFrame frame) |
| Update the absolute simulation time used for deterministic grass motion. | |
| const Diagnostic * | lastSubmissionError () const |
| Return the latest asynchronous render-submission diagnostic, if any. @ownership Borrowed; the runtime retains ownership. @lifetime Valid until the next render callback, release, or destruction. | |
| Result< void > | release () |
| Unregister rendering and release all backend resources; safe to retry after failure. | |
静态 Public 成员函数 | |
| static Result< std::unique_ptr< TerrainDetailRuntime > > | load (const asset::EvpackResourceReader &reader, const asset::EvpackCapabilities &capabilities, graphics::Graphics &graphics, const AssetRef &asset, const TerrainVegetationLimits &limits={}) |
| Load, realize, and register one Detail set atomically; GPU resources resolve on first render. | |
详细描述
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.
在文件 TerrainDetailGpuResolver.h 第 62 行定义.
构造及析构函数说明
◆ ~TerrainDetailRuntime()
| eve::asset_procgen::TerrainDetailRuntime::~TerrainDetailRuntime | ( | ) |
◆ TerrainDetailRuntime()
|
delete |
成员函数说明
◆ lastSubmissionError()
| const Diagnostic * eve::asset_procgen::TerrainDetailRuntime::lastSubmissionError | ( | ) | const |
Return the latest asynchronous render-submission diagnostic, if any. @ownership Borrowed; the runtime retains ownership. @lifetime Valid until the next render callback, release, or destruction.
在文件 TerrainDetailGpuResolver.cpp 第 86 行定义.
◆ load()
|
static |
Load, realize, and register one Detail set atomically; GPU resources resolve on first render.
- 参数
-
reader Borrowed EVPACK reader containing the instance set and its resource closure. capabilities Runtime variant used for every resource selection. graphics Borrowed graphics backend that owns uploaded resources. asset Canonical eve.instance-setasset reference.limits Allocation limits applied before realization publication.
- 返回
- Owning active runtime, or a structured load failure with no render registration.
在文件 TerrainDetailGpuResolver.cpp 第 52 行定义.
引用了 eve::asset_procgen::buildTerrainVegetationGpuPlan(), limits, eve::asset_procgen::EvpackInstanceSetLoader::load() , 以及 eve::asset_procgen::realizeTerrainVegetation().
◆ operator=()
|
delete |
◆ release()
| Result< void > eve::asset_procgen::TerrainDetailRuntime::release | ( | ) |
Unregister rendering and release all backend resources; safe to retry after failure.
在文件 TerrainDetailGpuResolver.cpp 第 90 行定义.
引用了 eve::Result< T >::success().
被这些函数引用 ~TerrainDetailRuntime().
◆ setFrame()
| Result< void > eve::asset_procgen::TerrainDetailRuntime::setFrame | ( | TerrainVegetationGpuFrame | frame | ) |
Update the absolute simulation time used for deterministic grass motion.
在文件 TerrainDetailGpuResolver.cpp 第 79 行定义.
引用了 eve::Conflict, eve::Diagnostic::error() , 以及 eve::Result< T >::failure().
该类的文档由以下文件生成:
- src/modules/asset/procgen/TerrainDetailGpuResolver.h
- src/modules/asset/procgen/TerrainDetailGpuResolver.cpp