Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
c4569d92
Commit
c4569d92
authored
Nov 10, 2005
by
Raphael Junqueira
Committed by
Alexandre Julliard
Nov 10, 2005
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Define GL_EXT_framebuffer_object and GL_EXT_pixelbuffer_object openGL
specs. Support Mesa GL_VERSION on parse.
parent
6affb1f1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
164 additions
and
29 deletions
+164
-29
directx.c
dlls/wined3d/directx.c
+37
-1
wined3d_gl.h
include/wine/wined3d_gl.h
+127
-28
No files found.
dlls/wined3d/directx.c
View file @
c4569d92
...
...
@@ -244,6 +244,8 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info, Display* display)
gl_info
->
gl_vendor
=
VENDOR_NVIDIA
;
}
else
if
(
strstr
(
gl_string
,
"ATI"
))
{
gl_info
->
gl_vendor
=
VENDOR_ATI
;
}
else
if
(
strstr
(
gl_string
,
"Mesa"
))
{
gl_info
->
gl_vendor
=
VENDOR_MESA
;
}
else
{
gl_info
->
gl_vendor
=
VENDOR_WINE
;
}
...
...
@@ -317,6 +319,34 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info, Display* display)
}
break
;
case
VENDOR_MESA
:
gl_string_cursor
=
strstr
(
gl_string
,
"Mesa"
);
gl_string_cursor
=
strstr
(
gl_string_cursor
,
" "
);
while
(
*
gl_string_cursor
&&
' '
==
*
gl_string_cursor
)
++
gl_string_cursor
;
if
(
*
gl_string_cursor
)
{
char
tmp
[
16
];
int
cursor
=
0
;
while
(
*
gl_string_cursor
<=
'9'
&&
*
gl_string_cursor
>=
'0'
)
{
tmp
[
cursor
++
]
=
*
gl_string_cursor
;
++
gl_string_cursor
;
}
tmp
[
cursor
]
=
0
;
major
=
atoi
(
tmp
);
if
(
*
gl_string_cursor
!=
'.'
)
WARN_
(
d3d_caps
)(
"malformed GL_VERSION (%s)
\n
"
,
debugstr_a
(
gl_string
));
++
gl_string_cursor
;
cursor
=
0
;
while
(
*
gl_string_cursor
<=
'9'
&&
*
gl_string_cursor
>=
'0'
)
{
tmp
[
cursor
++
]
=
*
gl_string_cursor
;
++
gl_string_cursor
;
}
tmp
[
cursor
]
=
0
;
minor
=
atoi
(
tmp
);
}
break
;
default:
major
=
0
;
minor
=
9
;
...
...
@@ -456,8 +486,11 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info, Display* display)
}
else
if
(
strcmp
(
ThisExtn
,
"GLX_ARB_multisample"
)
==
0
)
{
TRACE_
(
d3d_caps
)(
" FOUND: ARB multisample support
\n
"
);
gl_info
->
supported
[
ARB_MULTISAMPLE
]
=
TRUE
;
}
else
if
(
strcmp
(
ThisExtn
,
"GL_ARB_pixel_buffer_object"
)
==
0
)
{
TRACE_
(
d3d_caps
)(
" FOUND: ARB Pixel Buffer support
\n
"
);
gl_info
->
supported
[
ARB_PIXEL_BUFFER_OBJECT
]
=
TRUE
;
}
else
if
(
strcmp
(
ThisExtn
,
"GL_ARB_point_sprite"
)
==
0
)
{
TRACE_
(
d3d_caps
)(
" FOUND: ARB point spri
nt
support
\n
"
);
TRACE_
(
d3d_caps
)(
" FOUND: ARB point spri
te
support
\n
"
);
gl_info
->
supported
[
ARB_POINT_SPRITE
]
=
TRUE
;
}
else
if
(
strstr
(
ThisExtn
,
"GL_ARB_vertex_program"
))
{
gl_info
->
vs_arb_version
=
VS_VERSION_11
;
...
...
@@ -480,6 +513,9 @@ static BOOL IWineD3DImpl_FillGLCaps(WineD3D_GL_Info *gl_info, Display* display)
}
else
if
(
strcmp
(
ThisExtn
,
"GL_EXT_fog_coord"
)
==
0
)
{
TRACE_
(
d3d_caps
)(
" FOUND: EXT Fog coord support
\n
"
);
gl_info
->
supported
[
EXT_FOG_COORD
]
=
TRUE
;
}
else
if
(
strcmp
(
ThisExtn
,
"GL_EXT_framebuffer_object"
)
==
0
)
{
TRACE_
(
d3d_caps
)(
" FOUND: EXT Frame Buffer Object support
\n
"
);
gl_info
->
supported
[
EXT_FRAMEBUFFER_OBJECT
]
=
TRUE
;
}
else
if
(
strcmp
(
ThisExtn
,
"GL_EXT_paletted_texture"
)
==
0
)
{
/* handle paletted texture extensions */
TRACE_
(
d3d_caps
)(
" FOUND: EXT Paletted texture support
\n
"
);
gl_info
->
supported
[
EXT_PALETTED_TEXTURE
]
=
TRUE
;
...
...
include/wine/wined3d_gl.h
View file @
c4569d92
...
...
@@ -98,6 +98,86 @@
#define GL_MODELVIEW31_ARB 0x873F
#endif
typedef
void
(
APIENTRY
*
PGLFNGLWEIGHTPOINTERARB
)
(
GLint
size
,
GLenum
type
,
GLsizei
stride
,
GLvoid
*
pointer
);
/* GL_ARB_pixel_buffer_object */
#ifndef GL_ARB_pixel_buffer_object
#define GL_ARB_pixel_buffer_object 1
#endif
#define GL_PIXEL_PACK_BUFFER_ARB 0x88EB
#define GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC
#define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED
#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF
/* GL_EXT_framebuffer_object */
#ifndef GL_EXT_framebuffer_object
#define GL_EXT_framebuffer_object 1
#define GL_FRAMEBUFFER_EXT 0x8D40
#define GL_RENDERBUFFER_EXT 0x8D41
#define GL_STENCIL_INDEX1_EXT 0x8D46
#define GL_STENCIL_INDEX4_EXT 0x8D47
#define GL_STENCIL_INDEX8_EXT 0x8D48
#define GL_STENCIL_INDEX16_EXT 0x8D49
#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
#endif
typedef
GLboolean
(
APIENTRY
*
PGLFNGLISRENDERBUFFEREXTPROC
)(
GLuint
renderbuffer
);
typedef
void
(
APIENTRY
*
PGLFNGLBINDRENDERBUFFEREXTPROC
)(
GLenum
target
,
GLuint
renderbuffer
);
typedef
void
(
APIENTRY
*
PGLFNGLDELETERENDERBUFFERSEXTPROC
)(
GLsizei
n
,
const
GLuint
*
renderbuffers
);
typedef
void
(
APIENTRY
*
PGLFNGLGENRENDERBUFFERSEXTPROC
)(
GLsizei
n
,
GLuint
*
renderbuffers
);
typedef
void
(
APIENTRY
*
PGLFNGLRENDERBUFFERSTORAGEEXTPROC
)(
GLenum
target
,
GLenum
internalformat
,
GLsizei
width
,
GLsizei
height
);
typedef
void
(
APIENTRY
*
PGLFNGLGETRENDERBUFFERPARAMETERIVEXTPROC
)(
GLenum
target
,
GLenum
pname
,
GLint
*
params
);
typedef
GLboolean
(
APIENTRY
*
PGLFNGLISFRAMEBUFFEREXTPROC
)(
GLuint
framebuffer
);
typedef
void
(
APIENTRY
*
PGLFNGLBINDFRAMEBUFFEREXTPROC
)(
GLenum
target
,
GLuint
framebuffer
);
typedef
void
(
APIENTRY
*
PGLFNGLDELETEFRAMEBUFFERSEXTPROC
)(
GLsizei
n
,
const
GLuint
*
framebuffers
);
typedef
void
(
APIENTRY
*
PGLFNGLGENFRAMEBUFFERSEXTPROC
)(
GLsizei
n
,
GLuint
*
framebuffers
);
typedef
GLenum
(
APIENTRY
*
PGLFNGLCHECKFRAMEBUFFERSTATUSEXTPROC
)(
GLenum
target
);
typedef
void
(
APIENTRY
*
PGLFNGLFRAMEBUFFERTEXTURE1DEXTPROC
)(
GLenum
target
,
GLenum
attachment
,
GLenum
textarget
,
GLuint
texture
,
GLint
level
);
typedef
void
(
APIENTRY
*
PGLFNGLFRAMEBUFFERTEXTURE2DEXTPROC
)(
GLenum
target
,
GLenum
attachment
,
GLenum
textarget
,
GLuint
texture
,
GLint
level
);
typedef
void
(
APIENTRY
*
PGLFNGLFRAMEBUFFERTEXTURE3DEXTPROC
)(
GLenum
target
,
GLenum
attachment
,
GLenum
textarget
,
GLuint
texture
,
GLint
level
,
GLint
zoffset
);
typedef
void
(
APIENTRY
*
PGLFNGLFRAMEBUFFERRENDERBUFFEREXTPROC
)(
GLenum
target
,
GLenum
attachment
,
GLenum
renderbuffertarget
,
GLuint
renderbuffer
);
typedef
void
(
APIENTRY
*
PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC
)(
GLenum
target
,
GLenum
attachment
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGLGENERATEMIPMAPEXTPROC
)(
GLenum
target
);
/* GL_EXT_secondary_color */
#ifndef GL_EXT_secondary_color
#define GL_EXT_secondary_color 1
...
...
@@ -659,52 +739,46 @@ typedef void (APIENTRY * PGLFNGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage,
/* #define ZERO */
#endif
/* Point sprites */
/**
* Point sprites
*/
/* GL_ARB_point_sprite */
#ifndef GL_ARB_point_sprite
#define GL_ARB_point_sprite 1
#define GL_POINT_SPRITE_ARB 0x8861
#define GL_COORD_REPLACE_ARB 0x8862
#endif
/**
* @TODO: GL_NV_point_sprite
*/
/* TODO: GL_NV_point_sprite */
/* Occlusion Queries */
typedef
void
(
APIENTRY
*
PGLFNGENQUERIESARBPROC
)
(
GLsizei
n
,
GLuint
*
queries
);
typedef
void
(
APIENTRY
*
PGLFNDELETEQUERIESARBPROC
)
(
GLsizei
n
,
const
GLuint
*
queries
);
typedef
GLboolean
(
APIENTRY
*
PGLFNISQUERYARBPROC
)
(
GLuint
query
);
typedef
void
(
APIENTRY
*
PGLFNBEGINQUERYARBPROC
)
(
GLenum
target
,
GLuint
query
);
typedef
void
(
APIENTRY
*
PGLFNENDQUERYARBPROC
)
(
GLenum
target
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYIVARBPROC
)
(
GLenum
target
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYOBJECTIVARBPROC
)
(
GLuint
query
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYOBJECTUIVARBPROC
)
(
GLuint
query
,
GLenum
pname
,
GLuint
*
params
);
/**
* Occlusion Queries
*/
/* GL_ARB_occlusion_query */
#ifndef GL_ARB_occlusion_query
#define GL_ARB_occlusion_query 1
#define GL_SAMPLES_PASSED_ARB 0x8914
#define GL_QUERY_COUNTER_BITS_ARB 0x8864
#define GL_CURRENT_QUERY_ARB 0x8865
#define GL_QUERY_RESULT_ARB 0x8866
#define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867
#endif
typedef
void
(
APIENTRY
*
PGLFNGENOCCLUSIONQUERIESNVPROC
)
(
GLsizei
n
,
GLuint
*
ids
);
typedef
void
(
APIENTRY
*
PGLFNDELETEOCCLUSIONQUERIESNVPROC
)
(
GLsizei
n
,
const
GLuint
*
ids
);
typedef
GLboolean
(
APIENTRY
*
PGLFNISOCCLUSIONQUERYNVPROC
)
(
GLuint
id
);
typedef
void
(
APIENTRY
*
PGLFNBEGINOCCLUSIONQUERYNVPROC
)
(
GLuint
id
);
typedef
void
(
APIENTRY
*
PGLFNENDOCCLUSIONQUERYNVPROC
)
(
void
);
typedef
void
(
APIENTRY
*
PGLFNGETOCCLUSIONQUERYIVNVPROC
)
(
GLuint
id
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETOCCLUSIONQUERYUIVNVPROC
)
(
GLuint
id
,
GLenum
pname
,
GLuint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGENQUERIESARBPROC
)
(
GLsizei
n
,
GLuint
*
queries
);
typedef
void
(
APIENTRY
*
PGLFNDELETEQUERIESARBPROC
)
(
GLsizei
n
,
const
GLuint
*
queries
);
typedef
GLboolean
(
APIENTRY
*
PGLFNISQUERYARBPROC
)
(
GLuint
query
);
typedef
void
(
APIENTRY
*
PGLFNBEGINQUERYARBPROC
)
(
GLenum
target
,
GLuint
query
);
typedef
void
(
APIENTRY
*
PGLFNENDQUERYARBPROC
)
(
GLenum
target
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYIVARBPROC
)
(
GLenum
target
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYOBJECTIVARBPROC
)
(
GLuint
query
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETQUERYOBJECTUIVARBPROC
)
(
GLuint
query
,
GLenum
pname
,
GLuint
*
params
);
/* GL_HP_occlusion_test isn't complete, but it's constants are used by GL_NV_occlusion_query */
#ifndef GL_HP_occlusion_test
#define GL_HP_occlusion_test 1
#define GL_OCCLUSION_TEST_HP 0x8165
#define GL_OCCLUSION_TEST_RESULT_HP 0x8165
#endif
/* GL_NV_occlusion_query */
#ifndef GL_NV_occlusion_query
#define GL_NV_occlusion_query 1
#define GL_PIXEL_COUNTER_BITS_NV 0x8864
...
...
@@ -712,7 +786,13 @@ typedef void (APIENTRY * PGLFNGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pna
#define GL_PIXEL_COUNT_NV 0x8866
#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867
#endif
typedef
void
(
APIENTRY
*
PGLFNGENOCCLUSIONQUERIESNVPROC
)
(
GLsizei
n
,
GLuint
*
ids
);
typedef
void
(
APIENTRY
*
PGLFNDELETEOCCLUSIONQUERIESNVPROC
)
(
GLsizei
n
,
const
GLuint
*
ids
);
typedef
GLboolean
(
APIENTRY
*
PGLFNISOCCLUSIONQUERYNVPROC
)
(
GLuint
id
);
typedef
void
(
APIENTRY
*
PGLFNBEGINOCCLUSIONQUERYNVPROC
)
(
GLuint
id
);
typedef
void
(
APIENTRY
*
PGLFNENDOCCLUSIONQUERYNVPROC
)
(
void
);
typedef
void
(
APIENTRY
*
PGLFNGETOCCLUSIONQUERYIVNVPROC
)
(
GLuint
id
,
GLenum
pname
,
GLint
*
params
);
typedef
void
(
APIENTRY
*
PGLFNGETOCCLUSIONQUERYUIVNVPROC
)
(
GLuint
id
,
GLenum
pname
,
GLuint
*
params
);
/****************************************************
...
...
@@ -734,7 +814,6 @@ typedef void (APIENTRY * PGLFNGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pna
****************************************************/
/****************************************************
* OpenGL GLX Official Version
* defines and functions pointer
...
...
@@ -812,6 +891,7 @@ typedef enum _GL_SupportedExt {
ARB_MULTITEXTURE
,
ARB_OCCLUSION_QUERY
,
ARB_POINT_PARAMETERS
,
ARB_PIXEL_BUFFER_OBJECT
,
ARB_POINT_SPRITE
,
ARB_TEXTURE_COMPRESSION
,
ARB_TEXTURE_CUBE_MAP
,
...
...
@@ -825,6 +905,7 @@ typedef enum _GL_SupportedExt {
ARB_VERTEX_BUFFER_OBJECT
,
/* EXT */
EXT_FOG_COORD
,
EXT_FRAMEBUFFER_OBJECT
,
EXT_PALETTED_TEXTURE
,
EXT_PIXEL_BUFFER_OBJECT
,
EXT_POINT_PARAMETERS
,
...
...
@@ -886,6 +967,24 @@ typedef enum _GL_SupportedExt {
USE_GL_FUNC(PGLFNGETBUFFERPOINTERVARBPROC, glGetBufferPointervARB); \
/** EXT Extensions **/
\
/* GL_EXT_fog_coord */
\
/* GL_EXT_framebuffer_object */
\
USE_GL_FUNC(PGLFNGLISRENDERBUFFEREXTPROC, glIsRenderbufferEXT); \
USE_GL_FUNC(PGLFNGLBINDRENDERBUFFEREXTPROC, glBindRenderbufferEXT); \
USE_GL_FUNC(PGLFNGLDELETERENDERBUFFERSEXTPROC, glDeleteRenderbuffersEXT); \
USE_GL_FUNC(PGLFNGLGENRENDERBUFFERSEXTPROC, glGenRenderbuffersEXT); \
USE_GL_FUNC(PGLFNGLRENDERBUFFERSTORAGEEXTPROC, glRenderbufferStorageEXT); \
USE_GL_FUNC(PGLFNGLISFRAMEBUFFEREXTPROC, glIsFramebufferEXT); \
USE_GL_FUNC(PGLFNGLBINDFRAMEBUFFEREXTPROC, glBindFramebufferEXT); \
USE_GL_FUNC(PGLFNGLDELETEFRAMEBUFFERSEXTPROC, glDeleteFramebuffersEXT); \
USE_GL_FUNC(PGLFNGLGENFRAMEBUFFERSEXTPROC, glGenFramebuffersEXT); \
USE_GL_FUNC(PGLFNGLCHECKFRAMEBUFFERSTATUSEXTPROC, glCheckFramebufferStatusEXT); \
USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE1DEXTPROC, glFramebufferTexture1DEXT); \
USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE2DEXTPROC, glFramebufferTexture2DEXT); \
USE_GL_FUNC(PGLFNGLFRAMEBUFFERTEXTURE3DEXTPROC, glFramebufferTexture3DEXT); \
USE_GL_FUNC(PGLFNGLFRAMEBUFFERRENDERBUFFEREXTPROC, glFramebufferRenderbufferEXT); \
USE_GL_FUNC(PGLFNGLGENERATEMIPMAPEXTPROC, glGenerateMipmapEXT); \
USE_GL_FUNC(PGLFNGLGETRENDERBUFFERPARAMETERIVEXTPROC, glGetRenderbufferParameterivEXT); \
USE_GL_FUNC(PGLFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC, glGetFramebufferAttachmentParameterivEXT); \
/* GL_EXT_paletted_texture */
\
USE_GL_FUNC(PGLFNGLCOLORTABLEEXTPROC, glColorTableEXT); \
/* GL_EXT_point_parameters */
\
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment