GFXD3D9ShaderConstBuffer Class Reference#include <gfxD3D9Shader.h>
Inheritance diagram for GFXD3D9ShaderConstBuffer:
[legend]List of all members.
|
Public Member Functions |
| | GFXD3D9ShaderConstBuffer (GFXD3D9Shader *shader, GFXD3D9ShaderBufferLayout *vertexLayoutF, GFXD3D9ShaderBufferLayout *vertexLayoutI, GFXD3D9ShaderBufferLayout *pixelLayoutF, GFXD3D9ShaderBufferLayout *pixelLayoutI) |
| | ~GFXD3D9ShaderConstBuffer () |
| void | activate (GFXD3D9ShaderConstBuffer *mPrevShaderBuffer) |
| | Called by GFXD3D9Device to activate this buffer.
|
| bool | isDirty () |
| | Used internally by GXD3D9ShaderConstBuffer to determine if it's dirty.
|
|
| virtual GFXShader * | getShader () |
| | Return the shader that created this buffer.
|
|
Actually set shader constant values - Parameters:
-
| name | Name of the constant, this should be a name contained in the array returned in getShaderConstDesc, if an invalid name is used, its ignored. |
|
| virtual void | set (GFXShaderConstHandle *handle, const F32 fv) |
| virtual void | set (GFXShaderConstHandle *handle, const Point2F &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const Point3F &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const Point4F &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const ColorF &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const S32 f) |
| virtual void | set (GFXShaderConstHandle *handle, const Point2I &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const Point3I &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const Point4I &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< F32 > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point2F > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point3F > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point4F > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< S32 > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point2I > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point3I > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const AlignedArray< Point4I > &fv) |
| virtual void | set (GFXShaderConstHandle *handle, const MatrixF &mat, const GFXShaderConstType matType=GFXSCT_Float4x4) |
| | Specify the type of the matrix, only the GFXSCT types ending in NxN are valid.
|
| virtual void | set (GFXShaderConstHandle *handle, const MatrixF *mat, const U32 arraySize, const GFXShaderConstType matrixType=GFXSCT_Float4x4) |
| | Same as above, but in array form.
|
|
| virtual const String | describeSelf () const |
| | The resource should put a description of itself (number of vertices, size/width of texture, etc.) in buffer.
|
| virtual void | zombify () |
| | When called the resource should destroy all device sensitive information (e.g. D3D resources in D3DPOOL_DEFAULT.
|
| virtual void | resurrect () |
| | When called the resource should restore all device sensitive information destroyed by zombify().
|
Private Attributes |
| GFXD3D9Shader * | mShader |
| GFXD3D9ShaderBufferLayout * | mVertexConstBufferLayoutF |
| GenericConstBuffer * | mVertexConstBufferF |
| GFXD3D9ShaderBufferLayout * | mPixelConstBufferLayoutF |
| GenericConstBuffer * | mPixelConstBufferF |
| GFXD3D9ShaderBufferLayout * | mVertexConstBufferLayoutI |
| GenericConstBuffer * | mVertexConstBufferI |
| GFXD3D9ShaderBufferLayout * | mPixelConstBufferLayoutI |
| GenericConstBuffer * | mPixelConstBufferI |
Constructor & Destructor Documentation
| GFXD3D9ShaderConstBuffer::GFXD3D9ShaderConstBuffer |
( |
GFXD3D9Shader * |
shader, |
|
|
GFXD3D9ShaderBufferLayout * |
vertexLayoutF, |
|
|
GFXD3D9ShaderBufferLayout * |
vertexLayoutI, |
|
|
GFXD3D9ShaderBufferLayout * |
pixelLayoutF, |
|
|
GFXD3D9ShaderBufferLayout * |
pixelLayoutI | |
|
) |
| | |
| GFXD3D9ShaderConstBuffer::~GFXD3D9ShaderConstBuffer |
( |
|
) |
|
Member Function Documentation
Called by GFXD3D9Device to activate this buffer.
- Parameters:
-
| mPrevShaderBuffer | The previously active buffer |
| bool GFXD3D9ShaderConstBuffer::isDirty |
( |
|
) |
|
Used internally by GXD3D9ShaderConstBuffer to determine if it's dirty.
| virtual GFXShader* GFXD3D9ShaderConstBuffer::getShader |
( |
|
) |
[virtual] |
Specify the type of the matrix, only the GFXSCT types ending in NxN are valid.
Implements GFXShaderConstBuffer.
Same as above, but in array form.
We don't use an AlignedArray here because the packing of non 4x4 arrays will differ more than we can express with an AlignedArray. So the API is responsible for marshaling the data into the format it needs. In practice, that means that 4x4 matrices are going to be quickest (straight memory copy on D3D and GL). Other dimensions will require "interesting" code to handle marshaling.
Implements GFXShaderConstBuffer.
| virtual const String GFXD3D9ShaderConstBuffer::describeSelf |
( |
|
) |
const [virtual] |
The resource should put a description of itself (number of vertices, size/width of texture, etc.) in buffer.
Implements GFXShaderConstBuffer.
| virtual void GFXD3D9ShaderConstBuffer::zombify |
( |
|
) |
[virtual] |
When called the resource should destroy all device sensitive information (e.g. D3D resources in D3DPOOL_DEFAULT.
Implements GFXResource.
| virtual void GFXD3D9ShaderConstBuffer::resurrect |
( |
|
) |
[virtual] |
When called the resource should restore all device sensitive information destroyed by zombify().
Implements GFXResource.
Member Data Documentation
|