Abstract graphics context.
More...
#include <graphics_api.h>
|
| virtual | ~IGraphicsContext ()=default |
| |
| virtual void | begin_frame ()=0 |
| |
| virtual void | end_frame ()=0 |
| |
| virtual void | clear (float r, float g, float b)=0 |
| |
| virtual void | draw_mesh (uint32_t vertex_array, uint32_t index_count)=0 |
| |
| virtual void | draw_instanced (uint32_t vertex_array, uint32_t index_count, uint32_t instance_count)=0 |
| |
| virtual uint32_t | create_shader_program (const char *vertex_src, const char *fragment_src)=0 |
| |
| virtual void | use_shader_program (uint32_t program_id)=0 |
| |
| virtual void | set_uniform_mat4 (uint32_t program_id, const char *name, const float *data)=0 |
| |
| virtual void | set_uniform_vec3 (uint32_t program_id, const char *name, float x, float y, float z)=0 |
| |
| virtual void | set_uniform_float (uint32_t program_id, const char *name, float value)=0 |
| |
| virtual void | set_uniform_int (uint32_t program_id, const char *name, int value)=0 |
| |
| virtual uint32_t | create_framebuffer (uint32_t width, uint32_t height)=0 |
| |
| virtual void | bind_framebuffer (uint32_t framebuffer_id)=0 |
| |
| virtual void | unbind_framebuffer ()=0 |
| |
| virtual uint32_t | get_framebuffer_texture (uint32_t framebuffer_id)=0 |
| |
| virtual void | resize_framebuffer (uint32_t framebuffer_id, uint32_t width, uint32_t height)=0 |
| |
Abstract graphics context.
Definition at line 44 of file graphics_api.h.
◆ ~IGraphicsContext()
| virtual hellfire::IGraphicsContext::~IGraphicsContext |
( |
| ) |
|
|
virtualdefault |
◆ begin_frame()
| virtual void hellfire::IGraphicsContext::begin_frame |
( |
| ) |
|
|
pure virtual |
◆ bind_framebuffer()
| virtual void hellfire::IGraphicsContext::bind_framebuffer |
( |
uint32_t |
framebuffer_id | ) |
|
|
pure virtual |
◆ clear()
| virtual void hellfire::IGraphicsContext::clear |
( |
float |
r, |
|
|
float |
g, |
|
|
float |
b |
|
) |
| |
|
pure virtual |
◆ create_framebuffer()
| virtual uint32_t hellfire::IGraphicsContext::create_framebuffer |
( |
uint32_t |
width, |
|
|
uint32_t |
height |
|
) |
| |
|
pure virtual |
◆ create_shader_program()
| virtual uint32_t hellfire::IGraphicsContext::create_shader_program |
( |
const char * |
vertex_src, |
|
|
const char * |
fragment_src |
|
) |
| |
|
pure virtual |
◆ draw_instanced()
| virtual void hellfire::IGraphicsContext::draw_instanced |
( |
uint32_t |
vertex_array, |
|
|
uint32_t |
index_count, |
|
|
uint32_t |
instance_count |
|
) |
| |
|
pure virtual |
◆ draw_mesh()
| virtual void hellfire::IGraphicsContext::draw_mesh |
( |
uint32_t |
vertex_array, |
|
|
uint32_t |
index_count |
|
) |
| |
|
pure virtual |
◆ end_frame()
| virtual void hellfire::IGraphicsContext::end_frame |
( |
| ) |
|
|
pure virtual |
◆ get_framebuffer_texture()
| virtual uint32_t hellfire::IGraphicsContext::get_framebuffer_texture |
( |
uint32_t |
framebuffer_id | ) |
|
|
pure virtual |
◆ resize_framebuffer()
| virtual void hellfire::IGraphicsContext::resize_framebuffer |
( |
uint32_t |
framebuffer_id, |
|
|
uint32_t |
width, |
|
|
uint32_t |
height |
|
) |
| |
|
pure virtual |
◆ set_uniform_float()
| virtual void hellfire::IGraphicsContext::set_uniform_float |
( |
uint32_t |
program_id, |
|
|
const char * |
name, |
|
|
float |
value |
|
) |
| |
|
pure virtual |
◆ set_uniform_int()
| virtual void hellfire::IGraphicsContext::set_uniform_int |
( |
uint32_t |
program_id, |
|
|
const char * |
name, |
|
|
int |
value |
|
) |
| |
|
pure virtual |
◆ set_uniform_mat4()
| virtual void hellfire::IGraphicsContext::set_uniform_mat4 |
( |
uint32_t |
program_id, |
|
|
const char * |
name, |
|
|
const float * |
data |
|
) |
| |
|
pure virtual |
◆ set_uniform_vec3()
| virtual void hellfire::IGraphicsContext::set_uniform_vec3 |
( |
uint32_t |
program_id, |
|
|
const char * |
name, |
|
|
float |
x, |
|
|
float |
y, |
|
|
float |
z |
|
) |
| |
|
pure virtual |
◆ unbind_framebuffer()
| virtual void hellfire::IGraphicsContext::unbind_framebuffer |
( |
| ) |
|
|
pure virtual |
◆ use_shader_program()
| virtual void hellfire::IGraphicsContext::use_shader_program |
( |
uint32_t |
program_id | ) |
|
|
pure virtual |
The documentation for this class was generated from the following file: