|
Monad Engine da02fba2
> Undercity Codex_
|
#include <MeshComponent.h>
Inheritance diagram for eng::MeshComponent:
Collaboration diagram for eng::MeshComponent:Public Member Functions | |
| MeshComponent ()=default | |
| MeshComponent (const std::shared_ptr< Material > &material, const std::shared_ptr< Mesh > &mesh) | |
| void | LoadProperties (const nlohmann::json &json) override |
| void | Update (float deltaTime) override |
| void | SetMaterial (const std::shared_ptr< Material > &material) |
| void | SetMesh (const std::shared_ptr< Mesh > &mesh) |
| virtual void | Init () |
| virtual size_t | GetTypeId () const =0 |
| GameObject * | GetOwner () |
Static Public Member Functions | |
| template<typename T > | |
| static size_t | StaticTypeId () |
Protected Attributes | |
| GameObject * | m_owner = nullptr |
Definition at line 11 of file MeshComponent.h.
|
default |
| eng::MeshComponent::MeshComponent | ( | const std::shared_ptr< Material > & | material, |
| const std::shared_ptr< Mesh > & | mesh | ||
| ) |
Definition at line 10 of file MeshComponent.cpp.
|
inherited |
Definition at line 15 of file Component.cpp.
References eng::Component::m_owner.
Referenced by Update(), and eng::SpriteComponent::Update().
|
pure virtualinherited |
|
virtualinherited |
Reimplemented in eng::PhysicsComponent, and eng::PlayerControllerComponent.
Definition at line 11 of file Component.cpp.
Referenced by eng::GameObject::AddComponent().
|
overridevirtual |
Reimplemented from eng::Component.
Definition at line 15 of file MeshComponent.cpp.
References eng::Mesh::CreateBox(), eng::Mesh::CreateSphere(), eng::Texture::Load(), eng::Material::Load(), mesh, SetMaterial(), and SetMesh().
| void eng::MeshComponent::SetMaterial | ( | const std::shared_ptr< Material > & | material | ) |
Definition at line 116 of file MeshComponent.cpp.
References material.
Referenced by LoadProperties().
| void eng::MeshComponent::SetMesh | ( | const std::shared_ptr< Mesh > & | mesh | ) |
|
inlinestaticinherited |
Definition at line 26 of file Component.h.
|
overridevirtual |
Implements eng::Component.
Definition at line 100 of file MeshComponent.cpp.
References eng::Engine::GetInstance(), eng::Component::GetOwner(), eng::Engine::GetRenderQueue(), eng::GameObject::GetWorldTransform(), eng::RenderCommand::material, eng::RenderCommand::mesh, eng::RenderCommand::modelMatrix, and eng::RenderQueue::Submit().
|
protectedinherited |
Definition at line 33 of file Component.h.
Referenced by eng::GameObject::AddComponent(), eng::Component::GetOwner(), eng::CameraComponent::GetViewMatrix(), eng::PhysicsComponent::Init(), eng::PlayerControllerComponent::Init(), eng::AudioComponent::Update(), eng::AudioListenerComponent::Update(), eng::PhysicsComponent::Update(), and eng::PlayerControllerComponent::Update().