Graphics::MaterialShader class

Derived classes

class ShaderBuilder
class StandardShader

Public types

enum GeometryType { kGeometryTypeNA = 0xFFFFFFFF, kGeometryTypeStatic = 0x0, kGeometryTypeSkinned = 0x1, kGeometryTypeMorphed = 0x2, kGeometryTypeNumTypes = 0x3 }
using LoadShader_t = BOOL(*)(RenderWare::Mesh*)
This type of function is called when rendering a mesh, before the DrawIndexedPrimitives is called.

Public static functions

static auto Initialize(MaterialShader* dst, uint32_t shaderID, int arg_8, int arg_C, int arg_10, int vertexShaderVersion, int vertexShaderVersion_, int pixelShaderVersion, int pixelShaderVersion_) -> MaterialShader*
static auto GetMaterialShader(uint32_t shaderID) -> MaterialShader*

Public functions

auto AddRef() -> int
auto GetLoadMethod() const -> LoadShader_t
void SetLoadMethod(LoadShader_t method)

Protected variables

GeometryType mGeomType
int mFlags
int mElementTypes
int16_t mVertexShaderVersion
int16_t mVertexShaderVersion_
int16_t mPixelShaderVersion
int16_t mPixelShaderVersion_
LoadShader_t mpCallback
int mNumDataTypes
int mDataTypeList
int mVertexShaderUpdateFlags
int mNumVertexShaderBuilders
int mVertexShaderBuilders
int mPixelShaderUpdateFlags
int mNumPixelShaderBuilders
int mPixelShaderBuilders
uint32_t mID
int mnRefCount
int field_40
int field_44

Typedef documentation

typedef BOOL(*Graphics::MaterialShader::LoadShader_t)(RenderWare::Mesh*)

This type of function is called when rendering a mesh, before the DrawIndexedPrimitives is called.

This function is responsible of loading the shaders into DirectX.