143 {
return (Flags>>
flag) & 0x1; }
170 void Set_Lighting(
bool lighting) { CRCDirty=
true; UseLighting=lighting; };
251 _D3DMATERIAL8 * MaterialOld;
254 unsigned int AmbientColorSource;
255 unsigned int EmissiveColorSource;
256 unsigned int DiffuseColorSource;
260 unsigned int UniqueID;
261 mutable unsigned long CRC;
262 mutable bool CRCDirty;
269 void Apply(
void)
const;
273 static void Apply_Null(
void);
274 unsigned long VertexMaterialClass::Compute_CRC(
void)
const;
288 Mapper[stage]->Add_Ref();
290 return Mapper[stage];
295 return Mapper[stage];
302 Mapper[stage]->Reset();
310 if (Mapper[stage] && (Mapper[stage]->Needs_Normals()))
return true;
318 if (Mapper[stage] && (Mapper[stage]->Is_Time_Variant()))
return true;
#define W3DMAPPING_ENVIRONMENT
#define W3DMPO_GLUE(ARGCLASS)
float Get_Shininess(void) const
void Set_Lighting(bool lighting)
void Parse_W3dVertexMaterialStruct(const W3dVertexMaterialStruct &vmat)
bool Do_Mappers_Need_Normals(void) const
static VertexMaterialClass * Get_Preset(PresetType type)
void Get_Diffuse(Vector3 *set_color) const
WW3DErrorType Save_W3D(ChunkSaveClass &csave)
ColorSourceType Get_Diffuse_Color_Source(void)
ColorSourceType Get_Emissive_Color_Source(void)
TextureMapperClass * Get_Mapper(int stage=0)
ColorSourceType Get_Ambient_Color_Source(void)
@ COPY_SPECULAR_TO_DIFFUSE
unsigned long Get_CRC(void) const
int Get_Flag(FlagsType flag)
void Parse_Mapping_Args(const W3dVertexMaterialStruct &vmat, char *mapping0_arg_buffer, char *mapping1_arg_buffer)
void Set_Specular(const Vector3 &color)
void Set_Diffuse(const Vector3 &color)
int Get_UV_Source(int stage)
TextureMapperClass * Peek_Mapper(int stage=0)
void Set_Ambient(const Vector3 &color)
void Set_Flag(FlagsType flag, bool onoff)
void Set_Shininess(float shin)
void Set_Emissive(const Vector3 &color)
VertexMaterialClass(void)
void Set_Ambient_Color_Source(ColorSourceType src)
void Get_Emissive(Vector3 *set_color) const
bool Are_Mappers_Time_Variant(void) const
void Set_Mapper(TextureMapperClass *mapper, int stage=0)
void Get_Ambient(Vector3 *set_color) const
void Get_Specular(Vector3 *set_color) const
void Set_Emissive_Color_Source(ColorSourceType src)
WW3DErrorType Load_W3D(ChunkLoadClass &cload)
~VertexMaterialClass(void)
VertexMaterialClass & operator=(const VertexMaterialClass &src)
const char * Get_Name(void) const
void Set_Name(const char *name)
float Get_Opacity(void) const
VertexMaterialClass * Clone(void)
void Init_From_Material3(const W3dMaterial3Struct &mat3)
bool Get_Lighting() const
void Set_Opacity(float o)
void Set_Diffuse_Color_Source(ColorSourceType src)
void Set_UV_Source(int stage, int array_index)
#define REF_PTR_SET(dst, src)