summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibGL/SoftwareGLContext.h
diff options
context:
space:
mode:
authorStephan Unverwerth <s.unverwerth@serenityos.org>2022-01-15 17:22:59 +0100
committerAndreas Kling <kling@serenityos.org>2022-01-19 19:57:49 +0100
commitd3d12c2fe7e396edfc41780c404768a48d495ccc (patch)
treed3dbf90b3831df66ee6921e7adf1dce546d0e165 /Userland/Libraries/LibGL/SoftwareGLContext.h
parent5505f353e8bf3cebdec4e332adf93cbcb923a890 (diff)
downloadserenity-d3d12c2fe7e396edfc41780c404768a48d495ccc.zip
LibGL: Generate GL extension string dynamically during construction
LibGL will now generate the GL extension string in the constructor and refer to it later on when the string is queried via glGetString(). Currently we only check whether the device supports non-power-of-two textures and add GL_ARB_texture_non_power_of_two to the supported extensions in that case.
Diffstat (limited to 'Userland/Libraries/LibGL/SoftwareGLContext.h')
-rw-r--r--Userland/Libraries/LibGL/SoftwareGLContext.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Userland/Libraries/LibGL/SoftwareGLContext.h b/Userland/Libraries/LibGL/SoftwareGLContext.h
index ff5ea056be..8448098990 100644
--- a/Userland/Libraries/LibGL/SoftwareGLContext.h
+++ b/Userland/Libraries/LibGL/SoftwareGLContext.h
@@ -157,6 +157,8 @@ private:
void sync_light_state();
void sync_stencil_configuration();
+ void build_extension_string();
+
template<typename T>
T* store_in_listing(T value)
{
@@ -432,6 +434,9 @@ private:
bool m_color_material_enabled { false };
GLenum m_color_material_face { GL_FRONT_AND_BACK };
GLenum m_color_material_mode { GL_AMBIENT_AND_DIFFUSE };
+
+ // GL Extension string
+ String m_extensions;
};
}