wined3d_gl.h 5.81 KB
Newer Older
1 2 3 4
/*
 * Direct3D wine OpenGL include file
 *
 * Copyright 2002-2003 The wine-d3d team
5
 * Copyright 2002-2004 Jason Edmeades
6
 *                     Raphael Junqueira
7
 * Copyright 2007 Roderick Colenbrander
8 9 10 11 12 13 14 15 16 17 18 19 20
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
21
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 23 24 25 26
 */

#ifndef __WINE_WINED3D_GL_H
#define __WINE_WINED3D_GL_H

27
#include "wine/wgl.h"
28

29
#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837  /* not in the gl spec */
30

31 32
void (WINE_GLAPI *glDisableWINE)(GLenum cap) DECLSPEC_HIDDEN;
void (WINE_GLAPI *glEnableWINE)(GLenum cap) DECLSPEC_HIDDEN;
33

34
/* OpenGL extensions. */
35
enum wined3d_gl_extension
36 37
{
    WINED3D_GL_EXT_NONE,
38

39 40 41 42 43 44
    /* APPLE */
    APPLE_FENCE,
    APPLE_FLOAT_PIXELS,
    APPLE_FLUSH_BUFFER_RANGE,
    APPLE_YCBCR_422,
    /* ARB */
45
    ARB_BLEND_FUNC_EXTENDED,
46
    ARB_CLEAR_BUFFER_OBJECT,
47
    ARB_CLEAR_TEXTURE,
48
    ARB_CLIP_CONTROL,
49
    ARB_COLOR_BUFFER_FLOAT,
50
    ARB_COMPUTE_SHADER,
51
    ARB_CONSERVATIVE_DEPTH,
52
    ARB_COPY_BUFFER,
53
    ARB_DEBUG_OUTPUT,
54 55
    ARB_DEPTH_BUFFER_FLOAT,
    ARB_DEPTH_TEXTURE,
56
    ARB_DERIVATIVE_CONTROL,
57
    ARB_DRAW_BUFFERS,
58
    ARB_DRAW_ELEMENTS_BASE_VERTEX,
59
    ARB_DRAW_INSTANCED,
60
    ARB_ES2_COMPATIBILITY,
61
    ARB_ES3_COMPATIBILITY,
62
    ARB_EXPLICIT_ATTRIB_LOCATION,
63
    ARB_FRAGMENT_COORD_CONVENTIONS,
64
    ARB_FRAGMENT_LAYER_VIEWPORT,
65 66 67
    ARB_FRAGMENT_PROGRAM,
    ARB_FRAGMENT_SHADER,
    ARB_FRAMEBUFFER_OBJECT,
68
    ARB_FRAMEBUFFER_SRGB,
69
    ARB_GEOMETRY_SHADER4,
70
    ARB_GPU_SHADER5,
71 72
    ARB_HALF_FLOAT_PIXEL,
    ARB_HALF_FLOAT_VERTEX,
73
    ARB_INSTANCED_ARRAYS,
74
    ARB_INTERNALFORMAT_QUERY,
75
    ARB_INTERNALFORMAT_QUERY2,
76
    ARB_MAP_BUFFER_ALIGNMENT,
77
    ARB_MAP_BUFFER_RANGE,
78 79 80
    ARB_MULTISAMPLE,
    ARB_MULTITEXTURE,
    ARB_OCCLUSION_QUERY,
81
    ARB_PIPELINE_STATISTICS_QUERY,
82 83 84 85
    ARB_PIXEL_BUFFER_OBJECT,
    ARB_POINT_PARAMETERS,
    ARB_POINT_SPRITE,
    ARB_PROVOKING_VERTEX,
86
    ARB_SAMPLER_OBJECTS,
87
    ARB_SEAMLESS_CUBE_MAP,
88
    ARB_SHADER_ATOMIC_COUNTERS,
89
    ARB_SHADER_BIT_ENCODING,
90
    ARB_SHADER_IMAGE_LOAD_STORE,
91
    ARB_SHADER_IMAGE_SIZE,
92
    ARB_SHADER_STORAGE_BUFFER_OBJECT,
93
    ARB_SHADER_TEXTURE_LOD,
94
    ARB_SHADING_LANGUAGE_100,
95
    ARB_SHADING_LANGUAGE_420PACK,
96
    ARB_SHADING_LANGUAGE_PACKING,
97
    ARB_SHADOW,
98
    ARB_STENCIL_TEXTURING,
99
    ARB_SYNC,
100
    ARB_TESSELLATION_SHADER,
101
    ARB_TEXTURE_BORDER_CLAMP,
102
    ARB_TEXTURE_BUFFER_OBJECT,
103
    ARB_TEXTURE_BUFFER_RANGE,
104
    ARB_TEXTURE_COMPRESSION,
105
    ARB_TEXTURE_COMPRESSION_BPTC,
106
    ARB_TEXTURE_COMPRESSION_RGTC,
107
    ARB_TEXTURE_CUBE_MAP,
108
    ARB_TEXTURE_CUBE_MAP_ARRAY,
109 110
    ARB_TEXTURE_ENV_COMBINE,
    ARB_TEXTURE_ENV_DOT3,
111
    ARB_TEXTURE_FILTER_ANISOTROPIC,
112
    ARB_TEXTURE_FLOAT,
113
    ARB_TEXTURE_GATHER,
114
    ARB_TEXTURE_MIRRORED_REPEAT,
115
    ARB_TEXTURE_MIRROR_CLAMP_TO_EDGE,
116
    ARB_TEXTURE_NON_POWER_OF_TWO,
117
    ARB_TEXTURE_QUERY_LEVELS,
118 119
    ARB_TEXTURE_RECTANGLE,
    ARB_TEXTURE_RG,
120
    ARB_TEXTURE_RGB10_A2UI,
121
    ARB_TEXTURE_STORAGE,
122
    ARB_TEXTURE_SWIZZLE,
123
    ARB_TEXTURE_VIEW,
124
    ARB_TIMER_QUERY,
125
    ARB_TRANSFORM_FEEDBACK2,
126
    ARB_TRANSFORM_FEEDBACK3,
127
    ARB_UNIFORM_BUFFER_OBJECT,
128
    ARB_VERTEX_ARRAY_BGRA,
129 130 131 132
    ARB_VERTEX_BLEND,
    ARB_VERTEX_BUFFER_OBJECT,
    ARB_VERTEX_PROGRAM,
    ARB_VERTEX_SHADER,
133
    ARB_VERTEX_TYPE_2_10_10_10_REV,
134
    ARB_VIEWPORT_ARRAY,
135 136 137 138 139 140 141 142 143 144 145
    /* ATI */
    ATI_FRAGMENT_SHADER,
    ATI_SEPARATE_STENCIL,
    ATI_TEXTURE_COMPRESSION_3DC,
    ATI_TEXTURE_ENV_COMBINE3,
    ATI_TEXTURE_MIRROR_ONCE,
    /* EXT */
    EXT_BLEND_COLOR,
    EXT_BLEND_EQUATION_SEPARATE,
    EXT_BLEND_FUNC_SEPARATE,
    EXT_BLEND_MINMAX,
146
    EXT_BLEND_SUBTRACT,
147
    EXT_DRAW_BUFFERS2,
148
    EXT_DEPTH_BOUNDS_TEST,
149 150 151 152 153
    EXT_FOG_COORD,
    EXT_FRAMEBUFFER_BLIT,
    EXT_FRAMEBUFFER_MULTISAMPLE,
    EXT_FRAMEBUFFER_OBJECT,
    EXT_GPU_PROGRAM_PARAMETERS,
154
    EXT_GPU_SHADER4,
155
    EXT_PACKED_DEPTH_STENCIL,
156
    EXT_PACKED_FLOAT,
157 158 159 160 161 162
    EXT_POINT_PARAMETERS,
    EXT_PROVOKING_VERTEX,
    EXT_SECONDARY_COLOR,
    EXT_STENCIL_TWO_SIDE,
    EXT_STENCIL_WRAP,
    EXT_TEXTURE3D,
163
    EXT_TEXTURE_ARRAY,
164 165 166 167
    EXT_TEXTURE_COMPRESSION_RGTC,
    EXT_TEXTURE_COMPRESSION_S3TC,
    EXT_TEXTURE_ENV_COMBINE,
    EXT_TEXTURE_ENV_DOT3,
168
    EXT_TEXTURE_INTEGER,
169
    EXT_TEXTURE_LOD_BIAS,
170
    EXT_TEXTURE_MIRROR_CLAMP,
171
    EXT_TEXTURE_SHARED_EXPONENT,
172
    EXT_TEXTURE_SNORM,
173
    EXT_TEXTURE_SRGB,
174
    EXT_TEXTURE_SRGB_DECODE,
175 176 177 178 179 180 181 182 183
    EXT_VERTEX_ARRAY_BGRA,
    /* NVIDIA */
    NV_FENCE,
    NV_FOG_DISTANCE,
    NV_FRAGMENT_PROGRAM,
    NV_FRAGMENT_PROGRAM2,
    NV_FRAGMENT_PROGRAM_OPTION,
    NV_HALF_FLOAT,
    NV_LIGHT_MAX_EXPONENT,
184
    NV_POINT_SPRITE,
185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
    NV_REGISTER_COMBINERS,
    NV_REGISTER_COMBINERS2,
    NV_TEXGEN_REFLECTION,
    NV_TEXTURE_ENV_COMBINE4,
    NV_TEXTURE_SHADER,
    NV_TEXTURE_SHADER2,
    NV_VERTEX_PROGRAM,
    NV_VERTEX_PROGRAM1_1,
    NV_VERTEX_PROGRAM2,
    NV_VERTEX_PROGRAM2_OPTION,
    NV_VERTEX_PROGRAM3,
    /* SGI */
    SGIS_GENERATE_MIPMAP,
    /* WGL extensions */
    WGL_ARB_PIXEL_FORMAT,
200
    WGL_EXT_SWAP_CONTROL,
201
    WGL_WINE_PIXEL_FORMAT_PASSTHROUGH,
202
    WGL_WINE_QUERY_RENDERER,
203
    /* Internally used */
204
    WINED3D_GL_BLEND_EQUATION,
205
    WINED3D_GL_LEGACY_CONTEXT,
206 207
    WINED3D_GL_NORMALIZED_TEXRECT,
    WINED3D_GL_PRIMITIVE_QUERY,
208
    WINED3D_GL_VERSION_2_0,
209
    WINED3D_GL_VERSION_3_2,
210
    WINED3D_GLSL_130,
211 212

    WINED3D_GL_EXT_COUNT,
213
};
214
#endif /* __WINE_WINED3D_GL */