60 virtual void Update(
float deltaTime) = 0;
virtual ~DrawableComponent()=default
Virtual destructor.
RenderResourceContext mRenderContext
void SetMaterialName(const std::string &materialName)
Sets the material to use (by name).
DrawableComponent & operator=(const DrawableComponent &)=delete
DrawableComponent(const DrawableComponent &)=delete
std::unique_ptr< IRenderResources > mRenderResources
virtual void Initialize()
Initializes render resource pointers (material, mesh, etc.). Must be called after setting material an...
virtual void Update(float deltaTime)=0
Updates logic (animation, movement, etc.) for this drawable.
std::string mMaterialName
void SetMeshName(const std::string &meshName)
Sets the mesh to use (by name).
DrawableComponent(RenderResourceContext renderContext)
Constructs the DrawableComponent with a resource context.
PackedMaterialData mMaterialParameters
Defines an abstract interface for rendering backends.
Manages creation, storage, and lifecycle of Material objects within the rendering engine.
Represents a material instance with parameter values, texture bindings, and rendering configuration.
Manages mesh data in RAM and GPU, including upload and release operations.
Manages loading, caching, and GPU residency of all model/mesh resources.
Manages texture loading, GPU uploading, and caching for reuse.
Contains the raw buffer data and layout metadata of packed material parameters.
Aggregates pointers to global rendering resource managers.