Blender
V3.3
source
blender
gpu
intern
gpu_immediate_private.hh
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2016 by Mike Erwin. All rights reserved. */
3
10
#pragma once
11
12
#include "
GPU_batch.h
"
13
#include "
GPU_primitive.h
"
14
#include "
GPU_shader.h
"
15
#include "
GPU_vertex_format.h
"
16
17
namespace
blender::gpu
{
18
19
class
Immediate
{
20
public
:
22
uchar
*
vertex_data
=
nullptr
;
24
uint
vertex_idx
= 0;
26
uint
vertex_len
= 0;
28
uint16_t
unassigned_attr_bits
= 0;
30
uint16_t
enabled_attr_bits
= 0;
31
33
GPUPrimType
prim_type
=
GPU_PRIM_NONE
;
34
GPUVertFormat
vertex_format
= {};
35
GPUShader
*
shader
=
nullptr
;
37
bool
strict_vertex_len
=
true
;
38
40
GPUBatch
*
batch
=
nullptr
;
41
45
eGPUBuiltinShader
prev_builtin_shader
=
GPU_SHADER_TEXT
;
47
eGPUBuiltinShader
builtin_shader_bound
=
GPU_SHADER_TEXT
;
49
float
uniform_color
[4];
50
51
public
:
52
Immediate
(){};
53
virtual
~Immediate
(){};
54
55
virtual
uchar
*
begin
() = 0;
56
virtual
void
end
() = 0;
57
};
58
59
}
// namespace blender::gpu
60
61
void
immActivate
();
62
void
immDeactivate
();
uchar
unsigned char uchar
Definition:
BLI_sys_types.h:70
uint
unsigned int uint
Definition:
BLI_sys_types.h:67
GPU_batch.h
GPUBatch
GPUBatch
Definition:
GPU_batch.h:78
GPU_primitive.h
GPUPrimType
GPUPrimType
Definition:
GPU_primitive.h:18
GPU_PRIM_NONE
@ GPU_PRIM_NONE
Definition:
GPU_primitive.h:33
GPU_shader.h
GPUShader
struct GPUShader GPUShader
Definition:
GPU_shader.h:20
eGPUBuiltinShader
eGPUBuiltinShader
Definition:
GPU_shader.h:189
GPU_SHADER_TEXT
@ GPU_SHADER_TEXT
Definition:
GPU_shader.h:191
GPU_vertex_format.h
blender::gpu::Immediate
Definition:
gpu_immediate_private.hh:19
blender::gpu::Immediate::Immediate
Immediate()
Definition:
gpu_immediate_private.hh:52
blender::gpu::Immediate::uniform_color
float uniform_color[4]
Definition:
gpu_immediate_private.hh:49
blender::gpu::Immediate::vertex_format
GPUVertFormat vertex_format
Definition:
gpu_immediate_private.hh:34
blender::gpu::Immediate::shader
GPUShader * shader
Definition:
gpu_immediate_private.hh:35
blender::gpu::Immediate::~Immediate
virtual ~Immediate()
Definition:
gpu_immediate_private.hh:53
blender::gpu::Immediate::builtin_shader_bound
eGPUBuiltinShader builtin_shader_bound
Definition:
gpu_immediate_private.hh:47
blender::gpu::Immediate::vertex_data
uchar * vertex_data
Definition:
gpu_immediate_private.hh:22
blender::gpu::Immediate::vertex_idx
uint vertex_idx
Definition:
gpu_immediate_private.hh:24
blender::gpu::Immediate::vertex_len
uint vertex_len
Definition:
gpu_immediate_private.hh:26
blender::gpu::Immediate::end
virtual void end()=0
blender::gpu::Immediate::strict_vertex_len
bool strict_vertex_len
Definition:
gpu_immediate_private.hh:37
blender::gpu::Immediate::batch
GPUBatch * batch
Definition:
gpu_immediate_private.hh:40
blender::gpu::Immediate::unassigned_attr_bits
uint16_t unassigned_attr_bits
Definition:
gpu_immediate_private.hh:28
blender::gpu::Immediate::prim_type
GPUPrimType prim_type
Definition:
gpu_immediate_private.hh:33
blender::gpu::Immediate::begin
virtual uchar * begin()=0
blender::gpu::Immediate::enabled_attr_bits
uint16_t enabled_attr_bits
Definition:
gpu_immediate_private.hh:30
blender::gpu::Immediate::prev_builtin_shader
eGPUBuiltinShader prev_builtin_shader
Definition:
gpu_immediate_private.hh:45
immDeactivate
void immDeactivate()
Definition:
gpu_immediate.cc:32
immActivate
void immActivate()
Definition:
gpu_immediate.cc:27
blender::gpu
Definition:
gpu_backend.hh:15
uint16_t
unsigned short uint16_t
Definition:
stdint.h:79
GPUVertFormat
Definition:
GPU_vertex_format.h:72
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1