diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-07-17 21:26:12 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-07-18 04:43:52 +0300 |
commit | 8dfc31f61fac5a6301d6bfb17eda74ea4fffe384 (patch) | |
tree | 12a61da62b294acf9ee4bca51e04338fd66c6045 /source/blender/gpu | |
parent | 264b1e1e15ff3a6971166c8b93b3f0a06a60cc83 (diff) |
Cleanup: GPU: Encapsulate glProvokingVertex
Diffstat (limited to 'source/blender/gpu')
-rw-r--r-- | source/blender/gpu/GPU_state.h | 6 | ||||
-rw-r--r-- | source/blender/gpu/intern/gpu_state.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/gpu/GPU_state.h b/source/blender/gpu/GPU_state.h index c9f745a680d..0f0a8a5dd6e 100644 --- a/source/blender/gpu/GPU_state.h +++ b/source/blender/gpu/GPU_state.h @@ -46,6 +46,11 @@ typedef enum eGPUFaceCull { GPU_CULL_BACK, } eGPUFaceCull; +typedef enum eGPUProvokingVertex { + GPU_VERTEX_FIRST = 0, + GPU_VERTEX_LAST, /* Default */ +} eGPUProvokingVertex; + /* Initialize * - sets the default Blender opengl state, if in doubt, check * the contents of this function @@ -60,6 +65,7 @@ void GPU_blend_set_func_separate(eGPUBlendFunction src_rgb, eGPUBlendFunction dst_alpha); void GPU_face_culling(eGPUFaceCull culling); void GPU_front_facing(bool invert); +void GPU_provoking_vertex(eGPUProvokingVertex vert); void GPU_depth_range(float near, float far); void GPU_depth_test(bool enable); bool GPU_depth_test_enabled(void); diff --git a/source/blender/gpu/intern/gpu_state.c b/source/blender/gpu/intern/gpu_state.c index c8f51b14343..f1b842403f9 100644 --- a/source/blender/gpu/intern/gpu_state.c +++ b/source/blender/gpu/intern/gpu_state.c @@ -94,6 +94,12 @@ void GPU_front_facing(bool invert) glFrontFace((invert) ? GL_CW : GL_CCW); } +void GPU_provoking_vertex(eGPUProvokingVertex vert) +{ + glProvokingVertex((vert == GPU_VERTEX_FIRST) ? GL_FIRST_VERTEX_CONVENTION : + GL_LAST_VERTEX_CONVENTION); +} + void GPU_depth_range(float near, float far) { /* glDepthRangef is only for OpenGL 4.1 or higher */ |