26 class GLShaderInterface;
28 #define GPU_VAO_STATIC_LEN 3
44 GLuint vao_base_instance_ = 0;
45 int base_instance_ = 0;
47 bool is_dynamic_vao_count =
false;
72 GLuint
lookup(
const GLShaderInterface *interface);
76 void insert(
const GLShaderInterface *interface, GLuint vao_id);
77 void remove(
const GLShaderInterface *interface);
95 void draw(
int v_first,
int v_count,
int i_first,
int i_count)
override;
96 void bind(
int i_first);
Read Guarded memory(de)allocation.
GLVertBuf * verts_(const int index) const
GLIndexBuf * elem_() const
MEM_CXX_CLASS_ALLOC_FUNCS("GLBatch")
void draw(int v_first, int v_count, int i_first, int i_count) override
GLVertBuf * inst_(const int index) const
GLuint base_instance_vao_get(GPUBatch *batch, int i_first)
struct blender::gpu::GLVaoCache::@687::@689 static_vaos
GLuint lookup(const GLShaderInterface *interface)
const GLShaderInterface ** interfaces
const GLShaderInterface * interfaces[GPU_VAO_STATIC_LEN]
void insert(const GLShaderInterface *interface, GLuint vao_id)
GLuint vao_get(GPUBatch *batch)
GLuint vao_ids[GPU_VAO_STATIC_LEN]
struct blender::gpu::GLVaoCache::@687::@690 dynamic_vaos
void remove(const GLShaderInterface *interface)
#define GPU_VAO_STATIC_LEN
static Context * unwrap(GPUContext *ctx)