class DynamicResourcePool

File location: framework/cauldron/framework/inc/render/dynamicresourcepool.h

Typedefs

Type

Description

typedef void

(*TextureResizeFunction )( TextureDesc &, uint32_t, uint32_t, uint32_t, uint32_t )

typedef void

(*BufferResizeFunction )( BufferDesc &, uint32_t, uint32_t, uint32_t, uint32_t )

Construction

Return type

Description

Construction.

Methods

Return type

Description

void

Callback when the rendering resolution changed. Will call all resource resize function callbacks and recreate/rebind all resources automatically in the background.

void

DestroyResource (const GPUResource * pResource)
Destroys a GPU resource.

const Texture *

GetTexture (const wchar_t* name)
Fetches a “Texture“ resource by name. Will assert when called on the main thread while the Framework is running as it uses a map construct for lookup.

const Buffer *

GetBuffer (const wchar_t* name)
Fetches a “Buffer“ resource by name. Will assert when called on the main thread while the Framework is running as it uses a map construct for lookup.

const Texture *

CreateTexture ( const TextureDesc * pDesc, ResourceState initialState, TextureResizeFunction fn = nullptr )
Creates a “Texture“ resource. Will create the resource is the requested state.

const Texture *

CreateRenderTexture ( const TextureDesc * pDesc, TextureResizeFunction fn = nullptr )
Creates a “Texture“ resource for rendering. Will automatically add AllowRenderTarget/AllowDepthTarget resource flag based on the resource type.

const Buffer *

CreateBuffer ( const BufferDesc * pDesc, ResourceState initialState, BufferResizeFunction fn = nullptr )
Creates a “Buffer“ resource. Will create the resource is the requested state.

Detailed description

Construction

DynamicResourcePool

Copied!

DynamicResourcePool ()

Construction.


Methods

OnResolutionChanged

Copied!

void OnResolutionChanged (const ResolutionInfo & resInfo)

Callback when the rendering resolution changed. Will call all resource resize function callbacks and recreate/rebind all resources automatically in the background.


DestroyResource

Copied!

void DestroyResource (const GPUResource * pResource)

Destroys a GPU resource.


GetTexture

Copied!

const Texture * GetTexture (const wchar_t* name)

Fetches a Texture resource by name. Will assert when called on the main thread while the Framework is running as it uses a map construct for lookup.


GetBuffer

Copied!

const Buffer * GetBuffer (const wchar_t* name)

Fetches a Buffer resource by name. Will assert when called on the main thread while the Framework is running as it uses a map construct for lookup.


CreateTexture

Copied!

const Texture * CreateTexture (
    const TextureDesc * pDesc,
    ResourceState  initialState,
    TextureResizeFunction  fn = nullptr
)

Creates a Texture resource. Will create the resource is the requested state.


CreateRenderTexture

Copied!

const Texture * CreateRenderTexture (
    const TextureDesc * pDesc,
    TextureResizeFunction  fn = nullptr
)

Creates a Texture resource for rendering. Will automatically add AllowRenderTarget/AllowDepthTarget resource flag based on the resource type.


CreateBuffer

Copied!

const Buffer * CreateBuffer (
    const BufferDesc * pDesc,
    ResourceState  initialState,
    BufferResizeFunction  fn = nullptr
)

Creates a Buffer resource. Will create the resource is the requested state.