Jelle Raaijmakers
2af9b625e8
LibGL: Implement GL_*_BITS
and GL_DOUBLEBUFFER
parameters
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
033f224966
LibGL: Add GL_SHADING_LANGUAGE_VERSION
to glGetString
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
6643775999
LibGL: Add stub for glCopyTexImage2D
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
401472c9a4
LibGL: Implement glDrawPixels
and add stub for glBitmap
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
c2960e68a8
LibGL: Implement glLightModelf
and glLightModelfv
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
0453cad46c
LibGL: Add stubs for glPushAttrib
and glPopAttrib
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
fbed7a5ba8
LibGL: Implement glLineWidth
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
22f8294a57
LibGL: Implement glLoadMatrixd
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
506abf2a61
LibGL: Implement glIsList
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
17c109f5d7
LibGL: Implement glTranslated
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
9c9fa33495
LibGL: Implement glClearStencil
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
07bf37be75
LibGL: Implement glScaled
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
9dbc8d7e3c
LibGL: Add stubs for glMaterialf
and glMaterialfv
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
4eb6295a57
LibGL: Implement glRasterPos2i
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
78d0674228
LibGL: Implement glNormal3f
and glNormal3fv
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
ea6bcda79c
LibGL: Implement glStencil*
functions
...
This implements the context state for stencil testing functions and
operations. No rasterization is implemented.
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
729349ce78
LibGL: Implement GL_STENCIL_TEST
...
Only the state is implemented; not the rasterization phase.
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
11fea6b597
LibGL: Implement glListBase
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
1056bac49a
LibGL: Implement glCallLists
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
651ea89094
LibGL: Implement glTexCoord2fv
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
315973e73c
LibGL: Implement glColor3ub
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
d38c4ac8b5
LibGL: Add stubs for glLightf
and glLightfv
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
7ac8cd057e
LibGL: Implement glMultMatrixf
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
40724a426f
LibGL: Implement glGetDoublev
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
6d4a5a40a0
LibGL: Define GL_ES_VERSION_2_0
...
GLES 2.0 is a subset of OpenGL, so we allow applications to compile
against LibGL as if it fully supports GLES 2.0.
Additionally, we set the definitions to an integer value of `1` so
applications that check for availability like this...
int main() { return GL_ES_VERSION_2_0; }
...can actually compile. At least ScummVM uses this, and Mesa defines
their constants in the same way:
44b9e11ddb/include/GL/gl.h (L105)
2021-12-12 21:51:08 +01:00
Jelle Raaijmakers
d885cc102b
LibGL: Fix a number of enum values in gl.h
...
Their values should match the enum values as defined by the Khronos
Group.
2021-12-11 23:15:24 +01:00
Jelle Raaijmakers
5e370e6f96
LibGL: Implement GL_(UN)PACK_ALIGNMENT
...
These enums are used to indicate byte-alignment when reading from and
to textures. The `GL_UNPACK_ROW_LENGTH` value was reimplemented to
support overriding the source data row width.
2021-12-11 23:15:24 +01:00
Jelle Raaijmakers
5788a139d8
LibGL: Implement texture unit texturing states
2021-12-01 10:21:13 +01:00
Jelle Raaijmakers
bb58f6ccab
LibGL: Implement glScissor()
2021-11-28 09:20:58 -08:00
Jelle Raaijmakers
a36ee213b9
LibGL: Implement glIsEnabled()
2021-10-17 21:01:52 -07:00
Jelle Raaijmakers
abaac02c88
LibGL: Correct GL_MODELVIEW and GL_PROJECTION values
...
According to the Khronos group, GL enum values are in the spec:
https://www.khronos.org/registry/OpenGL/docs/enums.html
Not adhering to their values will cause issues with projects that ship
their own copy of `gl.h`, such as ScummVM.
2021-10-17 21:01:52 -07:00
Linus Groh
496d2e3c29
LibGL: Remove duplicate GLboolean typedef
...
Fixes #10268 .
2021-10-02 21:10:13 +01:00
Stephan Unverwerth
e7d3483618
LibGL: Implement glTexSubImage2D
2021-09-02 21:00:24 +04:30
Stephan Unverwerth
1aed453d8c
LibGL: Add GL_TETXURE*_ARB aliases
...
These defines were introduced when multitexturing was only supported via
the extension EXT_multitexture. GLQuake makes use of them.
2021-09-02 21:00:24 +04:30
Stephan Unverwerth
15299b763c
LibGL: Implement glPolygonOffset
2021-09-02 21:00:24 +04:30
Stephan Unverwerth
7cbaaf8366
LibGL: Implement glDrawBuffer
2021-09-02 21:00:24 +04:30
Stephan Unverwerth
b54573739c
LibGL: Implement glTexEnvf
...
This controls how fetched texels are combined with the color that was
produced by a preceding texture unit or with the vertex color if it is
the first texture unit.
Currently only a small subset of possible combine modes is implemented
as required by glquake.
2021-08-26 19:54:31 +02:00
Stephan Unverwerth
19a08ff187
LibGL: Implement glPixelStorei
...
This sets the length of a row for the image to be transferred. This
value is measured in pixels. When a rectangle with a width less than
this value is transferred the remaining pixels of this row are skipped.
2021-08-26 19:53:57 +02:00
Jesse Buhagiar
d73cc3d0eb
LibGL: Implement glFogi
2021-08-25 23:50:54 +04:30
Jesse Buhagiar
f55d2a22af
LibGL: Implement glFogf
2021-08-25 23:50:54 +04:30
Jesse Buhagiar
7f1cd54b80
LibGL: Implement glFogfv
...
This currently just sets the fog colour in the rasterizer.
2021-08-25 23:50:54 +04:30
Jesse Buhagiar
89eddb5bff
LibGL: Implement glPolygonMode
...
Currently just sets the renderer option for what polygon mode we
want the rasterizer to draw in. GLQuake only uses `GL_FRONT_AND_BACK`
with `GL_FILL` )which implies both back and front facing triangles
are to be filled completely by the rasterizer), so keeping this as
a small stub is perfectly fine for now.
2021-08-20 20:04:06 +04:30
Stephan Unverwerth
5b9c87a8b5
LibGL: Implement glDepthFunc
2021-08-18 20:30:58 +02:00
Stephan Unverwerth
a97dbd2317
LibGL: Implement glDepthRange
2021-08-18 20:30:58 +02:00
Jesse Buhagiar
8ad42e6771
LibGL: Implement glGetIntegerv
2021-08-18 00:35:26 +02:00
Jesse Buhagiar
0b67369830
LibGL: Implenent glGetBooleanv
2021-08-18 00:35:26 +02:00
Jesse Buhagiar
8157e7740b
LibGL: Implement glColorMask
2021-08-15 19:04:10 +01:00
Stephan Unverwerth
949d27f21b
LibGL: Implement glDrawElements
2021-08-14 12:49:29 +02:00
Stephan Unverwerth
e64d0d43d2
LibGL: Implement glDrawArrays
2021-08-14 12:49:29 +02:00
Stephan Unverwerth
b9261ade52
LibGL: Implement glTexCoord4fv
2021-08-14 12:49:29 +02:00