29 #ifndef __MATERIAL_H__
30 #define __MATERIAL_H__
188 static const int MAX_FRAGMENT_IMAGES = 8;
189 static const int MAX_VERTEX_PARMS = 4;
194 int vertexParms[MAX_VERTEX_PARMS][4];
198 idImage * fragmentProgramImages[MAX_FRAGMENT_IMAGES];
347 virtual size_t Size(
void )
const;
350 virtual bool Parse(
const char *text,
const int textLength );
352 virtual void Print(
void )
const;
355 bool Save(
const char *fileName =
NULL );
360 virtual const char *
ImageName(
void )
const;
567 void SetGui(
const char *_gui )
const;
bool SurfaceCastsShadow(void) const
bool LightEffectsBackSides() const
void ParseStage(idLexer &src, const textureRepeat_t trpDefault=TR_REPEAT)
idImage * GetEditorImage(void) const
int EmitOp(int a, int b, expOpType_t opType)
assert(prefInfo.fullscreenBtn)
idList< const idMaterial * > idMatList
const float GetSort(void) const
int GetExpressionTemporary(void)
void ParseDeform(idLexer &src)
int ParseEmitOp(idLexer &src, int a, expOpType_t opType, int priority)
virtual bool SetDefaultText(void)
void ParseDecalInfo(idLexer &src)
bool ReceivesLighting(void) const
materialCoverage_t coverage
void ResetCinematicTime(int time) const
struct mtrParsingData_s * pd
const int GetNumStages(void) const
const float * ConstantRegisters() const
void ParseMaterial(idLexer &src)
void ClearStage(shaderStage_t *ss)
bool HasSubview(void) const
void UpdateCinematic(int time) const
deform_t Deform(void) const
decalInfo_t GetDecalInfo(void) const
int GetEntityGui(void) const
const shaderStage_t * GetBumpStage(void) const
float GetPolygonOffset(void) const
virtual void Print(void) const
virtual bool Parse(const char *text, const int textLength)
int GetImageHeight(void) const
bool IsBlendLight() const
int ParseExpression(idLexer &src)
void CheckForConstantRegisters()
void ReloadImages(bool force) const
bool Save(const char *fileName=NULL)
void ParseFragmentMap(idLexer &src, newShaderStage_t *newStage)
void EvaluateRegisters(float *regs, const float entityParms[MAX_ENTITY_SHADER_PARMS], const struct viewDef_s *view, idSoundEmitter *soundEmitter=NULL) const
bool IsAmbientLight() const
const idDecl * deformDecl
const int MAX_ENTITY_SHADER_PARMS
idImage * lightFalloffImage
bool LightCastsShadows() const
int GetExpressionConstant(float f)
bool AllowOverlays(void) const
void MultiplyTextureMatrix(textureStage_t *ts, int registers[2][3])
int numFragmentProgramImages
materialCoverage_t Coverage(void) const
idUserInterface * GlobalGui(void) const
float * constantRegisters
const char * GetRenderBump() const
int ParseTerm(idLexer &src)
void ParseBlend(idLexer &src, shaderStage_t *stage)
const cullType_t GetCullType(void) const
int ParseExpressionPriority(idLexer &src, int priority)
void SetMaterialFlag(const int flag) const
const shaderStage_t * GetStage(const int index) const
void AddToSurfaceArea(float area)
newShaderStage_t * newStage
virtual const char * ImageName(void) const
bool shouldCreateBackSides
virtual const char * DefaultDefinition(void) const
const int MAX_SHADER_STAGES
bool NoFragment(void) const
const int GetContentFlags(void) const
float privatePolygonOffset
bool CheckSurfaceParm(idToken *token)
const int GetSurfaceFlags(void) const
expOp_t * GetExpressionOp(void)
int texGenRegisters[MAX_TEXGEN_REGISTERS]
float GetEditorAlpha(void) const
virtual size_t Size(void) const
bool HasAmbient(void) const
int NameToDstBlendMode(const idStr &name)
GLubyte GLubyte GLubyte a
bool ReceivesFog(void) const
int CinematicLength(void) const
bool UseUnsmoothedTangents(void) const
const surfTypes_t GetSurfaceType(void) const
GLenum GLsizei GLsizei height
const int * GetTexGenRegisters(void) const
const int NUM_SURFACE_BITS
void AddImplicitStages(const textureRepeat_t trpDefault=TR_REPEAT)
const int MAX_TEXGEN_REGISTERS
const int GetNumRegisters() const
bool HasHigherDmapPriority(const idMaterial &other) const
idMegaTexture * megaTexture
int NameToSrcBlendMode(const idStr &name)
virtual void FreeData(void)
float * expressionRegisters
bool ShouldCreateBackSides(void) const
int GetImageWidth(void) const
bool ReceivesLightingOnBackSides(void) const
void ParseVertexParm(idLexer &src, newShaderStage_t *newStage)
stageVertexColor_t vertexColor
void SetGui(const char *_gui) const
const int GetDeformRegister(int index) const
float GetSurfaceArea(void) const
bool TestMaterialFlag(const int flag) const
const char * GetDescription(void) const
void ClearMaterialFlag(const int flag) const
void SetSort(float s) const
const idDecl * GetDeformDecl(void) const
bool SuppressInSubview() const
void SetImageClassifications(int tag) const
bool MatchToken(idLexer &src, const char *match)
const int MAX_SURFACE_TYPES
bool IsDiscrete(void) const
idImage * LightFalloffImage() const
void CloseCinematic(void) const
void SortInteractionStages()
void ParseSort(idLexer &src)