]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - tools/quake2/extra/qe4/textures.h
Merge branch 'NateEag-master-patch-12920' into 'master'
[xonotic/netradiant.git] / tools / quake2 / extra / qe4 / textures.h
1 /*
2 ===========================================================================
3 Copyright (C) 1997-2006 Id Software, Inc.
4
5 This file is part of Quake 2 Tools source code.
6
7 Quake 2 Tools source code is free software; you can redistribute it
8 and/or modify it under the terms of the GNU General Public License as
9 published by the Free Software Foundation; either version 2 of the License,
10 or (at your option) any later version.
11
12 Quake 2 Tools source code is distributed in the hope that it will be
13 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with Quake 2 Tools source code; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20 ===========================================================================
21 */
22
23 typedef struct
24 {
25         char    name[32];
26         float   shift[2];
27         float   rotate;
28         float   scale[2];
29         int             contents;
30         int             flags;
31         int             value;
32 } texdef_t;
33
34
35 typedef struct
36 {
37         int                     width, height;
38         int                     originy;
39         texdef_t        texdef;
40 } texturewin_t;
41
42 typedef struct qtexture_s
43 {
44         struct  qtexture_s *next;
45         char    name[64];               // includes partial directory and extension
46     int         width,  height;
47         int             contents;
48         int             flags;
49         int             value;
50         int             texture_number; // gl bind number
51         vec3_t  color;                  // for flat shade mode
52         qboolean        inuse;          // true = is present on the level
53 } qtexture_t;
54
55
56 // a texturename of the form (0 0 0) will
57 // create a solid color texture
58
59 void    Texture_Init (void);
60 void    Texture_Flush (void);
61 void    Texture_ClearInuse (void);
62 void    Texture_ShowInuse (void);
63 void    Texture_ShowDirectory (int menunum);
64
65 qtexture_t *Texture_ForName (char *name);
66
67 void    Texture_Init (void);
68 void    Texture_SetTexture (texdef_t *texdef);
69
70 void    Texture_SetMode(int iMenu);     // GL_TEXTURE_NEAREST, etc..