载入中...
搜索中...
未找到
eve::graphics::IMeshResourceFactory类 参考abstract

Backend-owned mesh upload and release operations. 更多...

#include <IMeshResourceFactory.h>

类 eve::graphics::IMeshResourceFactory 继承关系图:
eve::asset_graphics::GraphicsMeshFactoryAdapter

Public 成员函数

virtual ~IMeshResourceFactory ()=default
 Releases IMeshResourceFactory resources.
 
virtual Result< Mesh * > uploadMesh (const float *posXYZ, const float *nrmXYZ, const float *uvST, int vertexCount, const std::uint32_t *indices, int indexCount)=0
 Upload validated, tightly packed mesh arrays.
 
virtual Result< Mesh * > uploadMeshColored (const float *, const float *, const float *, const float *, int, const std::uint32_t *, int)
 Upload a mesh with a tightly packed linear RGBA vertex-color stream.
 
virtual Result< void > setMeshTexcoords (Mesh *, std::uint32_t, std::span< const float >)
 Attach an owning UV stream to an uploaded mesh before publication. @thread Graphics thread; input is borrowed synchronously, without callbacks.
 
virtual Result< void > setMeshTangentFrame (Mesh *, std::span< const float >, std::span< const float >)
 Attach authored XYZ tangent and bitangent streams before mesh publication.
 
virtual Result< void > releaseMesh (Mesh *mesh)=0
 Release a mesh previously returned by this factory.
 

详细描述

Backend-owned mesh upload and release operations.

在文件 IMeshResourceFactory.h 第 15 行定义.

构造及析构函数说明

◆ ~IMeshResourceFactory()

virtual eve::graphics::IMeshResourceFactory::~IMeshResourceFactory ( )
virtualdefault

Releases IMeshResourceFactory resources.

成员函数说明

◆ releaseMesh()

virtual Result< void > eve::graphics::IMeshResourceFactory::releaseMesh ( Mesh *  mesh)
pure virtual

Release a mesh previously returned by this factory.

参数
meshBorrowed live mesh owned by this factory; not retained after the call. @thread Must run on the graphics thread.

在 eve::asset_graphics::GraphicsMeshFactoryAdapter 内被实现.

被这些函数引用 eve::asset_graphics::EvpackGraphicsLoader::loadMesh().

◆ setMeshTangentFrame()

virtual Result< void > eve::graphics::IMeshResourceFactory::setMeshTangentFrame ( Mesh *  ,
std::span< const float >  ,
std::span< const float >   
)
inlinevirtual

Attach authored XYZ tangent and bitangent streams before mesh publication.

备注
Graphics thread; synchronous borrowed inputs, no callbacks. Provider owns copies.
返回
Unsupported without tangent support; failure must leave the mesh unchanged.

Error.

被 eve::asset_graphics::GraphicsMeshFactoryAdapter 重载.

在文件 IMeshResourceFactory.h 第 57 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure() , 以及 eve::Unsupported.

被这些函数引用 eve::asset_graphics::EvpackGraphicsLoader::loadMesh().

◆ setMeshTexcoords()

virtual Result< void > eve::graphics::IMeshResourceFactory::setMeshTexcoords ( Mesh *  ,
std::uint32_t  ,
std::span< const float >   
)
inlinevirtual

Attach an owning UV stream to an uploaded mesh before publication. @thread Graphics thread; input is borrowed synchronously, without callbacks.

返回
Unsupported for providers without multi-UV support; no mutation on failure.

Error.

被 eve::asset_graphics::GraphicsMeshFactoryAdapter 重载.

在文件 IMeshResourceFactory.h 第 46 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure() , 以及 eve::Unsupported.

被这些函数引用 eve::asset_graphics::EvpackGraphicsLoader::loadMesh().

◆ uploadMesh()

virtual Result< Mesh * > eve::graphics::IMeshResourceFactory::uploadMesh ( const float *  posXYZ,
const float *  nrmXYZ,
const float *  uvST,
int  vertexCount,
const std::uint32_t *  indices,
int  indexCount 
)
pure virtual

Upload validated, tightly packed mesh arrays.

返回
Structured failure or a borrowed backend-owned mesh. @ownership The backend factory owns the returned mesh; caller must release it through this factory. @lifetime Valid until releaseMesh, backend shutdown, or graphics-device loss. @thread Must run on the graphics thread. All borrowed input arrays are consumed synchronously.

在 eve::asset_graphics::GraphicsMeshFactoryAdapter 内被实现.

被这些函数引用 eve::asset_graphics::EvpackGraphicsLoader::loadMesh().

◆ uploadMeshColored()

virtual Result< Mesh * > eve::graphics::IMeshResourceFactory::uploadMeshColored ( const float *  ,
const float *  ,
const float *  ,
const float *  ,
int  ,
const std::uint32_t *  ,
int   
)
inlinevirtual

Upload a mesh with a tightly packed linear RGBA vertex-color stream.

返回
Unsupported when a provider cannot retain vertex colors; no resource is created on failure.

Failure.

被 eve::asset_graphics::GraphicsMeshFactoryAdapter 重载.

在文件 IMeshResourceFactory.h 第 35 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure() , 以及 eve::Unsupported.

被这些函数引用 eve::asset_graphics::EvpackGraphicsLoader::loadMesh().


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