1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 03:37:45 +00:00

LibGL: Implement GL_TEXTURE_ENV_COLOR

This sets a constant color in the texture's environment for the fixed
function pipeline.
This commit is contained in:
Jelle Raaijmakers 2023-01-01 22:41:31 +01:00 committed by Andreas Kling
parent 9b50d74df2
commit 474f9e9c69
8 changed files with 79 additions and 10 deletions

View file

@ -29,6 +29,8 @@ public:
float alpha_scale() const { return m_alpha_scale; }
void set_alpha_source(size_t index, GLenum source) { m_alpha_source[index] = source; }
GLenum alpha_source(size_t index) const { return m_alpha_source[index]; }
void set_color(FloatVector4 color) { m_color = color; }
FloatVector4 color() const { return m_color; }
void set_env_mode(GLenum mode) { m_env_mode = mode; }
GLenum env_mode() const { return m_env_mode; }
void set_level_of_detail_bias(float bias) { m_level_of_detail_bias = bias; }
@ -59,6 +61,7 @@ private:
Array<GLenum, 3> m_alpha_operand { GL_SRC_ALPHA, GL_SRC_ALPHA, GL_SRC_ALPHA };
float m_alpha_scale { 1.f };
Array<GLenum, 3> m_alpha_source { GL_TEXTURE, GL_PREVIOUS, GL_CONSTANT };
FloatVector4 m_color { 0.f, 0.f, 0.f, 0.f };
GLenum m_env_mode { GL_MODULATE };
float m_level_of_detail_bias { 0.f };
GLenum m_rgb_combinator { GL_MODULATE };