38 GLBackend::platform_init();
40 GLBackend::capabilities_init();
45 GLBackend::platform_exit();
66 return new GLContext(ghost_window, shared_orphan_list_);
121 return shared_orphan_list_;
134 dynamic_cast<GLStorageBuf *
>(indirect_buf)->bind_as(GL_DISPATCH_INDIRECT_BUFFER);
136 glMemoryBarrier(GL_DRAW_INDIRECT_BUFFER);
138 glDispatchComputeIndirect((GLintptr)0);
140 glBindBuffer(GL_DRAW_INDIRECT_BUFFER, 0);
149 static void platform_init();
150 static void platform_exit();
152 static void capabilities_init();
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
DrawList * drawlist_alloc(int list_length) override
void render_end(void) override
Shader * shader_alloc(const char *name) override
Batch * batch_alloc() override
UniformBuf * uniformbuf_alloc(int size, const char *name) override
void compute_dispatch_indirect(StorageBuf *indirect_buf) override
GLSharedOrphanLists & shared_orphan_list_get()
QueryPool * querypool_alloc() override
void render_step(void) override
IndexBuf * indexbuf_alloc() override
VertBuf * vertbuf_alloc() override
Texture * texture_alloc(const char *name) override
void samplers_update() override
Context * context_alloc(void *ghost_window) override
void delete_resources() override
StorageBuf * storagebuf_alloc(int size, GPUUsageType usage, const char *name) override
void compute_dispatch(int groups_x_len, int groups_y_len, int groups_z_len) override
FrameBuffer * framebuffer_alloc(const char *name) override
void render_begin(void) override
static void dispatch(int group_x_len, int group_y_len, int group_z_len)
static GLStateManager * state_manager_active_get()
void apply_state() override
static void samplers_free()
static void samplers_update()
static void samplers_init()
static GPUBackend * get()