CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::GLState Struct Referencefinal

#include <CeresEngine/RenderAPI/OpenGL/GLStateManager.hpp>

Public Attributes

GLGlobalState< decltype(glad_glViewport)> viewport = glad_glViewport
 Set the viewport x, y: Specify the lower left corner of the viewport rectangle, in pixels.
 
GLGlobalState< decltype(glad_glFrontFace)> frontFace = glad_glFrontFace
 Define front- and back-facing polygons mode: Specifies the orientation of front-facing polygons.
 
GLGlobalState< decltype(glad_glUseProgram)> program = glad_glUseProgram
 Installs a program object as part of current rendering state program: Specifies the handle of the program object whose executables are to be used as part of current rendering state.
 
struct { 
 
   GLGlobalState< void(GLuint)>   global 
 Bind a framebuffer to a framebuffer target to GL_FRAMEBUFFER. More...
 
   GLGlobalState< void(GLuint)>   draw 
 Bind a framebuffer to a framebuffer target to GL_DRAW_FRAMEBUFFER. More...
 
   GLGlobalState< void(GLuint)>   read 
 Bind a framebuffer to a framebuffer target to GL_READ_FRAMEBUFFER. More...
 
   GLGlobalState< decltype(glad_glClearColor)>   clearColor = glad_glClearColor 
 Specify clear values for the color buffers. More...
 
framebuffer 
 
struct { 
 
   GLGlobalState< decltype(glad_glBindVertexArray)>   vertexArray = glad_glBindVertexArray 
 Bind a vertex array object array: Specifies the name of the vertex array to bind. More...
 
   GLGlobalState< decltype(glad_glBindTexture)>   texture = glad_glBindTexture 
 Bind a named texture to a texturing target target: Specifies the target to which the texture is bound. More...
 
   GLGlobalStateCollection< GLenum, void(GLuint), 96 >   textures 
 
   GLGlobalStateCollection< GLuint, void(GLenum, GLuint, GLintptr, GLsizeiptr), 96 >   buffers 
 Bind a range within a buffer object to an indexed buffer target. More...
 
   GLGlobalStateCollection< GLuint, void(GLuint), 96 >   samplers 
 bind a named sampler to a texturing target. More...
 
   GLGlobalStateCollection< GLuint, void(GLuint, GLintptr, GLsizei), 10 >   vertexBuffer 
 Bind a buffer to a vertex buffer bind point. More...
 
   struct { 
 
      GLGlobalState< void(GLuint)>   array = bindBuffer< 0x8892 > 
 Bind a named buffer object as a GL_ARRAY_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   atomicCounter = bindBuffer< 0x92C0 > 
 Bind a named buffer object as a GL_ATOMIC_COUNTER_BUFFER buffer: Specifies the name of a buffer object. More...
 
      struct { 
 
         GLGlobalState< void(GLuint)>   read = bindBuffer< 0x8F36 > 
 Bind a named buffer object as a GL_COPY_READ_BUFFER buffer: Specifies the name of a buffer object. More...
 
         GLGlobalState< void(GLuint)>   write = bindBuffer< 0x8F37 > 
 Bind a named buffer object as a GL_COPY_WRITE_BUFFER buffer: Specifies the name of a buffer object. More...
 
      }   copy 
 
      GLGlobalState< void(GLuint)>   drawIndirect = bindBuffer< 0x8F3F > 
 Bind a named buffer object as a GL_DRAW_INDIRECT_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   dispatchIndirect = bindBuffer< 0x90EE > 
 Bind a named buffer object as a GL_DISPATCH_INDIRECT_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   elementArray = bindBuffer< 0x8893 > 
 Bind a named buffer object as a GL_ELEMENT_ARRAY_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   pixelPack = bindBuffer< 0x88EB > 
 Bind a named buffer object as a GL_PIXEL_PACK_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   pixelUnpack = bindBuffer< 0x88EC > 
 Bind a named buffer object as a GL_PIXEL_UNPACK_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   query = bindBuffer< 0x9192 > 
 Bind a named buffer object as a GL_QUERY_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   shaderStorage = bindBuffer< 0x90D2 > 
 Bind a named buffer object as a GL_SHADER_STORAGE_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   texture = bindBuffer< 0x8C2A > 
 Bind a named buffer object as a GL_TEXTURE_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   transformFeedback = bindBuffer< 0x8C8E > 
 Bind a named buffer object as a GL_TRANSFORM_FEEDBACK_BUFFER buffer: Specifies the name of a buffer object. More...
 
      GLGlobalState< void(GLuint)>   uniform = bindBuffer< 0x8A11 > 
 Bind a named buffer object as a GL_UNIFORM_BUFFER buffer: Specifies the name of a buffer object. More...
 
   }   buffer 
 
bindings 
 
struct { 
 
   GLCapability   enabled = 0x0B44 
 If enabled, cull polygons based on their winding in window coordinates. More...
 
   GLGlobalState< decltype(glad_glCullFace)>   face = glad_glCullFace 
 Specify whether front- or back-facing facets can be culled mode: Specifies whether front- or back-facing facets are candidates for culling. More...
 
culling 
 
struct { 
 
   GLCapability   testingEnabled = 0x0B71 
 If enabled, do depth comparisons and update the depth buffer. More...
 
   GLCapability   clamping = 0x864F 
 If enabled, the -wc ≤ zc ≤ wc plane equation is ignored by view volume clipping (effectively, there is no near or far plane clipping). More...
 
   GLGlobalState< decltype(glad_glDepthMask)>   mask = glad_glDepthMask 
 Enable or disable writing into the depth buffer flag: Specifies whether the depth buffer is enabled for writing. More...
 
   GLGlobalState< decltype(glad_glDepthFunc)>   function = glad_glDepthFunc 
 Specify the value used for depth buffer comparisons func: Specifies the depth comparison function. More...
 
   GLGlobalState< decltype(glad_glDepthRangef)>   range = glad_glDepthRangef 
 Specify mapping of depth values from normalized device coordinates to window coordinates nearVal: Specifies the mapping of the near clipping plane to window coordinates. More...
 
depth 
 
struct { 
 
   GLCapability   testingEnabled = 0x0B90 
 If enabled, do stencil testing and update the stencil buffer. More...
 
   GLGlobalState< decltype(glad_glStencilFunc)>   function = glad_glStencilFunc 
 Set front and back function and reference value for stencil testing. More...
 
   GLGlobalState< decltype(glad_glStencilOp)>   operation = glad_glStencilOp 
 Set front and back stencil test actions sfail: Specifies the action to take when the stencil test fails. More...
 
stencil 
 
struct { 
 
   GLCapability   testingEnabled = 0x0C11 
 If enabled, discard fragments that are outside the scissor rectangle. More...
 
   GLGlobalState< decltype(glad_glScissor)>   box = glad_glScissor 
 Define the scissor box x, y: Specify the lower left corner of the scissor box. More...
 
scissor 
 
GLCapability dither = { 0x0BD0 , true}
 If enabled, dither color components or indices before they are written to the color buffer.
 
struct { 
 
   GLCapability   enabled = 0x0BE2 
 If enabled, blend the computed fragment color values with the values in the color buffers. More...
 
   GLGlobalState< decltype(glad_glBlendEquationSeparate)>   equation = glad_glBlendEquationSeparate 
 Set the RGB blend equation and the alpha blend equation separately buf: for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation. More...
 
   GLGlobalState< decltype(glad_glBlendFuncSeparate)>   function = glad_glBlendFuncSeparate 
 Specify pixel arithmetic for RGB and alpha components separately buf: For glBlendFunci, specifies the index of the draw buffer for which to set the blend function. More...
 
   GLGlobalState< decltype(glad_glBlendColor)>   color = glad_glBlendColor 
 Set the blend color red, green, blue, alpha: specify the components of GL_BLEND_COLOR More...
 
blending 
 
GLCapability framebufferSRGB = 0x8DB9
 If enabled and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the framebuffer attachment corresponding to the destination buffer is GL_SRGB, the R, G, and B destination color values (after conversion from fixed-point to floating-point) are considered to be encoded for the sRGB color space and hence are linearized prior to their use in blending.
 
struct { 
 
   GLGlobalState< decltype(glad_glPolygonMode)>   mode = glad_glPolygonMode 
 Select a polygon rasterization mode face: Specifies the polygons that mode​ applies to. More...
 
   struct { 
 
      GLCapability   offset = 0x8037 
 If enabled, and if the polygon is rendered in GL_FILL mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed. More...
 
   }   fill 
 
   struct { 
 
      GLGlobalState< decltype(glad_glPointSize)>   size = glad_glPointSize 
 Specify the diameter of rasterized points size: Specifies the diameter of rasterized points. More...
 
      GLCapability   point = 0x2A01 
 If enabled, an offset is added to depth values of a polygon's fragments before the depth comparison is performed, if the polygon is rendered in GL_POINT mode. More...
 
      GLCapability   sizeFromProgram = 0x8642 
 If enabled and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin gl_PointSize and clamped to the implementation-dependent point size range. More...
 
   }   point 
 
   struct { 
 
      GLCapability   smooth = 0x0B20 
 If enabled, draw lines with correct filtering. More...
 
      GLCapability   offset = 0x2A02 
 If enabled, and if the polygon is rendered in GL_LINE mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed. More...
 
      GLGlobalState< decltype(glad_glLineWidth)>   width = glad_glLineWidth 
 Specify the width of rasterized lines. More...
 
   }   line 
 
   GLGlobalState< decltype(glad_glPolygonOffset)>   offset = glad_glPolygonOffset 
 Set the scale and units used to calculate depth values factor: Specifies a scale factor that is used to create a variable depth offset for each polygon. More...
 
   GLCapability   smooth = 0x0B41 
 If enabled, draw polygons with proper filtering. More...
 
polygon 
 
struct { 
 
   GLCapability   enabled = { 0x809D , true
 If enabled, use multiple fragment samples in computing the final color of a pixel. More...
 
   GLCapability   enableCoverage = 0x80A0 
 If enabled, the fragment's coverage is ANDed with the temporary coverage value. More...
 
   GLGlobalState< decltype(glad_glSampleCoverage)>   coverage = glad_glSampleCoverage 
 Specify multisample coverage parameters value: Specify a single floating-point sample coverage value. More...
 
multisample 
 
struct { 
 
   GLCapability   enabled = 0x8F9D 
 Enables primitive restarting. More...
 
   GLCapability   withFixedIndex = 0x8D69 
 Enables primitive restarting with a fixed index. More...
 
   GLGlobalState< decltype(glad_glPrimitiveRestartIndex)>   index = glad_glPrimitiveRestartIndex 
 Specify the primitive restart index index: Specifies the value to be interpreted as the primitive restart index. More...
 
primitiveRestart 
 
struct { 
 
   GLCapability   enabled = 0x0BF2 
 If enabled, apply the currently selected logical operation to the computed fragment color and color buffer values. More...
 
   GLGlobalState< decltype(glad_glLogicOp)>   operation = glad_glLogicOp 
 Specify a logical pixel operation for rendering opcode: Specifies a symbolic constant that selects a logical operation. More...
 
logicOp 
 
GLCapability rasterizerDiscard = 0x8C89
 If enabled, all primitives are discarded before rasterization, but after any optional transform feedback.
 
GLCapability sampleAlphaToCoverage = 0x809E
 If enabled, compute a temporary coverage value where each bit is determined by the alpha value at the corresponding sample location.
 
GLCapability sampleAlphaToOne = 0x809F
 If enabled, each sample alpha value is replaced by the maximum representable alpha value.
 
struct { 
 
   GLCapability   enabled = 0x8E51 
 If enabled, the sample coverage mask generated for a fragment during rasterization will be ANDed with the value of GL_SAMPLE_MASK_VALUE before shading occurs. More...
 
   GLGlobalState< decltype(glad_glSampleMaski)>   value = glad_glSampleMaski 
 Set the value of a sub-word of the sample mask maskNumber: Specifies which 32-bit sub-word of the sample mask to update. More...
 
sampleMask 
 
GLCapability textureCubeMapSeamless = 0x884F
 If enabled, cubemap textures are sampled such that when linearly sampling from the border between two adjacent faces, texels from both faces are used to generate the final sample value.
 
struct { 
 
   GLCapability   enabled = 0x92E0 
 If enabled, debug messages are produced by a debug context. More...
 
   GLCapability   synchronous = 0x8242 
 If enabled, debug messages are produced synchronously by a debug context. More...
 
   GLGlobalState< decltype(glad_glDebugMessageCallback)>   callback = glad_glDebugMessageCallback 
 Specify a callback to receive debugging messages from the GL. More...
 
debugOutput 
 
GLCapability clipDistance [8]
 If enabled, clip geometry against user-defined half space i.
 

Member Data Documentation

◆ array

GLGlobalState<void(GLuint)> CeresEngine::GLState::array = bindBuffer< 0x8892 >

Bind a named buffer object as a GL_ARRAY_BUFFER buffer: Specifies the name of a buffer object.

◆ atomicCounter

GLGlobalState<void(GLuint)> CeresEngine::GLState::atomicCounter = bindBuffer< 0x92C0 >

Bind a named buffer object as a GL_ATOMIC_COUNTER_BUFFER buffer: Specifies the name of a buffer object.

◆ [struct]

struct { ... } CeresEngine::GLState::bindings

◆ [struct]

struct { ... } CeresEngine::GLState::blending

◆ box

GLGlobalState<decltype( glad_glScissor )> CeresEngine::GLState::box = glad_glScissor

Define the scissor box x, y: Specify the lower left corner of the scissor box.

Initially (0, 0). width, height: Specify the width and height of the scissor box. When a GL context is first attached to a window, width​ and height​ are set to the dimensions of that window.

◆ [struct]

struct { ... } CeresEngine::GLState::buffer

◆ buffers

GLGlobalStateCollection<GLuint, void(GLenum, GLuint, GLintptr, GLsizeiptr), 96> CeresEngine::GLState::buffers
Initial value:
= [](const GLuint index, const GLenum target, const GLuint buffer,
const GLintptr offset, const GLsizeiptr size) {
}
ptrdiff_t GLintptr
Definition GLLoader.hpp:755
PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange
unsigned int GLenum
Definition GLLoader.hpp:723
unsigned int GLuint
Definition GLLoader.hpp:733
ptrdiff_t GLsizeiptr
Definition GLLoader.hpp:761
struct CeresEngine::GLState::@34::@46 buffer
GLGlobalState< decltype(glad_glPrimitiveRestartIndex)> index
Specify the primitive restart index index: Specifies the value to be interpreted as the primitive res...
Definition GLStateManager.hpp:821
GLCapability offset
If enabled, and if the polygon is rendered in GL_FILL mode, an offset is added to depth values of a p...
Definition GLStateManager.hpp:725
GLGlobalState< decltype(glad_glPointSize)> size
Specify the diameter of rasterized points size: Specifies the diameter of rasterized points.
Definition GLStateManager.hpp:733

Bind a range within a buffer object to an indexed buffer target.

target: Specifies the target buffer object. The symbolic constant must be GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. buffer: The name of a buffer object to bind to the specified binding point. offset: The starting offset in basic machine units into the buffer object buffer​. size: The amount of data in machine units that can be read from the buffer object while used as an indexed target.

◆ callback

Specify a callback to receive debugging messages from the GL.

callback: The address of a callback function that will be called when a debug message is generated. userParam: A user supplied pointer that will be passed on each invocation of callback​.

◆ clamping

GLCapability CeresEngine::GLState::clamping = 0x864F

If enabled, the -wc ≤ zc ≤ wc plane equation is ignored by view volume clipping (effectively, there is no near or far plane clipping).

See glDepthRange.

◆ clearColor

GLGlobalState<decltype( glad_glClearColor )> CeresEngine::GLState::clearColor = glad_glClearColor

Specify clear values for the color buffers.

red, green, blue, alpha: Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0.

◆ clipDistance

GLCapability CeresEngine::GLState::clipDistance[8]
Initial value:
= {
0x3000 ,
0x3001 ,
0x3002 ,
0x3003 ,
0x3004 ,
0x3005 ,
0x3006 ,
0x3007 ,
}

If enabled, clip geometry against user-defined half space i.

◆ color

GLGlobalState<decltype( glad_glBlendColor )> CeresEngine::GLState::color = glad_glBlendColor

Set the blend color red, green, blue, alpha: specify the components of GL_BLEND_COLOR

◆ [struct]

struct { ... } CeresEngine::GLState::copy

◆ coverage

GLGlobalState<decltype( glad_glSampleCoverage )> CeresEngine::GLState::coverage = glad_glSampleCoverage

Specify multisample coverage parameters value: Specify a single floating-point sample coverage value.

The value is clamped to the range [0, 1]. The initial value is 1.0. invert: Specify a single boolean value representing if the coverage masks should be inverted. GL_TRUE and GL_FALSE are accepted. The initial value is GL_FALSE.

◆ [struct]

struct { ... } CeresEngine::GLState::culling

◆ [struct]

struct { ... } CeresEngine::GLState::debugOutput

◆ [struct]

struct { ... } CeresEngine::GLState::depth

◆ dispatchIndirect

GLGlobalState<void(GLuint)> CeresEngine::GLState::dispatchIndirect = bindBuffer< 0x90EE >

Bind a named buffer object as a GL_DISPATCH_INDIRECT_BUFFER buffer: Specifies the name of a buffer object.

◆ dither

GLCapability CeresEngine::GLState::dither = { 0x0BD0 , true}

If enabled, dither color components or indices before they are written to the color buffer.

◆ draw

GLGlobalState<void(GLuint)> CeresEngine::GLState::draw
Initial value:
= +[](const GLuint id) {
glad_glBindFramebuffer ( 0x8CA9 , id);
}
PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer

Bind a framebuffer to a framebuffer target to GL_DRAW_FRAMEBUFFER.

framebuffer: Specifies the name of the framebuffer object to bind.

◆ drawIndirect

GLGlobalState<void(GLuint)> CeresEngine::GLState::drawIndirect = bindBuffer< 0x8F3F >

Bind a named buffer object as a GL_DRAW_INDIRECT_BUFFER buffer: Specifies the name of a buffer object.

◆ elementArray

GLGlobalState<void(GLuint)> CeresEngine::GLState::elementArray = bindBuffer< 0x8893 >

Bind a named buffer object as a GL_ELEMENT_ARRAY_BUFFER buffer: Specifies the name of a buffer object.

◆ enableCoverage

GLCapability CeresEngine::GLState::enableCoverage = 0x80A0

If enabled, the fragment's coverage is ANDed with the temporary coverage value.

If GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage value. See glSampleCoverage.

◆ enabled

GLCapability CeresEngine::GLState::enabled = 0x0B44

If enabled, cull polygons based on their winding in window coordinates.

If enabled, debug messages are produced by a debug context.

If enabled, the sample coverage mask generated for a fragment during rasterization will be ANDed with the value of GL_SAMPLE_MASK_VALUE before shading occurs.

If enabled, apply the currently selected logical operation to the computed fragment color and color buffer values.

Enables primitive restarting.

If enabled, use multiple fragment samples in computing the final color of a pixel.

If enabled, blend the computed fragment color values with the values in the color buffers.

See glCullFace.

See glBlendFunc. Sets the blend enable/disable flag for all color buffers.

See glSampleCoverage.

If enabled, any one of the draw commands which transfers a set of generic attribute array elements to the GL will restart the primitive when the index of the vertex is equal to the primitive restart index. See glPrimitiveRestartIndex.

See glLogicOp.

See glSampleMaski.

When disabled, the debug message log is silenced. Note that in a non-debug context, very few, if any messages might be produced, even when GL_DEBUG_OUTPUT is enabled.

◆ equation

Set the RGB blend equation and the alpha blend equation separately buf: for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.

mode: specifies how source and destination colors are combined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_MIN, GL_MAX, GL_FUNC_REVERSE_SUBTRACT.

◆ face

GLGlobalState<decltype( glad_glCullFace )> CeresEngine::GLState::face = glad_glCullFace

Specify whether front- or back-facing facets can be culled mode: Specifies whether front- or back-facing facets are candidates for culling.

Symbolic constants GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. The initial value is GL_BACK.

◆ [struct]

struct { ... } CeresEngine::GLState::fill

◆ [struct]

struct { ... } CeresEngine::GLState::framebuffer

◆ framebufferSRGB

GLCapability CeresEngine::GLState::framebufferSRGB = 0x8DB9

If enabled and the value of GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING for the framebuffer attachment corresponding to the destination buffer is GL_SRGB, the R, G, and B destination color values (after conversion from fixed-point to floating-point) are considered to be encoded for the sRGB color space and hence are linearized prior to their use in blending.

◆ frontFace

GLGlobalState<decltype( glad_glFrontFace )> CeresEngine::GLState::frontFace = glad_glFrontFace

Define front- and back-facing polygons mode: Specifies the orientation of front-facing polygons.

GL_CW and GL_CCW are accepted. The initial value is GL_CCW.

◆ function [1/3]

GLGlobalState<decltype( glad_glDepthFunc )> CeresEngine::GLState::function = glad_glDepthFunc

Specify the value used for depth buffer comparisons func: Specifies the depth comparison function.

Symbolic constants GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL, GL_GREATER, GL_NOTEQUAL, GL_GEQUAL, and GL_ALWAYS are accepted. The initial value is GL_LESS.

◆ function [2/3]

GLGlobalState<decltype( glad_glStencilFunc )> CeresEngine::GLState::function = glad_glStencilFunc

Set front and back function and reference value for stencil testing.

func: Specifies the test function. Eight symbolic constants are valid: GL_NEVER, GL_LESS, GL_LEQUAL, GL_GREATER, GL_GEQUAL, GL_EQUAL, GL_NOTEQUAL, and GL_ALWAYS. The initial value is GL_ALWAYS. ref: Specifies the reference value for the stencil test. ref​ is clamped to the range [0, 2n - 1, where n is the number of bitplanes in the stencil buffer. The initial value is 0. mask: Specifies a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's.

◆ function [3/3]

Specify pixel arithmetic for RGB and alpha components separately buf: For glBlendFunci, specifies the index of the draw buffer for which to set the blend function.

sfactor: Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is GL_ONE. dfactor: Specifies how the red, green, blue, and alpha destination blending factors are computed. The initial value is GL_ZERO.

◆ global

GLGlobalState<void(GLuint)> CeresEngine::GLState::global
Initial value:
= +[](const GLuint id) {
glad_glBindFramebuffer ( 0x8D40 , id);
}

Bind a framebuffer to a framebuffer target to GL_FRAMEBUFFER.

framebuffer: Specifies the name of the framebuffer object to bind.

◆ index

Specify the primitive restart index index: Specifies the value to be interpreted as the primitive restart index.

◆ [struct]

struct { ... } CeresEngine::GLState::line

◆ [struct]

struct { ... } CeresEngine::GLState::logicOp

◆ mask

GLGlobalState<decltype( glad_glDepthMask )> CeresEngine::GLState::mask = glad_glDepthMask

Enable or disable writing into the depth buffer flag: Specifies whether the depth buffer is enabled for writing.

If flag​ is GL_FALSE, depth buffer writing is disabled. Otherwise, it is enabled. Initially, depth buffer writing is enabled.

◆ mode

GLGlobalState<decltype( glad_glPolygonMode )> CeresEngine::GLState::mode = glad_glPolygonMode

Select a polygon rasterization mode face: Specifies the polygons that mode​ applies to.

Must be GL_FRONT_AND_BACK for front- and back-facing polygons. mode: Specifies how polygons will be rasterized. Accepted values are GL_POINT, GL_LINE, and GL_FILL. The initial value is GL_FILL for both front- and back-facing polygons.

◆ [struct]

struct { ... } CeresEngine::GLState::multisample

◆ offset [1/2]

GLCapability CeresEngine::GLState::offset = 0x8037

If enabled, and if the polygon is rendered in GL_FILL mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed.

If enabled, and if the polygon is rendered in GL_LINE mode, an offset is added to depth values of a polygon's fragments before the depth comparison is performed.

See glPolygonOffset.

◆ offset [2/2]

Set the scale and units used to calculate depth values factor: Specifies a scale factor that is used to create a variable depth offset for each polygon.

The initial value is 0. units: Is multiplied by an implementation-specific value to create a constant depth offset. The initial value is 0.

◆ operation [1/2]

GLGlobalState<decltype( glad_glStencilOp )> CeresEngine::GLState::operation = glad_glStencilOp

Set front and back stencil test actions sfail: Specifies the action to take when the stencil test fails.

Eight symbolic constants are accepted: GL_KEEP, GL_ZERO, GL_REPLACE, GL_INCR, GL_INCR_WRAP, GL_DECR, GL_DECR_WRAP, and GL_INVERT. The initial value is GL_KEEP. dpfail: Specifies the stencil action when the stencil test passes, but the depth test fails. dpfail​ accepts the same symbolic constants as sfail​. The initial value is GL_KEEP. dppass: Specifies the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth testing is not enabled. dppass​ accepts the same symbolic constants as sfail​. The initial value is GL_KEEP.

◆ operation [2/2]

GLGlobalState<decltype( glad_glLogicOp )> CeresEngine::GLState::operation = glad_glLogicOp

Specify a logical pixel operation for rendering opcode: Specifies a symbolic constant that selects a logical operation.

The following symbols are accepted: GL_CLEAR, GL_SET, GL_COPY, GL_COPY_INVERTED, GL_NOOP, GL_INVERT, GL_AND, GL_NAND, GL_OR, GL_NOR, GL_XOR, GL_EQUIV, GL_AND_REVERSE, GL_AND_INVERTED, GL_OR_REVERSE, and GL_OR_INVERTED. The initial value is GL_COPY.

◆ pixelPack

GLGlobalState<void(GLuint)> CeresEngine::GLState::pixelPack = bindBuffer< 0x88EB >

Bind a named buffer object as a GL_PIXEL_PACK_BUFFER buffer: Specifies the name of a buffer object.

◆ pixelUnpack

GLGlobalState<void(GLuint)> CeresEngine::GLState::pixelUnpack = bindBuffer< 0x88EC >

Bind a named buffer object as a GL_PIXEL_UNPACK_BUFFER buffer: Specifies the name of a buffer object.

◆ point [1/2]

GLCapability CeresEngine::GLState::point = 0x2A01

If enabled, an offset is added to depth values of a polygon's fragments before the depth comparison is performed, if the polygon is rendered in GL_POINT mode.

See glPolygonOffset.

◆ [struct] [2/2]

struct { ... } CeresEngine::GLState::point

◆ [struct]

struct { ... } CeresEngine::GLState::polygon

◆ [struct]

struct { ... } CeresEngine::GLState::primitiveRestart

◆ program

GLGlobalState<decltype( glad_glUseProgram )> CeresEngine::GLState::program = glad_glUseProgram

Installs a program object as part of current rendering state program: Specifies the handle of the program object whose executables are to be used as part of current rendering state.

◆ query

GLGlobalState<void(GLuint)> CeresEngine::GLState::query = bindBuffer< 0x9192 >

Bind a named buffer object as a GL_QUERY_BUFFER buffer: Specifies the name of a buffer object.

◆ range

GLGlobalState<decltype( glad_glDepthRangef )> CeresEngine::GLState::range = glad_glDepthRangef

Specify mapping of depth values from normalized device coordinates to window coordinates nearVal: Specifies the mapping of the near clipping plane to window coordinates.

The initial value is 0. farVal: Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1.

◆ rasterizerDiscard

GLCapability CeresEngine::GLState::rasterizerDiscard = 0x8C89

If enabled, all primitives are discarded before rasterization, but after any optional transform feedback.

Also causes glClear and glClearBuffer commands to be ignored.

◆ read

GLGlobalState<void(GLuint)> CeresEngine::GLState::read
Initial value:
= +[](const GLuint id) {
glad_glBindFramebuffer ( 0x8CA8 , id);
}

Bind a framebuffer to a framebuffer target to GL_READ_FRAMEBUFFER.

Bind a named buffer object as a GL_COPY_READ_BUFFER buffer: Specifies the name of a buffer object.

framebuffer: Specifies the name of the framebuffer object to bind.

◆ sampleAlphaToCoverage

GLCapability CeresEngine::GLState::sampleAlphaToCoverage = 0x809E

If enabled, compute a temporary coverage value where each bit is determined by the alpha value at the corresponding sample location.

The temporary coverage value is then ANDed with the fragment coverage value.

◆ sampleAlphaToOne

GLCapability CeresEngine::GLState::sampleAlphaToOne = 0x809F

If enabled, each sample alpha value is replaced by the maximum representable alpha value.

◆ [struct]

struct { ... } CeresEngine::GLState::sampleMask

◆ samplers

GLGlobalStateCollection<GLuint, void(GLuint), 96> CeresEngine::GLState::samplers
Initial value:
= [](const GLuint index, const GLuint id) {
}
PFNGLBINDSAMPLERPROC glad_glBindSampler

bind a named sampler to a texturing target.

sampler: Specifies the name of a sampler.

◆ [struct]

struct { ... } CeresEngine::GLState::scissor

◆ shaderStorage

GLGlobalState<void(GLuint)> CeresEngine::GLState::shaderStorage = bindBuffer< 0x90D2 >

Bind a named buffer object as a GL_SHADER_STORAGE_BUFFER buffer: Specifies the name of a buffer object.

◆ size

GLGlobalState<decltype( glad_glPointSize )> CeresEngine::GLState::size = glad_glPointSize

Specify the diameter of rasterized points size: Specifies the diameter of rasterized points.

The initial value is 1.

◆ sizeFromProgram

GLCapability CeresEngine::GLState::sizeFromProgram = 0x8642

If enabled and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin gl_PointSize and clamped to the implementation-dependent point size range.

◆ smooth

GLCapability CeresEngine::GLState::smooth = 0x0B20

If enabled, draw lines with correct filtering.

If enabled, draw polygons with proper filtering.

Otherwise, draw aliased lines. See glLineWidth.

Otherwise, draw aliased polygons. For correct antialiased polygons, an alpha buffer is needed and the polygons must be sorted front to back.

◆ [struct]

struct { ... } CeresEngine::GLState::stencil

◆ synchronous

GLCapability CeresEngine::GLState::synchronous = 0x8242

If enabled, debug messages are produced synchronously by a debug context.

If disabled, debug messages may be produced asynchronously. In particular, they may be delayed relative to the execution of GL commands, and the debug callback function may be called from a thread other than that in which the commands are executed. See glDebugMessageCallback.

◆ testingEnabled

GLCapability CeresEngine::GLState::testingEnabled = 0x0B71

If enabled, do depth comparisons and update the depth buffer.

If enabled, discard fragments that are outside the scissor rectangle.

If enabled, do stencil testing and update the stencil buffer.

Note that even if the depth buffer exists and the depth mask is non-zero, the depth buffer is not updated if the depth test is disabled. See glDepthFunc and glDepthRange.

See glStencilFunc and glStencilOp.

See glScissor.

◆ texture [1/2]

GLGlobalState<decltype( glad_glBindTexture )> CeresEngine::GLState::texture = glad_glBindTexture

Bind a named texture to a texturing target target: Specifies the target to which the texture is bound.

texture: Specifies the name of a texture.

◆ texture [2/2]

GLGlobalState<void(GLuint)> CeresEngine::GLState::texture = bindBuffer< 0x8C2A >

Bind a named buffer object as a GL_TEXTURE_BUFFER buffer: Specifies the name of a buffer object.

◆ textureCubeMapSeamless

GLCapability CeresEngine::GLState::textureCubeMapSeamless = 0x884F

If enabled, cubemap textures are sampled such that when linearly sampling from the border between two adjacent faces, texels from both faces are used to generate the final sample value.

When disabled, texels from only a single face are used to create the final sample value.

◆ textures

GLGlobalStateCollection<GLenum, void(GLuint), 96> CeresEngine::GLState::textures
Initial value:
= [](const GLenum index, const GLuint id) {
GLThrowIfFailed("glBindTextureUnit");
} else {
GLThrowIfFailed("glActiveTexture");
}
}
PFNGLACTIVETEXTUREPROC glad_glActiveTexture
PFNGLBINDTEXTUREUNITPROC glad_glBindTextureUnit
void GLThrowIfFailed(const char *info)

◆ transformFeedback

GLGlobalState<void(GLuint)> CeresEngine::GLState::transformFeedback = bindBuffer< 0x8C8E >

Bind a named buffer object as a GL_TRANSFORM_FEEDBACK_BUFFER buffer: Specifies the name of a buffer object.

◆ uniform

GLGlobalState<void(GLuint)> CeresEngine::GLState::uniform = bindBuffer< 0x8A11 >

Bind a named buffer object as a GL_UNIFORM_BUFFER buffer: Specifies the name of a buffer object.

◆ value

GLGlobalState<decltype( glad_glSampleMaski )> CeresEngine::GLState::value = glad_glSampleMaski

Set the value of a sub-word of the sample mask maskNumber: Specifies which 32-bit sub-word of the sample mask to update.

mask: Specifies the new value of the mask sub-word.

◆ vertexArray

GLGlobalState<decltype( glad_glBindVertexArray )> CeresEngine::GLState::vertexArray = glad_glBindVertexArray

Bind a vertex array object array: Specifies the name of the vertex array to bind.

◆ vertexBuffer

GLGlobalStateCollection<GLuint, void(GLuint, GLintptr, GLsizei), 10> CeresEngine::GLState::vertexBuffer
Initial value:
= [](const GLuint bindingIndex, const GLuint buffer, const GLintptr offset,
const GLsizei stride) {
GLThrowIfFailed("glBindVertexBuffer");
} else {
}
}
PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray
int GLsizei
Definition GLLoader.hpp:734
PFNGLBINDBUFFERPROC glad_glBindBuffer
PFNGLBINDVERTEXBUFFERPROC glad_glBindVertexBuffer
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25

Bind a buffer to a vertex buffer bind point.

bindingindex: The index of the vertex buffer binding point to which to bind the buffer. buffer: The name of an existing buffer to bind to the vertex buffer binding point. offset: The offset of the first element of the buffer. stride: The distance between elements within the buffer.

◆ viewport

GLGlobalState<decltype( glad_glViewport )> CeresEngine::GLState::viewport = glad_glViewport

Set the viewport x, y: Specify the lower left corner of the viewport rectangle, in pixels.

The initial value is (0,0). width, height: Specify the width and height of the viewport. When a GL context is first attached to a window, width​ and height​ are set to the dimensions of that window.

◆ width

GLGlobalState<decltype( glad_glLineWidth )> CeresEngine::GLState::width = glad_glLineWidth

Specify the width of rasterized lines.

width: Specifies the width of rasterized lines. The initial value is 1.

◆ withFixedIndex

GLCapability CeresEngine::GLState::withFixedIndex = 0x8D69

Enables primitive restarting with a fixed index.

If enabled, any one of the draw commands which transfers a set of generic attribute array elements to the GL will restart the primitive when the index of the vertex is equal to the fixed primitive index for the specified index type. The fixed index is equal to 2^n - 1 where n is equal to 8 for GL_UNSIGNED_BYTE, 16 for GL_UNSIGNED_SHORT and 32 for GL_UNSIGNED_INT.

◆ write

GLGlobalState<void(GLuint)> CeresEngine::GLState::write = bindBuffer< 0x8F37 >

Bind a named buffer object as a GL_COPY_WRITE_BUFFER buffer: Specifies the name of a buffer object.


The documentation for this struct was generated from the following file: