Geogram Version 1.8.5
A programming library of geometric algorithms
|
GLUP context stores a Uniform Buffer Object with state variables similar to OpenGL's fixed functionality pipeline, and a set of Vertex Buffer Objects to emulate OpenGL's immediate mode. More...
#include <geogram_gfx/GLUP/GLUP_context.h>
Public Member Functions | |
Context () | |
Context constructor. | |
~Context () override | |
Context destructor. | |
virtual const char * | profile_name () const =0 |
Gets the profile name associated with this context. | |
virtual bool | primitive_supports_array_mode (GLUPprimitive prim) const |
Tests whether a given GLUP primitive supports array mode. | |
virtual void | setup () |
Creates the uniform state and GLSL programs. | |
virtual void | bind_uniform_state (GLuint program) |
Binds GLUP uniform state to a program. | |
void | load_matrix (const GLfloat m[16]) |
Replaces the top of the current matrix stack with the specified matrix. | |
void | load_matrix (const GLdouble m[16]) |
Replaces the top of the current matrix stack with the specified matrix. | |
void | load_identity () |
Replaces the top of the current matrix stack with the identity matrix. | |
void | mult_matrix (const GLdouble m[16]) |
Post-multiplies the top of the current matrix stack with the specified matrix. | |
void | push_matrix () |
Pushes a copy of the top of the current stack matrix onto the current stack matrix. | |
void | pop_matrix () |
Pops the top of the current stack matrix. | |
void | set_matrix_mode (GLUPmatrix matrix) |
Sets the current matrix stack. | |
GLUPmatrix | get_matrix_mode () const |
Gets the current matrix stack. | |
void | immediate_vertex (GLfloat x, GLfloat y, GLfloat z=0.0f, GLfloat w=1.0f) |
Creates a new vertex in the immediate mode buffers. | |
void | immediate_color (GLfloat r, GLfloat g, GLfloat b, GLfloat a=1.0f) |
Specifies the current color for the immediate mode buffers. | |
void | immediate_tex_coord (GLfloat s, GLfloat t=0.0f, GLfloat u=0.0f, GLfloat v=1.0f) |
Specifies the current texture coordinates for the immediate mode buffers. | |
void | immediate_normal (GLfloat x, GLfloat y, GLfloat z) |
Specifies the current normal vector for the immediate mode buffers. | |
void | set_user_program (GLuint program) |
Sets the user program, to be used instead of the default GLUP programs for drawing the primitives. | |
virtual void | begin (GLUPprimitive primitive) |
Begins rendering in immediate mode. | |
virtual void | end () |
Ends rendering in immediate mode. | |
virtual void | draw_arrays (GLUPprimitive primitive, GLUPint first, GLUPsizei count) |
Draws primitives using current OpenGL array bindings. | |
virtual void | draw_elements (GLUPprimitive primitive, GLUPsizei count, GLUPenum type, const GLUPvoid *indices) |
Draws primitives using current OpenGL array bindings. | |
virtual Memory::pointer | get_state_variable_address (const char *name) |
Gets a pointer to the representation of a uniform state variable in host memory from its (unqualified) name. | |
UniformState & | uniform_state () |
Gets the uniform state. | |
const UniformState & | uniform_state () const |
Gets the uniform state. | |
void | flag_uniform_buffer_as_dirty () |
Indicates that the OpenGL representation of the uniform state is no longer in sync with the local copy. | |
void | flag_lighting_as_dirty () |
Indicates that cached lighting information needs to be recomputed. | |
void | flag_matrices_as_dirty () |
Indicates that cached matrix information needs to be recomputed. | |
GLUPdouble * | get_matrix (GLUPmatrix matrix) |
Gets a pointer to the values of the matrix at the top of a given stack. | |
virtual void | get_vertex_shader_preamble_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/vertex_shader_preamble.h. | |
virtual void | get_fragment_shader_preamble_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/fragment_shader_preamble.h. | |
virtual void | get_geometry_shader_preamble_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/geometry_shader_preamble.h. | |
virtual void | get_tess_control_shader_preamble_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/tess_control_shader_preamble.h. | |
virtual void | get_tess_evaluation_shader_preamble_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/tess_evaluation_shader_preamble.h. | |
virtual void | get_toggles_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/toggles.h. | |
virtual void | get_primitive_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/primitive.h. | |
virtual void | get_marching_cells_pseudo_file (std::vector< GLSL::Source > &sources) |
Gets the content of the virtual file GLUP/current_profile/marching_cells.h. | |
void | setup_shaders_source_for_toggles (GLUPbitfield toggles_state, GLUPbitfield toggles_undetermined=0) |
Sets the string that describes the settings of the toggles for a given configuration. | |
virtual void | setup_shaders_source_for_primitive (GLUPprimitive primitive) |
Sets the configurable GLSL sources for a given primitive type. | |
ImmediateState & | immediate_state () |
Gets the immediate state. | |
virtual void | flush_immediate_buffers () |
Flushes the immediate mode buffers. | |
![]() | |
virtual | ~PseudoFileProvider () |
PseudoFileProvider destructor. | |
Static Public Member Functions | |
static const char * | uniform_state_declaration () |
Gets the GLSL declaration of GLUP uniform state. | |
Protected Member Functions | |
const MarchingCell & | get_marching_cell () const |
Gets the MarchingCell that corresponds to the current primitive. | |
bool | extension_is_supported (const std::string &extension) |
Tests whether an OpenGL extension is supported. | |
const char * | glup_primitive_name (GLUPprimitive prim) |
Gets the name of a primitive by GLUPprimitive. | |
virtual void | prepare_to_draw (GLUPprimitive primitive) |
This function is called before starting to render primitives. It is called by begin(), draw_arrays() and draw_elements(). | |
virtual void | done_draw (GLUPprimitive primitive) |
This function is called right after rendering primitives. It is called by end(), draw_arrays() and draw_elements(). | |
virtual void | setup_state_variables () |
Initializes the representation of the uniform state. | |
virtual void | setup_immediate_buffers () |
Set-ups the buffers for immediate rendering. | |
virtual void | stream_immediate_buffers () |
Sends all the active immediate buffers to the GPU. | |
virtual void | setup_primitives () |
Setups the programs and VAOs used for each primitive. | |
virtual void | setup_GLUP_POINTS () |
Setups GLSL programs for points. | |
virtual void | setup_GLUP_LINES () |
Setups GLSL programs for lines. | |
virtual void | setup_GLUP_TRIANGLES () |
Setups GLSL programs for triangles. | |
virtual void | setup_GLUP_QUADS () |
Setups GLSL programs for quads. | |
virtual void | setup_GLUP_TETRAHEDRA () |
Setups GLSL programs for tetrahedra. | |
virtual void | setup_GLUP_HEXAHEDRA () |
Setups GLSL programs for hexahedra. | |
virtual void | setup_GLUP_PRISMS () |
Setups GLSL programs for prisms. | |
virtual void | setup_GLUP_PYRAMIDS () |
Setups GLSL programs for pyramids. | |
virtual void | setup_GLUP_CONNECTORS () |
Setups GLSL programs for connectors. | |
virtual void | setup_GLUP_SPHERES () |
Setups GLSL programs for spheres. | |
virtual void | set_primitive_info (GLUPprimitive glup_primitive, GLenum gl_primitive, GLuint program, bool bind_attrib_loc_and_link=true) |
Initializes the PrimitiveInfo associated with a given GLUP primitive. | |
virtual void | set_primitive_info_vertex_gather_mode (GLUPprimitive glup_primitive, GLenum gl_primitive, GLuint program) |
Initializes the PrimitiveInfo associated with a given GLUP primitive in vertex-gather mode. | |
virtual void | set_primitive_info_immediate_index_mode (GLUPprimitive glup_primitive, GLenum gl_primitive, GLuint program, index_t nb_elements_per_glup_primitive, index_t *element_indices) |
Initializes the PrimitiveInfo associated with a given GLUP primitive in immediate mode when an element index buffer is required. | |
void | update_uniform_buffer () |
Copies GLUP uniform state to OpenGL if required. | |
virtual void | do_update_uniform_buffer () |
Copies GLUP uniform state to OpenGL. | |
virtual void | update_matrices () |
Updates the matrices in the uniform state from the matrices in the stacks. | |
virtual void | update_lighting () |
Updates the lighting in the uniform state. | |
virtual void | update_base_picking_id (GLint new_value) |
Updates the base picking id and sends it to OpenGL. | |
std::string | primitive_declaration (GLUPprimitive prim) const |
Gets the GLSL declaration of the constant that indicates the current primitive. | |
void | setup_shaders_source_for_toggles_config (PrimitiveInfo::ShaderKey toggles_config) |
Sets the string that describes the settings of the toggles for a given configuration. | |
void | update_toggles_config () |
Updates the toggles_config_ state variable from the individual state of each toggle. | |
void | create_program_if_needed (GLUPprimitive primitive) |
Creates the GLSL shader that corresponds to the specified primitive and current toggles configuration if not already initialized. | |
void | shrink_cells_in_immediate_buffers () |
Shrinks the cells in the immediate buffer. | |
void | create_CPU_side_uniform_buffer () |
Creates a buffer for uniform variables for implementations that do not support uniform buffer objects. | |
void | bind_immediate_state_buffers_to_VAO () |
Binds the VBOs associated with the immediate state buffers to the currently bound VAO. | |
void | classify_vertices_in_immediate_buffers () |
Updates v_is_visible_[] according to current clipping plane. | |
bool | cell_is_clipped (index_t first_v) |
Tests whether the cell starting at a given vertex in the immediate buffer is clipped, according to current clipping mode and current primitive type. | |
index_t | get_config (index_t first_v, index_t nb_v) |
Assemble the configuration code of a primitive relative to the clipping plane. | |
void | compute_intersection (index_t v1, index_t v2, index_t vi) |
Computes the intersection between the clipping plane and a segment. | |
virtual void | copy_uniform_state_to_current_program () |
Copies the uniform state from client-side memory into the currently bound program, or does nothing if uniform buffer objects are supported. | |
void | use_program (GLuint program) |
A wrapper around glUseProgram that tests whether uniform state needs to be sent to the program. | |
void | create_vertex_id_VBO () |
Creates a vertex buffer object with 16 bits integers between 0 and 65535. | |
Static Protected Member Functions | |
static void | initialize () |
GLUP context stores a Uniform Buffer Object with state variables similar to OpenGL's fixed functionality pipeline, and a set of Vertex Buffer Objects to emulate OpenGL's immediate mode.
Definition at line 1058 of file GLUP_context.h.
|
virtual |
Begins rendering in immediate mode.
[in] | primitive | the primitive to be rendered. |
|
virtual |
Binds GLUP uniform state to a program.
[in] | program | the id of the GLSL program |
If the program uses GLUP, then it binds the program to GLUP uniform state, else this function does nothing.
|
protected |
Tests whether the cell starting at a given vertex in the immediate buffer is clipped, according to current clipping mode and current primitive type.
[in] | first_v | index of the first vertex of the cell in the immediate buffer |
true | if the cell starting at first_v in the immediate buffer is clipped-out |
false | otherwise |
|
protected |
Updates v_is_visible_[] according to current clipping plane.
Used by implementations of Context that do not support clipping by shaders (VanillaGL and ES2).
Computes the intersection between the clipping plane and a segment.
[in] | v1 | index of the first extremity of the segment in the immediate buffer |
[in] | v2 | index of the second extremity of the segment in the immediate buffer |
[in] | vi | index of where to wrote the intersection in the isect_xxx arrays |
Definition at line 1826 of file GLUP_context.h.
|
protected |
Creates a buffer for uniform variables for implementations that do not support uniform buffer objects.
This function is uses by VanillaGL and ES2.
|
protected |
Creates the GLSL shader that corresponds to the specified primitive and current toggles configuration if not already initialized.
[in] | primitive | the primitive to be displayed |
|
protected |
Creates a vertex buffer object with 16 bits integers between 0 and 65535.
It is used to emulate gl_VertexID if GLSL does not support it.
|
protectedvirtual |
Copies GLUP uniform state to OpenGL.
This is the implementation of update_uniform_buffer().
|
protectedvirtual |
This function is called right after rendering primitives. It is called by end(), draw_arrays() and draw_elements().
Default implementation does nothing. This function is meant to be overloaded by derived Context classes.
|
virtual |
Draws primitives using current OpenGL array bindings.
This function operates just like glDrawArrays(), except that its primitive
argument is a GLUPprimitive instead of regular OpenGL primitive. Internally it uses a (possibly different) OpenGL primitive, as well as a GLSL program to reinterpret it.
[in] | primitive | the GLUP primitive type |
[in] | first | first index to be rendered |
[in] | count | number of vertices to be rendered |
|
virtual |
Draws primitives using current OpenGL array bindings.
This function operates just like glDrawElements(), except that its primitive
argument is a GLUPprimitive instead of regular OpenGL primitive. Internally it uses a (possibly different) OpenGL primitive, as well as a GLSL program to reinterpret it.
[in] | primitive | the GLUP primitive type |
[in] | count | number of vertices to be rendered |
[in] | type | type of element indices, as one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT |
[in] | indices | a pointer to where the indices are stored. |
|
virtual |
Ends rendering in immediate mode.
|
protected |
Tests whether an OpenGL extension is supported.
[in] | extension | the name fo the extension to be tested. |
This function needs to be called before starting using the extension, even if you are sure that it is supported. In particular, WebGL specification requires that.
true | if the extension is supported. |
false | otherwise. |
|
inline |
Indicates that cached lighting information needs to be recomputed.
Definition at line 1339 of file GLUP_context.h.
|
inline |
Indicates that cached matrix information needs to be recomputed.
Definition at line 1348 of file GLUP_context.h.
|
inline |
Indicates that the OpenGL representation of the uniform state is no longer in sync with the local copy.
Definition at line 1330 of file GLUP_context.h.
Assemble the configuration code of a primitive relative to the clipping plane.
[in] | first_v | index of the first vertex of the primitive in the immediate buffer |
[in] | nb_v | number of vertices of the primitive |
Definition at line 1806 of file GLUP_context.h.
|
virtual |
Gets the content of the virtual file GLUP/current_profile/fragment_shader_preamble.h.
[in,out] | sources | where the content of the virtual file should be appended |
|
virtual |
Gets the content of the virtual file GLUP/current_profile/geometry_shader_preamble.h.
[in,out] | sources | where the content of the virtual file should be appended |
|
protected |
Gets the MarchingCell that corresponds to the current primitive.
The current primitive is defined by the argument of the previous call of setup_shaders_source_for_primitive().
|
virtual |
Gets the content of the virtual file GLUP/current_profile/marching_cells.h.
The current primitive is defined by the argument of the previous call of setup_shaders_source_for_primitive().
[in,out] | sources | where the content of the virtual file should be appended |
|
inline |
Gets a pointer to the values of the matrix at the top of a given stack.
[in] | matrix | name of the stack, one of GLUP_MODELVIEW_MATRIX, GLUP_PROJECTION_MATRIX, GLUP_TEXTURE_MATRIX |
Definition at line 1359 of file GLUP_context.h.
|
inline |
Gets the current matrix stack.
Definition at line 1188 of file GLUP_context.h.
|
virtual |
Gets the content of the virtual file GLUP/current_profile/primitive.h.
The current primitive is defined by the argument of the previous call of setup_shaders_source_for_primitive().
[in,out] | sources | where the content of the virtual file should be appended |
|
virtual |
Gets a pointer to the representation of a uniform state variable in host memory from its (unqualified) name.
[in] | name | the name of the variable, without the suffix "GLUPStateBlock." |
|
virtual |
Gets the content of the virtual file GLUP/current_profile/tess_control_shader_preamble.h.
[in,out] | sources | where the content of the virtual file should be appended |
|
virtual |
Gets the content of the virtual file GLUP/current_profile/tess_evaluation_shader_preamble.h.
[in,out] | sources | where the content of the virtual file should be appended |
|
virtual |
Gets the content of the virtual file GLUP/current_profile/toggles.h.
The toggles are generated in function of the parameters of the previous call to setup_shaders_source_for_toggles() current configuration defined by prepare_sources_for_toggles()
[in,out] | sources | where the content of the virtual file should be appended |
|
virtual |
Gets the content of the virtual file GLUP/current_profile/vertex_shader_preamble.h.
[in,out] | sources | where the content of the virtual file should be appended |
|
protected |
Gets the name of a primitive by GLUPprimitive.
[in] | prim | a GLUPprimitive |
|
inline |
Specifies the current color for the immediate mode buffers.
[in] | r,g,b,a | the components of the current color. |
Definition at line 1215 of file GLUP_context.h.
|
inline |
Specifies the current normal vector for the immediate mode buffers.
[in] | x,y,z | the current normal vector coordinates. |
Definition at line 1239 of file GLUP_context.h.
|
inline |
Gets the immediate state.
Definition at line 1481 of file GLUP_context.h.
|
inline |
Specifies the current texture coordinates for the immediate mode buffers.
[in] | s,t,u,v | the current texture coordinates. |
Definition at line 1226 of file GLUP_context.h.
|
inline |
Creates a new vertex in the immediate mode buffers.
[in] | x,y,z,w | the coordinates of the vertex |
The color and texture coordinates of the new vertex are initialized from the current color and current texture coordinates.
Definition at line 1200 of file GLUP_context.h.
|
inline |
Replaces the top of the current matrix stack with the identity matrix.
Definition at line 1138 of file GLUP_context.h.
|
inline |
Replaces the top of the current matrix stack with the specified matrix.
[in] | m | the matrix that will replace the top of the current matrix stack |
Definition at line 1129 of file GLUP_context.h.
|
inline |
Replaces the top of the current matrix stack with the specified matrix.
[in] | m | the matrix that will replace the top of the current matrix stack |
Definition at line 1118 of file GLUP_context.h.
|
inline |
Post-multiplies the top of the current matrix stack with the specified matrix.
[in] | m | the matrix that will post-multiply the top of the current matrix stack. |
Definition at line 1150 of file GLUP_context.h.
|
inline |
Pops the top of the current stack matrix.
Definition at line 1168 of file GLUP_context.h.
|
protectedvirtual |
This function is called before starting to render primitives. It is called by begin(), draw_arrays() and draw_elements().
Some primitives require to change some parameters in OpenGL. For instance, when we use GL_PATCH to gather the vertices of hexahedra and tetrahedra, the number of vertices per patch needs to be specified to OpenGL.
|
protected |
Gets the GLSL declaration of the constant that indicates the current primitive.
|
virtual |
Tests whether a given GLUP primitive supports array mode.
If array mode is supported, then one can use glupDrawArray() and glupDrawElements() with the specified primitive.
[in] | prim | the primitive to be tested. |
true | if array mode is supported with prim |
false | otherwise |
|
inline |
Pushes a copy of the top of the current stack matrix onto the current stack matrix.
Definition at line 1161 of file GLUP_context.h.
|
inline |
Sets the current matrix stack.
[in] | matrix | one of GLUP_MODELVIEW, GLUP_PROJECT |
This determines on which matrix stack set_matrix(), mult_matrix(), push_matrix() and pop_matrix() operate.
Definition at line 1179 of file GLUP_context.h.
|
protectedvirtual |
Initializes the PrimitiveInfo associated with a given GLUP primitive.
[in] | glup_primitive | the GLUP primitive. |
[in] | gl_primitive | the GL primitive used by the implementation |
[in] | program | the GLSL program used by the implementation |
[in] | bind_attrib_loc_and_link | if true, binds attribute location and links the shader |
|
protectedvirtual |
Initializes the PrimitiveInfo associated with a given GLUP primitive in immediate mode when an element index buffer is required.
An element index buffer is required when geometry shaders are not supported, for instance when using OpenGL ES in webGL.
[in] | glup_primitive | the GLUP primitive. |
[in] | gl_primitive | the GL primitive used to display the GLUP primitive. |
[in] | program | the GLSL program used by the implementation. |
[in] | nb_elements_per_glup_primitive | the number of element indices for each glup primitive. For instance, when drawing GLUP tetrahedra using OpenGL triangles, there are 4*3 = 12 elements per primitive. |
[in] | element_indices | a pointer to an array of nb_elements_per_glup_primitive integers that encode the indexing of one element. This array is replicated and shifted to generate the element index buffer. |
|
protectedvirtual |
Initializes the PrimitiveInfo associated with a given GLUP primitive in vertex-gather mode.
In vertex-gather mode, all the coordinates of all vertices and all attributes of the primitive are gathered into a small number of vertices. This is required by primitives that have a number of vertices that corresponds to no existing OpenGL primitive (i.e., hexahedron and pyramid).
[in] | glup_primitive | the GLUP primitive. |
[in] | gl_primitive | the GL primitive used to display the GLUP primitive. The number of vertices of the GL primitive needs to be a divisor of the number of vertices of the GLUP primitive. |
[in] | program | the GLSL program used by the implementation |
|
inline |
Sets the user program, to be used instead of the default GLUP programs for drawing the primitives.
Definition at line 1249 of file GLUP_context.h.
|
virtual |
Creates the uniform state and GLSL programs.
This function may throw exceptions if GLSL functionalities are not implemented in the OpenGL driver.
|
protectedvirtual |
Set-ups the buffers for immediate rendering.
This creates VBOs and the VAO.
|
virtual |
Sets the configurable GLSL sources for a given primitive type.
This function needs to be called before compiling the GLSL program.
[in] | primitive | the GLUP primitive |
void GLUP::Context::setup_shaders_source_for_toggles | ( | GLUPbitfield | toggles_state, |
GLUPbitfield | toggles_undetermined = 0 |
||
) |
Sets the string that describes the settings of the toggles for a given configuration.
[in] | toggles_state | an unsigned integer, with its bits corresponding to the state of each toggle |
[in] | toggles_undetermined | an unsigned integer, with its bits set if the corresponding toggle state needs to be determined dynamically from GLUP state |
|
inlineprotected |
Sets the string that describes the settings of the toggles for a given configuration.
[in] | toggles_config | the identifier of the toggles configurations, used to index the GLSL program in the PrimitiveInfo class |
Definition at line 1722 of file GLUP_context.h.
|
protected |
Shrinks the cells in the immediate buffer.
Applies the shrinking factor (state variable "cells_shrink") to all the cells stored in the current immediate buffer. Since there is no function to query the content of the current buffer, modidying it is acceptable. This function is used by derived classes (VanillaGL and ES2) that cannot shrink the cells with a shader.
|
protectedvirtual |
Sends all the active immediate buffers to the GPU.
Overwrites the VBOs with the contents of the buffers.
|
inline |
Gets the uniform state.
Definition at line 1313 of file GLUP_context.h.
|
inline |
Gets the uniform state.
Definition at line 1321 of file GLUP_context.h.
|
static |
Gets the GLSL declaration of GLUP uniform state.
Can be used by client-code shaders that need to have access to the GLUP uniform state. This corresponds to the contents of GLUPGLSL/state.h
|
protectedvirtual |
Updates the lighting in the uniform state.
Computes the half vector from the lighting vector.
|
inlineprotected |
Copies GLUP uniform state to OpenGL if required.
Definition at line 1676 of file GLUP_context.h.
|
inlineprotected |
A wrapper around glUseProgram that tests whether uniform state needs to be sent to the program.
Each time a different program is used, the uniform state can be sent to it through the virtual function update_program_state(). If UBOs are supported, update_program_state() does nothing.
Definition at line 1884 of file GLUP_context.h.
|
protected |
Definition at line 1907 of file GLUP_context.h.
|
protected |
Definition at line 1925 of file GLUP_context.h.
|
protected |
computed intersections.
Used when clipping mode is GLUP_CLIP_SLICE_CELLS and clipping is done by software.
Definition at line 1979 of file GLUP_context.h.
|
protected |
Latest used GLSL program.
Used to check whether it changed and whether some uniform variables need to be sent to it.
Definition at line 1986 of file GLUP_context.h.
|
protected |
Definition at line 1917 of file GLUP_context.h.
|
protected |
Definition at line 1938 of file GLUP_context.h.
|
protected |
Definition at line 1935 of file GLUP_context.h.
|
protected |
Definition at line 1936 of file GLUP_context.h.
|
protected |
Definition at line 1937 of file GLUP_context.h.
|
protected |
Definition at line 1934 of file GLUP_context.h.
|
protected |
Definition at line 1922 of file GLUP_context.h.
|
protected |
Definition at line 1920 of file GLUP_context.h.
|
protected |
Definition at line 1921 of file GLUP_context.h.
|
protected |
Definition at line 1948 of file GLUP_context.h.
|
protected |
Definition at line 1929 of file GLUP_context.h.
|
protected |
Definition at line 1944 of file GLUP_context.h.
|
protected |
Definition at line 1942 of file GLUP_context.h.
|
protected |
Definition at line 1945 of file GLUP_context.h.
|
protected |
Definition at line 1946 of file GLUP_context.h.
|
protected |
Definition at line 1909 of file GLUP_context.h.
|
protected |
Definition at line 1908 of file GLUP_context.h.
|
protected |
Definition at line 1914 of file GLUP_context.h.
|
protected |
Definition at line 1911 of file GLUP_context.h.
|
protected |
Definition at line 1910 of file GLUP_context.h.
|
protected |
Definition at line 1915 of file GLUP_context.h.
|
protected |
Definition at line 1950 of file GLUP_context.h.
|
protected |
Definition at line 1951 of file GLUP_context.h.
|
protected |
Definition at line 1940 of file GLUP_context.h.
|
protected |
Indicates for a given vertex whether it is clipped or is visible, according to the current clipping plane.
Used when clipping is done by software.
Definition at line 1972 of file GLUP_context.h.
|
protected |
Used by GPU-side uniform buffer.
It is initialized by create_GPU_side_uniform_buffer(), used only by VanillaGL and ES2 implementations.
Definition at line 1965 of file GLUP_context.h.
|
protected |
A vertex buffer object with 65536 16 bits integers.
It is used to emulate gl_VertexID in shaders.
Definition at line 1992 of file GLUP_context.h.
|
protected |
Cached pointer to uniform state variable.
It is initialized by create_GPU_side_uniform_buffer(), used only by VanillaGL and ES2 implementations.
Definition at line 1958 of file GLUP_context.h.