|
Blender
V2.93
|
#include <gpu_immediate_private.hh>
Inherited by blender::gpu::GLImmediate.
Public Member Functions | |
| Immediate () | |
| virtual | ~Immediate () |
| virtual uchar * | begin (void)=0 |
| virtual void | end (void)=0 |
Public Attributes | |
| uchar * | vertex_data = NULL |
| uint | vertex_idx = 0 |
| uint | vertex_len = 0 |
| uint16_t | unassigned_attr_bits = 0 |
| uint16_t | enabled_attr_bits = 0 |
| GPUPrimType | prim_type = GPU_PRIM_NONE |
| GPUVertFormat | vertex_format = {} |
| GPUShader * | shader = NULL |
| bool | strict_vertex_len = true |
| GPUBatch * | batch = NULL |
| eGPUBuiltinShader | prev_builtin_shader = GPU_SHADER_TEXT |
| eGPUBuiltinShader | builtin_shader_bound = GPU_SHADER_TEXT |
| float | uniform_color [4] |
Definition at line 35 of file gpu_immediate_private.hh.
|
inline |
Definition at line 68 of file gpu_immediate_private.hh.
|
inlinevirtual |
Definition at line 69 of file gpu_immediate_private.hh.
|
pure virtual |
Implemented in blender::gpu::GLImmediate.
Referenced by immBegin().
|
pure virtual |
Implemented in blender::gpu::GLImmediate.
Referenced by immEnd().
Batch in construction when using immBeginBatch.
Definition at line 56 of file gpu_immediate_private.hh.
Referenced by immBeginBatch(), and immEnd().
| eGPUBuiltinShader blender::gpu::Immediate::builtin_shader_bound = GPU_SHADER_TEXT |
Builtin shader index. Used to test if the workaround can be done.
Definition at line 63 of file gpu_immediate_private.hh.
Referenced by immBindBuiltinProgram(), immBindShader(), and wide_line_workaround_start().
| uint16_t blender::gpu::Immediate::enabled_attr_bits = 0 |
Attributes that needs to be set. One bit per attribute.
Definition at line 46 of file gpu_immediate_private.hh.
Referenced by immBegin(), immBeginBatch(), immBindShader(), and immEndVertex().
| eGPUBuiltinShader blender::gpu::Immediate::prev_builtin_shader = GPU_SHADER_TEXT |
Wide Line workaround. Previously bound shader to restore after drawing.
Definition at line 61 of file gpu_immediate_private.hh.
Referenced by wide_line_workaround_end(), and wide_line_workaround_start().
| GPUPrimType blender::gpu::Immediate::prim_type = GPU_PRIM_NONE |
Current draw call specification.
Definition at line 49 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::end(), immAttr1f(), immAttr1u(), immAttr2f(), immAttr2i(), immAttr2s(), immAttr3f(), immAttr3ub(), immAttr4f(), immAttr4ub(), immAttrSkip(), immBegin(), immBeginBatch(), immEnd(), and immEndVertex().
Definition at line 51 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::end(), immBindShader(), immBindTexture(), immBindTextureSampler(), immEnd(), immGetShader(), immUnbindProgram(), immUniform1f(), immUniform1i(), immUniform2f(), immUniform2fv(), immUniform3f(), immUniform3fv(), immUniform4f(), immUniform4fv(), immUniformArray4fv(), immUniformColor4f(), and immUniformMatrix4fv().
| bool blender::gpu::Immediate::strict_vertex_len = true |
Enforce strict vertex count (disabled when using immBeginAtMost).
Definition at line 53 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::begin(), blender::gpu::GLImmediate::end(), immBeginAtMost(), immBeginBatchAtMost(), and immEnd().
| uint16_t blender::gpu::Immediate::unassigned_attr_bits = 0 |
Which attributes of current vertex have not been given values?
Definition at line 44 of file gpu_immediate_private.hh.
Referenced by immBegin(), immBeginBatch(), immEndVertex(), and setAttrValueBit().
| float blender::gpu::Immediate::uniform_color[4] |
Uniform color: Kept here to update the wide-line shader just before immBegin.
Definition at line 65 of file gpu_immediate_private.hh.
Referenced by immUniformColor4f(), and wide_line_workaround_start().
Pointer to the mapped buffer data for the current vertex.
Definition at line 38 of file gpu_immediate_private.hh.
Referenced by immAttr1f(), immAttr1u(), immAttr2f(), immAttr2i(), immAttr2s(), immAttr3f(), immAttr3ub(), immAttr4f(), immAttr4ub(), immBegin(), immBeginBatch(), immEnd(), and immEndVertex().
| GPUVertFormat blender::gpu::Immediate::vertex_format = {} |
Definition at line 50 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::begin(), blender::gpu::GLImmediate::end(), immAttr1f(), immAttr1u(), immAttr2f(), immAttr2i(), immAttr2s(), immAttr3f(), immAttr3ub(), immAttr4f(), immAttr4ub(), immBeginBatch(), immBindShader(), immEndVertex(), and immVertexFormat().
| uint blender::gpu::Immediate::vertex_idx = 0 |
Current vertex index.
Definition at line 40 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::end(), immAttr1f(), immAttr1u(), immAttr2f(), immAttr2i(), immAttr2s(), immAttr3f(), immAttr3ub(), immAttr4f(), immAttr4ub(), immAttrSkip(), immBegin(), immBeginBatch(), immEnd(), and immEndVertex().
| uint blender::gpu::Immediate::vertex_len = 0 |
Length of the buffer in vertices.
Definition at line 42 of file gpu_immediate_private.hh.
Referenced by blender::gpu::GLImmediate::begin(), blender::gpu::GLImmediate::end(), immAttr1f(), immAttr1u(), immAttr2f(), immAttr2i(), immAttr2s(), immAttr3f(), immAttr3ub(), immAttr4f(), immAttr4ub(), immAttrSkip(), immBegin(), immBeginBatch(), immEnd(), and immEndVertex().