Antkeeper
0.0.1
|
#include <static-mesh.hpp>
Public Member Functions | |
static_mesh (std::shared_ptr< render::model > model) | |
Constructs a static mesh from a model. More... | |
static_mesh ()=default | |
Constructs a model instance. More... | |
void | set_model (std::shared_ptr< render::model > model) |
Sets the model with which this model instance is associated. More... | |
void | set_material (std::size_t index, std::shared_ptr< render::material > material) |
Overwrites the material of a model group for this model instance. More... | |
void | reset_materials () |
Resets all overwritten materials. More... | |
const aabb_type & | get_bounds () const noexcept override |
Returns the bounds of the object. More... | |
const std::shared_ptr< render::model > & | get_model () const noexcept |
Returns the model of the model instance. More... | |
void | render (render::context &ctx) const override |
Adds render operations to a render context. More... | |
![]() | |
const std::size_t | get_object_type_id () const noexcept final |
Returns the type ID for this scene object type. More... | |
![]() | |
void | look_at (const vector_type &position, const vector_type &target, const vector_type &up) |
constexpr void | set_layer_mask (std::uint32_t mask) noexcept |
Sets the layer mask of the object. More... | |
void | set_transform (const transform_type &transform) |
Sets the transform of the object. More... | |
void | set_translation (const vector_type &translation) |
Sets the translation of the object. More... | |
void | set_rotation (const quaternion_type &rotation) |
Sets the rotation of the object. More... | |
constexpr std::uint32_t | get_layer_mask () const noexcept |
Returns the layer mask of the object. More... | |
constexpr const transform_type & | get_transform () const noexcept |
Returns the transform of the object. More... | |
constexpr const vector_type & | get_translation () const noexcept |
Returns the translation of the object. More... | |
constexpr const quaternion_type & | get_rotation () const noexcept |
Returns the rotation of the object. More... | |
constexpr const vector_type & | get_scale () const noexcept |
Returns the scale of the object. More... | |
void | set_scale (const vector_type &scale) |
Sets the scale of the object. More... | |
void | set_scale (float scale) |
Sets the scale of the object. More... | |
Additional Inherited Members | |
![]() | |
using | vector_type = math::fvec3 |
using | quaternion_type = math::fquat |
using | transform_type = math::transform< float > |
using | aabb_type = geom::box< float > |
![]() | |
static const std::atomic< std::size_t > | object_type_id |
Unique type ID for this scene object type. More... | |
![]() | |
static std::size_t | next_object_type_id () |
![]() | |
std::uint32_t | m_layer_mask {1} |
transform_type | m_transform {transform_type::identity()} |
Definition at line 33 of file static-mesh.hpp.
|
explicit |
Constructs a static mesh from a model.
model | Model from which the static mesh will be constructed. |
Definition at line 27 of file static-mesh.cpp.
|
default |
Constructs a model instance.
|
inlineoverridevirtualnoexcept |
Returns the bounds of the object.
Implements scene::object_base.
Definition at line 68 of file static-mesh.hpp.
|
inlinenoexcept |
Returns the model of the model instance.
Definition at line 76 of file static-mesh.hpp.
|
overridevirtual |
Adds render operations to a render context.
ctx | Render context. |
Reimplemented from scene::object_base.
Definition at line 115 of file static-mesh.cpp.
void scene::static_mesh::reset_materials | ( | ) |
Resets all overwritten materials.
Definition at line 76 of file static-mesh.cpp.
void scene::static_mesh::set_material | ( | std::size_t | index, |
std::shared_ptr< render::material > | material | ||
) |
Overwrites the material of a model group for this model instance.
index | Index of a model group. |
material | Pointer to the material which should overwrite the model group's material. A value of nullptr indicates the material will not be overwritten. |
Definition at line 64 of file static-mesh.cpp.
void scene::static_mesh::set_model | ( | std::shared_ptr< render::model > | model | ) |
Sets the model with which this model instance is associated.
Definition at line 32 of file static-mesh.cpp.