MeshCache

MeshCache
Declaration
class MeshCache : public Render::MeshCache;
Description

D3D12 mesh cache implementation with the following characteristics: 

- Multiple cache lists and allocators; one per buffer. 

- Relies on 'Extended Locks'. 

In D3D12, index and vertex buffers are allocated separately.

Methods
Method 
Description 
Allocates MeshCache item and its buffers. 
Determines whether the cache buffers are locked or unlocked. 
Begins rendering the current frame. 
Clears mesh cache, releasing all buffers except for reserve. 
Informs cache that the frame rendering has ended. 
Evicts the mesh data item from the mesh/index caches and frees it. 
Returns the QueueMode which reports the type of the queue handling performed on the meshes. 
Returns the statistics pertaining to mesh cache. 
Initializes MeshCache for operation, including allocation of the reserve buffer. 
Locks the cache buffers by pinning the meshes. 
Locks the buffers (VB/IB) of a MeshCacheItem, returning CPU addressable memory to update them. 
MeshCache constructor. 
Resets the mesh cache, releasing all buffers. 
Sets the command list for the MeshCache to use (ie. to copy resources). 
Sets new MeshCache parameters, recreating mesh buffers if the cache is already initialized. 
Unlocks the cache buffers required during the render queue processing. 
File

D3D12_MeshCache.h