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.
This commit is contained in:
2020-09-07 18:52:30 +02:00
parent 360489c751
commit 171b36683a
18 changed files with 370 additions and 380 deletions

View File

@@ -50,6 +50,7 @@ class GLBackend : public GPUBackend {
/* platform_init needs to go first. */
GLBackend::platform_init();
GLBackend::capabilities_init();
GLTexture::samplers_init();
}
~GLBackend()
@@ -127,6 +128,8 @@ class GLBackend : public GPUBackend {
private:
static void platform_init(void);
static void platform_exit(void);
static void capabilities_init(void);
};
} // namespace gpu