#include <renderer.h>
|
| virtual | ~Renderer ()=default |
| |
| virtual bool | initialize (int width, int height, SDL_Window *window)=0 |
| |
| virtual void | resize (int width, int height)=0 |
| |
| virtual void | cleanup ()=0 |
| |
| virtual std::shared_ptr< GpuBuffer > | allocate_gpu_buffer (GpuBufferType type)=0 |
| |
| virtual std::shared_ptr< GpuVertexLayout > | create_vertex_layout (const GpuBuffer *vertex_buffer, const GpuBuffer *index_buffer, const std::vector< VertexAttribute > &attributes, uint32_t stride)=0 |
| |
| virtual Uint32 | load_texture_from_file (const std::string &path)=0 |
| |
| virtual Uint32 | load_texture_from_memory (const unsigned char *buffer, size_t size, const std::string &name="")=0 |
| |
| virtual Uint32 | load_texture_from_raw_data (const unsigned char *data, int width, int height, int channels=4, const std::string &name="")=0 |
| |
| virtual void | begin_frame ()=0 |
| |
| virtual void | begin_shadow_pass ()=0 |
| |
| virtual void | render_shadow_pass (const glm::mat4 &light_space_matrix)=0 |
| |
| virtual void | end_shadow_pass ()=0 |
| |
| virtual void | begin_render_target ()=0 |
| |
| virtual void | render_main_target (const Camera3D &camera, const Transform3D &camera_transform, const glm::mat4 &light_space_matrix, const std::vector< DirectionalLight > &directional_lights, const std::vector< std::pair< Transform3D, SpotLight >> &spot_lights)=0 |
| |
| virtual void | end_render_target ()=0 |
| |
| virtual void | begin_environment_pass ()=0 |
| |
| virtual void | render_environment_pass (const Camera3D &camera)=0 |
| |
| virtual void | end_environment_pass ()=0 |
| |
| virtual void | add_to_render_batch (const Transform3D &transform, const MeshRef &mesh_ref, const MaterialRef &mat_ref)=0 |
| |
| virtual void | add_to_shadow_batch (const Transform3D &transform, const MeshRef &mesh_ref)=0 |
| |
| virtual void | swap_chain ()=0 |
| |
| void | register_material (const char *name, const Material &material) |
| |
◆ ~Renderer()
| virtual Renderer::~Renderer |
( |
| ) |
|
|
virtualdefault |
◆ add_to_render_batch()
◆ add_to_shadow_batch()
| virtual void Renderer::add_to_shadow_batch |
( |
const Transform3D & |
transform, |
|
|
const MeshRef & |
mesh_ref |
|
) |
| |
|
pure virtual |
◆ allocate_gpu_buffer()
◆ begin_environment_pass()
| virtual void Renderer::begin_environment_pass |
( |
| ) |
|
|
pure virtual |
◆ begin_frame()
| virtual void Renderer::begin_frame |
( |
| ) |
|
|
pure virtual |
◆ begin_render_target()
| virtual void Renderer::begin_render_target |
( |
| ) |
|
|
pure virtual |
◆ begin_shadow_pass()
| virtual void Renderer::begin_shadow_pass |
( |
| ) |
|
|
pure virtual |
◆ cleanup()
| virtual void Renderer::cleanup |
( |
| ) |
|
|
pure virtual |
◆ create_vertex_layout()
◆ end_environment_pass()
| virtual void Renderer::end_environment_pass |
( |
| ) |
|
|
pure virtual |
◆ end_render_target()
| virtual void Renderer::end_render_target |
( |
| ) |
|
|
pure virtual |
◆ end_shadow_pass()
| virtual void Renderer::end_shadow_pass |
( |
| ) |
|
|
pure virtual |
◆ initialize()
| virtual bool Renderer::initialize |
( |
int |
width, |
|
|
int |
height, |
|
|
SDL_Window * |
window |
|
) |
| |
|
pure virtual |
◆ load_texture_from_file()
| virtual Uint32 Renderer::load_texture_from_file |
( |
const std::string & |
path | ) |
|
|
pure virtual |
◆ load_texture_from_memory()
| virtual Uint32 Renderer::load_texture_from_memory |
( |
const unsigned char * |
buffer, |
|
|
size_t |
size, |
|
|
const std::string & |
name = "" |
|
) |
| |
|
pure virtual |
◆ load_texture_from_raw_data()
| virtual Uint32 Renderer::load_texture_from_raw_data |
( |
const unsigned char * |
data, |
|
|
int |
width, |
|
|
int |
height, |
|
|
int |
channels = 4, |
|
|
const std::string & |
name = "" |
|
) |
| |
|
pure virtual |
◆ register_material()
| void Renderer::register_material |
( |
const char * |
name, |
|
|
const Material & |
material |
|
) |
| |
|
inline |
◆ render_environment_pass()
| virtual void Renderer::render_environment_pass |
( |
const Camera3D & |
camera | ) |
|
|
pure virtual |
◆ render_main_target()
| virtual void Renderer::render_main_target |
( |
const Camera3D & |
camera, |
|
|
const Transform3D & |
camera_transform, |
|
|
const glm::mat4 & |
light_space_matrix, |
|
|
const std::vector< DirectionalLight > & |
directional_lights, |
|
|
const std::vector< std::pair< Transform3D, SpotLight >> & |
spot_lights |
|
) |
| |
|
pure virtual |
◆ render_shadow_pass()
| virtual void Renderer::render_shadow_pass |
( |
const glm::mat4 & |
light_space_matrix | ) |
|
|
pure virtual |
◆ resize()
| virtual void Renderer::resize |
( |
int |
width, |
|
|
int |
height |
|
) |
| |
|
pure virtual |
◆ swap_chain()
| virtual void Renderer::swap_chain |
( |
| ) |
|
|
pure virtual |
◆ _default_shader
| std::unique_ptr<Shader> Renderer::_default_shader = nullptr |
|
protected |
◆ _environment_shader
| std::unique_ptr<Shader> Renderer::_environment_shader = nullptr |
|
protected |
◆ _instanced_batches
◆ _materials
| std::unordered_map<std::string, std::vector<Material> > Renderer::_materials |
◆ _meshes
| std::unordered_map<std::string, std::vector<MeshInstance3D> > Renderer::_meshes |
◆ _shadow_shader
| std::unique_ptr<Shader> Renderer::_shadow_shader = nullptr |
|
protected |
◆ _textures
| std::unordered_map<std::string, Uint32> Renderer::_textures |
◆ _window
| SDL_Window* Renderer::_window = nullptr |
|
protected |
◆ _world_environment
◆ height
◆ instance_buffer
| std::shared_ptr<GpuBuffer> Renderer::instance_buffer |
|
protected |
◆ max_instances
| size_t Renderer::max_instances = 1000 |
|
protected |
◆ shadow_batches
◆ shadow_map_fbo
| std::shared_ptr<Framebuffer> Renderer::shadow_map_fbo = nullptr |
|
protected |
◆ width
The documentation for this class was generated from the following file: