diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-09-07 19:52:30 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-09-07 20:37:04 +0300 |
commit | 171b36683a774d70a8f25529858b9c002a2a317e (patch) | |
tree | c87999c9f5ae85936d283868fc70f192af44263d /source/blender/gpu/opengl/gl_context.hh | |
parent | 360489c75167d47653bc34ad9ba9a65076bf384c (diff) |
GPUExtensions: GL backend isolation
This is part of the Vulkan task T68990.
This commits changes a few things:
- Rename extensions to capabilities (but left the file name untouched).
- Cubemap mip render workaround detection is rewritten using gl
commands to avoid using the GPU API before initialization.
- Put all the capabilities that are only relevant for the GL backend
inside GLContext as static variables.
- Cleanup the names of the limit variables.
- Separate all GL related workaround search inside the GL module.
Diffstat (limited to 'source/blender/gpu/opengl/gl_context.hh')
-rw-r--r-- | source/blender/gpu/opengl/gl_context.hh | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/gpu/opengl/gl_context.hh b/source/blender/gpu/opengl/gl_context.hh index 9e6359fabad..e2ae8bf24b2 100644 --- a/source/blender/gpu/opengl/gl_context.hh +++ b/source/blender/gpu/opengl/gl_context.hh @@ -55,6 +55,19 @@ class GLSharedOrphanLists { class GLContext : public GPUContext { public: + /** Capabilities. */ + static GLint max_texture_3d_size; + static GLint max_cubemap_size; + static GLint max_ubo_size; + static GLint max_ubo_binds; + /** Extensions. */ + static bool base_instance_support; + static bool texture_cube_map_array_support; + /** Workarounds. */ + static bool texture_copy_workaround; + static bool unused_fb_slot_workaround; + static float derivative_signs[2]; + /** Used for debugging purpose. Bitflags of all bound slots. */ uint16_t bound_ubo_slots; |