18 mRenderContext(renderContext),
41 if (renderBatch.renderResources)
43 renderBatch.renderResources->Shutdown();
std::vector< RenderBatch > mRenderBatches
virtual void Destroy()
Requests destruction of this drawable.
RenderResourceContext mRenderContext
virtual void Shutdown()
Releases all render resources owned by this drawable.
void AddRenderBatch(std::string meshName, std::string materialName)
virtual void Initialize()
Initializes render resource pointers (material, mesh, etc.). Must be called after setting material an...
void UpdateOnTick(bool in)
DrawableComponent(RenderResourceContext renderContext, Scene &scene)
Constructs the DrawableComponent with a resource context.
virtual IRenderResources * ProvideRenderResources() const =0
Provides access to the general rendering resource manager.
Material * GetMaterial(std::string materialName)
Retrieves a pointer to a Material instance by name.
Represents a material instance with parameter values, texture bindings, and rendering configuration.
PackedMaterialData PackMaterialParameters()
Packs the current float/vector parameters into a binary buffer and layout metadata.
Manages mesh data in RAM and GPU, including upload and release operations.
std::shared_ptr< MeshDataGpu > GetMeshResources(std::string filename)
Get a shared pointer to the MeshDataGpu for a model.
Base class representing a renderable scene.
Aggregates pointers to global rendering resource managers.
TextureCache * textureCache
MaterialCache * materialCache