#include <InstancedRenderableComponent.h>
◆ InstancedRenderableComponent() [1/2]
| hellfire::InstancedRenderableComponent::InstancedRenderableComponent |
( |
| ) |
|
|
default |
◆ InstancedRenderableComponent() [2/2]
| hellfire::InstancedRenderableComponent::InstancedRenderableComponent |
( |
std::shared_ptr< Mesh > |
mesh, |
|
|
size_t |
max_instances = 1000 |
|
) |
| |
|
explicit |
◆ ~InstancedRenderableComponent()
| hellfire::InstancedRenderableComponent::~InstancedRenderableComponent |
( |
| ) |
|
|
override |
◆ add_instance()
| void hellfire::InstancedRenderableComponent::add_instance |
( |
const InstanceData & |
instance | ) |
|
◆ add_instances()
| void hellfire::InstancedRenderableComponent::add_instances |
( |
const std::vector< InstanceData > & |
instances | ) |
|
◆ bind_instance_buffers()
| void hellfire::InstancedRenderableComponent::bind_instance_buffers |
( |
| ) |
|
◆ cleanup_buffers()
| void hellfire::InstancedRenderableComponent::cleanup_buffers |
( |
| ) |
|
|
private |
◆ clear_instances()
| void hellfire::InstancedRenderableComponent::clear_instances |
( |
| ) |
|
◆ disable_instance_attributes()
| void hellfire::InstancedRenderableComponent::disable_instance_attributes |
( |
| ) |
|
|
private |
◆ enable_instance_attributes()
| void hellfire::InstancedRenderableComponent::enable_instance_attributes |
( |
| ) |
|
|
private |
◆ get_instance_count()
| size_t hellfire::InstancedRenderableComponent::get_instance_count |
( |
| ) |
const |
|
inline |
◆ get_instances()
| const std::vector< InstanceData > & hellfire::InstancedRenderableComponent::get_instances |
( |
| ) |
const |
|
inline |
◆ get_material()
| std::shared_ptr< Material > hellfire::InstancedRenderableComponent::get_material |
( |
| ) |
const |
|
inline |
◆ get_max_instances()
| size_t hellfire::InstancedRenderableComponent::get_max_instances |
( |
| ) |
const |
|
inline |
◆ get_mesh()
| std::shared_ptr< Mesh > hellfire::InstancedRenderableComponent::get_mesh |
( |
| ) |
const |
|
inline |
◆ has_mesh()
| bool hellfire::InstancedRenderableComponent::has_mesh |
( |
| ) |
const |
|
inline |
◆ prepare_for_draw()
| void hellfire::InstancedRenderableComponent::prepare_for_draw |
( |
| ) |
|
◆ reserve_instances()
| void hellfire::InstancedRenderableComponent::reserve_instances |
( |
size_t |
count | ) |
|
◆ set_instances()
| void hellfire::InstancedRenderableComponent::set_instances |
( |
const std::vector< InstanceData > & |
instances | ) |
|
◆ set_material()
| void hellfire::InstancedRenderableComponent::set_material |
( |
std::shared_ptr< Material > |
material | ) |
|
|
inline |
◆ set_mesh()
| void hellfire::InstancedRenderableComponent::set_mesh |
( |
std::shared_ptr< Mesh > |
mesh | ) |
|
|
inline |
◆ setup_instance_buffers()
| void hellfire::InstancedRenderableComponent::setup_instance_buffers |
( |
| ) |
|
|
private |
◆ setup_instanced_vertex_attributes()
| void hellfire::InstancedRenderableComponent::setup_instanced_vertex_attributes |
( |
| ) |
|
|
private |
◆ unbind_instance_buffers()
| void hellfire::InstancedRenderableComponent::unbind_instance_buffers |
( |
| ) |
|
◆ update_gpu_buffer()
| void hellfire::InstancedRenderableComponent::update_gpu_buffer |
( |
| ) |
const |
|
private |
◆ update_instance()
| void hellfire::InstancedRenderableComponent::update_instance |
( |
size_t |
index, |
|
|
const InstanceData & |
instance |
|
) |
| |
◆ color_buffer_
| GLuint hellfire::InstancedRenderableComponent::color_buffer_ |
|
private |
◆ instance_vbo_
| GLuint hellfire::InstancedRenderableComponent::instance_vbo_ |
|
private |
◆ instances_
| std::vector<InstanceData> hellfire::InstancedRenderableComponent::instances_ |
|
private |
◆ material_
| std::shared_ptr<Material> hellfire::InstancedRenderableComponent::material_ |
|
private |
◆ max_instances_
| size_t hellfire::InstancedRenderableComponent::max_instances_ |
|
private |
◆ mesh_
| std::shared_ptr<Mesh> hellfire::InstancedRenderableComponent::mesh_ |
|
private |
◆ needs_gpu_update_
| bool hellfire::InstancedRenderableComponent::needs_gpu_update_ |
|
private |
◆ scale_buffer_
| GLuint hellfire::InstancedRenderableComponent::scale_buffer_ |
|
private |
◆ transform_buffer_
| GLuint hellfire::InstancedRenderableComponent::transform_buffer_ |
|
private |
◆ vertex_attributes_setup_
| bool hellfire::InstancedRenderableComponent::vertex_attributes_setup_ = false |
|
private |
The documentation for this class was generated from the following files: