|
nux-1.14.0
|
Public Member Functions | |
| CachedMeshBuffer (NResourceSet *ResourceManager, MeshBuffer *resource) | |
| bool | UpdateResource (ResourceData *Resource) |
Public Attributes | |
| ObjectPtr< CachedVertexBuffer > | _cached_vertex_buffer |
|
ObjectPtr < CachedVertexDeclaration > | _cached_vertex_declaration |
| ObjectPtr< CachedIndexBuffer > | _cached_index_buffer |
| NuxMeshPrimitiveType | _mesh_primitive_type |
Definition at line 230 of file GLVertexResourceManager.h.
| bool nux::CachedMeshBuffer::UpdateResource | ( | ResourceData * | Resource | ) | [virtual] |
Updates the resource.
Implements nux::CachedResourceData.
Definition at line 552 of file GLVertexResourceManager.cpp.
References nux::GraphicsEngine::CacheResource().
{
nuxAssert(source->Type().IsDerivedFromType(MeshBuffer::StaticObjectType));
MeshBuffer* mesh_buffer = NUX_STATIC_CAST(MeshBuffer*, source);
_cached_vertex_buffer = GetGraphicsDisplay()->GetGraphicsEngine()->CacheResource(mesh_buffer->_vertex_buffer);
_cached_index_buffer = GetGraphicsDisplay()->GetGraphicsEngine()->CacheResource(mesh_buffer->_index_buffer);
_cached_vertex_declaration = GetGraphicsDisplay()->GetGraphicsEngine()->CacheResource(mesh_buffer->_vertex_declaration);
_cached_vertex_declaration->_declaration->SetVertexBuffer(0, _cached_vertex_buffer->_vertex_buffer);
_cached_vertex_declaration->_declaration->SetVertexBuffer(1, _cached_vertex_buffer->_vertex_buffer);
_cached_vertex_declaration->_declaration->SetVertexBuffer(2, _cached_vertex_buffer->_vertex_buffer);
_mesh_primitive_type = mesh_buffer->_mesh_primitive_type;
//
return true;
}