Compare commits
No commits in common. "f284e80b34d9f9e5a2269eade9a06f0bb09b612a" and "850cfd96712c8d25a28c3b79d0bcf5c9a8a71f8b" have entirely different histories.
f284e80b34
...
850cfd9671
8
Makefile
8
Makefile
@ -91,10 +91,6 @@ include/%.data.h: %.data
|
||||
include/%.data.pal.h: %.data.pal
|
||||
$(BUILD_BINARY_H)
|
||||
|
||||
include/model/%.h: model/%.obj
|
||||
python $(HOME)/model_generator2/generate_indexed_cpp2.py \
|
||||
$< $(notdir $(subst .obj,,$<)) > $@
|
||||
|
||||
clean:
|
||||
rm -f *.o *.d *.gch
|
||||
rm -f main
|
||||
@ -120,9 +116,7 @@ MAIN_OBJS = \
|
||||
src/make.o \
|
||||
src/shader.o \
|
||||
src/render.o \
|
||||
src/state.o \
|
||||
src/input.o \
|
||||
model/palette.data.o \
|
||||
model/test_scene_color.data.o \
|
||||
$(SHADER_OBJS) \
|
||||
$(GLFW)
|
||||
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
/**
|
||||
* Loader generated by glad 2.0.8 on Fri Dec 19 00:15:24 2025
|
||||
* Loader generated by glad 2.0.8 on Thu Dec 18 03:17:42 2025
|
||||
*
|
||||
* SPDX-License-Identifier: (WTFPL OR CC0-1.0) AND Apache-2.0
|
||||
*
|
||||
* Generator: C/C++
|
||||
* Specification: gl
|
||||
* Extensions: 3
|
||||
* Extensions: 0
|
||||
*
|
||||
* APIs:
|
||||
* - gl:compatibility=2.1
|
||||
* - gl:core=3.0
|
||||
*
|
||||
* Options:
|
||||
* - ALIAS = False
|
||||
@ -19,10 +19,10 @@
|
||||
* - ON_DEMAND = False
|
||||
*
|
||||
* Commandline:
|
||||
* --api='gl:compatibility=2.1' --extensions='GL_ARB_framebuffer_object,GL_ARB_texture_float,GL_ARB_vertex_array_object' c
|
||||
* --api='gl:core=3.0' --extensions='' c
|
||||
*
|
||||
* Online:
|
||||
* http://glad.sh/#api=gl%3Acompatibility%3D2.1&extensions=GL_ARB_framebuffer_object%2CGL_ARB_texture_float%2CGL_ARB_vertex_array_object&generator=c&options=
|
||||
* http://glad.sh/#api=gl%3Acore%3D3.0&extensions=&generator=c&options=
|
||||
*
|
||||
*/
|
||||
|
||||
@ -203,12 +203,11 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_ALPHA 0x1906
|
||||
#define GL_ALPHA12 0x803D
|
||||
#define GL_ALPHA16 0x803E
|
||||
#define GL_ALPHA16F_ARB 0x881C
|
||||
#define GL_ALPHA32F_ARB 0x8816
|
||||
#define GL_ALPHA4 0x803B
|
||||
#define GL_ALPHA8 0x803C
|
||||
#define GL_ALPHA_BIAS 0x0D1D
|
||||
#define GL_ALPHA_BITS 0x0D55
|
||||
#define GL_ALPHA_INTEGER 0x8D97
|
||||
#define GL_ALPHA_SCALE 0x0D1C
|
||||
#define GL_ALPHA_TEST 0x0BC0
|
||||
#define GL_ALPHA_TEST_FUNC 0x0BC1
|
||||
@ -234,6 +233,8 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_BACK_RIGHT 0x0403
|
||||
#define GL_BGR 0x80E0
|
||||
#define GL_BGRA 0x80E1
|
||||
#define GL_BGRA_INTEGER 0x8D9B
|
||||
#define GL_BGR_INTEGER 0x8D9A
|
||||
#define GL_BITMAP 0x1A00
|
||||
#define GL_BITMAP_TOKEN 0x0704
|
||||
#define GL_BLEND 0x0BE2
|
||||
@ -250,13 +251,17 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_BLUE 0x1905
|
||||
#define GL_BLUE_BIAS 0x0D1B
|
||||
#define GL_BLUE_BITS 0x0D54
|
||||
#define GL_BLUE_INTEGER 0x8D96
|
||||
#define GL_BLUE_SCALE 0x0D1A
|
||||
#define GL_BOOL 0x8B56
|
||||
#define GL_BOOL_VEC2 0x8B57
|
||||
#define GL_BOOL_VEC3 0x8B58
|
||||
#define GL_BOOL_VEC4 0x8B59
|
||||
#define GL_BUFFER_ACCESS 0x88BB
|
||||
#define GL_BUFFER_ACCESS_FLAGS 0x911F
|
||||
#define GL_BUFFER_MAPPED 0x88BC
|
||||
#define GL_BUFFER_MAP_LENGTH 0x9120
|
||||
#define GL_BUFFER_MAP_OFFSET 0x9121
|
||||
#define GL_BUFFER_MAP_POINTER 0x88BD
|
||||
#define GL_BUFFER_SIZE 0x8764
|
||||
#define GL_BUFFER_USAGE 0x8765
|
||||
@ -267,14 +272,25 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_C4UB_V3F 0x2A23
|
||||
#define GL_CCW 0x0901
|
||||
#define GL_CLAMP 0x2900
|
||||
#define GL_CLAMP_FRAGMENT_COLOR 0x891B
|
||||
#define GL_CLAMP_READ_COLOR 0x891C
|
||||
#define GL_CLAMP_TO_BORDER 0x812D
|
||||
#define GL_CLAMP_TO_EDGE 0x812F
|
||||
#define GL_CLAMP_VERTEX_COLOR 0x891A
|
||||
#define GL_CLEAR 0x1500
|
||||
#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1
|
||||
#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF
|
||||
#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1
|
||||
#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001
|
||||
#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002
|
||||
#define GL_CLIP_DISTANCE0 0x3000
|
||||
#define GL_CLIP_DISTANCE1 0x3001
|
||||
#define GL_CLIP_DISTANCE2 0x3002
|
||||
#define GL_CLIP_DISTANCE3 0x3003
|
||||
#define GL_CLIP_DISTANCE4 0x3004
|
||||
#define GL_CLIP_DISTANCE5 0x3005
|
||||
#define GL_CLIP_DISTANCE6 0x3006
|
||||
#define GL_CLIP_DISTANCE7 0x3007
|
||||
#define GL_CLIP_PLANE0 0x3000
|
||||
#define GL_CLIP_PLANE1 0x3001
|
||||
#define GL_CLIP_PLANE2 0x3002
|
||||
@ -297,8 +313,24 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_COLOR_ATTACHMENT13 0x8CED
|
||||
#define GL_COLOR_ATTACHMENT14 0x8CEE
|
||||
#define GL_COLOR_ATTACHMENT15 0x8CEF
|
||||
#define GL_COLOR_ATTACHMENT16 0x8CF0
|
||||
#define GL_COLOR_ATTACHMENT17 0x8CF1
|
||||
#define GL_COLOR_ATTACHMENT18 0x8CF2
|
||||
#define GL_COLOR_ATTACHMENT19 0x8CF3
|
||||
#define GL_COLOR_ATTACHMENT2 0x8CE2
|
||||
#define GL_COLOR_ATTACHMENT20 0x8CF4
|
||||
#define GL_COLOR_ATTACHMENT21 0x8CF5
|
||||
#define GL_COLOR_ATTACHMENT22 0x8CF6
|
||||
#define GL_COLOR_ATTACHMENT23 0x8CF7
|
||||
#define GL_COLOR_ATTACHMENT24 0x8CF8
|
||||
#define GL_COLOR_ATTACHMENT25 0x8CF9
|
||||
#define GL_COLOR_ATTACHMENT26 0x8CFA
|
||||
#define GL_COLOR_ATTACHMENT27 0x8CFB
|
||||
#define GL_COLOR_ATTACHMENT28 0x8CFC
|
||||
#define GL_COLOR_ATTACHMENT29 0x8CFD
|
||||
#define GL_COLOR_ATTACHMENT3 0x8CE3
|
||||
#define GL_COLOR_ATTACHMENT30 0x8CFE
|
||||
#define GL_COLOR_ATTACHMENT31 0x8CFF
|
||||
#define GL_COLOR_ATTACHMENT4 0x8CE4
|
||||
#define GL_COLOR_ATTACHMENT5 0x8CE5
|
||||
#define GL_COLOR_ATTACHMENT6 0x8CE6
|
||||
@ -318,6 +350,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_COMBINE 0x8570
|
||||
#define GL_COMBINE_ALPHA 0x8572
|
||||
#define GL_COMBINE_RGB 0x8571
|
||||
#define GL_COMPARE_REF_TO_TEXTURE 0x884E
|
||||
#define GL_COMPARE_R_TO_TEXTURE 0x884E
|
||||
#define GL_COMPILE 0x1300
|
||||
#define GL_COMPILE_AND_EXECUTE 0x1301
|
||||
@ -326,8 +359,14 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_COMPRESSED_INTENSITY 0x84EC
|
||||
#define GL_COMPRESSED_LUMINANCE 0x84EA
|
||||
#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB
|
||||
#define GL_COMPRESSED_RED 0x8225
|
||||
#define GL_COMPRESSED_RED_RGTC1 0x8DBB
|
||||
#define GL_COMPRESSED_RG 0x8226
|
||||
#define GL_COMPRESSED_RGB 0x84ED
|
||||
#define GL_COMPRESSED_RGBA 0x84EE
|
||||
#define GL_COMPRESSED_RG_RGTC2 0x8DBD
|
||||
#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC
|
||||
#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE
|
||||
#define GL_COMPRESSED_SLUMINANCE 0x8C4A
|
||||
#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B
|
||||
#define GL_COMPRESSED_SRGB 0x8C48
|
||||
@ -337,6 +376,8 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_CONSTANT_ALPHA 0x8003
|
||||
#define GL_CONSTANT_ATTENUATION 0x1207
|
||||
#define GL_CONSTANT_COLOR 0x8001
|
||||
#define GL_CONTEXT_FLAGS 0x821E
|
||||
#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x00000001
|
||||
#define GL_COORD_REPLACE 0x8862
|
||||
#define GL_COPY 0x1503
|
||||
#define GL_COPY_INVERTED 0x150C
|
||||
@ -368,6 +409,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_DELETE_STATUS 0x8B80
|
||||
#define GL_DEPTH 0x1801
|
||||
#define GL_DEPTH24_STENCIL8 0x88F0
|
||||
#define GL_DEPTH32F_STENCIL8 0x8CAD
|
||||
#define GL_DEPTH_ATTACHMENT 0x8D00
|
||||
#define GL_DEPTH_BIAS 0x0D1F
|
||||
#define GL_DEPTH_BITS 0x0D56
|
||||
@ -377,6 +419,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_DEPTH_COMPONENT16 0x81A5
|
||||
#define GL_DEPTH_COMPONENT24 0x81A6
|
||||
#define GL_DEPTH_COMPONENT32 0x81A7
|
||||
#define GL_DEPTH_COMPONENT32F 0x8CAC
|
||||
#define GL_DEPTH_FUNC 0x0B74
|
||||
#define GL_DEPTH_RANGE 0x0B70
|
||||
#define GL_DEPTH_SCALE 0x0D1E
|
||||
@ -442,8 +485,10 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1
|
||||
#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2
|
||||
#define GL_FILL 0x1B02
|
||||
#define GL_FIXED_ONLY 0x891D
|
||||
#define GL_FLAT 0x1D00
|
||||
#define GL_FLOAT 0x1406
|
||||
#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD
|
||||
#define GL_FLOAT_MAT2 0x8B5A
|
||||
#define GL_FLOAT_MAT2x3 0x8B65
|
||||
#define GL_FLOAT_MAT2x4 0x8B66
|
||||
@ -504,6 +549,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
|
||||
#define GL_FRAMEBUFFER_SRGB 0x8DB9
|
||||
#define GL_FRAMEBUFFER_UNDEFINED 0x8219
|
||||
#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
|
||||
#define GL_FRONT 0x0404
|
||||
@ -521,7 +567,9 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_GREEN 0x1904
|
||||
#define GL_GREEN_BIAS 0x0D19
|
||||
#define GL_GREEN_BITS 0x0D53
|
||||
#define GL_GREEN_INTEGER 0x8D95
|
||||
#define GL_GREEN_SCALE 0x0D18
|
||||
#define GL_HALF_FLOAT 0x140B
|
||||
#define GL_HINT_BIT 0x00008000
|
||||
#define GL_INCR 0x1E02
|
||||
#define GL_INCR_WRAP 0x8507
|
||||
@ -543,11 +591,16 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_INTENSITY 0x8049
|
||||
#define GL_INTENSITY12 0x804C
|
||||
#define GL_INTENSITY16 0x804D
|
||||
#define GL_INTENSITY16F_ARB 0x881D
|
||||
#define GL_INTENSITY32F_ARB 0x8817
|
||||
#define GL_INTENSITY4 0x804A
|
||||
#define GL_INTENSITY8 0x804B
|
||||
#define GL_INTERLEAVED_ATTRIBS 0x8C8C
|
||||
#define GL_INTERPOLATE 0x8575
|
||||
#define GL_INT_SAMPLER_1D 0x8DC9
|
||||
#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE
|
||||
#define GL_INT_SAMPLER_2D 0x8DCA
|
||||
#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF
|
||||
#define GL_INT_SAMPLER_3D 0x8DCB
|
||||
#define GL_INT_SAMPLER_CUBE 0x8DCC
|
||||
#define GL_INT_VEC2 0x8B53
|
||||
#define GL_INT_VEC3 0x8B54
|
||||
#define GL_INT_VEC4 0x8B55
|
||||
@ -607,17 +660,14 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_LUMINANCE12_ALPHA12 0x8047
|
||||
#define GL_LUMINANCE12_ALPHA4 0x8046
|
||||
#define GL_LUMINANCE16 0x8042
|
||||
#define GL_LUMINANCE16F_ARB 0x881E
|
||||
#define GL_LUMINANCE16_ALPHA16 0x8048
|
||||
#define GL_LUMINANCE32F_ARB 0x8818
|
||||
#define GL_LUMINANCE4 0x803F
|
||||
#define GL_LUMINANCE4_ALPHA4 0x8043
|
||||
#define GL_LUMINANCE6_ALPHA2 0x8044
|
||||
#define GL_LUMINANCE8 0x8040
|
||||
#define GL_LUMINANCE8_ALPHA8 0x8045
|
||||
#define GL_LUMINANCE_ALPHA 0x190A
|
||||
#define GL_LUMINANCE_ALPHA16F_ARB 0x881F
|
||||
#define GL_LUMINANCE_ALPHA32F_ARB 0x8819
|
||||
#define GL_MAJOR_VERSION 0x821B
|
||||
#define GL_MAP1_COLOR_4 0x0D90
|
||||
#define GL_MAP1_GRID_DOMAIN 0x0DD0
|
||||
#define GL_MAP1_GRID_SEGMENTS 0x0DD1
|
||||
@ -641,12 +691,20 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_MAP2_VERTEX_3 0x0DB7
|
||||
#define GL_MAP2_VERTEX_4 0x0DB8
|
||||
#define GL_MAP_COLOR 0x0D10
|
||||
#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010
|
||||
#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008
|
||||
#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004
|
||||
#define GL_MAP_READ_BIT 0x0001
|
||||
#define GL_MAP_STENCIL 0x0D11
|
||||
#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020
|
||||
#define GL_MAP_WRITE_BIT 0x0002
|
||||
#define GL_MATRIX_MODE 0x0BA0
|
||||
#define GL_MAX 0x8008
|
||||
#define GL_MAX_3D_TEXTURE_SIZE 0x8073
|
||||
#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF
|
||||
#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35
|
||||
#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B
|
||||
#define GL_MAX_CLIP_DISTANCES 0x0D32
|
||||
#define GL_MAX_CLIP_PLANES 0x0D32
|
||||
#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF
|
||||
#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
|
||||
@ -661,6 +719,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36
|
||||
#define GL_MAX_NAME_STACK_DEPTH 0x0D37
|
||||
#define GL_MAX_PIXEL_MAP_TABLE 0x0D34
|
||||
#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905
|
||||
#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38
|
||||
#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
|
||||
#define GL_MAX_SAMPLES 0x8D57
|
||||
@ -670,12 +729,18 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_MAX_TEXTURE_SIZE 0x0D33
|
||||
#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39
|
||||
#define GL_MAX_TEXTURE_UNITS 0x84E2
|
||||
#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A
|
||||
#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B
|
||||
#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80
|
||||
#define GL_MAX_VARYING_COMPONENTS 0x8B4B
|
||||
#define GL_MAX_VARYING_FLOATS 0x8B4B
|
||||
#define GL_MAX_VERTEX_ATTRIBS 0x8869
|
||||
#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
|
||||
#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A
|
||||
#define GL_MAX_VIEWPORT_DIMS 0x0D3A
|
||||
#define GL_MIN 0x8007
|
||||
#define GL_MINOR_VERSION 0x821C
|
||||
#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904
|
||||
#define GL_MIRRORED_REPEAT 0x8370
|
||||
#define GL_MODELVIEW 0x1700
|
||||
#define GL_MODELVIEW_MATRIX 0x0BA6
|
||||
@ -705,6 +770,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_NOTEQUAL 0x0205
|
||||
#define GL_NO_ERROR 0
|
||||
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
|
||||
#define GL_NUM_EXTENSIONS 0x821D
|
||||
#define GL_OBJECT_LINEAR 0x2401
|
||||
#define GL_OBJECT_PLANE 0x2501
|
||||
#define GL_ONE 1
|
||||
@ -791,22 +857,41 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_POSITION 0x1203
|
||||
#define GL_PREVIOUS 0x8578
|
||||
#define GL_PRIMARY_COLOR 0x8577
|
||||
#define GL_PRIMITIVES_GENERATED 0x8C87
|
||||
#define GL_PROJECTION 0x1701
|
||||
#define GL_PROJECTION_MATRIX 0x0BA7
|
||||
#define GL_PROJECTION_STACK_DEPTH 0x0BA4
|
||||
#define GL_PROXY_TEXTURE_1D 0x8063
|
||||
#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19
|
||||
#define GL_PROXY_TEXTURE_2D 0x8064
|
||||
#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B
|
||||
#define GL_PROXY_TEXTURE_3D 0x8070
|
||||
#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B
|
||||
#define GL_Q 0x2003
|
||||
#define GL_QUADRATIC_ATTENUATION 0x1209
|
||||
#define GL_QUADS 0x0007
|
||||
#define GL_QUAD_STRIP 0x0008
|
||||
#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16
|
||||
#define GL_QUERY_BY_REGION_WAIT 0x8E15
|
||||
#define GL_QUERY_COUNTER_BITS 0x8864
|
||||
#define GL_QUERY_NO_WAIT 0x8E14
|
||||
#define GL_QUERY_RESULT 0x8866
|
||||
#define GL_QUERY_RESULT_AVAILABLE 0x8867
|
||||
#define GL_QUERY_WAIT 0x8E13
|
||||
#define GL_R 0x2002
|
||||
#define GL_R11F_G11F_B10F 0x8C3A
|
||||
#define GL_R16 0x822A
|
||||
#define GL_R16F 0x822D
|
||||
#define GL_R16I 0x8233
|
||||
#define GL_R16UI 0x8234
|
||||
#define GL_R32F 0x822E
|
||||
#define GL_R32I 0x8235
|
||||
#define GL_R32UI 0x8236
|
||||
#define GL_R3_G3_B2 0x2A10
|
||||
#define GL_R8 0x8229
|
||||
#define GL_R8I 0x8231
|
||||
#define GL_R8UI 0x8232
|
||||
#define GL_RASTERIZER_DISCARD 0x8C89
|
||||
#define GL_READ_BUFFER 0x0C02
|
||||
#define GL_READ_FRAMEBUFFER 0x8CA8
|
||||
#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
|
||||
@ -815,6 +900,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_RED 0x1903
|
||||
#define GL_RED_BIAS 0x0D15
|
||||
#define GL_RED_BITS 0x0D52
|
||||
#define GL_RED_INTEGER 0x8D94
|
||||
#define GL_RED_SCALE 0x0D14
|
||||
#define GL_REFLECTION_MAP 0x8512
|
||||
#define GL_RENDER 0x1C00
|
||||
@ -836,35 +922,67 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_REPLACE 0x1E01
|
||||
#define GL_RESCALE_NORMAL 0x803A
|
||||
#define GL_RETURN 0x0102
|
||||
#define GL_RG 0x8227
|
||||
#define GL_RG16 0x822C
|
||||
#define GL_RG16F 0x822F
|
||||
#define GL_RG16I 0x8239
|
||||
#define GL_RG16UI 0x823A
|
||||
#define GL_RG32F 0x8230
|
||||
#define GL_RG32I 0x823B
|
||||
#define GL_RG32UI 0x823C
|
||||
#define GL_RG8 0x822B
|
||||
#define GL_RG8I 0x8237
|
||||
#define GL_RG8UI 0x8238
|
||||
#define GL_RGB 0x1907
|
||||
#define GL_RGB10 0x8052
|
||||
#define GL_RGB10_A2 0x8059
|
||||
#define GL_RGB12 0x8053
|
||||
#define GL_RGB16 0x8054
|
||||
#define GL_RGB16F_ARB 0x881B
|
||||
#define GL_RGB32F_ARB 0x8815
|
||||
#define GL_RGB16F 0x881B
|
||||
#define GL_RGB16I 0x8D89
|
||||
#define GL_RGB16UI 0x8D77
|
||||
#define GL_RGB32F 0x8815
|
||||
#define GL_RGB32I 0x8D83
|
||||
#define GL_RGB32UI 0x8D71
|
||||
#define GL_RGB4 0x804F
|
||||
#define GL_RGB5 0x8050
|
||||
#define GL_RGB5_A1 0x8057
|
||||
#define GL_RGB8 0x8051
|
||||
#define GL_RGB8I 0x8D8F
|
||||
#define GL_RGB8UI 0x8D7D
|
||||
#define GL_RGB9_E5 0x8C3D
|
||||
#define GL_RGBA 0x1908
|
||||
#define GL_RGBA12 0x805A
|
||||
#define GL_RGBA16 0x805B
|
||||
#define GL_RGBA16F_ARB 0x881A
|
||||
#define GL_RGBA16F 0x881A
|
||||
#define GL_RGBA16I 0x8D88
|
||||
#define GL_RGBA16UI 0x8D76
|
||||
#define GL_RGBA2 0x8055
|
||||
#define GL_RGBA32F_ARB 0x8814
|
||||
#define GL_RGBA32F 0x8814
|
||||
#define GL_RGBA32I 0x8D82
|
||||
#define GL_RGBA32UI 0x8D70
|
||||
#define GL_RGBA4 0x8056
|
||||
#define GL_RGBA8 0x8058
|
||||
#define GL_RGBA8I 0x8D8E
|
||||
#define GL_RGBA8UI 0x8D7C
|
||||
#define GL_RGBA_INTEGER 0x8D99
|
||||
#define GL_RGBA_MODE 0x0C31
|
||||
#define GL_RGB_INTEGER 0x8D98
|
||||
#define GL_RGB_SCALE 0x8573
|
||||
#define GL_RG_INTEGER 0x8228
|
||||
#define GL_RIGHT 0x0407
|
||||
#define GL_S 0x2000
|
||||
#define GL_SAMPLER_1D 0x8B5D
|
||||
#define GL_SAMPLER_1D_ARRAY 0x8DC0
|
||||
#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3
|
||||
#define GL_SAMPLER_1D_SHADOW 0x8B61
|
||||
#define GL_SAMPLER_2D 0x8B5E
|
||||
#define GL_SAMPLER_2D_ARRAY 0x8DC1
|
||||
#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4
|
||||
#define GL_SAMPLER_2D_SHADOW 0x8B62
|
||||
#define GL_SAMPLER_3D 0x8B5F
|
||||
#define GL_SAMPLER_CUBE 0x8B60
|
||||
#define GL_SAMPLER_CUBE_SHADOW 0x8DC5
|
||||
#define GL_SAMPLES 0x80A9
|
||||
#define GL_SAMPLES_PASSED 0x8914
|
||||
#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
|
||||
@ -885,6 +1003,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_SELECT 0x1C02
|
||||
#define GL_SELECTION_BUFFER_POINTER 0x0DF3
|
||||
#define GL_SELECTION_BUFFER_SIZE 0x0DF4
|
||||
#define GL_SEPARATE_ATTRIBS 0x8C8D
|
||||
#define GL_SEPARATE_SPECULAR_COLOR 0x81FA
|
||||
#define GL_SET 0x150F
|
||||
#define GL_SHADER_SOURCE_LENGTH 0x8B88
|
||||
@ -1005,18 +1124,22 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_TEXTURE8 0x84C8
|
||||
#define GL_TEXTURE9 0x84C9
|
||||
#define GL_TEXTURE_1D 0x0DE0
|
||||
#define GL_TEXTURE_1D_ARRAY 0x8C18
|
||||
#define GL_TEXTURE_2D 0x0DE1
|
||||
#define GL_TEXTURE_2D_ARRAY 0x8C1A
|
||||
#define GL_TEXTURE_3D 0x806F
|
||||
#define GL_TEXTURE_ALPHA_SIZE 0x805F
|
||||
#define GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13
|
||||
#define GL_TEXTURE_ALPHA_TYPE 0x8C13
|
||||
#define GL_TEXTURE_BASE_LEVEL 0x813C
|
||||
#define GL_TEXTURE_BINDING_1D 0x8068
|
||||
#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C
|
||||
#define GL_TEXTURE_BINDING_2D 0x8069
|
||||
#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D
|
||||
#define GL_TEXTURE_BINDING_3D 0x806A
|
||||
#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
|
||||
#define GL_TEXTURE_BIT 0x00040000
|
||||
#define GL_TEXTURE_BLUE_SIZE 0x805E
|
||||
#define GL_TEXTURE_BLUE_TYPE_ARB 0x8C12
|
||||
#define GL_TEXTURE_BLUE_TYPE 0x8C12
|
||||
#define GL_TEXTURE_BORDER 0x1005
|
||||
#define GL_TEXTURE_BORDER_COLOR 0x1004
|
||||
#define GL_TEXTURE_COMPARE_FUNC 0x884D
|
||||
@ -1040,7 +1163,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
|
||||
#define GL_TEXTURE_DEPTH 0x8071
|
||||
#define GL_TEXTURE_DEPTH_SIZE 0x884A
|
||||
#define GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16
|
||||
#define GL_TEXTURE_DEPTH_TYPE 0x8C16
|
||||
#define GL_TEXTURE_ENV 0x2300
|
||||
#define GL_TEXTURE_ENV_COLOR 0x2201
|
||||
#define GL_TEXTURE_ENV_MODE 0x2200
|
||||
@ -1051,14 +1174,14 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_TEXTURE_GEN_S 0x0C60
|
||||
#define GL_TEXTURE_GEN_T 0x0C61
|
||||
#define GL_TEXTURE_GREEN_SIZE 0x805D
|
||||
#define GL_TEXTURE_GREEN_TYPE_ARB 0x8C11
|
||||
#define GL_TEXTURE_GREEN_TYPE 0x8C11
|
||||
#define GL_TEXTURE_HEIGHT 0x1001
|
||||
#define GL_TEXTURE_INTENSITY_SIZE 0x8061
|
||||
#define GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15
|
||||
#define GL_TEXTURE_INTENSITY_TYPE 0x8C15
|
||||
#define GL_TEXTURE_INTERNAL_FORMAT 0x1003
|
||||
#define GL_TEXTURE_LOD_BIAS 0x8501
|
||||
#define GL_TEXTURE_LUMINANCE_SIZE 0x8060
|
||||
#define GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14
|
||||
#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14
|
||||
#define GL_TEXTURE_MAG_FILTER 0x2800
|
||||
#define GL_TEXTURE_MATRIX 0x0BA8
|
||||
#define GL_TEXTURE_MAX_LEVEL 0x813D
|
||||
@ -1067,8 +1190,9 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_TEXTURE_MIN_LOD 0x813A
|
||||
#define GL_TEXTURE_PRIORITY 0x8066
|
||||
#define GL_TEXTURE_RED_SIZE 0x805C
|
||||
#define GL_TEXTURE_RED_TYPE_ARB 0x8C10
|
||||
#define GL_TEXTURE_RED_TYPE 0x8C10
|
||||
#define GL_TEXTURE_RESIDENT 0x8067
|
||||
#define GL_TEXTURE_SHARED_SIZE 0x8C3F
|
||||
#define GL_TEXTURE_STACK_DEPTH 0x0BA5
|
||||
#define GL_TEXTURE_STENCIL_SIZE 0x88F1
|
||||
#define GL_TEXTURE_WIDTH 0x1000
|
||||
@ -1076,6 +1200,14 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_TEXTURE_WRAP_S 0x2802
|
||||
#define GL_TEXTURE_WRAP_T 0x2803
|
||||
#define GL_TRANSFORM_BIT 0x00001000
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85
|
||||
#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84
|
||||
#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88
|
||||
#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83
|
||||
#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76
|
||||
#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6
|
||||
#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3
|
||||
#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4
|
||||
@ -1096,13 +1228,23 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362
|
||||
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
|
||||
#define GL_UNSIGNED_INT 0x1405
|
||||
#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B
|
||||
#define GL_UNSIGNED_INT_10_10_10_2 0x8036
|
||||
#define GL_UNSIGNED_INT_24_8 0x84FA
|
||||
#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368
|
||||
#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E
|
||||
#define GL_UNSIGNED_INT_8_8_8_8 0x8035
|
||||
#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367
|
||||
#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1
|
||||
#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6
|
||||
#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2
|
||||
#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7
|
||||
#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3
|
||||
#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4
|
||||
#define GL_UNSIGNED_INT_VEC2 0x8DC6
|
||||
#define GL_UNSIGNED_INT_VEC3 0x8DC7
|
||||
#define GL_UNSIGNED_INT_VEC4 0x8DC8
|
||||
#define GL_UNSIGNED_NORMALIZED 0x8C17
|
||||
#define GL_UNSIGNED_NORMALIZED_ARB 0x8C17
|
||||
#define GL_UNSIGNED_SHORT 0x1403
|
||||
#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366
|
||||
#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
|
||||
@ -1125,6 +1267,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
||||
#define GL_VERTEX_ARRAY_TYPE 0x807B
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
|
||||
@ -1224,12 +1367,8 @@ GLAD_API_CALL int GLAD_GL_VERSION_1_5;
|
||||
GLAD_API_CALL int GLAD_GL_VERSION_2_0;
|
||||
#define GL_VERSION_2_1 1
|
||||
GLAD_API_CALL int GLAD_GL_VERSION_2_1;
|
||||
#define GL_ARB_framebuffer_object 1
|
||||
GLAD_API_CALL int GLAD_GL_ARB_framebuffer_object;
|
||||
#define GL_ARB_texture_float 1
|
||||
GLAD_API_CALL int GLAD_GL_ARB_texture_float;
|
||||
#define GL_ARB_vertex_array_object 1
|
||||
GLAD_API_CALL int GLAD_GL_ARB_vertex_array_object;
|
||||
#define GL_VERSION_3_0 1
|
||||
GLAD_API_CALL int GLAD_GL_VERSION_3_0;
|
||||
|
||||
|
||||
typedef void (GLAD_API_PTR *PFNGLACCUMPROC)(GLenum op, GLfloat value);
|
||||
@ -1239,9 +1378,14 @@ typedef GLboolean (GLAD_API_PTR *PFNGLARETEXTURESRESIDENTPROC)(GLsizei n, const
|
||||
typedef void (GLAD_API_PTR *PFNGLARRAYELEMENTPROC)(GLint i);
|
||||
typedef void (GLAD_API_PTR *PFNGLATTACHSHADERPROC)(GLuint program, GLuint shader);
|
||||
typedef void (GLAD_API_PTR *PFNGLBEGINPROC)(GLenum mode);
|
||||
typedef void (GLAD_API_PTR *PFNGLBEGINCONDITIONALRENDERPROC)(GLuint id, GLenum mode);
|
||||
typedef void (GLAD_API_PTR *PFNGLBEGINQUERYPROC)(GLenum target, GLuint id);
|
||||
typedef void (GLAD_API_PTR *PFNGLBEGINTRANSFORMFEEDBACKPROC)(GLenum primitiveMode);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDATTRIBLOCATIONPROC)(GLuint program, GLuint index, const GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDBUFFERPROC)(GLenum target, GLuint buffer);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDBUFFERBASEPROC)(GLenum target, GLuint index, GLuint buffer);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDBUFFERRANGEPROC)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDFRAGDATALOCATIONPROC)(GLuint program, GLuint color, const GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDFRAMEBUFFERPROC)(GLenum target, GLuint framebuffer);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDRENDERBUFFERPROC)(GLenum target, GLuint renderbuffer);
|
||||
typedef void (GLAD_API_PTR *PFNGLBINDTEXTUREPROC)(GLenum target, GLuint texture);
|
||||
@ -1258,8 +1402,13 @@ typedef void (GLAD_API_PTR *PFNGLBUFFERSUBDATAPROC)(GLenum target, GLintptr offs
|
||||
typedef void (GLAD_API_PTR *PFNGLCALLLISTPROC)(GLuint list);
|
||||
typedef void (GLAD_API_PTR *PFNGLCALLLISTSPROC)(GLsizei n, GLenum type, const void * lists);
|
||||
typedef GLenum (GLAD_API_PTR *PFNGLCHECKFRAMEBUFFERSTATUSPROC)(GLenum target);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLAMPCOLORPROC)(GLenum target, GLenum clamp);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARPROC)(GLbitfield mask);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARACCUMPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARBUFFERFIPROC)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARBUFFERFVPROC)(GLenum buffer, GLint drawbuffer, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARBUFFERIVPROC)(GLenum buffer, GLint drawbuffer, const GLint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARBUFFERUIVPROC)(GLenum buffer, GLint drawbuffer, const GLuint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARDEPTHPROC)(GLdouble depth);
|
||||
typedef void (GLAD_API_PTR *PFNGLCLEARINDEXPROC)(GLfloat c);
|
||||
@ -1299,6 +1448,7 @@ typedef void (GLAD_API_PTR *PFNGLCOLOR4UIVPROC)(const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLOR4USPROC)(GLushort red, GLushort green, GLushort blue, GLushort alpha);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLOR4USVPROC)(const GLushort * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLORMASKPROC)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLORMASKIPROC)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLORMATERIALPROC)(GLenum face, GLenum mode);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void * pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLCOMPILESHADERPROC)(GLuint shader);
|
||||
@ -1333,6 +1483,7 @@ typedef void (GLAD_API_PTR *PFNGLDETACHSHADERPROC)(GLuint program, GLuint shader
|
||||
typedef void (GLAD_API_PTR *PFNGLDISABLEPROC)(GLenum cap);
|
||||
typedef void (GLAD_API_PTR *PFNGLDISABLECLIENTSTATEPROC)(GLenum array);
|
||||
typedef void (GLAD_API_PTR *PFNGLDISABLEVERTEXATTRIBARRAYPROC)(GLuint index);
|
||||
typedef void (GLAD_API_PTR *PFNGLDISABLEIPROC)(GLenum target, GLuint index);
|
||||
typedef void (GLAD_API_PTR *PFNGLDRAWARRAYSPROC)(GLenum mode, GLint first, GLsizei count);
|
||||
typedef void (GLAD_API_PTR *PFNGLDRAWBUFFERPROC)(GLenum buf);
|
||||
typedef void (GLAD_API_PTR *PFNGLDRAWBUFFERSPROC)(GLsizei n, const GLenum * bufs);
|
||||
@ -1345,9 +1496,12 @@ typedef void (GLAD_API_PTR *PFNGLEDGEFLAGVPROC)(const GLboolean * flag);
|
||||
typedef void (GLAD_API_PTR *PFNGLENABLEPROC)(GLenum cap);
|
||||
typedef void (GLAD_API_PTR *PFNGLENABLECLIENTSTATEPROC)(GLenum array);
|
||||
typedef void (GLAD_API_PTR *PFNGLENABLEVERTEXATTRIBARRAYPROC)(GLuint index);
|
||||
typedef void (GLAD_API_PTR *PFNGLENABLEIPROC)(GLenum target, GLuint index);
|
||||
typedef void (GLAD_API_PTR *PFNGLENDPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLENDCONDITIONALRENDERPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLENDLISTPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLENDQUERYPROC)(GLenum target);
|
||||
typedef void (GLAD_API_PTR *PFNGLENDTRANSFORMFEEDBACKPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLEVALCOORD1DPROC)(GLdouble u);
|
||||
typedef void (GLAD_API_PTR *PFNGLEVALCOORD1DVPROC)(const GLdouble * u);
|
||||
typedef void (GLAD_API_PTR *PFNGLEVALCOORD1FPROC)(GLfloat u);
|
||||
@ -1363,6 +1517,7 @@ typedef void (GLAD_API_PTR *PFNGLEVALPOINT2PROC)(GLint i, GLint j);
|
||||
typedef void (GLAD_API_PTR *PFNGLFEEDBACKBUFFERPROC)(GLsizei size, GLenum type, GLfloat * buffer);
|
||||
typedef void (GLAD_API_PTR *PFNGLFINISHPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLFLUSHPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLFLUSHMAPPEDBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length);
|
||||
typedef void (GLAD_API_PTR *PFNGLFOGCOORDPOINTERPROC)(GLenum type, GLsizei stride, const void * pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLFOGCOORDDPROC)(GLdouble coord);
|
||||
typedef void (GLAD_API_PTR *PFNGLFOGCOORDDVPROC)(const GLdouble * coord);
|
||||
@ -1391,6 +1546,7 @@ typedef void (GLAD_API_PTR *PFNGLGETACTIVEATTRIBPROC)(GLuint program, GLuint ind
|
||||
typedef void (GLAD_API_PTR *PFNGLGETACTIVEUNIFORMPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETATTACHEDSHADERSPROC)(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders);
|
||||
typedef GLint (GLAD_API_PTR *PFNGLGETATTRIBLOCATIONPROC)(GLuint program, const GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETBOOLEANI_VPROC)(GLenum target, GLuint index, GLboolean * data);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETBOOLEANVPROC)(GLenum pname, GLboolean * data);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETBUFFERPOINTERVPROC)(GLenum target, GLenum pname, void ** params);
|
||||
@ -1400,7 +1556,9 @@ typedef void (GLAD_API_PTR *PFNGLGETCOMPRESSEDTEXIMAGEPROC)(GLenum target, GLint
|
||||
typedef void (GLAD_API_PTR *PFNGLGETDOUBLEVPROC)(GLenum pname, GLdouble * data);
|
||||
typedef GLenum (GLAD_API_PTR *PFNGLGETERRORPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETFLOATVPROC)(GLenum pname, GLfloat * data);
|
||||
typedef GLint (GLAD_API_PTR *PFNGLGETFRAGDATALOCATIONPROC)(GLuint program, const GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum target, GLenum attachment, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETINTEGERI_VPROC)(GLenum target, GLuint index, GLint * data);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETINTEGERVPROC)(GLenum pname, GLint * data);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETLIGHTFVPROC)(GLenum light, GLenum pname, GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETLIGHTIVPROC)(GLenum light, GLenum pname, GLint * params);
|
||||
@ -1424,6 +1582,7 @@ typedef void (GLAD_API_PTR *PFNGLGETSHADERINFOLOGPROC)(GLuint shader, GLsizei bu
|
||||
typedef void (GLAD_API_PTR *PFNGLGETSHADERSOURCEPROC)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETSHADERIVPROC)(GLuint shader, GLenum pname, GLint * params);
|
||||
typedef const GLubyte * (GLAD_API_PTR *PFNGLGETSTRINGPROC)(GLenum name);
|
||||
typedef const GLubyte * (GLAD_API_PTR *PFNGLGETSTRINGIPROC)(GLenum name, GLuint index);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXENVFVPROC)(GLenum target, GLenum pname, GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXENVIVPROC)(GLenum target, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXGENDVPROC)(GLenum coord, GLenum pname, GLdouble * params);
|
||||
@ -1432,11 +1591,17 @@ typedef void (GLAD_API_PTR *PFNGLGETTEXGENIVPROC)(GLenum coord, GLenum pname, GL
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXIMAGEPROC)(GLenum target, GLint level, GLenum format, GLenum type, void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXLEVELPARAMETERFVPROC)(GLenum target, GLint level, GLenum pname, GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXLEVELPARAMETERIVPROC)(GLenum target, GLint level, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, GLuint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXPARAMETERFVPROC)(GLenum target, GLenum pname, GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTEXPARAMETERIVPROC)(GLenum target, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name);
|
||||
typedef GLint (GLAD_API_PTR *PFNGLGETUNIFORMLOCATIONPROC)(GLuint program, const GLchar * name);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETUNIFORMFVPROC)(GLuint program, GLint location, GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETUNIFORMIVPROC)(GLuint program, GLint location, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETUNIFORMUIVPROC)(GLuint program, GLint location, GLuint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETVERTEXATTRIBIIVPROC)(GLuint index, GLenum pname, GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETVERTEXATTRIBIUIVPROC)(GLuint index, GLenum pname, GLuint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETVERTEXATTRIBPOINTERVPROC)(GLuint index, GLenum pname, void ** pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETVERTEXATTRIBDVPROC)(GLuint index, GLenum pname, GLdouble * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLGETVERTEXATTRIBFVPROC)(GLuint index, GLenum pname, GLfloat * params);
|
||||
@ -1458,6 +1623,7 @@ typedef void (GLAD_API_PTR *PFNGLINITNAMESPROC)(void);
|
||||
typedef void (GLAD_API_PTR *PFNGLINTERLEAVEDARRAYSPROC)(GLenum format, GLsizei stride, const void * pointer);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISBUFFERPROC)(GLuint buffer);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISENABLEDPROC)(GLenum cap);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISENABLEDIPROC)(GLenum target, GLuint index);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISFRAMEBUFFERPROC)(GLuint framebuffer);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISLISTPROC)(GLuint list);
|
||||
typedef GLboolean (GLAD_API_PTR *PFNGLISPROGRAMPROC)(GLuint program);
|
||||
@ -1490,6 +1656,7 @@ typedef void (GLAD_API_PTR *PFNGLMAP1FPROC)(GLenum target, GLfloat u1, GLfloat u
|
||||
typedef void (GLAD_API_PTR *PFNGLMAP2DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points);
|
||||
typedef void (GLAD_API_PTR *PFNGLMAP2FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points);
|
||||
typedef void * (GLAD_API_PTR *PFNGLMAPBUFFERPROC)(GLenum target, GLenum access);
|
||||
typedef void * (GLAD_API_PTR *PFNGLMAPBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
|
||||
typedef void (GLAD_API_PTR *PFNGLMAPGRID1DPROC)(GLint un, GLdouble u1, GLdouble u2);
|
||||
typedef void (GLAD_API_PTR *PFNGLMAPGRID1FPROC)(GLint un, GLfloat u1, GLfloat u2);
|
||||
typedef void (GLAD_API_PTR *PFNGLMAPGRID2DPROC)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
|
||||
@ -1691,6 +1858,8 @@ typedef void (GLAD_API_PTR *PFNGLTEXGENIVPROC)(GLenum coord, GLenum pname, const
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXIMAGE1DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXIMAGE2DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXIMAGE3DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, const GLint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, const GLuint * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERFPROC)(GLenum target, GLenum pname, GLfloat param);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERFVPROC)(GLenum target, GLenum pname, const GLfloat * params);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERIPROC)(GLenum target, GLenum pname, GLint param);
|
||||
@ -1698,24 +1867,33 @@ typedef void (GLAD_API_PTR *PFNGLTEXPARAMETERIVPROC)(GLenum target, GLenum pname
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * pixels);
|
||||
typedef void (GLAD_API_PTR *PFNGLTRANSFORMFEEDBACKVARYINGSPROC)(GLuint program, GLsizei count, const GLchar *const* varyings, GLenum bufferMode);
|
||||
typedef void (GLAD_API_PTR *PFNGLTRANSLATEDPROC)(GLdouble x, GLdouble y, GLdouble z);
|
||||
typedef void (GLAD_API_PTR *PFNGLTRANSLATEFPROC)(GLfloat x, GLfloat y, GLfloat z);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1FPROC)(GLint location, GLfloat v0);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1FVPROC)(GLint location, GLsizei count, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1IPROC)(GLint location, GLint v0);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1IVPROC)(GLint location, GLsizei count, const GLint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1UIPROC)(GLint location, GLuint v0);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM1UIVPROC)(GLint location, GLsizei count, const GLuint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2FPROC)(GLint location, GLfloat v0, GLfloat v1);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2FVPROC)(GLint location, GLsizei count, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2IPROC)(GLint location, GLint v0, GLint v1);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2IVPROC)(GLint location, GLsizei count, const GLint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2UIPROC)(GLint location, GLuint v0, GLuint v1);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM2UIVPROC)(GLint location, GLsizei count, const GLuint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3FVPROC)(GLint location, GLsizei count, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3IPROC)(GLint location, GLint v0, GLint v1, GLint v2);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3IVPROC)(GLint location, GLsizei count, const GLint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM3UIVPROC)(GLint location, GLsizei count, const GLuint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4FVPROC)(GLint location, GLsizei count, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4IPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4IVPROC)(GLint location, GLsizei count, const GLint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORM4UIVPROC)(GLint location, GLsizei count, const GLuint * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORMMATRIX2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORMMATRIX2X3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
|
||||
typedef void (GLAD_API_PTR *PFNGLUNIFORMMATRIX2X4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
|
||||
@ -1788,6 +1966,27 @@ typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIB4SVPROC)(GLuint index, const GLshor
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIB4UBVPROC)(GLuint index, const GLubyte * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIB4UIVPROC)(GLuint index, const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIB4USVPROC)(GLuint index, const GLushort * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI1IPROC)(GLuint index, GLint x);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI1IVPROC)(GLuint index, const GLint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI1UIPROC)(GLuint index, GLuint x);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI1UIVPROC)(GLuint index, const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI2IPROC)(GLuint index, GLint x, GLint y);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI2IVPROC)(GLuint index, const GLint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI2UIPROC)(GLuint index, GLuint x, GLuint y);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI2UIVPROC)(GLuint index, const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI3IPROC)(GLuint index, GLint x, GLint y, GLint z);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI3IVPROC)(GLuint index, const GLint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI3UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI3UIVPROC)(GLuint index, const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4BVPROC)(GLuint index, const GLbyte * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4IPROC)(GLuint index, GLint x, GLint y, GLint z, GLint w);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4IVPROC)(GLuint index, const GLint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4SVPROC)(GLuint index, const GLshort * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4UBVPROC)(GLuint index, const GLubyte * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4UIVPROC)(GLuint index, const GLuint * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBI4USVPROC)(GLuint index, const GLushort * v);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBIPOINTERPROC)(GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXATTRIBPOINTERPROC)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void * pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLVERTEXPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void * pointer);
|
||||
typedef void (GLAD_API_PTR *PFNGLVIEWPORTPROC)(GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
@ -1822,12 +2021,22 @@ GLAD_API_CALL PFNGLATTACHSHADERPROC glad_glAttachShader;
|
||||
#define glAttachShader glad_glAttachShader
|
||||
GLAD_API_CALL PFNGLBEGINPROC glad_glBegin;
|
||||
#define glBegin glad_glBegin
|
||||
GLAD_API_CALL PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender;
|
||||
#define glBeginConditionalRender glad_glBeginConditionalRender
|
||||
GLAD_API_CALL PFNGLBEGINQUERYPROC glad_glBeginQuery;
|
||||
#define glBeginQuery glad_glBeginQuery
|
||||
GLAD_API_CALL PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback;
|
||||
#define glBeginTransformFeedback glad_glBeginTransformFeedback
|
||||
GLAD_API_CALL PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation;
|
||||
#define glBindAttribLocation glad_glBindAttribLocation
|
||||
GLAD_API_CALL PFNGLBINDBUFFERPROC glad_glBindBuffer;
|
||||
#define glBindBuffer glad_glBindBuffer
|
||||
GLAD_API_CALL PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase;
|
||||
#define glBindBufferBase glad_glBindBufferBase
|
||||
GLAD_API_CALL PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange;
|
||||
#define glBindBufferRange glad_glBindBufferRange
|
||||
GLAD_API_CALL PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation;
|
||||
#define glBindFragDataLocation glad_glBindFragDataLocation
|
||||
GLAD_API_CALL PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer;
|
||||
#define glBindFramebuffer glad_glBindFramebuffer
|
||||
GLAD_API_CALL PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer;
|
||||
@ -1860,10 +2069,20 @@ GLAD_API_CALL PFNGLCALLLISTSPROC glad_glCallLists;
|
||||
#define glCallLists glad_glCallLists
|
||||
GLAD_API_CALL PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus;
|
||||
#define glCheckFramebufferStatus glad_glCheckFramebufferStatus
|
||||
GLAD_API_CALL PFNGLCLAMPCOLORPROC glad_glClampColor;
|
||||
#define glClampColor glad_glClampColor
|
||||
GLAD_API_CALL PFNGLCLEARPROC glad_glClear;
|
||||
#define glClear glad_glClear
|
||||
GLAD_API_CALL PFNGLCLEARACCUMPROC glad_glClearAccum;
|
||||
#define glClearAccum glad_glClearAccum
|
||||
GLAD_API_CALL PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi;
|
||||
#define glClearBufferfi glad_glClearBufferfi
|
||||
GLAD_API_CALL PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv;
|
||||
#define glClearBufferfv glad_glClearBufferfv
|
||||
GLAD_API_CALL PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv;
|
||||
#define glClearBufferiv glad_glClearBufferiv
|
||||
GLAD_API_CALL PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv;
|
||||
#define glClearBufferuiv glad_glClearBufferuiv
|
||||
GLAD_API_CALL PFNGLCLEARCOLORPROC glad_glClearColor;
|
||||
#define glClearColor glad_glClearColor
|
||||
GLAD_API_CALL PFNGLCLEARDEPTHPROC glad_glClearDepth;
|
||||
@ -1942,6 +2161,8 @@ GLAD_API_CALL PFNGLCOLOR4USVPROC glad_glColor4usv;
|
||||
#define glColor4usv glad_glColor4usv
|
||||
GLAD_API_CALL PFNGLCOLORMASKPROC glad_glColorMask;
|
||||
#define glColorMask glad_glColorMask
|
||||
GLAD_API_CALL PFNGLCOLORMASKIPROC glad_glColorMaski;
|
||||
#define glColorMaski glad_glColorMaski
|
||||
GLAD_API_CALL PFNGLCOLORMATERIALPROC glad_glColorMaterial;
|
||||
#define glColorMaterial glad_glColorMaterial
|
||||
GLAD_API_CALL PFNGLCOLORPOINTERPROC glad_glColorPointer;
|
||||
@ -2010,6 +2231,8 @@ GLAD_API_CALL PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState;
|
||||
#define glDisableClientState glad_glDisableClientState
|
||||
GLAD_API_CALL PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray;
|
||||
#define glDisableVertexAttribArray glad_glDisableVertexAttribArray
|
||||
GLAD_API_CALL PFNGLDISABLEIPROC glad_glDisablei;
|
||||
#define glDisablei glad_glDisablei
|
||||
GLAD_API_CALL PFNGLDRAWARRAYSPROC glad_glDrawArrays;
|
||||
#define glDrawArrays glad_glDrawArrays
|
||||
GLAD_API_CALL PFNGLDRAWBUFFERPROC glad_glDrawBuffer;
|
||||
@ -2034,12 +2257,18 @@ GLAD_API_CALL PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState;
|
||||
#define glEnableClientState glad_glEnableClientState
|
||||
GLAD_API_CALL PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray;
|
||||
#define glEnableVertexAttribArray glad_glEnableVertexAttribArray
|
||||
GLAD_API_CALL PFNGLENABLEIPROC glad_glEnablei;
|
||||
#define glEnablei glad_glEnablei
|
||||
GLAD_API_CALL PFNGLENDPROC glad_glEnd;
|
||||
#define glEnd glad_glEnd
|
||||
GLAD_API_CALL PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender;
|
||||
#define glEndConditionalRender glad_glEndConditionalRender
|
||||
GLAD_API_CALL PFNGLENDLISTPROC glad_glEndList;
|
||||
#define glEndList glad_glEndList
|
||||
GLAD_API_CALL PFNGLENDQUERYPROC glad_glEndQuery;
|
||||
#define glEndQuery glad_glEndQuery
|
||||
GLAD_API_CALL PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback;
|
||||
#define glEndTransformFeedback glad_glEndTransformFeedback
|
||||
GLAD_API_CALL PFNGLEVALCOORD1DPROC glad_glEvalCoord1d;
|
||||
#define glEvalCoord1d glad_glEvalCoord1d
|
||||
GLAD_API_CALL PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv;
|
||||
@ -2070,6 +2299,8 @@ GLAD_API_CALL PFNGLFINISHPROC glad_glFinish;
|
||||
#define glFinish glad_glFinish
|
||||
GLAD_API_CALL PFNGLFLUSHPROC glad_glFlush;
|
||||
#define glFlush glad_glFlush
|
||||
GLAD_API_CALL PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange;
|
||||
#define glFlushMappedBufferRange glad_glFlushMappedBufferRange
|
||||
GLAD_API_CALL PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer;
|
||||
#define glFogCoordPointer glad_glFogCoordPointer
|
||||
GLAD_API_CALL PFNGLFOGCOORDDPROC glad_glFogCoordd;
|
||||
@ -2126,6 +2357,8 @@ GLAD_API_CALL PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders;
|
||||
#define glGetAttachedShaders glad_glGetAttachedShaders
|
||||
GLAD_API_CALL PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation;
|
||||
#define glGetAttribLocation glad_glGetAttribLocation
|
||||
GLAD_API_CALL PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v;
|
||||
#define glGetBooleani_v glad_glGetBooleani_v
|
||||
GLAD_API_CALL PFNGLGETBOOLEANVPROC glad_glGetBooleanv;
|
||||
#define glGetBooleanv glad_glGetBooleanv
|
||||
GLAD_API_CALL PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv;
|
||||
@ -2144,8 +2377,12 @@ GLAD_API_CALL PFNGLGETERRORPROC glad_glGetError;
|
||||
#define glGetError glad_glGetError
|
||||
GLAD_API_CALL PFNGLGETFLOATVPROC glad_glGetFloatv;
|
||||
#define glGetFloatv glad_glGetFloatv
|
||||
GLAD_API_CALL PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation;
|
||||
#define glGetFragDataLocation glad_glGetFragDataLocation
|
||||
GLAD_API_CALL PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv;
|
||||
#define glGetFramebufferAttachmentParameteriv glad_glGetFramebufferAttachmentParameteriv
|
||||
GLAD_API_CALL PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v;
|
||||
#define glGetIntegeri_v glad_glGetIntegeri_v
|
||||
GLAD_API_CALL PFNGLGETINTEGERVPROC glad_glGetIntegerv;
|
||||
#define glGetIntegerv glad_glGetIntegerv
|
||||
GLAD_API_CALL PFNGLGETLIGHTFVPROC glad_glGetLightfv;
|
||||
@ -2192,6 +2429,8 @@ GLAD_API_CALL PFNGLGETSHADERIVPROC glad_glGetShaderiv;
|
||||
#define glGetShaderiv glad_glGetShaderiv
|
||||
GLAD_API_CALL PFNGLGETSTRINGPROC glad_glGetString;
|
||||
#define glGetString glad_glGetString
|
||||
GLAD_API_CALL PFNGLGETSTRINGIPROC glad_glGetStringi;
|
||||
#define glGetStringi glad_glGetStringi
|
||||
GLAD_API_CALL PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv;
|
||||
#define glGetTexEnvfv glad_glGetTexEnvfv
|
||||
GLAD_API_CALL PFNGLGETTEXENVIVPROC glad_glGetTexEnviv;
|
||||
@ -2208,16 +2447,28 @@ GLAD_API_CALL PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv;
|
||||
#define glGetTexLevelParameterfv glad_glGetTexLevelParameterfv
|
||||
GLAD_API_CALL PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv;
|
||||
#define glGetTexLevelParameteriv glad_glGetTexLevelParameteriv
|
||||
GLAD_API_CALL PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv;
|
||||
#define glGetTexParameterIiv glad_glGetTexParameterIiv
|
||||
GLAD_API_CALL PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv;
|
||||
#define glGetTexParameterIuiv glad_glGetTexParameterIuiv
|
||||
GLAD_API_CALL PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv;
|
||||
#define glGetTexParameterfv glad_glGetTexParameterfv
|
||||
GLAD_API_CALL PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv;
|
||||
#define glGetTexParameteriv glad_glGetTexParameteriv
|
||||
GLAD_API_CALL PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying;
|
||||
#define glGetTransformFeedbackVarying glad_glGetTransformFeedbackVarying
|
||||
GLAD_API_CALL PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation;
|
||||
#define glGetUniformLocation glad_glGetUniformLocation
|
||||
GLAD_API_CALL PFNGLGETUNIFORMFVPROC glad_glGetUniformfv;
|
||||
#define glGetUniformfv glad_glGetUniformfv
|
||||
GLAD_API_CALL PFNGLGETUNIFORMIVPROC glad_glGetUniformiv;
|
||||
#define glGetUniformiv glad_glGetUniformiv
|
||||
GLAD_API_CALL PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv;
|
||||
#define glGetUniformuiv glad_glGetUniformuiv
|
||||
GLAD_API_CALL PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv;
|
||||
#define glGetVertexAttribIiv glad_glGetVertexAttribIiv
|
||||
GLAD_API_CALL PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv;
|
||||
#define glGetVertexAttribIuiv glad_glGetVertexAttribIuiv
|
||||
GLAD_API_CALL PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv;
|
||||
#define glGetVertexAttribPointerv glad_glGetVertexAttribPointerv
|
||||
GLAD_API_CALL PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv;
|
||||
@ -2260,6 +2511,8 @@ GLAD_API_CALL PFNGLISBUFFERPROC glad_glIsBuffer;
|
||||
#define glIsBuffer glad_glIsBuffer
|
||||
GLAD_API_CALL PFNGLISENABLEDPROC glad_glIsEnabled;
|
||||
#define glIsEnabled glad_glIsEnabled
|
||||
GLAD_API_CALL PFNGLISENABLEDIPROC glad_glIsEnabledi;
|
||||
#define glIsEnabledi glad_glIsEnabledi
|
||||
GLAD_API_CALL PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer;
|
||||
#define glIsFramebuffer glad_glIsFramebuffer
|
||||
GLAD_API_CALL PFNGLISLISTPROC glad_glIsList;
|
||||
@ -2324,6 +2577,8 @@ GLAD_API_CALL PFNGLMAP2FPROC glad_glMap2f;
|
||||
#define glMap2f glad_glMap2f
|
||||
GLAD_API_CALL PFNGLMAPBUFFERPROC glad_glMapBuffer;
|
||||
#define glMapBuffer glad_glMapBuffer
|
||||
GLAD_API_CALL PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange;
|
||||
#define glMapBufferRange glad_glMapBufferRange
|
||||
GLAD_API_CALL PFNGLMAPGRID1DPROC glad_glMapGrid1d;
|
||||
#define glMapGrid1d glad_glMapGrid1d
|
||||
GLAD_API_CALL PFNGLMAPGRID1FPROC glad_glMapGrid1f;
|
||||
@ -2726,6 +2981,10 @@ GLAD_API_CALL PFNGLTEXIMAGE2DPROC glad_glTexImage2D;
|
||||
#define glTexImage2D glad_glTexImage2D
|
||||
GLAD_API_CALL PFNGLTEXIMAGE3DPROC glad_glTexImage3D;
|
||||
#define glTexImage3D glad_glTexImage3D
|
||||
GLAD_API_CALL PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv;
|
||||
#define glTexParameterIiv glad_glTexParameterIiv
|
||||
GLAD_API_CALL PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv;
|
||||
#define glTexParameterIuiv glad_glTexParameterIuiv
|
||||
GLAD_API_CALL PFNGLTEXPARAMETERFPROC glad_glTexParameterf;
|
||||
#define glTexParameterf glad_glTexParameterf
|
||||
GLAD_API_CALL PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv;
|
||||
@ -2740,6 +2999,8 @@ GLAD_API_CALL PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D;
|
||||
#define glTexSubImage2D glad_glTexSubImage2D
|
||||
GLAD_API_CALL PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D;
|
||||
#define glTexSubImage3D glad_glTexSubImage3D
|
||||
GLAD_API_CALL PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings;
|
||||
#define glTransformFeedbackVaryings glad_glTransformFeedbackVaryings
|
||||
GLAD_API_CALL PFNGLTRANSLATEDPROC glad_glTranslated;
|
||||
#define glTranslated glad_glTranslated
|
||||
GLAD_API_CALL PFNGLTRANSLATEFPROC glad_glTranslatef;
|
||||
@ -2752,6 +3013,10 @@ GLAD_API_CALL PFNGLUNIFORM1IPROC glad_glUniform1i;
|
||||
#define glUniform1i glad_glUniform1i
|
||||
GLAD_API_CALL PFNGLUNIFORM1IVPROC glad_glUniform1iv;
|
||||
#define glUniform1iv glad_glUniform1iv
|
||||
GLAD_API_CALL PFNGLUNIFORM1UIPROC glad_glUniform1ui;
|
||||
#define glUniform1ui glad_glUniform1ui
|
||||
GLAD_API_CALL PFNGLUNIFORM1UIVPROC glad_glUniform1uiv;
|
||||
#define glUniform1uiv glad_glUniform1uiv
|
||||
GLAD_API_CALL PFNGLUNIFORM2FPROC glad_glUniform2f;
|
||||
#define glUniform2f glad_glUniform2f
|
||||
GLAD_API_CALL PFNGLUNIFORM2FVPROC glad_glUniform2fv;
|
||||
@ -2760,6 +3025,10 @@ GLAD_API_CALL PFNGLUNIFORM2IPROC glad_glUniform2i;
|
||||
#define glUniform2i glad_glUniform2i
|
||||
GLAD_API_CALL PFNGLUNIFORM2IVPROC glad_glUniform2iv;
|
||||
#define glUniform2iv glad_glUniform2iv
|
||||
GLAD_API_CALL PFNGLUNIFORM2UIPROC glad_glUniform2ui;
|
||||
#define glUniform2ui glad_glUniform2ui
|
||||
GLAD_API_CALL PFNGLUNIFORM2UIVPROC glad_glUniform2uiv;
|
||||
#define glUniform2uiv glad_glUniform2uiv
|
||||
GLAD_API_CALL PFNGLUNIFORM3FPROC glad_glUniform3f;
|
||||
#define glUniform3f glad_glUniform3f
|
||||
GLAD_API_CALL PFNGLUNIFORM3FVPROC glad_glUniform3fv;
|
||||
@ -2768,6 +3037,10 @@ GLAD_API_CALL PFNGLUNIFORM3IPROC glad_glUniform3i;
|
||||
#define glUniform3i glad_glUniform3i
|
||||
GLAD_API_CALL PFNGLUNIFORM3IVPROC glad_glUniform3iv;
|
||||
#define glUniform3iv glad_glUniform3iv
|
||||
GLAD_API_CALL PFNGLUNIFORM3UIPROC glad_glUniform3ui;
|
||||
#define glUniform3ui glad_glUniform3ui
|
||||
GLAD_API_CALL PFNGLUNIFORM3UIVPROC glad_glUniform3uiv;
|
||||
#define glUniform3uiv glad_glUniform3uiv
|
||||
GLAD_API_CALL PFNGLUNIFORM4FPROC glad_glUniform4f;
|
||||
#define glUniform4f glad_glUniform4f
|
||||
GLAD_API_CALL PFNGLUNIFORM4FVPROC glad_glUniform4fv;
|
||||
@ -2776,6 +3049,10 @@ GLAD_API_CALL PFNGLUNIFORM4IPROC glad_glUniform4i;
|
||||
#define glUniform4i glad_glUniform4i
|
||||
GLAD_API_CALL PFNGLUNIFORM4IVPROC glad_glUniform4iv;
|
||||
#define glUniform4iv glad_glUniform4iv
|
||||
GLAD_API_CALL PFNGLUNIFORM4UIPROC glad_glUniform4ui;
|
||||
#define glUniform4ui glad_glUniform4ui
|
||||
GLAD_API_CALL PFNGLUNIFORM4UIVPROC glad_glUniform4uiv;
|
||||
#define glUniform4uiv glad_glUniform4uiv
|
||||
GLAD_API_CALL PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv;
|
||||
#define glUniformMatrix2fv glad_glUniformMatrix2fv
|
||||
GLAD_API_CALL PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv;
|
||||
@ -2920,6 +3197,48 @@ GLAD_API_CALL PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv;
|
||||
#define glVertexAttrib4uiv glad_glVertexAttrib4uiv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv;
|
||||
#define glVertexAttrib4usv glad_glVertexAttrib4usv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i;
|
||||
#define glVertexAttribI1i glad_glVertexAttribI1i
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv;
|
||||
#define glVertexAttribI1iv glad_glVertexAttribI1iv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui;
|
||||
#define glVertexAttribI1ui glad_glVertexAttribI1ui
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv;
|
||||
#define glVertexAttribI1uiv glad_glVertexAttribI1uiv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i;
|
||||
#define glVertexAttribI2i glad_glVertexAttribI2i
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv;
|
||||
#define glVertexAttribI2iv glad_glVertexAttribI2iv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui;
|
||||
#define glVertexAttribI2ui glad_glVertexAttribI2ui
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv;
|
||||
#define glVertexAttribI2uiv glad_glVertexAttribI2uiv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i;
|
||||
#define glVertexAttribI3i glad_glVertexAttribI3i
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv;
|
||||
#define glVertexAttribI3iv glad_glVertexAttribI3iv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui;
|
||||
#define glVertexAttribI3ui glad_glVertexAttribI3ui
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv;
|
||||
#define glVertexAttribI3uiv glad_glVertexAttribI3uiv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv;
|
||||
#define glVertexAttribI4bv glad_glVertexAttribI4bv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i;
|
||||
#define glVertexAttribI4i glad_glVertexAttribI4i
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv;
|
||||
#define glVertexAttribI4iv glad_glVertexAttribI4iv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv;
|
||||
#define glVertexAttribI4sv glad_glVertexAttribI4sv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv;
|
||||
#define glVertexAttribI4ubv glad_glVertexAttribI4ubv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui;
|
||||
#define glVertexAttribI4ui glad_glVertexAttribI4ui
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv;
|
||||
#define glVertexAttribI4uiv glad_glVertexAttribI4uiv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv;
|
||||
#define glVertexAttribI4usv glad_glVertexAttribI4usv
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer;
|
||||
#define glVertexAttribIPointer glad_glVertexAttribIPointer
|
||||
GLAD_API_CALL PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer;
|
||||
#define glVertexAttribPointer glad_glVertexAttribPointer
|
||||
GLAD_API_CALL PFNGLVERTEXPOINTERPROC glad_glVertexPointer;
|
||||
|
||||
@ -1,11 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void input();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@ -6,7 +6,6 @@ extern "C" {
|
||||
unsigned int vtx;
|
||||
unsigned int idx;
|
||||
unsigned int length;
|
||||
unsigned int vertex_array;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@ -1,18 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern uint32_t _binary_model_palette_data_start __asm("_binary_model_palette_data_start");
|
||||
extern uint32_t _binary_model_palette_data_end __asm("_binary_model_palette_data_end");
|
||||
|
||||
#define model_palette_data_start ((const char *)&_binary_model_palette_data_start)
|
||||
#define model_palette_data_end ((const char *)&_binary_model_palette_data_end)
|
||||
#define model_palette_data_size ((uintptr_t)model_palette_data_end - (uintptr_t)model_palette_data_start)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@ -1,18 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
const int plane_Plane_triangles[] = {
|
||||
0, 1, 2,
|
||||
0, 3, 1,
|
||||
};
|
||||
|
||||
const int plane_Plane_triangles_length = (sizeof (plane_Plane_triangles)) / (sizeof (plane_Plane_triangles[0]));
|
||||
|
||||
const float plane_vertices[] = {
|
||||
1.000000f, 0.000000f, 1.000000f, 0.093750f, 0.093750f, -0.0000f, 1.0000f, -0.0000f,
|
||||
-1.000000f, 0.000000f, -1.000000f, 0.093750f, 0.093750f, -0.0000f, 1.0000f, -0.0000f,
|
||||
-1.000000f, 0.000000f, 1.000000f, 0.093750f, 0.093750f, -0.0000f, 1.0000f, -0.0000f,
|
||||
1.000000f, 0.000000f, -1.000000f, 0.093750f, 0.093750f, -0.0000f, 1.0000f, -0.0000f,
|
||||
};
|
||||
|
||||
const int plane_vertices_length = (sizeof (plane_vertices)) / (sizeof (plane_vertices[0]));
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,16 +1,18 @@
|
||||
#pragma once
|
||||
|
||||
#include "state.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void render(unsigned int program,
|
||||
void render(const struct state * state,
|
||||
unsigned int program,
|
||||
unsigned int program__trans,
|
||||
unsigned int program__texture0,
|
||||
unsigned int texture__color,
|
||||
const struct mesh * scene_mesh,
|
||||
const struct mesh * plane_mesh,
|
||||
const struct mesh * sphere_mesh);
|
||||
unsigned int color,
|
||||
unsigned int vertex_array,
|
||||
int triangles_length);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
18
include/state.h
Normal file
18
include/state.h
Normal file
@ -0,0 +1,18 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct state {
|
||||
float rx;
|
||||
float ry;
|
||||
float rz;
|
||||
float tx;
|
||||
float ty;
|
||||
float tz;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@ -1,15 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include "math/float_types.hpp"
|
||||
|
||||
struct state {
|
||||
mat4x4 world_to_view;
|
||||
struct {
|
||||
mat4x4 test_scene;
|
||||
mat4x4 plane;
|
||||
mat4x4 sphere;
|
||||
} local_to_world;
|
||||
int button[16];
|
||||
};
|
||||
|
||||
extern state g_state;
|
||||
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 800 B |
Binary file not shown.
@ -1,14 +0,0 @@
|
||||
# Blender 4.4.3
|
||||
# www.blender.org
|
||||
mtllib plane.mtl
|
||||
o Plane
|
||||
v -1.000000 0.000000 1.000000
|
||||
v 1.000000 0.000000 1.000000
|
||||
v -1.000000 0.000000 -1.000000
|
||||
v 1.000000 0.000000 -1.000000
|
||||
vn -0.0000 1.0000 -0.0000
|
||||
vt 0.093750 0.093750
|
||||
s 0
|
||||
usemtl Material.001
|
||||
f 2/1/1 3/1/1 1/1/1
|
||||
f 2/1/1 4/1/1 3/1/1
|
||||
Binary file not shown.
2537
model/sphere.obj
2537
model/sphere.obj
File diff suppressed because it is too large
Load Diff
Binary file not shown.
1535
model/test_scene.obj
1535
model/test_scene.obj
File diff suppressed because it is too large
Load Diff
147
src/gl.c
147
src/gl.c
@ -31,9 +31,7 @@ int GLAD_GL_VERSION_1_4 = 0;
|
||||
int GLAD_GL_VERSION_1_5 = 0;
|
||||
int GLAD_GL_VERSION_2_0 = 0;
|
||||
int GLAD_GL_VERSION_2_1 = 0;
|
||||
int GLAD_GL_ARB_framebuffer_object = 0;
|
||||
int GLAD_GL_ARB_texture_float = 0;
|
||||
int GLAD_GL_ARB_vertex_array_object = 0;
|
||||
int GLAD_GL_VERSION_3_0 = 0;
|
||||
|
||||
|
||||
|
||||
@ -44,9 +42,14 @@ PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident = NULL;
|
||||
PFNGLARRAYELEMENTPROC glad_glArrayElement = NULL;
|
||||
PFNGLATTACHSHADERPROC glad_glAttachShader = NULL;
|
||||
PFNGLBEGINPROC glad_glBegin = NULL;
|
||||
PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender = NULL;
|
||||
PFNGLBEGINQUERYPROC glad_glBeginQuery = NULL;
|
||||
PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback = NULL;
|
||||
PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation = NULL;
|
||||
PFNGLBINDBUFFERPROC glad_glBindBuffer = NULL;
|
||||
PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase = NULL;
|
||||
PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange = NULL;
|
||||
PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation = NULL;
|
||||
PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer = NULL;
|
||||
PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer = NULL;
|
||||
PFNGLBINDTEXTUREPROC glad_glBindTexture = NULL;
|
||||
@ -63,8 +66,13 @@ PFNGLBUFFERSUBDATAPROC glad_glBufferSubData = NULL;
|
||||
PFNGLCALLLISTPROC glad_glCallList = NULL;
|
||||
PFNGLCALLLISTSPROC glad_glCallLists = NULL;
|
||||
PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus = NULL;
|
||||
PFNGLCLAMPCOLORPROC glad_glClampColor = NULL;
|
||||
PFNGLCLEARPROC glad_glClear = NULL;
|
||||
PFNGLCLEARACCUMPROC glad_glClearAccum = NULL;
|
||||
PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi = NULL;
|
||||
PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv = NULL;
|
||||
PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv = NULL;
|
||||
PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv = NULL;
|
||||
PFNGLCLEARCOLORPROC glad_glClearColor = NULL;
|
||||
PFNGLCLEARDEPTHPROC glad_glClearDepth = NULL;
|
||||
PFNGLCLEARINDEXPROC glad_glClearIndex = NULL;
|
||||
@ -104,6 +112,7 @@ PFNGLCOLOR4UIVPROC glad_glColor4uiv = NULL;
|
||||
PFNGLCOLOR4USPROC glad_glColor4us = NULL;
|
||||
PFNGLCOLOR4USVPROC glad_glColor4usv = NULL;
|
||||
PFNGLCOLORMASKPROC glad_glColorMask = NULL;
|
||||
PFNGLCOLORMASKIPROC glad_glColorMaski = NULL;
|
||||
PFNGLCOLORMATERIALPROC glad_glColorMaterial = NULL;
|
||||
PFNGLCOLORPOINTERPROC glad_glColorPointer = NULL;
|
||||
PFNGLCOMPILESHADERPROC glad_glCompileShader = NULL;
|
||||
@ -138,6 +147,7 @@ PFNGLDETACHSHADERPROC glad_glDetachShader = NULL;
|
||||
PFNGLDISABLEPROC glad_glDisable = NULL;
|
||||
PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState = NULL;
|
||||
PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray = NULL;
|
||||
PFNGLDISABLEIPROC glad_glDisablei = NULL;
|
||||
PFNGLDRAWARRAYSPROC glad_glDrawArrays = NULL;
|
||||
PFNGLDRAWBUFFERPROC glad_glDrawBuffer = NULL;
|
||||
PFNGLDRAWBUFFERSPROC glad_glDrawBuffers = NULL;
|
||||
@ -150,9 +160,12 @@ PFNGLEDGEFLAGVPROC glad_glEdgeFlagv = NULL;
|
||||
PFNGLENABLEPROC glad_glEnable = NULL;
|
||||
PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState = NULL;
|
||||
PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray = NULL;
|
||||
PFNGLENABLEIPROC glad_glEnablei = NULL;
|
||||
PFNGLENDPROC glad_glEnd = NULL;
|
||||
PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender = NULL;
|
||||
PFNGLENDLISTPROC glad_glEndList = NULL;
|
||||
PFNGLENDQUERYPROC glad_glEndQuery = NULL;
|
||||
PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback = NULL;
|
||||
PFNGLEVALCOORD1DPROC glad_glEvalCoord1d = NULL;
|
||||
PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv = NULL;
|
||||
PFNGLEVALCOORD1FPROC glad_glEvalCoord1f = NULL;
|
||||
@ -168,6 +181,7 @@ PFNGLEVALPOINT2PROC glad_glEvalPoint2 = NULL;
|
||||
PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer = NULL;
|
||||
PFNGLFINISHPROC glad_glFinish = NULL;
|
||||
PFNGLFLUSHPROC glad_glFlush = NULL;
|
||||
PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange = NULL;
|
||||
PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer = NULL;
|
||||
PFNGLFOGCOORDDPROC glad_glFogCoordd = NULL;
|
||||
PFNGLFOGCOORDDVPROC glad_glFogCoorddv = NULL;
|
||||
@ -196,6 +210,7 @@ PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib = NULL;
|
||||
PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform = NULL;
|
||||
PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders = NULL;
|
||||
PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation = NULL;
|
||||
PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v = NULL;
|
||||
PFNGLGETBOOLEANVPROC glad_glGetBooleanv = NULL;
|
||||
PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv = NULL;
|
||||
PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv = NULL;
|
||||
@ -205,7 +220,9 @@ PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage = NULL;
|
||||
PFNGLGETDOUBLEVPROC glad_glGetDoublev = NULL;
|
||||
PFNGLGETERRORPROC glad_glGetError = NULL;
|
||||
PFNGLGETFLOATVPROC glad_glGetFloatv = NULL;
|
||||
PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation = NULL;
|
||||
PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv = NULL;
|
||||
PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v = NULL;
|
||||
PFNGLGETINTEGERVPROC glad_glGetIntegerv = NULL;
|
||||
PFNGLGETLIGHTFVPROC glad_glGetLightfv = NULL;
|
||||
PFNGLGETLIGHTIVPROC glad_glGetLightiv = NULL;
|
||||
@ -229,6 +246,7 @@ PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog = NULL;
|
||||
PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource = NULL;
|
||||
PFNGLGETSHADERIVPROC glad_glGetShaderiv = NULL;
|
||||
PFNGLGETSTRINGPROC glad_glGetString = NULL;
|
||||
PFNGLGETSTRINGIPROC glad_glGetStringi = NULL;
|
||||
PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv = NULL;
|
||||
PFNGLGETTEXENVIVPROC glad_glGetTexEnviv = NULL;
|
||||
PFNGLGETTEXGENDVPROC glad_glGetTexGendv = NULL;
|
||||
@ -237,11 +255,17 @@ PFNGLGETTEXGENIVPROC glad_glGetTexGeniv = NULL;
|
||||
PFNGLGETTEXIMAGEPROC glad_glGetTexImage = NULL;
|
||||
PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv = NULL;
|
||||
PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv = NULL;
|
||||
PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv = NULL;
|
||||
PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv = NULL;
|
||||
PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv = NULL;
|
||||
PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv = NULL;
|
||||
PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying = NULL;
|
||||
PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation = NULL;
|
||||
PFNGLGETUNIFORMFVPROC glad_glGetUniformfv = NULL;
|
||||
PFNGLGETUNIFORMIVPROC glad_glGetUniformiv = NULL;
|
||||
PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv = NULL;
|
||||
PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv = NULL;
|
||||
PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv = NULL;
|
||||
PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv = NULL;
|
||||
PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv = NULL;
|
||||
PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv = NULL;
|
||||
@ -263,6 +287,7 @@ PFNGLINITNAMESPROC glad_glInitNames = NULL;
|
||||
PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays = NULL;
|
||||
PFNGLISBUFFERPROC glad_glIsBuffer = NULL;
|
||||
PFNGLISENABLEDPROC glad_glIsEnabled = NULL;
|
||||
PFNGLISENABLEDIPROC glad_glIsEnabledi = NULL;
|
||||
PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer = NULL;
|
||||
PFNGLISLISTPROC glad_glIsList = NULL;
|
||||
PFNGLISPROGRAMPROC glad_glIsProgram = NULL;
|
||||
@ -295,6 +320,7 @@ PFNGLMAP1FPROC glad_glMap1f = NULL;
|
||||
PFNGLMAP2DPROC glad_glMap2d = NULL;
|
||||
PFNGLMAP2FPROC glad_glMap2f = NULL;
|
||||
PFNGLMAPBUFFERPROC glad_glMapBuffer = NULL;
|
||||
PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange = NULL;
|
||||
PFNGLMAPGRID1DPROC glad_glMapGrid1d = NULL;
|
||||
PFNGLMAPGRID1FPROC glad_glMapGrid1f = NULL;
|
||||
PFNGLMAPGRID2DPROC glad_glMapGrid2d = NULL;
|
||||
@ -496,6 +522,8 @@ PFNGLTEXGENIVPROC glad_glTexGeniv = NULL;
|
||||
PFNGLTEXIMAGE1DPROC glad_glTexImage1D = NULL;
|
||||
PFNGLTEXIMAGE2DPROC glad_glTexImage2D = NULL;
|
||||
PFNGLTEXIMAGE3DPROC glad_glTexImage3D = NULL;
|
||||
PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv = NULL;
|
||||
PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv = NULL;
|
||||
PFNGLTEXPARAMETERFPROC glad_glTexParameterf = NULL;
|
||||
PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv = NULL;
|
||||
PFNGLTEXPARAMETERIPROC glad_glTexParameteri = NULL;
|
||||
@ -503,24 +531,33 @@ PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv = NULL;
|
||||
PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D = NULL;
|
||||
PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D = NULL;
|
||||
PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D = NULL;
|
||||
PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings = NULL;
|
||||
PFNGLTRANSLATEDPROC glad_glTranslated = NULL;
|
||||
PFNGLTRANSLATEFPROC glad_glTranslatef = NULL;
|
||||
PFNGLUNIFORM1FPROC glad_glUniform1f = NULL;
|
||||
PFNGLUNIFORM1FVPROC glad_glUniform1fv = NULL;
|
||||
PFNGLUNIFORM1IPROC glad_glUniform1i = NULL;
|
||||
PFNGLUNIFORM1IVPROC glad_glUniform1iv = NULL;
|
||||
PFNGLUNIFORM1UIPROC glad_glUniform1ui = NULL;
|
||||
PFNGLUNIFORM1UIVPROC glad_glUniform1uiv = NULL;
|
||||
PFNGLUNIFORM2FPROC glad_glUniform2f = NULL;
|
||||
PFNGLUNIFORM2FVPROC glad_glUniform2fv = NULL;
|
||||
PFNGLUNIFORM2IPROC glad_glUniform2i = NULL;
|
||||
PFNGLUNIFORM2IVPROC glad_glUniform2iv = NULL;
|
||||
PFNGLUNIFORM2UIPROC glad_glUniform2ui = NULL;
|
||||
PFNGLUNIFORM2UIVPROC glad_glUniform2uiv = NULL;
|
||||
PFNGLUNIFORM3FPROC glad_glUniform3f = NULL;
|
||||
PFNGLUNIFORM3FVPROC glad_glUniform3fv = NULL;
|
||||
PFNGLUNIFORM3IPROC glad_glUniform3i = NULL;
|
||||
PFNGLUNIFORM3IVPROC glad_glUniform3iv = NULL;
|
||||
PFNGLUNIFORM3UIPROC glad_glUniform3ui = NULL;
|
||||
PFNGLUNIFORM3UIVPROC glad_glUniform3uiv = NULL;
|
||||
PFNGLUNIFORM4FPROC glad_glUniform4f = NULL;
|
||||
PFNGLUNIFORM4FVPROC glad_glUniform4fv = NULL;
|
||||
PFNGLUNIFORM4IPROC glad_glUniform4i = NULL;
|
||||
PFNGLUNIFORM4IVPROC glad_glUniform4iv = NULL;
|
||||
PFNGLUNIFORM4UIPROC glad_glUniform4ui = NULL;
|
||||
PFNGLUNIFORM4UIVPROC glad_glUniform4uiv = NULL;
|
||||
PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv = NULL;
|
||||
PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv = NULL;
|
||||
PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv = NULL;
|
||||
@ -593,6 +630,27 @@ PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv = NULL;
|
||||
PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv = NULL;
|
||||
PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv = NULL;
|
||||
PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv = NULL;
|
||||
PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i = NULL;
|
||||
PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv = NULL;
|
||||
PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui = NULL;
|
||||
PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv = NULL;
|
||||
PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i = NULL;
|
||||
PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv = NULL;
|
||||
PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui = NULL;
|
||||
PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv = NULL;
|
||||
PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i = NULL;
|
||||
PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv = NULL;
|
||||
PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui = NULL;
|
||||
PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv = NULL;
|
||||
PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv = NULL;
|
||||
PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i = NULL;
|
||||
PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv = NULL;
|
||||
PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv = NULL;
|
||||
PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv = NULL;
|
||||
PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui = NULL;
|
||||
PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv = NULL;
|
||||
PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv = NULL;
|
||||
PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer = NULL;
|
||||
PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer = NULL;
|
||||
PFNGLVERTEXPOINTERPROC glad_glVertexPointer = NULL;
|
||||
PFNGLVIEWPORTPROC glad_glViewport = NULL;
|
||||
@ -1189,14 +1247,32 @@ static void glad_gl_load_GL_VERSION_2_1( GLADuserptrloadfunc load, void* userptr
|
||||
glad_glUniformMatrix4x2fv = (PFNGLUNIFORMMATRIX4X2FVPROC) load(userptr, "glUniformMatrix4x2fv");
|
||||
glad_glUniformMatrix4x3fv = (PFNGLUNIFORMMATRIX4X3FVPROC) load(userptr, "glUniformMatrix4x3fv");
|
||||
}
|
||||
static void glad_gl_load_GL_ARB_framebuffer_object( GLADuserptrloadfunc load, void* userptr) {
|
||||
if(!GLAD_GL_ARB_framebuffer_object) return;
|
||||
static void glad_gl_load_GL_VERSION_3_0( GLADuserptrloadfunc load, void* userptr) {
|
||||
if(!GLAD_GL_VERSION_3_0) return;
|
||||
glad_glBeginConditionalRender = (PFNGLBEGINCONDITIONALRENDERPROC) load(userptr, "glBeginConditionalRender");
|
||||
glad_glBeginTransformFeedback = (PFNGLBEGINTRANSFORMFEEDBACKPROC) load(userptr, "glBeginTransformFeedback");
|
||||
glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC) load(userptr, "glBindBufferBase");
|
||||
glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC) load(userptr, "glBindBufferRange");
|
||||
glad_glBindFragDataLocation = (PFNGLBINDFRAGDATALOCATIONPROC) load(userptr, "glBindFragDataLocation");
|
||||
glad_glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC) load(userptr, "glBindFramebuffer");
|
||||
glad_glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC) load(userptr, "glBindRenderbuffer");
|
||||
glad_glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC) load(userptr, "glBindVertexArray");
|
||||
glad_glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC) load(userptr, "glBlitFramebuffer");
|
||||
glad_glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC) load(userptr, "glCheckFramebufferStatus");
|
||||
glad_glClampColor = (PFNGLCLAMPCOLORPROC) load(userptr, "glClampColor");
|
||||
glad_glClearBufferfi = (PFNGLCLEARBUFFERFIPROC) load(userptr, "glClearBufferfi");
|
||||
glad_glClearBufferfv = (PFNGLCLEARBUFFERFVPROC) load(userptr, "glClearBufferfv");
|
||||
glad_glClearBufferiv = (PFNGLCLEARBUFFERIVPROC) load(userptr, "glClearBufferiv");
|
||||
glad_glClearBufferuiv = (PFNGLCLEARBUFFERUIVPROC) load(userptr, "glClearBufferuiv");
|
||||
glad_glColorMaski = (PFNGLCOLORMASKIPROC) load(userptr, "glColorMaski");
|
||||
glad_glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC) load(userptr, "glDeleteFramebuffers");
|
||||
glad_glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC) load(userptr, "glDeleteRenderbuffers");
|
||||
glad_glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC) load(userptr, "glDeleteVertexArrays");
|
||||
glad_glDisablei = (PFNGLDISABLEIPROC) load(userptr, "glDisablei");
|
||||
glad_glEnablei = (PFNGLENABLEIPROC) load(userptr, "glEnablei");
|
||||
glad_glEndConditionalRender = (PFNGLENDCONDITIONALRENDERPROC) load(userptr, "glEndConditionalRender");
|
||||
glad_glEndTransformFeedback = (PFNGLENDTRANSFORMFEEDBACKPROC) load(userptr, "glEndTransformFeedback");
|
||||
glad_glFlushMappedBufferRange = (PFNGLFLUSHMAPPEDBUFFERRANGEPROC) load(userptr, "glFlushMappedBufferRange");
|
||||
glad_glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC) load(userptr, "glFramebufferRenderbuffer");
|
||||
glad_glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC) load(userptr, "glFramebufferTexture1D");
|
||||
glad_glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC) load(userptr, "glFramebufferTexture2D");
|
||||
@ -1204,20 +1280,59 @@ static void glad_gl_load_GL_ARB_framebuffer_object( GLADuserptrloadfunc load, vo
|
||||
glad_glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC) load(userptr, "glFramebufferTextureLayer");
|
||||
glad_glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC) load(userptr, "glGenFramebuffers");
|
||||
glad_glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC) load(userptr, "glGenRenderbuffers");
|
||||
glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC) load(userptr, "glGenVertexArrays");
|
||||
glad_glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC) load(userptr, "glGenerateMipmap");
|
||||
glad_glGetBooleani_v = (PFNGLGETBOOLEANI_VPROC) load(userptr, "glGetBooleani_v");
|
||||
glad_glGetFragDataLocation = (PFNGLGETFRAGDATALOCATIONPROC) load(userptr, "glGetFragDataLocation");
|
||||
glad_glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) load(userptr, "glGetFramebufferAttachmentParameteriv");
|
||||
glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC) load(userptr, "glGetIntegeri_v");
|
||||
glad_glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC) load(userptr, "glGetRenderbufferParameteriv");
|
||||
glad_glGetStringi = (PFNGLGETSTRINGIPROC) load(userptr, "glGetStringi");
|
||||
glad_glGetTexParameterIiv = (PFNGLGETTEXPARAMETERIIVPROC) load(userptr, "glGetTexParameterIiv");
|
||||
glad_glGetTexParameterIuiv = (PFNGLGETTEXPARAMETERIUIVPROC) load(userptr, "glGetTexParameterIuiv");
|
||||
glad_glGetTransformFeedbackVarying = (PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) load(userptr, "glGetTransformFeedbackVarying");
|
||||
glad_glGetUniformuiv = (PFNGLGETUNIFORMUIVPROC) load(userptr, "glGetUniformuiv");
|
||||
glad_glGetVertexAttribIiv = (PFNGLGETVERTEXATTRIBIIVPROC) load(userptr, "glGetVertexAttribIiv");
|
||||
glad_glGetVertexAttribIuiv = (PFNGLGETVERTEXATTRIBIUIVPROC) load(userptr, "glGetVertexAttribIuiv");
|
||||
glad_glIsEnabledi = (PFNGLISENABLEDIPROC) load(userptr, "glIsEnabledi");
|
||||
glad_glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC) load(userptr, "glIsFramebuffer");
|
||||
glad_glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC) load(userptr, "glIsRenderbuffer");
|
||||
glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC) load(userptr, "glIsVertexArray");
|
||||
glad_glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC) load(userptr, "glMapBufferRange");
|
||||
glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC) load(userptr, "glRenderbufferStorage");
|
||||
glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) load(userptr, "glRenderbufferStorageMultisample");
|
||||
}
|
||||
static void glad_gl_load_GL_ARB_vertex_array_object( GLADuserptrloadfunc load, void* userptr) {
|
||||
if(!GLAD_GL_ARB_vertex_array_object) return;
|
||||
glad_glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC) load(userptr, "glBindVertexArray");
|
||||
glad_glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC) load(userptr, "glDeleteVertexArrays");
|
||||
glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC) load(userptr, "glGenVertexArrays");
|
||||
glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC) load(userptr, "glIsVertexArray");
|
||||
glad_glTexParameterIiv = (PFNGLTEXPARAMETERIIVPROC) load(userptr, "glTexParameterIiv");
|
||||
glad_glTexParameterIuiv = (PFNGLTEXPARAMETERIUIVPROC) load(userptr, "glTexParameterIuiv");
|
||||
glad_glTransformFeedbackVaryings = (PFNGLTRANSFORMFEEDBACKVARYINGSPROC) load(userptr, "glTransformFeedbackVaryings");
|
||||
glad_glUniform1ui = (PFNGLUNIFORM1UIPROC) load(userptr, "glUniform1ui");
|
||||
glad_glUniform1uiv = (PFNGLUNIFORM1UIVPROC) load(userptr, "glUniform1uiv");
|
||||
glad_glUniform2ui = (PFNGLUNIFORM2UIPROC) load(userptr, "glUniform2ui");
|
||||
glad_glUniform2uiv = (PFNGLUNIFORM2UIVPROC) load(userptr, "glUniform2uiv");
|
||||
glad_glUniform3ui = (PFNGLUNIFORM3UIPROC) load(userptr, "glUniform3ui");
|
||||
glad_glUniform3uiv = (PFNGLUNIFORM3UIVPROC) load(userptr, "glUniform3uiv");
|
||||
glad_glUniform4ui = (PFNGLUNIFORM4UIPROC) load(userptr, "glUniform4ui");
|
||||
glad_glUniform4uiv = (PFNGLUNIFORM4UIVPROC) load(userptr, "glUniform4uiv");
|
||||
glad_glVertexAttribI1i = (PFNGLVERTEXATTRIBI1IPROC) load(userptr, "glVertexAttribI1i");
|
||||
glad_glVertexAttribI1iv = (PFNGLVERTEXATTRIBI1IVPROC) load(userptr, "glVertexAttribI1iv");
|
||||
glad_glVertexAttribI1ui = (PFNGLVERTEXATTRIBI1UIPROC) load(userptr, "glVertexAttribI1ui");
|
||||
glad_glVertexAttribI1uiv = (PFNGLVERTEXATTRIBI1UIVPROC) load(userptr, "glVertexAttribI1uiv");
|
||||
glad_glVertexAttribI2i = (PFNGLVERTEXATTRIBI2IPROC) load(userptr, "glVertexAttribI2i");
|
||||
glad_glVertexAttribI2iv = (PFNGLVERTEXATTRIBI2IVPROC) load(userptr, "glVertexAttribI2iv");
|
||||
glad_glVertexAttribI2ui = (PFNGLVERTEXATTRIBI2UIPROC) load(userptr, "glVertexAttribI2ui");
|
||||
glad_glVertexAttribI2uiv = (PFNGLVERTEXATTRIBI2UIVPROC) load(userptr, "glVertexAttribI2uiv");
|
||||
glad_glVertexAttribI3i = (PFNGLVERTEXATTRIBI3IPROC) load(userptr, "glVertexAttribI3i");
|
||||
glad_glVertexAttribI3iv = (PFNGLVERTEXATTRIBI3IVPROC) load(userptr, "glVertexAttribI3iv");
|
||||
glad_glVertexAttribI3ui = (PFNGLVERTEXATTRIBI3UIPROC) load(userptr, "glVertexAttribI3ui");
|
||||
glad_glVertexAttribI3uiv = (PFNGLVERTEXATTRIBI3UIVPROC) load(userptr, "glVertexAttribI3uiv");
|
||||
glad_glVertexAttribI4bv = (PFNGLVERTEXATTRIBI4BVPROC) load(userptr, "glVertexAttribI4bv");
|
||||
glad_glVertexAttribI4i = (PFNGLVERTEXATTRIBI4IPROC) load(userptr, "glVertexAttribI4i");
|
||||
glad_glVertexAttribI4iv = (PFNGLVERTEXATTRIBI4IVPROC) load(userptr, "glVertexAttribI4iv");
|
||||
glad_glVertexAttribI4sv = (PFNGLVERTEXATTRIBI4SVPROC) load(userptr, "glVertexAttribI4sv");
|
||||
glad_glVertexAttribI4ubv = (PFNGLVERTEXATTRIBI4UBVPROC) load(userptr, "glVertexAttribI4ubv");
|
||||
glad_glVertexAttribI4ui = (PFNGLVERTEXATTRIBI4UIPROC) load(userptr, "glVertexAttribI4ui");
|
||||
glad_glVertexAttribI4uiv = (PFNGLVERTEXATTRIBI4UIVPROC) load(userptr, "glVertexAttribI4uiv");
|
||||
glad_glVertexAttribI4usv = (PFNGLVERTEXATTRIBI4USVPROC) load(userptr, "glVertexAttribI4usv");
|
||||
glad_glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC) load(userptr, "glVertexAttribIPointer");
|
||||
}
|
||||
|
||||
|
||||
@ -1314,9 +1429,7 @@ static int glad_gl_find_extensions_gl(void) {
|
||||
char **exts_i = NULL;
|
||||
if (!glad_gl_get_extensions(&exts, &exts_i)) return 0;
|
||||
|
||||
GLAD_GL_ARB_framebuffer_object = glad_gl_has_extension(exts, exts_i, "GL_ARB_framebuffer_object");
|
||||
GLAD_GL_ARB_texture_float = glad_gl_has_extension(exts, exts_i, "GL_ARB_texture_float");
|
||||
GLAD_GL_ARB_vertex_array_object = glad_gl_has_extension(exts, exts_i, "GL_ARB_vertex_array_object");
|
||||
GLAD_UNUSED(&glad_gl_has_extension);
|
||||
|
||||
glad_gl_free_extensions(exts_i);
|
||||
|
||||
@ -1355,6 +1468,7 @@ static int glad_gl_find_core_gl(void) {
|
||||
GLAD_GL_VERSION_1_5 = (major == 1 && minor >= 5) || major > 1;
|
||||
GLAD_GL_VERSION_2_0 = (major == 2 && minor >= 0) || major > 2;
|
||||
GLAD_GL_VERSION_2_1 = (major == 2 && minor >= 1) || major > 2;
|
||||
GLAD_GL_VERSION_3_0 = (major == 3 && minor >= 0) || major > 3;
|
||||
|
||||
return GLAD_MAKE_VERSION(major, minor);
|
||||
}
|
||||
@ -1374,10 +1488,9 @@ int gladLoadGLUserPtr( GLADuserptrloadfunc load, void *userptr) {
|
||||
glad_gl_load_GL_VERSION_1_5(load, userptr);
|
||||
glad_gl_load_GL_VERSION_2_0(load, userptr);
|
||||
glad_gl_load_GL_VERSION_2_1(load, userptr);
|
||||
glad_gl_load_GL_VERSION_3_0(load, userptr);
|
||||
|
||||
if (!glad_gl_find_extensions_gl()) return 0;
|
||||
glad_gl_load_GL_ARB_framebuffer_object(load, userptr);
|
||||
glad_gl_load_GL_ARB_vertex_array_object(load, userptr);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,89 +0,0 @@
|
||||
#include <stdio.h>
|
||||
#include <math.h>
|
||||
|
||||
#include <GLFW/glfw3.h>
|
||||
|
||||
#include "math/transform.hpp"
|
||||
|
||||
#include "input.h"
|
||||
#include "state.hpp"
|
||||
|
||||
static inline float deadzone(float n)
|
||||
{
|
||||
if (fabsf(n) < 0.05f) {
|
||||
return 0;
|
||||
} else {
|
||||
return n;
|
||||
}
|
||||
}
|
||||
|
||||
static inline bool button_down(const GLFWgamepadstate& state, int i)
|
||||
{
|
||||
bool down = state.buttons[i] && (g_state.button[i] != state.buttons[i]);
|
||||
g_state.button[i] = state.buttons[i];
|
||||
return down;
|
||||
}
|
||||
|
||||
void print_matrix(const char * name, const mat4x4& mat)
|
||||
{
|
||||
printf(" .%s = mat4x4(\n", name);
|
||||
for (int i = 0; i < 4; i++) {
|
||||
printf(" % 3.06f, % 3.06f, % 3.06f, % 3.06f%s\n",
|
||||
mat[i][0],
|
||||
mat[i][1],
|
||||
mat[i][2],
|
||||
mat[i][3],
|
||||
(i == 3) ? "" : ",");
|
||||
}
|
||||
printf(" ),\n");
|
||||
}
|
||||
|
||||
void input()
|
||||
{
|
||||
for (int i = 0; i < 16; i++) {
|
||||
GLFWgamepadstate state;
|
||||
int jid = GLFW_JOYSTICK_1 + i;
|
||||
int ret = glfwGetGamepadState(jid, &state);
|
||||
if (ret == false)
|
||||
continue;
|
||||
|
||||
mat4x4& local_to_world = g_state.local_to_world.plane;
|
||||
|
||||
if (button_down(state, GLFW_GAMEPAD_BUTTON_START)) {
|
||||
if (state.buttons[GLFW_GAMEPAD_BUTTON_LEFT_BUMPER]) {
|
||||
print_matrix("local_to_world", local_to_world);
|
||||
} else {
|
||||
print_matrix("world_to_view", g_state.world_to_view);
|
||||
}
|
||||
}
|
||||
|
||||
float lx = deadzone(state.axes[GLFW_GAMEPAD_AXIS_LEFT_X]);
|
||||
float ly = deadzone(state.axes[GLFW_GAMEPAD_AXIS_LEFT_Y]);
|
||||
float rx = deadzone(state.axes[GLFW_GAMEPAD_AXIS_RIGHT_X]);
|
||||
float ry = deadzone(state.axes[GLFW_GAMEPAD_AXIS_RIGHT_Y]);
|
||||
float tl = state.axes[GLFW_GAMEPAD_AXIS_LEFT_TRIGGER];
|
||||
float tr = state.axes[GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER];
|
||||
float y = 0.01 * (tl - tr);
|
||||
|
||||
bool up = state.buttons[GLFW_GAMEPAD_BUTTON_DPAD_UP] != 0;
|
||||
bool down = state.buttons[GLFW_GAMEPAD_BUTTON_DPAD_DOWN] != 0;
|
||||
float s = up ? 1.01 : (down ? 0.99 : 1.0);
|
||||
|
||||
if (state.buttons[GLFW_GAMEPAD_BUTTON_LEFT_BUMPER]) {
|
||||
local_to_world
|
||||
= translate(vec3(rx * -0.01f, y, ry * -0.01f))
|
||||
* local_to_world
|
||||
* rotate_x(ly * 0.01f)
|
||||
* rotate_y(lx * 0.01f)
|
||||
* scale(s);
|
||||
} else {
|
||||
g_state.world_to_view
|
||||
= rotate_x(ly * 0.01f)
|
||||
* rotate_y(lx * 0.01f)
|
||||
* translate(vec3(rx * -0.01f, y, ry * -0.01f))
|
||||
* g_state.world_to_view;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
133
src/main.c
133
src/main.c
@ -11,11 +11,9 @@
|
||||
#include "make.h"
|
||||
#include "shader.h"
|
||||
#include "render.h"
|
||||
#include "input.h"
|
||||
#include "state.h"
|
||||
#include "model/test_scene.h"
|
||||
#include "model/plane.h"
|
||||
#include "model/sphere.h"
|
||||
#include "model/palette.data.h"
|
||||
#include "model/test_scene_color.data.h"
|
||||
#include "shader/scene.vs.glsl.h"
|
||||
#include "shader/scene.fs.glsl.h"
|
||||
|
||||
@ -30,46 +28,6 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
||||
vp_height = height;
|
||||
}
|
||||
|
||||
uint vertex_array_attributes(uint vertex_buffer,
|
||||
uint index_buffer)
|
||||
{
|
||||
uint vertex_array;
|
||||
glGenVertexArrays(1, &vertex_array);
|
||||
glBindVertexArray(vertex_array);
|
||||
|
||||
glBindBuffer(GL_ARRAY_BUFFER, vertex_buffer);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, index_buffer);
|
||||
|
||||
glVertexAttribPointer(shader_attrib_position,
|
||||
3,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(0 * 4)
|
||||
);
|
||||
glVertexAttribPointer(shader_attrib_texture,
|
||||
2,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(3 * 4)
|
||||
);
|
||||
glVertexAttribPointer(shader_attrib_normal,
|
||||
3,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(5 * 4)
|
||||
);
|
||||
glEnableVertexAttribArray(shader_attrib_position);
|
||||
glEnableVertexAttribArray(shader_attrib_texture);
|
||||
glEnableVertexAttribArray(shader_attrib_normal);
|
||||
|
||||
glBindVertexArray(0);
|
||||
|
||||
return vertex_array;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
@ -101,7 +59,7 @@ int main()
|
||||
fprintf(stderr, "gladLoadGL error\n");
|
||||
return -1;
|
||||
}
|
||||
if (!GLAD_GL_VERSION_2_1) {
|
||||
if (!GLAD_GL_VERSION_3_0) {
|
||||
fprintf(stderr, "error: OpenGL version: %d.%d\n",
|
||||
GLAD_VERSION_MAJOR(version), GLAD_VERSION_MINOR(version));
|
||||
return -1;
|
||||
@ -115,19 +73,40 @@ int main()
|
||||
scene_mesh.vtx = make_buffer_sizeof(GL_ARRAY_BUFFER, test_scene_vertices);
|
||||
scene_mesh.idx = make_buffer_sizeof(GL_ELEMENT_ARRAY_BUFFER, test_scene_Plane_triangles);
|
||||
scene_mesh.length = test_scene_Plane_triangles_length;
|
||||
scene_mesh.vertex_array = vertex_array_attributes(scene_mesh.vtx, scene_mesh.idx);
|
||||
|
||||
struct mesh plane_mesh;
|
||||
plane_mesh.vtx = make_buffer_sizeof(GL_ARRAY_BUFFER, plane_vertices);
|
||||
plane_mesh.idx = make_buffer_sizeof(GL_ELEMENT_ARRAY_BUFFER, plane_Plane_triangles);
|
||||
plane_mesh.length = plane_Plane_triangles_length;
|
||||
plane_mesh.vertex_array = vertex_array_attributes(plane_mesh.vtx, plane_mesh.idx);
|
||||
uint vertex_array;
|
||||
glGenVertexArrays(1, &vertex_array);
|
||||
glBindVertexArray(vertex_array);
|
||||
|
||||
struct mesh sphere_mesh;
|
||||
sphere_mesh.vtx = make_buffer_sizeof(GL_ARRAY_BUFFER, sphere_vertices);
|
||||
sphere_mesh.idx = make_buffer_sizeof(GL_ELEMENT_ARRAY_BUFFER, sphere_Sphere_triangles);
|
||||
sphere_mesh.length = sphere_Sphere_triangles_length;
|
||||
sphere_mesh.vertex_array = vertex_array_attributes(sphere_mesh.vtx, sphere_mesh.idx);
|
||||
glBindBuffer(GL_ARRAY_BUFFER, scene_mesh.vtx);
|
||||
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, scene_mesh.idx);
|
||||
|
||||
glVertexAttribPointer(shader_attrib_position,
|
||||
3,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(0 * 4)
|
||||
);
|
||||
glVertexAttribPointer(shader_attrib_texture,
|
||||
2,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(3 * 4)
|
||||
);
|
||||
glVertexAttribPointer(shader_attrib_normal,
|
||||
3,
|
||||
GL_FLOAT,
|
||||
GL_FALSE,
|
||||
(sizeof (float)) * 8,
|
||||
(void*)(5 * 4)
|
||||
);
|
||||
glEnableVertexAttribArray(shader_attrib_position);
|
||||
glEnableVertexAttribArray(shader_attrib_texture);
|
||||
glEnableVertexAttribArray(shader_attrib_normal);
|
||||
|
||||
glBindVertexArray(0);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// shaders
|
||||
@ -145,12 +124,12 @@ int main()
|
||||
// textures
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
uint texture_palette = make_texture(model_palette_data_start,
|
||||
GL_RGB,
|
||||
32,
|
||||
32,
|
||||
GL_RGB,
|
||||
GL_UNSIGNED_BYTE);
|
||||
uint scene_color = make_texture(model_test_scene_color_data_start,
|
||||
GL_RGB,
|
||||
32,
|
||||
32,
|
||||
GL_RGB,
|
||||
GL_UNSIGNED_BYTE);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// framebuffer
|
||||
@ -173,21 +152,39 @@ int main()
|
||||
const double first_frame = glfwGetTime();
|
||||
double last_frame = first_frame;
|
||||
|
||||
struct state state = {};
|
||||
|
||||
while (!glfwWindowShouldClose(window)) {
|
||||
if(glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
|
||||
glfwSetWindowShouldClose(window, true);
|
||||
if (glfwGetKey(window, GLFW_KEY_1) == GLFW_PRESS)
|
||||
state.rx += 0.01f;
|
||||
if (glfwGetKey(window, GLFW_KEY_2) == GLFW_PRESS)
|
||||
state.rx -= 0.01f;
|
||||
if (glfwGetKey(window, GLFW_KEY_3) == GLFW_PRESS)
|
||||
state.ry += 0.01f;
|
||||
if (glfwGetKey(window, GLFW_KEY_4) == GLFW_PRESS)
|
||||
state.ry -= 0.01f;
|
||||
|
||||
input();
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, framebuffer);
|
||||
|
||||
render(&state,
|
||||
program,
|
||||
program__trans,
|
||||
program__texture0,
|
||||
scene_color,
|
||||
vertex_array,
|
||||
scene_mesh.length);
|
||||
|
||||
glBindFramebuffer(GL_FRAMEBUFFER, 0);
|
||||
|
||||
render(program,
|
||||
render(&state,
|
||||
program,
|
||||
program__trans,
|
||||
program__texture0,
|
||||
texture_palette,
|
||||
&scene_mesh,
|
||||
&plane_mesh,
|
||||
&sphere_mesh);
|
||||
scene_color,
|
||||
vertex_array,
|
||||
scene_mesh.length);
|
||||
|
||||
glfwSwapBuffers(window);
|
||||
glfwPollEvents();
|
||||
|
||||
@ -3,13 +3,10 @@
|
||||
|
||||
#include "glad/gl.h"
|
||||
|
||||
#include "render.h"
|
||||
#include "math/float_types.hpp"
|
||||
#include "math/transform.hpp"
|
||||
|
||||
#include "render.h"
|
||||
#include "mesh.h"
|
||||
#include "state.hpp"
|
||||
|
||||
mat4x4 perspective()
|
||||
{
|
||||
mat4x4 m1 = mat4x4(1, 0, 0, 0,
|
||||
@ -20,65 +17,32 @@ mat4x4 perspective()
|
||||
return m1;
|
||||
}
|
||||
|
||||
void render_object(unsigned int program,
|
||||
unsigned int program__trans,
|
||||
unsigned int program__texture0,
|
||||
unsigned int texture__color,
|
||||
unsigned int vertex_array,
|
||||
int triangles_length,
|
||||
const mat4x4& local_to_world)
|
||||
void render(const struct state * state,
|
||||
unsigned int program,
|
||||
unsigned int program__trans,
|
||||
unsigned int program__texture0,
|
||||
unsigned int color,
|
||||
unsigned int vertex_array,
|
||||
int triangles_length)
|
||||
{
|
||||
mat4x4 trans = perspective() * g_state.world_to_view * local_to_world;
|
||||
mat4x4 trans = perspective() * translate(vec3(0, 0, -2)) * scale(1.0f) * rotate_y(state->ry) * rotate_x(state->rx);
|
||||
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
glClearDepth(-1000.0f);
|
||||
glDepthFunc(GL_GREATER);
|
||||
|
||||
glUniformMatrix4fv(program__trans, 1, GL_TRUE, &trans[0][0]);
|
||||
glUniform1i(program__texture0, 0);
|
||||
|
||||
glClearColor(0.1, 0.2, 0.3, 1.0);
|
||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
glUseProgram(program);
|
||||
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
glBindTexture(GL_TEXTURE_2D, texture__color);
|
||||
glBindTexture(GL_TEXTURE_2D, color);
|
||||
|
||||
glBindVertexArray(vertex_array);
|
||||
|
||||
glDrawElements(GL_TRIANGLES, triangles_length, GL_UNSIGNED_INT, 0);
|
||||
}
|
||||
|
||||
void render(unsigned int program,
|
||||
unsigned int program__trans,
|
||||
unsigned int program__texture0,
|
||||
unsigned int texture__color,
|
||||
const struct mesh * scene_mesh,
|
||||
const struct mesh * plane_mesh,
|
||||
const struct mesh * sphere_mesh)
|
||||
{
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
glClearDepth(-1000.0f);
|
||||
glDepthFunc(GL_GREATER);
|
||||
|
||||
glClearColor(0.1, 0.2, 0.3, 1.0);
|
||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
render_object(program,
|
||||
program__trans,
|
||||
program__texture0,
|
||||
texture__color,
|
||||
scene_mesh->vertex_array,
|
||||
scene_mesh->length,
|
||||
g_state.local_to_world.test_scene);
|
||||
|
||||
render_object(program,
|
||||
program__trans,
|
||||
program__texture0,
|
||||
texture__color,
|
||||
plane_mesh->vertex_array,
|
||||
plane_mesh->length,
|
||||
g_state.local_to_world.plane);
|
||||
|
||||
render_object(program,
|
||||
program__trans,
|
||||
program__texture0,
|
||||
texture__color,
|
||||
sphere_mesh->vertex_array,
|
||||
sphere_mesh->length,
|
||||
g_state.local_to_world.sphere);
|
||||
}
|
||||
|
||||
@ -1,25 +0,0 @@
|
||||
#include "state.hpp"
|
||||
|
||||
state g_state = {
|
||||
.world_to_view = mat4x4(
|
||||
0.829361, 0.032060, -0.557784, -0.133608,
|
||||
-0.429916, 0.674237, -0.600481, 0.013003,
|
||||
0.356826, 0.737815, 0.572969, -2.162051,
|
||||
0.000000, 0.000000, 0.000000, 1.000000
|
||||
),
|
||||
.local_to_world = {
|
||||
.test_scene = mat4x4(),
|
||||
.plane = mat4x4(
|
||||
-0.226054, -0.669193, -0.707858, 0.057059,
|
||||
-0.934607, -0.055829, 0.351249, 0.000000,
|
||||
-0.274574, 0.740978, -0.612816, -0.455529,
|
||||
0.000000, 0.000000, 0.000000, 1.000000
|
||||
),
|
||||
.sphere = mat4x4(
|
||||
0.181000, -0.004635, -0.080810, -0.190745,
|
||||
-0.020567, 0.188818, -0.056898, 0.561020,
|
||||
0.078286, 0.060323, 0.171887, 0.323333,
|
||||
0.000000, 0.000000, 0.000000, 1.000000
|
||||
)
|
||||
},
|
||||
};
|
||||
Loading…
x
Reference in New Issue
Block a user