Loading...
Searching...
No Matches
hellfire::OpenGLContext Class Referencefinal

#include <OpenGLContext.h>

Inheritance diagram for hellfire::OpenGLContext:
Collaboration diagram for hellfire::OpenGLContext:

Public Member Functions

void begin_frame () override
 
void end_frame () override
 
void clear (float r, float g, float b) override
 
void draw_mesh (uint32_t vertex_array, uint32_t index_count) override
 
void draw_instanced (uint32_t vertex_array, uint32_t index_count, uint32_t instance_count) override
 
uint32_t create_shader_program (const char *vertex_src, const char *fragment_src) override
 
void use_shader_program (uint32_t program_id) override
 
void set_uniform_mat4 (uint32_t program_id, const char *name, const float *data) override
 
void set_uniform_vec3 (uint32_t program_id, const char *name, float x, float y, float z) override
 
void set_uniform_float (uint32_t program_id, const char *name, float value) override
 
void set_uniform_int (uint32_t program_id, const char *name, int value) override
 
uint32_t create_framebuffer (uint32_t width, uint32_t height) override
 
void bind_framebuffer (uint32_t framebuffer_id) override
 
void unbind_framebuffer () override
 
uint32_t get_framebuffer_texture (uint32_t framebuffer_id) override
 
void resize_framebuffer (uint32_t framebuffer_id, uint32_t width, uint32_t height) override
 
- Public Member Functions inherited from hellfire::IGraphicsContext
virtual ~IGraphicsContext ()=default
 

Private Attributes

RenderState current_state_
 

Detailed Description

Definition at line 9 of file OpenGLContext.h.

Member Function Documentation

◆ begin_frame()

void hellfire::OpenGLContext::begin_frame ( )
overridevirtual

◆ bind_framebuffer()

void hellfire::OpenGLContext::bind_framebuffer ( uint32_t  framebuffer_id)
overridevirtual

◆ clear()

void hellfire::OpenGLContext::clear ( float  r,
float  g,
float  b 
)
overridevirtual

◆ create_framebuffer()

uint32_t hellfire::OpenGLContext::create_framebuffer ( uint32_t  width,
uint32_t  height 
)
overridevirtual

◆ create_shader_program()

uint32_t hellfire::OpenGLContext::create_shader_program ( const char *  vertex_src,
const char *  fragment_src 
)
overridevirtual

◆ draw_instanced()

void hellfire::OpenGLContext::draw_instanced ( uint32_t  vertex_array,
uint32_t  index_count,
uint32_t  instance_count 
)
overridevirtual

◆ draw_mesh()

void hellfire::OpenGLContext::draw_mesh ( uint32_t  vertex_array,
uint32_t  index_count 
)
overridevirtual

◆ end_frame()

void hellfire::OpenGLContext::end_frame ( )
overridevirtual

◆ get_framebuffer_texture()

uint32_t hellfire::OpenGLContext::get_framebuffer_texture ( uint32_t  framebuffer_id)
overridevirtual

◆ resize_framebuffer()

void hellfire::OpenGLContext::resize_framebuffer ( uint32_t  framebuffer_id,
uint32_t  width,
uint32_t  height 
)
overridevirtual

◆ set_uniform_float()

void hellfire::OpenGLContext::set_uniform_float ( uint32_t  program_id,
const char *  name,
float  value 
)
overridevirtual

◆ set_uniform_int()

void hellfire::OpenGLContext::set_uniform_int ( uint32_t  program_id,
const char *  name,
int  value 
)
overridevirtual

◆ set_uniform_mat4()

void hellfire::OpenGLContext::set_uniform_mat4 ( uint32_t  program_id,
const char *  name,
const float *  data 
)
overridevirtual

◆ set_uniform_vec3()

void hellfire::OpenGLContext::set_uniform_vec3 ( uint32_t  program_id,
const char *  name,
float  x,
float  y,
float  z 
)
overridevirtual

◆ unbind_framebuffer()

void hellfire::OpenGLContext::unbind_framebuffer ( )
overridevirtual

◆ use_shader_program()

void hellfire::OpenGLContext::use_shader_program ( uint32_t  program_id)
overridevirtual

Member Data Documentation

◆ current_state_

RenderState hellfire::OpenGLContext::current_state_
private

Definition at line 44 of file OpenGLContext.h.


The documentation for this class was generated from the following file: