GFXD3D9ShaderConstBuffer
Engine/source/gfx/D3D9/gfxD3D9Shader.h
The D3D9 implementation of a shader constant buffer.
Public Friends
class
Protected Attributes
IDirect3DDevice9 *
A cached direct pointer to the device.
We keep a weak reference to the shader because it will often be deleted.
Public Functions
GFXD3D9ShaderConstBuffer(GFXD3D9Shader * shader, GFXD3D9ShaderBufferLayout * vertexLayoutF, GFXD3D9ShaderBufferLayout * vertexLayoutI, GFXD3D9ShaderBufferLayout * pixelLayoutF, GFXD3D9ShaderBufferLayout * pixelLayoutI)
activate(GFXD3D9ShaderConstBuffer * prevShaderBuffer)
Called by GFXD3D9Device to activate this buffer.
The resource should put a description of itself (number of vertices, size/width of texture, etc.) in buffer.
bool
isDirty()
Used internally by GXD3D9ShaderConstBuffer to determine if it's dirty.
onShaderReload(GFXD3D9Shader * shader)
Called from GFXD3D9Shader when constants have changed and need to be the shader this buffer references is reloaded.
set(GFXShaderConstHandle * handle, const AlignedArray< F32 > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point2F > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point2I > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point3F > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point3I > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point4F > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< Point4I > & fv)
set(GFXShaderConstHandle * handle, const AlignedArray< S32 > & fv)
set(GFXShaderConstHandle * handle, const ColorF & fv)
set(GFXShaderConstHandle * handle, const F32 f)
Set a shader constant.
set(GFXShaderConstHandle * handle, const MatrixF & mat, const GFXShaderConstType matrixType)
Set a variable sized matrix shader constant.
set(GFXShaderConstHandle * handle, const MatrixF * mat, const U32 arraySize, const GFXShaderConstType matrixType)
Set a variable sized matrix shader constant from an array of matricies.
set(GFXShaderConstHandle * handle, const PlaneF & fv)
set(GFXShaderConstHandle * handle, const Point2F & fv)
set(GFXShaderConstHandle * handle, const Point2I & fv)
set(GFXShaderConstHandle * handle, const Point3F & fv)
set(GFXShaderConstHandle * handle, const Point3I & fv)
set(GFXShaderConstHandle * handle, const Point4F & fv)
set(GFXShaderConstHandle * handle, const Point4I & fv)
set(GFXShaderConstHandle * handle, const S32 f)
Protected Functions
SET_CONSTANT(GFXShaderConstHandle * handle, const T & fv, GenericConstBuffer * vBuffer, GenericConstBuffer * pBuffer)
Detailed Description
The D3D9 implementation of a shader constant buffer.
Public Friends
Protected Attributes
IDirect3DDevice9 * mDevice
A cached direct pointer to the device.
GenericConstBuffer * mPixelConstBufferF
GenericConstBuffer * mPixelConstBufferI
GFXD3D9ShaderBufferLayout * mPixelConstBufferLayoutF
GFXD3D9ShaderBufferLayout * mPixelConstBufferLayoutI
WeakRefPtr< GFXD3D9Shader > mShader
We keep a weak reference to the shader because it will often be deleted.
GenericConstBuffer * mVertexConstBufferF
GenericConstBuffer * mVertexConstBufferI
GFXD3D9ShaderBufferLayout * mVertexConstBufferLayoutF
GFXD3D9ShaderBufferLayout * mVertexConstBufferLayoutI
Public Functions
GFXD3D9ShaderConstBuffer(GFXD3D9Shader * shader, GFXD3D9ShaderBufferLayout * vertexLayoutF, GFXD3D9ShaderBufferLayout * vertexLayoutI, GFXD3D9ShaderBufferLayout * pixelLayoutF, GFXD3D9ShaderBufferLayout * pixelLayoutI)
~GFXD3D9ShaderConstBuffer()
activate(GFXD3D9ShaderConstBuffer * prevShaderBuffer)
Called by GFXD3D9Device to activate this buffer.
Parameters:
| mPrevShaderBuffer | The previously active buffer |
describeSelf()
Reimplemented from: GFXResource
getShader()
Reimplemented from: GFXShaderConstBuffer
isDirty()
Used internally by GXD3D9ShaderConstBuffer to determine if it's dirty.
onShaderReload(GFXD3D9Shader * shader)
Called from GFXD3D9Shader when constants have changed and need to be the shader this buffer references is reloaded.
resurrect()
Reimplemented from: GFXResource
set(GFXShaderConstHandle * handle, const AlignedArray< F32 > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point2F > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point2I > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point3F > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point3I > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point4F > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< Point4I > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const AlignedArray< S32 > & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const ColorF & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const F32 f)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const MatrixF & mat, const GFXShaderConstType matrixType)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const MatrixF * mat, const U32 arraySize, const GFXShaderConstType matrixType)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const PlaneF & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point2F & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point2I & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point3F & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point3I & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point4F & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const Point4I & fv)
Reimplemented from: GFXShaderConstBuffer
set(GFXShaderConstHandle * handle, const S32 f)
Reimplemented from: GFXShaderConstBuffer
zombify()
Reimplemented from: GFXResource
Protected Functions
SET_CONSTANT(GFXShaderConstHandle * handle, const T & fv, GenericConstBuffer * vBuffer, GenericConstBuffer * pBuffer)
