This class serves as a pool for GPU related resources (e.g. buffers and textures required for rendering). Note that the functions creating and returning render targets are thread safe (by using a mutex).
More...
#include <GPUResourcePool.h>
|
plGALTextureHandle | GetRenderTarget (const plGALTextureCreationDescription &textureDesc) |
| Returns a render target handle for the given texture description Note that you should return the handle to the pool and never destroy it directly with the device.
|
|
plGALTextureHandle | GetRenderTarget (plUInt32 uiWidth, plUInt32 uiHeight, plGALResourceFormat::Enum format, plGALMSAASampleCount::Enum sampleCount=plGALMSAASampleCount::None, plUInt32 uiSliceColunt=1) |
| Convenience functions which creates a texture description fit for a 2d render target without a mip chains.
|
|
void | ReturnRenderTarget (plGALTextureHandle hRenderTarget) |
| Returns a render target to the pool so other consumers can use it. Note that targets which are returned to the pool are susceptible to destruction due to garbage collection.
|
|
plGALBufferHandle | GetBuffer (const plGALBufferCreationDescription &bufferDesc) |
| Returns a buffer handle for the given buffer description.
|
|
void | ReturnBuffer (plGALBufferHandle hBuffer) |
| Returns a buffer to the pool so other consumers can use it.
|
|
void | RunGC (plUInt32 uiMinimumAge) |
| Tries to free resources which are currently in the pool. Triggered automatically due to allocation number / size thresholds but can be triggered manually (e.g. after editor window resize)
|
|
|
void | CheckAndPotentiallyRunGC () |
|
void | UpdateMemoryStats () const |
|
void | GALDeviceEventHandler (const plGALDeviceEvent &e) |
|
This class serves as a pool for GPU related resources (e.g. buffers and textures required for rendering). Note that the functions creating and returning render targets are thread safe (by using a mutex).
◆ RunGC()
void plGPUResourcePool::RunGC |
( |
plUInt32 | uiMinimumAge | ) |
|
Tries to free resources which are currently in the pool. Triggered automatically due to allocation number / size thresholds but can be triggered manually (e.g. after editor window resize)
- Parameters
-
uiMinimumAge | How many frames at least the resource needs to have been unused before it will be GCed. |
The documentation for this class was generated from the following files:
- Code/Engine/RendererCore/GPUResourcePool/GPUResourcePool.h
- Code/Engine/RendererCore/GPUResourcePool/Implementation/GPUResourcePool.cpp