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>
|
ezGALTextureHandle | GetRenderTarget (const ezGALTextureCreationDescription &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.
|
|
ezGALTextureHandle | GetRenderTarget (ezUInt32 uiWidth, ezUInt32 uiHeight, ezGALResourceFormat::Enum format, ezGALMSAASampleCount::Enum sampleCount=ezGALMSAASampleCount::None, ezUInt32 uiSliceColunt=1, ezGALTextureType::Enum textureType=ezGALTextureType::Texture2D) |
| Convenience functions which creates a texture description fit for a 2d render target without a mip chains.
|
|
void | ReturnRenderTarget (ezGALTextureHandle 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.
|
|
ezGALBufferHandle | GetBuffer (const ezGALBufferCreationDescription &bufferDesc) |
| Returns a buffer handle for the given buffer description.
|
|
void | ReturnBuffer (ezGALBufferHandle hBuffer) |
| Returns a buffer to the pool so other consumers can use it.
|
|
void | RunGC (ezUInt32 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 ezGALDeviceEvent &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 ezGPUResourcePool::RunGC |
( |
ezUInt32 |
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:
- /home/runner/work/ezEngine/ezEngine/Code/Engine/RendererCore/GPUResourcePool/GPUResourcePool.h
- /home/runner/work/ezEngine/ezEngine/Code/Engine/RendererCore/GPUResourcePool/Implementation/GPUResourcePool.cpp