77 void Reset(
int polycount,
int vertcount,
int passcount);
310 return UV[
UVSource[pass][stage]]->Get_Array();
321 UVSource[pass][stage] = sourceindex;
346 if (create && !
UV[index]) {
350 return UV[index]->Get_Array();
484 for (
int pass = 0; pass <
PassCount; pass++) {
487 for (
int tri = 0; tri <
ShaderArray[pass]->Get_Count(); tri++) {
#define W3DMPO_GLUE(ARGCLASS)
VertexMaterialClass * Peek_Element(int index)
VertexMaterialClass * Get_Element(int index)
void Set_Element(int index, VertexMaterialClass *mat)
MatBufferClass(int count, const char *msg)
TextureClass * Texture[MAX_PASSES][MAX_TEX_STAGES]
int Get_Pass_Count(void) const
VertexMaterialClass * Peek_Material(int vidx, int pass=0) const
friend class MeshModelClass
unsigned * Get_Color_Array(int array, bool create=true)
void Install_UV_Array(int pass, int stage, Vector2 *uvs, int count)
TexBufferClass * TextureArray[MAX_PASSES][MAX_TEX_STAGES]
VertexMaterialClass * Material[MAX_PASSES]
MatBufferClass * Get_Material_Array(int pass, bool create=true)
void Set_Texture(int pidx, TextureClass *tex, int pass=0, int stage=0)
ShareBufferClass< ShaderClass > * ShaderArray[MAX_PASSES]
bool Has_Texture_Data(int pass, int stage)
ShaderClass Shader[MAX_PASSES]
int Get_UV_Source(int pass, int stage)
Vector2 * Get_UV_Array_By_Index(int index, bool create=true)
void Delete_Pass(int pass)
VertexMaterialClass * Get_Single_Material(int pass=0) const
VertexMaterialClass::ColorSourceType Get_DIG_Source(int pass)
Vector2 * Get_UV_Array(int pass, int stage)
TextureClass * Get_Single_Texture(int pass=0, int stage=0) const
bool Has_UV(int pass, int stage)
void Reset(int polycount, int vertcount, int passcount)
void Set_Single_Texture(TextureClass *tex, int pass=0, int stage=0)
void Set_Shader(int pidx, ShaderClass shader, int pass=0)
int Get_Vertex_Count(void) const
VertexMaterialClass::ColorSourceType DCGSource[MAX_PASSES]
bool Has_Shader_Array(int pass) const
TextureClass * Get_Texture(int pidx, int pass=0, int stage=0) const
void Configure_Material(VertexMaterialClass *mtl, int pass, bool lighting_enabled)
unsigned * Get_DCG_Array(int pass)
ShaderClass Get_Shader(int pidx, int pass=0) const
void Set_Vertex_Count(int vertcount)
void Disable_Lighting(void)
static ShaderClass NullShader
unsigned * Get_DIG_Array(int pass)
TexBufferClass * Get_Texture_Array(int pass, int stage, bool create=true)
ShaderClass * Get_Shader_Array(int pass, bool create=true)
int Get_UV_Array_Count(void)
VertexMaterialClass * Peek_Single_Material(int pass=0) const
int Get_Polygon_Count(void) const
void Post_Load_Process(bool enable_lighting=true, MeshModelClass *parent=NULL)
UVBufferClass * UV[MAX_UV_ARRAYS]
bool Has_Texture_Array(int pass, int stage) const
MeshMatDescClass & operator=(const MeshMatDescClass &that)
void Make_Color_Array_Unique(int index)
void Set_UV_Source(int pass, int stage, int sourceindex)
MatBufferClass * MaterialArray[MAX_PASSES]
bool Has_Shader_Data(int pass)
VertexMaterialClass * Get_Material(int vidx, int pass=0) const
bool Do_Mappers_Need_Normals(void)
bool Has_Color_Array(int array)
void Set_Pass_Count(int passes)
void Set_Material(int vidx, VertexMaterialClass *vmat, int pass=0)
void Init_Alternate(MeshMatDescClass &def_mat_desc, MeshMatDescClass &alternate_desc)
void Make_UV_Array_Unique(int pass, int stage)
void Set_Single_Material(VertexMaterialClass *vmat, int pass=0)
TextureClass * Peek_Single_Texture(int pass=0, int stage=0) const
VertexMaterialClass::ColorSourceType Get_DCG_Source(int pass)
bool Has_Material_Data(int pass)
TextureClass * Peek_Texture(int pidx, int pass=0, int stage=0) const
void Disable_Backface_Culling(void)
ShaderClass Get_Single_Shader(int pass=0) const
void Set_DCG_Source(int pass, VertexMaterialClass::ColorSourceType source)
void Set_Polygon_Count(int polycount)
void Set_DIG_Source(int pass, VertexMaterialClass::ColorSourceType source)
void Set_Single_Shader(ShaderClass shader, int pass=0)
VertexMaterialClass::ColorSourceType DIGSource[MAX_PASSES]
ShareBufferClass< unsigned > * ColorArray[2]
bool Has_Material_Array(int pass) const
int UVSource[MAX_PASSES][MAX_TEX_STAGES]
ShareBufferClass(int count, const char *msg)
TextureClass * Get_Element(int index)
TexBufferClass(int count, const char *msg)
void Set_Element(int index, TextureClass *mat)
TextureClass * Peek_Element(int index)
unsigned int Get_CRC(void)
UVBufferClass(int count, const char *msg)
bool operator==(const UVBufferClass &that)
bool Is_Equal_To(const UVBufferClass &that)