载入中...
搜索中...
未找到
eve::asset_procgen::TerrainDetailGpuResolver类 参考final

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. 更多...

#include <TerrainDetailGpuResolver.h>

类 eve::asset_procgen::TerrainDetailGpuResolver 继承关系图:
eve::asset_procgen::ITerrainVegetationGpuResolver

类

struct  Impl
 

Public 成员函数

 TerrainDetailGpuResolver (const asset::EvpackResourceReader &reader, const asset::EvpackCapabilities &capabilities, graphics::Graphics &graphics)
 Constructs a TerrainDetailGpuResolver.
 
 ~TerrainDetailGpuResolver () override
 Releases TerrainDetailGpuResolver resources.
 
 TerrainDetailGpuResolver (const TerrainDetailGpuResolver &)=delete
 
TerrainDetailGpuResolver & operator= (const TerrainDetailGpuResolver &)=delete
 
Result< TerrainVegetationGpuPrototype > resolve (const TerrainVegetationGpuPrototypeRequest &prototype) override
 Load and cache one Detail card, image, and masked material transactionally.
 
Result< void > drawShadow (const TerrainVegetationGpuPrototypeRequest &prototype, const std::array< float, 16 > &transform, const std::array< float, 16 > &lightViewProjection) override
 Draw one realized Detail instance in the active cascade shadow pass.
 
Result< void > release ()
 Release all backend leases; failed releases remain owned for retry.
 
- Public 成员函数 继承自 eve::asset_procgen::ITerrainVegetationGpuResolver
virtual ~ITerrainVegetationGpuResolver ()=default
 Releases ITerrainVegetationGpuResolver resources.
 

详细描述

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.

在文件 TerrainDetailGpuResolver.h 第 27 行定义.

构造及析构函数说明

◆ TerrainDetailGpuResolver() [1/2]

eve::asset_procgen::TerrainDetailGpuResolver::TerrainDetailGpuResolver ( const asset::EvpackResourceReader &  reader,
const asset::EvpackCapabilities &  capabilities,
graphics::Graphics &  graphics 
)

Constructs a TerrainDetailGpuResolver.

在文件 TerrainDetailGpuResolver.cpp 第 37 行定义.

◆ ~TerrainDetailGpuResolver()

eve::asset_procgen::TerrainDetailGpuResolver::~TerrainDetailGpuResolver ( )
override

Releases TerrainDetailGpuResolver resources.

在文件 TerrainDetailGpuResolver.cpp 第 42 行定义.

引用了 release().

◆ TerrainDetailGpuResolver() [2/2]

eve::asset_procgen::TerrainDetailGpuResolver::TerrainDetailGpuResolver ( const TerrainDetailGpuResolver &  )
delete

成员函数说明

◆ drawShadow()

Result< void > eve::asset_procgen::TerrainDetailGpuResolver::drawShadow ( const TerrainVegetationGpuPrototypeRequest &  prototype,
const std::array< float, 16 > &  transform,
const std::array< float, 16 > &  lightViewProjection 
)
overridevirtual

Draw one realized Detail instance in the active cascade shadow pass.

实现了 eve::asset_procgen::ITerrainVegetationGpuResolver.

在文件 TerrainDetailGpuResolver.cpp 第 207 行定义.

引用了 eve::Conflict, detail, eve::Diagnostic::error(), eve::Result< T >::failure(), found, key, eve::NotFound, request , 以及 eve::Result< T >::success().

◆ operator=()

TerrainDetailGpuResolver & eve::asset_procgen::TerrainDetailGpuResolver::operator= ( const TerrainDetailGpuResolver &  )
delete

◆ release()

Result< void > eve::asset_procgen::TerrainDetailGpuResolver::release ( )

Release all backend leases; failed releases remain owned for retry.

在文件 TerrainDetailGpuResolver.cpp 第 231 行定义.

引用了 eve::Result< T >::failure(), image, material, mesh, prefab , 以及 eve::Result< T >::success().

被这些函数引用 ~TerrainDetailGpuResolver().

◆ resolve()


该类的文档由以下文件生成: