43 void Update(
float deltaTime)
override;
66 void SetScale(
const glm::vec3& scale);
Represents a 3D perspective camera with world transform and projection settings.
SceneComponent mSceneComponent
void Initialize() override
Initializes render resource pointers (material, mesh, etc.). Must be called after setting material an...
const glm::vec3 & GetRotation() const
Gets the mesh rotation (pitch, yaw, roll in degrees).
SceneComponent & GetTransform()
Access to the underlying SceneComponent (transform).
const glm::vec3 & GetScale() const
Gets the mesh scale.
Drawable3D(const Drawable3D &rhs)=delete
Drawable3D(RenderResourceContext renderContext)
Constructs the Drawable3D with a render context.
void SetRotation(const glm::vec3 &rotation)
Sets the mesh rotation in degrees.
Drawable3D & operator=(const Drawable3D &rhs)=delete
void SetScale(const glm::vec3 &scale)
Sets the mesh scale along each axis.
virtual void Draw(const Camera &camera)=0
Submits this mesh to the renderer for drawing.
void SetPosition(const glm::vec3 &position)
Sets the mesh position in world space.
const glm::vec3 & GetPosition() const
Gets the mesh position.
void Update(float deltaTime) override
Updates logic (animation, movement, etc.) for this drawable.
DrawableComponent(RenderResourceContext renderContext)
Constructs the DrawableComponent with a resource context.
Represents a 3D transformable scene component with position, rotation, and scale.
Aggregates pointers to global rendering resource managers.