|
@@ -2,6 +2,8 @@
|
|
|
/*
|
|
|
sokol_gl.h -- OpenGL 1.x style rendering on top of sokol_gfx.h
|
|
|
|
|
|
+ Project URL: https://github.com/floooh/sokol
|
|
|
+
|
|
|
Do this:
|
|
|
#define SOKOL_GL_IMPL
|
|
|
before you include this file in *one* C or C++ file to create the
|
|
@@ -55,7 +57,7 @@
|
|
|
- point list (TODO: point size)
|
|
|
- one texture layer (no multi-texturing)
|
|
|
- viewport and scissor-rect with selectable origin (top-left or bottom-left)
|
|
|
- - all GL 1.x matrix stack functions, and additionally equivalent
|
|
|
+ - all GL 1.x matrix stack functions, and additionally equivalent
|
|
|
functions for gluPerspective and gluLookat
|
|
|
|
|
|
Notable GLES 1.x features that are *NOT* implemented:
|
|
@@ -115,7 +117,7 @@
|
|
|
|
|
|
sg_face_winding face_winding - default is SG_FACEWINDING_CCW
|
|
|
|
|
|
- The default winding for front faces is counter-clock-wise. This is
|
|
|
+ The default winding for front faces is counter-clock-wise. This is
|
|
|
the same as OpenGL's default, but different from sokol-gfx.
|
|
|
|
|
|
--- Optionally create pipeline-state-objects if you need render state
|
|
@@ -159,7 +161,7 @@
|
|
|
- *all* matrices will be set to identity (also the projection matrix)
|
|
|
- the default render state will be set by loading the 'default pipeline'
|
|
|
into the top of the pipeline stack
|
|
|
-
|
|
|
+
|
|
|
The current matrix- and pipeline-stack-depths will not be changed by
|
|
|
sgl_defaults().
|
|
|
|
|
@@ -237,7 +239,7 @@
|
|
|
sgl_ortho(float left, float right, float bottom, float top, float near, float far)
|
|
|
sgl_perspective(float fov_y, float aspect, float near, float far)
|
|
|
sgl_lookat(float eye_x, float eye_y, float eye_z, float center_x, float center_y, float center_z, float up_x, float up_y, float up_z)
|
|
|
-
|
|
|
+
|
|
|
These functions work the same as glFrustum(), glOrtho(), gluPerspective()
|
|
|
and gluLookAt().
|
|
|
|
|
@@ -706,313 +708,313 @@ static const char* _sgl_fs_src =
|
|
|
}
|
|
|
*/
|
|
|
static const uint8_t _sgl_vs_bin[] = {
|
|
|
- 68, 88, 66, 67, 239, 161,
|
|
|
- 1, 229, 179, 68, 206, 40,
|
|
|
- 34, 15, 57, 169, 103, 117,
|
|
|
- 134, 191, 1, 0, 0, 0,
|
|
|
- 120, 4, 0, 0, 5, 0,
|
|
|
- 0, 0, 52, 0, 0, 0,
|
|
|
- 104, 1, 0, 0, 216, 1,
|
|
|
- 0, 0, 76, 2, 0, 0,
|
|
|
- 220, 3, 0, 0, 82, 68,
|
|
|
- 69, 70, 44, 1, 0, 0,
|
|
|
- 1, 0, 0, 0, 100, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 60, 0, 0, 0, 0, 5,
|
|
|
- 254, 255, 0, 145, 0, 0,
|
|
|
- 3, 1, 0, 0, 82, 68,
|
|
|
- 49, 49, 60, 0, 0, 0,
|
|
|
- 24, 0, 0, 0, 32, 0,
|
|
|
- 0, 0, 40, 0, 0, 0,
|
|
|
- 36, 0, 0, 0, 12, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 92, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 1, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 112, 97, 114, 97,
|
|
|
- 109, 115, 0, 171, 92, 0,
|
|
|
- 0, 0, 2, 0, 0, 0,
|
|
|
- 124, 0, 0, 0, 128, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 204, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 64, 0, 0, 0, 2, 0,
|
|
|
- 0, 0, 220, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 255, 255,
|
|
|
- 255, 255, 0, 0, 0, 0,
|
|
|
- 255, 255, 255, 255, 0, 0,
|
|
|
- 0, 0, 0, 1, 0, 0,
|
|
|
- 64, 0, 0, 0, 64, 0,
|
|
|
- 0, 0, 2, 0, 0, 0,
|
|
|
- 220, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 255, 255, 255, 255,
|
|
|
- 0, 0, 0, 0, 255, 255,
|
|
|
- 255, 255, 0, 0, 0, 0,
|
|
|
- 109, 118, 112, 0, 102, 108,
|
|
|
- 111, 97, 116, 52, 120, 52,
|
|
|
- 0, 171, 171, 171, 3, 0,
|
|
|
- 3, 0, 4, 0, 4, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 208, 0, 0, 0, 116, 109,
|
|
|
- 0, 77, 105, 99, 114, 111,
|
|
|
- 115, 111, 102, 116, 32, 40,
|
|
|
- 82, 41, 32, 72, 76, 83,
|
|
|
- 76, 32, 83, 104, 97, 100,
|
|
|
- 101, 114, 32, 67, 111, 109,
|
|
|
- 112, 105, 108, 101, 114, 32,
|
|
|
- 49, 48, 46, 49, 0, 171,
|
|
|
- 73, 83, 71, 78, 104, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 8, 0, 0, 0, 80, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 15, 15, 0, 0, 89, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 3, 3, 0, 0, 98, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 2, 0, 0, 0,
|
|
|
- 15, 15, 0, 0, 80, 79,
|
|
|
- 83, 73, 84, 73, 79, 78,
|
|
|
- 0, 84, 69, 88, 67, 79,
|
|
|
- 79, 82, 68, 0, 67, 79,
|
|
|
- 76, 79, 82, 0, 79, 83,
|
|
|
- 71, 78, 108, 0, 0, 0,
|
|
|
- 3, 0, 0, 0, 8, 0,
|
|
|
- 0, 0, 80, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 15, 0,
|
|
|
- 0, 0, 89, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 1, 0, 0, 0, 15, 0,
|
|
|
- 0, 0, 95, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 2, 0, 0, 0, 15, 0,
|
|
|
- 0, 0, 84, 69, 88, 67,
|
|
|
- 79, 79, 82, 68, 0, 67,
|
|
|
- 79, 76, 79, 82, 0, 83,
|
|
|
- 86, 95, 80, 111, 115, 105,
|
|
|
- 116, 105, 111, 110, 0, 171,
|
|
|
- 83, 72, 69, 88, 136, 1,
|
|
|
- 0, 0, 80, 0, 1, 0,
|
|
|
- 98, 0, 0, 0, 106, 8,
|
|
|
- 0, 1, 89, 0, 0, 4,
|
|
|
- 70, 142, 32, 0, 0, 0,
|
|
|
- 0, 0, 8, 0, 0, 0,
|
|
|
- 95, 0, 0, 3, 242, 16,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 95, 0, 0, 3, 50, 16,
|
|
|
- 16, 0, 1, 0, 0, 0,
|
|
|
- 95, 0, 0, 3, 242, 16,
|
|
|
- 16, 0, 2, 0, 0, 0,
|
|
|
- 101, 0, 0, 3, 242, 32,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 101, 0, 0, 3, 242, 32,
|
|
|
- 16, 0, 1, 0, 0, 0,
|
|
|
- 103, 0, 0, 4, 242, 32,
|
|
|
- 16, 0, 2, 0, 0, 0,
|
|
|
- 1, 0, 0, 0, 104, 0,
|
|
|
- 0, 2, 1, 0, 0, 0,
|
|
|
- 56, 0, 0, 8, 242, 0,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 86, 21, 16, 0, 1, 0,
|
|
|
- 0, 0, 70, 142, 32, 0,
|
|
|
- 0, 0, 0, 0, 5, 0,
|
|
|
- 0, 0, 50, 0, 0, 10,
|
|
|
- 242, 0, 16, 0, 0, 0,
|
|
|
- 0, 0, 70, 142, 32, 0,
|
|
|
- 0, 0, 0, 0, 4, 0,
|
|
|
- 0, 0, 6, 16, 16, 0,
|
|
|
- 1, 0, 0, 0, 70, 14,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 8, 242, 32,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 70, 14, 16, 0, 0, 0,
|
|
|
- 0, 0, 70, 142, 32, 0,
|
|
|
- 0, 0, 0, 0, 7, 0,
|
|
|
- 0, 0, 54, 0, 0, 5,
|
|
|
- 242, 32, 16, 0, 1, 0,
|
|
|
- 0, 0, 70, 30, 16, 0,
|
|
|
- 2, 0, 0, 0, 56, 0,
|
|
|
- 0, 8, 242, 0, 16, 0,
|
|
|
- 0, 0, 0, 0, 86, 21,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 70, 142, 32, 0, 0, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 50, 0, 0, 10, 242, 0,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 70, 142, 32, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 6, 16, 16, 0, 0, 0,
|
|
|
- 0, 0, 70, 14, 16, 0,
|
|
|
- 0, 0, 0, 0, 50, 0,
|
|
|
- 0, 10, 242, 0, 16, 0,
|
|
|
- 0, 0, 0, 0, 70, 142,
|
|
|
- 32, 0, 0, 0, 0, 0,
|
|
|
- 2, 0, 0, 0, 166, 26,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 70, 14, 16, 0, 0, 0,
|
|
|
- 0, 0, 50, 0, 0, 10,
|
|
|
- 242, 32, 16, 0, 2, 0,
|
|
|
- 0, 0, 70, 142, 32, 0,
|
|
|
- 0, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 246, 31, 16, 0,
|
|
|
- 0, 0, 0, 0, 70, 14,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 62, 0, 0, 1, 83, 84,
|
|
|
- 65, 84, 148, 0, 0, 0,
|
|
|
- 9, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 6, 0, 0, 0, 7, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
+ 68, 88, 66, 67, 239, 161,
|
|
|
+ 1, 229, 179, 68, 206, 40,
|
|
|
+ 34, 15, 57, 169, 103, 117,
|
|
|
+ 134, 191, 1, 0, 0, 0,
|
|
|
+ 120, 4, 0, 0, 5, 0,
|
|
|
+ 0, 0, 52, 0, 0, 0,
|
|
|
+ 104, 1, 0, 0, 216, 1,
|
|
|
+ 0, 0, 76, 2, 0, 0,
|
|
|
+ 220, 3, 0, 0, 82, 68,
|
|
|
+ 69, 70, 44, 1, 0, 0,
|
|
|
+ 1, 0, 0, 0, 100, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 60, 0, 0, 0, 0, 5,
|
|
|
+ 254, 255, 0, 145, 0, 0,
|
|
|
+ 3, 1, 0, 0, 82, 68,
|
|
|
+ 49, 49, 60, 0, 0, 0,
|
|
|
+ 24, 0, 0, 0, 32, 0,
|
|
|
+ 0, 0, 40, 0, 0, 0,
|
|
|
+ 36, 0, 0, 0, 12, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 92, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 1, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 112, 97, 114, 97,
|
|
|
+ 109, 115, 0, 171, 92, 0,
|
|
|
+ 0, 0, 2, 0, 0, 0,
|
|
|
+ 124, 0, 0, 0, 128, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 204, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 64, 0, 0, 0, 2, 0,
|
|
|
+ 0, 0, 220, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 255, 255,
|
|
|
+ 255, 255, 0, 0, 0, 0,
|
|
|
+ 255, 255, 255, 255, 0, 0,
|
|
|
+ 0, 0, 0, 1, 0, 0,
|
|
|
+ 64, 0, 0, 0, 64, 0,
|
|
|
+ 0, 0, 2, 0, 0, 0,
|
|
|
+ 220, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 255, 255, 255, 255,
|
|
|
+ 0, 0, 0, 0, 255, 255,
|
|
|
+ 255, 255, 0, 0, 0, 0,
|
|
|
+ 109, 118, 112, 0, 102, 108,
|
|
|
+ 111, 97, 116, 52, 120, 52,
|
|
|
+ 0, 171, 171, 171, 3, 0,
|
|
|
+ 3, 0, 4, 0, 4, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 208, 0, 0, 0, 116, 109,
|
|
|
+ 0, 77, 105, 99, 114, 111,
|
|
|
+ 115, 111, 102, 116, 32, 40,
|
|
|
+ 82, 41, 32, 72, 76, 83,
|
|
|
+ 76, 32, 83, 104, 97, 100,
|
|
|
+ 101, 114, 32, 67, 111, 109,
|
|
|
+ 112, 105, 108, 101, 114, 32,
|
|
|
+ 49, 48, 46, 49, 0, 171,
|
|
|
+ 73, 83, 71, 78, 104, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 8, 0, 0, 0, 80, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 15, 15, 0, 0, 89, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 3, 3, 0, 0, 98, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 2, 0, 0, 0,
|
|
|
+ 15, 15, 0, 0, 80, 79,
|
|
|
+ 83, 73, 84, 73, 79, 78,
|
|
|
+ 0, 84, 69, 88, 67, 79,
|
|
|
+ 79, 82, 68, 0, 67, 79,
|
|
|
+ 76, 79, 82, 0, 79, 83,
|
|
|
+ 71, 78, 108, 0, 0, 0,
|
|
|
+ 3, 0, 0, 0, 8, 0,
|
|
|
+ 0, 0, 80, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 15, 0,
|
|
|
+ 0, 0, 89, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 1, 0, 0, 0, 15, 0,
|
|
|
+ 0, 0, 95, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 2, 0, 0, 0, 15, 0,
|
|
|
+ 0, 0, 84, 69, 88, 67,
|
|
|
+ 79, 79, 82, 68, 0, 67,
|
|
|
+ 79, 76, 79, 82, 0, 83,
|
|
|
+ 86, 95, 80, 111, 115, 105,
|
|
|
+ 116, 105, 111, 110, 0, 171,
|
|
|
+ 83, 72, 69, 88, 136, 1,
|
|
|
+ 0, 0, 80, 0, 1, 0,
|
|
|
+ 98, 0, 0, 0, 106, 8,
|
|
|
+ 0, 1, 89, 0, 0, 4,
|
|
|
+ 70, 142, 32, 0, 0, 0,
|
|
|
+ 0, 0, 8, 0, 0, 0,
|
|
|
+ 95, 0, 0, 3, 242, 16,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 95, 0, 0, 3, 50, 16,
|
|
|
+ 16, 0, 1, 0, 0, 0,
|
|
|
+ 95, 0, 0, 3, 242, 16,
|
|
|
+ 16, 0, 2, 0, 0, 0,
|
|
|
+ 101, 0, 0, 3, 242, 32,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 101, 0, 0, 3, 242, 32,
|
|
|
+ 16, 0, 1, 0, 0, 0,
|
|
|
+ 103, 0, 0, 4, 242, 32,
|
|
|
+ 16, 0, 2, 0, 0, 0,
|
|
|
+ 1, 0, 0, 0, 104, 0,
|
|
|
+ 0, 2, 1, 0, 0, 0,
|
|
|
+ 56, 0, 0, 8, 242, 0,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 86, 21, 16, 0, 1, 0,
|
|
|
+ 0, 0, 70, 142, 32, 0,
|
|
|
+ 0, 0, 0, 0, 5, 0,
|
|
|
+ 0, 0, 50, 0, 0, 10,
|
|
|
+ 242, 0, 16, 0, 0, 0,
|
|
|
+ 0, 0, 70, 142, 32, 0,
|
|
|
+ 0, 0, 0, 0, 4, 0,
|
|
|
+ 0, 0, 6, 16, 16, 0,
|
|
|
+ 1, 0, 0, 0, 70, 14,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 8, 242, 32,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 70, 14, 16, 0, 0, 0,
|
|
|
+ 0, 0, 70, 142, 32, 0,
|
|
|
+ 0, 0, 0, 0, 7, 0,
|
|
|
+ 0, 0, 54, 0, 0, 5,
|
|
|
+ 242, 32, 16, 0, 1, 0,
|
|
|
+ 0, 0, 70, 30, 16, 0,
|
|
|
+ 2, 0, 0, 0, 56, 0,
|
|
|
+ 0, 8, 242, 0, 16, 0,
|
|
|
+ 0, 0, 0, 0, 86, 21,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 70, 142, 32, 0, 0, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 50, 0, 0, 10, 242, 0,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 70, 142, 32, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 6, 16, 16, 0, 0, 0,
|
|
|
+ 0, 0, 70, 14, 16, 0,
|
|
|
+ 0, 0, 0, 0, 50, 0,
|
|
|
+ 0, 10, 242, 0, 16, 0,
|
|
|
+ 0, 0, 0, 0, 70, 142,
|
|
|
+ 32, 0, 0, 0, 0, 0,
|
|
|
+ 2, 0, 0, 0, 166, 26,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 70, 14, 16, 0, 0, 0,
|
|
|
+ 0, 0, 50, 0, 0, 10,
|
|
|
+ 242, 32, 16, 0, 2, 0,
|
|
|
+ 0, 0, 70, 142, 32, 0,
|
|
|
+ 0, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 246, 31, 16, 0,
|
|
|
+ 0, 0, 0, 0, 70, 14,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 62, 0, 0, 1, 83, 84,
|
|
|
+ 65, 84, 148, 0, 0, 0,
|
|
|
+ 9, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 6, 0, 0, 0, 7, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
0, 0, 0, 0
|
|
|
};
|
|
|
static uint8_t _sgl_fs_bin[] = {
|
|
|
- 68, 88, 66, 67, 145, 182,
|
|
|
- 34, 101, 114, 183, 46, 3,
|
|
|
- 176, 243, 147, 199, 109, 42,
|
|
|
- 196, 114, 1, 0, 0, 0,
|
|
|
- 176, 2, 0, 0, 5, 0,
|
|
|
- 0, 0, 52, 0, 0, 0,
|
|
|
- 232, 0, 0, 0, 56, 1,
|
|
|
- 0, 0, 108, 1, 0, 0,
|
|
|
- 20, 2, 0, 0, 82, 68,
|
|
|
- 69, 70, 172, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 2, 0, 0, 0,
|
|
|
- 60, 0, 0, 0, 0, 5,
|
|
|
- 255, 255, 0, 145, 0, 0,
|
|
|
- 132, 0, 0, 0, 82, 68,
|
|
|
- 49, 49, 60, 0, 0, 0,
|
|
|
- 24, 0, 0, 0, 32, 0,
|
|
|
- 0, 0, 40, 0, 0, 0,
|
|
|
- 36, 0, 0, 0, 12, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 124, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 1, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 128, 0, 0, 0,
|
|
|
- 2, 0, 0, 0, 5, 0,
|
|
|
- 0, 0, 4, 0, 0, 0,
|
|
|
- 255, 255, 255, 255, 0, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 13, 0, 0, 0, 115, 109,
|
|
|
- 112, 0, 116, 101, 120, 0,
|
|
|
- 77, 105, 99, 114, 111, 115,
|
|
|
- 111, 102, 116, 32, 40, 82,
|
|
|
- 41, 32, 72, 76, 83, 76,
|
|
|
- 32, 83, 104, 97, 100, 101,
|
|
|
- 114, 32, 67, 111, 109, 112,
|
|
|
- 105, 108, 101, 114, 32, 49,
|
|
|
- 48, 46, 49, 0, 73, 83,
|
|
|
- 71, 78, 72, 0, 0, 0,
|
|
|
- 2, 0, 0, 0, 8, 0,
|
|
|
- 0, 0, 56, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 15, 3,
|
|
|
- 0, 0, 65, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 3, 0, 0, 0,
|
|
|
- 1, 0, 0, 0, 15, 15,
|
|
|
- 0, 0, 84, 69, 88, 67,
|
|
|
- 79, 79, 82, 68, 0, 67,
|
|
|
- 79, 76, 79, 82, 0, 171,
|
|
|
- 79, 83, 71, 78, 44, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 8, 0, 0, 0, 32, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 3, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 15, 0, 0, 0, 83, 86,
|
|
|
- 95, 84, 97, 114, 103, 101,
|
|
|
- 116, 0, 171, 171, 83, 72,
|
|
|
- 69, 88, 160, 0, 0, 0,
|
|
|
- 80, 0, 0, 0, 40, 0,
|
|
|
- 0, 0, 106, 8, 0, 1,
|
|
|
- 90, 0, 0, 3, 0, 96,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 88, 24, 0, 4, 0, 112,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 85, 85, 0, 0, 98, 16,
|
|
|
- 0, 3, 50, 16, 16, 0,
|
|
|
- 0, 0, 0, 0, 98, 16,
|
|
|
- 0, 3, 242, 16, 16, 0,
|
|
|
- 1, 0, 0, 0, 101, 0,
|
|
|
- 0, 3, 242, 32, 16, 0,
|
|
|
- 0, 0, 0, 0, 104, 0,
|
|
|
- 0, 2, 1, 0, 0, 0,
|
|
|
- 69, 0, 0, 139, 194, 0,
|
|
|
- 0, 128, 67, 85, 21, 0,
|
|
|
- 242, 0, 16, 0, 0, 0,
|
|
|
- 0, 0, 70, 16, 16, 0,
|
|
|
- 0, 0, 0, 0, 70, 126,
|
|
|
- 16, 0, 0, 0, 0, 0,
|
|
|
- 0, 96, 16, 0, 0, 0,
|
|
|
- 0, 0, 56, 0, 0, 7,
|
|
|
- 242, 32, 16, 0, 0, 0,
|
|
|
- 0, 0, 70, 14, 16, 0,
|
|
|
- 0, 0, 0, 0, 70, 30,
|
|
|
- 16, 0, 1, 0, 0, 0,
|
|
|
- 62, 0, 0, 1, 83, 84,
|
|
|
- 65, 84, 148, 0, 0, 0,
|
|
|
- 3, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 3, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 1, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 1, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
- 0, 0, 0, 0, 0, 0,
|
|
|
+ 68, 88, 66, 67, 145, 182,
|
|
|
+ 34, 101, 114, 183, 46, 3,
|
|
|
+ 176, 243, 147, 199, 109, 42,
|
|
|
+ 196, 114, 1, 0, 0, 0,
|
|
|
+ 176, 2, 0, 0, 5, 0,
|
|
|
+ 0, 0, 52, 0, 0, 0,
|
|
|
+ 232, 0, 0, 0, 56, 1,
|
|
|
+ 0, 0, 108, 1, 0, 0,
|
|
|
+ 20, 2, 0, 0, 82, 68,
|
|
|
+ 69, 70, 172, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 2, 0, 0, 0,
|
|
|
+ 60, 0, 0, 0, 0, 5,
|
|
|
+ 255, 255, 0, 145, 0, 0,
|
|
|
+ 132, 0, 0, 0, 82, 68,
|
|
|
+ 49, 49, 60, 0, 0, 0,
|
|
|
+ 24, 0, 0, 0, 32, 0,
|
|
|
+ 0, 0, 40, 0, 0, 0,
|
|
|
+ 36, 0, 0, 0, 12, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 124, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 1, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 128, 0, 0, 0,
|
|
|
+ 2, 0, 0, 0, 5, 0,
|
|
|
+ 0, 0, 4, 0, 0, 0,
|
|
|
+ 255, 255, 255, 255, 0, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 13, 0, 0, 0, 115, 109,
|
|
|
+ 112, 0, 116, 101, 120, 0,
|
|
|
+ 77, 105, 99, 114, 111, 115,
|
|
|
+ 111, 102, 116, 32, 40, 82,
|
|
|
+ 41, 32, 72, 76, 83, 76,
|
|
|
+ 32, 83, 104, 97, 100, 101,
|
|
|
+ 114, 32, 67, 111, 109, 112,
|
|
|
+ 105, 108, 101, 114, 32, 49,
|
|
|
+ 48, 46, 49, 0, 73, 83,
|
|
|
+ 71, 78, 72, 0, 0, 0,
|
|
|
+ 2, 0, 0, 0, 8, 0,
|
|
|
+ 0, 0, 56, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 15, 3,
|
|
|
+ 0, 0, 65, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 3, 0, 0, 0,
|
|
|
+ 1, 0, 0, 0, 15, 15,
|
|
|
+ 0, 0, 84, 69, 88, 67,
|
|
|
+ 79, 79, 82, 68, 0, 67,
|
|
|
+ 79, 76, 79, 82, 0, 171,
|
|
|
+ 79, 83, 71, 78, 44, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 8, 0, 0, 0, 32, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 3, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 15, 0, 0, 0, 83, 86,
|
|
|
+ 95, 84, 97, 114, 103, 101,
|
|
|
+ 116, 0, 171, 171, 83, 72,
|
|
|
+ 69, 88, 160, 0, 0, 0,
|
|
|
+ 80, 0, 0, 0, 40, 0,
|
|
|
+ 0, 0, 106, 8, 0, 1,
|
|
|
+ 90, 0, 0, 3, 0, 96,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 88, 24, 0, 4, 0, 112,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 85, 85, 0, 0, 98, 16,
|
|
|
+ 0, 3, 50, 16, 16, 0,
|
|
|
+ 0, 0, 0, 0, 98, 16,
|
|
|
+ 0, 3, 242, 16, 16, 0,
|
|
|
+ 1, 0, 0, 0, 101, 0,
|
|
|
+ 0, 3, 242, 32, 16, 0,
|
|
|
+ 0, 0, 0, 0, 104, 0,
|
|
|
+ 0, 2, 1, 0, 0, 0,
|
|
|
+ 69, 0, 0, 139, 194, 0,
|
|
|
+ 0, 128, 67, 85, 21, 0,
|
|
|
+ 242, 0, 16, 0, 0, 0,
|
|
|
+ 0, 0, 70, 16, 16, 0,
|
|
|
+ 0, 0, 0, 0, 70, 126,
|
|
|
+ 16, 0, 0, 0, 0, 0,
|
|
|
+ 0, 96, 16, 0, 0, 0,
|
|
|
+ 0, 0, 56, 0, 0, 7,
|
|
|
+ 242, 32, 16, 0, 0, 0,
|
|
|
+ 0, 0, 70, 14, 16, 0,
|
|
|
+ 0, 0, 0, 0, 70, 30,
|
|
|
+ 16, 0, 1, 0, 0, 0,
|
|
|
+ 62, 0, 0, 1, 83, 84,
|
|
|
+ 65, 84, 148, 0, 0, 0,
|
|
|
+ 3, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 3, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 1, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 1, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
+ 0, 0, 0, 0, 0, 0,
|
|
|
0, 0, 0, 0
|
|
|
};
|
|
|
#elif defined(SOKOL_DUMMY_BACKEND)
|
|
@@ -1050,7 +1052,7 @@ typedef struct {
|
|
|
typedef struct {
|
|
|
_sgl_pool_t pool;
|
|
|
_sgl_pipeline_t* pips;
|
|
|
-} _sgl_pipeline_pool_t;
|
|
|
+} _sgl_pipeline_pool_t;
|
|
|
|
|
|
typedef enum {
|
|
|
SGL_MATRIXMODE_MODELVIEW,
|
|
@@ -1262,7 +1264,7 @@ static uint32_t _sgl_slot_alloc(_sgl_pool_t* pool, _sgl_slot_t* slot, int slot_i
|
|
|
SOKOL_ASSERT((slot_index > _SGL_INVALID_SLOT_INDEX) && (slot_index < pool->size));
|
|
|
SOKOL_ASSERT((slot->state == SG_RESOURCESTATE_INITIAL) && (slot->id == SG_INVALID_ID));
|
|
|
uint32_t ctr = ++pool->gen_ctrs[slot_index];
|
|
|
- slot->id = (ctr<<_SGL_SLOT_SHIFT)|(slot_index & _SGL_SLOT_MASK);
|
|
|
+ slot->id = (ctr<<_SGL_SLOT_SHIFT)|(slot_index & _SGL_SLOT_MASK);
|
|
|
slot->state = SG_RESOURCESTATE_ALLOC;
|
|
|
return slot->id;
|
|
|
}
|
|
@@ -1481,7 +1483,7 @@ static inline void _sgl_vtx(float x, float y, float z, float u, float v, uint32_
|
|
|
_sgl_vertex_t* vtx;
|
|
|
/* handle non-native primitive types */
|
|
|
if ((_sgl.cur_prim_type == SGL_PRIMITIVETYPE_QUADS) && ((_sgl.vtx_count & 3) == 3)) {
|
|
|
- /* for quads, before writing the last quad vertex, reuse
|
|
|
+ /* for quads, before writing the last quad vertex, reuse
|
|
|
the first and third vertex to start the second triangle in the quad
|
|
|
*/
|
|
|
vtx = _sgl_next_vertex();
|
|
@@ -1515,7 +1517,7 @@ static void _sgl_transpose(_sgl_matrix_t* dst, const _sgl_matrix_t* m) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-/* _sgl_rotate, _sgl_frustum, _sgl_ortho from MESA m_matric.c */
|
|
|
+/* _sgl_rotate, _sgl_frustum, _sgl_ortho from MESA m_matric.c */
|
|
|
static void _sgl_matmul4(_sgl_matrix_t* p, const _sgl_matrix_t* a, const _sgl_matrix_t* b) {
|
|
|
for (int r = 0; r < 4; r++) {
|
|
|
float ai0=a->v[0][r], ai1=a->v[1][r], ai2=a->v[2][r], ai3=a->v[3][r];
|
|
@@ -1531,7 +1533,7 @@ static void _sgl_mul(_sgl_matrix_t* dst, const _sgl_matrix_t* m) {
|
|
|
}
|
|
|
|
|
|
static void _sgl_rotate(_sgl_matrix_t* dst, float a, float x, float y, float z) {
|
|
|
-
|
|
|
+
|
|
|
float s = sinf(a);
|
|
|
float c = cosf(a);
|
|
|
|
|
@@ -1659,7 +1661,7 @@ static void _sgl_cross(float v1[3], float v2[3], float res[3]) {
|
|
|
res[2] = v1[0]*v2[1] - v1[1]*v2[0];
|
|
|
}
|
|
|
|
|
|
-static void _sgl_lookat(_sgl_matrix_t* dst,
|
|
|
+static void _sgl_lookat(_sgl_matrix_t* dst,
|
|
|
float eye_x, float eye_y, float eye_z,
|
|
|
float center_x, float center_y, float center_z,
|
|
|
float up_x, float up_y, float up_z)
|
|
@@ -2255,7 +2257,7 @@ SOKOL_API_IMPL void sgl_draw(void) {
|
|
|
const _sgl_command_t* cmd = &_sgl.commands[i];
|
|
|
switch (cmd->cmd) {
|
|
|
case SGL_COMMAND_VIEWPORT:
|
|
|
- {
|
|
|
+ {
|
|
|
const _sgl_viewport_args_t* args = &cmd->args.viewport;
|
|
|
sg_apply_viewport(args->x, args->y, args->w, args->h, args->origin_top_left);
|
|
|
}
|