jedi-outcast/utils/Radiant/textures.h
2013-04-22 15:25:59 +10:00

74 lines
2 KiB
C

//--typedef struct texdef_s
//--{
//-- char name[32];
//-- float shift[2];
//-- float rotate;
//-- float scale[2];
//-- int contents;
//-- int flags;
//-- int value;
//--} texdef_t;
//--
//--typedef struct
//--{
//-- int width, height;
//-- int originy;
//-- texdef_t texdef;
//-- int m_nTotalHeight;
//--} texturewin_t;
//--
//--#define QER_TRANS 0x00000001
//--#define QER_NOCARVE 0x00000002
//--
//--typedef struct qtexture_s
//--{
//-- struct qtexture_s *next;
//-- char name[64]; // includes partial directory and extension
//-- int width, height;
//-- int contents;
//-- int flags;
//-- int value;
//-- int texture_number; // gl bind number
//--
//-- char shadername[1024]; // old shader stuff
//-- qboolean bFromShader; // created from a shader
//-- float fTrans; // amount of transparency
//-- int nShaderFlags; // qer_ shader flags
//-- vec3_t color; // for flat shade mode
//-- qboolean inuse; // true = is present on the level
//--} qtexture_t;
//--
// a texturename of the form (0 0 0) will
// create a solid color texture
void Texture_Init (bool bHardInit = true);
void Texture_Flush (bool bReload = false);
void Texture_ClearInuse (void);
void Texture_ShowInuse (void);
void Texture_ShowDirectory (int menunum, bool bLinked = false);
typedef enum
{
eReplace_NO,
eReplace_YES,
eReplace_TIMESTAMP
} eReplace_t;
qtexture_t *Texture_ForName (const char *name, bool bForArchitecture = true, const char *psBasePath = NULL, eReplace_t eReplace = eReplace_NO, bool bPlaceHolderLoad = false);
void Texture_Init (void);
void Texture_SetTexture (texdef_t *texdef, bool bFitScale = false, bool bNoSystemTextureOverwrite = false);
void Texture_SetMode(int iMenu); // GL_TEXTURE_NEAREST, etc..
void Texture_ResetPosition();
void FreeShaders();
void LoadShaders();
void ReloadShaders();
int Texture_LoadSkin(char *pName, int *pnWidth, int *pnHeight, const char *psBasePath);
void Texture_LoadFromPlugIn(LPVOID vp);
void Texture_StartPos (void);
qtexture_t *Texture_NextPos (int *x, int *y);