3#include <RendererCore/Meshes/MeshComponentBase.h>
4#include <RendererCore/Pipeline/Renderer.h>
42 plDynamicMeshBufferResourceHandle CreateMeshResource(plGALPrimitiveTopology::Enum topology, plUInt32 uiMaxVertices, plUInt32 uiMaxPrimitives, plGALIndexType::Enum indexType);
68 void SetMaterialFile(
const char* szMaterial);
69 const char* GetMaterialFile()
const;
72 void SetColor(
const plColor& color);
75 const plColor& GetColor()
const;
85 plUInt32 m_uiFirstPrimitive = 0;
86 plUInt32 m_uiNumPrimitives = 0xFFFFFFFF;
100 virtual void FillBatchIdAndSortingKey();
106 plUInt32 m_uiFlipWinding : 1;
107 plUInt32 m_uiUniformScale : 1;
109 plUInt32 m_uiFirstPrimitive = 0;
110 plUInt32 m_uiNumPrimitives = 0xFFFFFFFF;
112 plUInt32 m_uiUniqueID = 0;
plColor represents an RGBA color in linear color space. Values are stored as float,...
Definition Color.h:44
static const plColor White
#FFFFFF
Definition Color.h:194
virtual void SerializeComponent(plWorldWriter &inout_stream) const
Override this to save the current state of the component to the given stream.
Definition Component.cpp:54
virtual void DeserializeComponent(plWorldReader &inout_stream)
Override this to load the current state of the component from the given stream.
Definition Component.cpp:58
Definition ComponentManager.h:88
This component is used to render custom geometry.
Definition CustomMeshComponent.h:16
plDynamicMeshBufferResourceHandle GetMeshResource() const
Returns the currently set mesh resource.
Definition CustomMeshComponent.h:45
Temporary data used to feed the plCustomMeshRenderer.
Definition CustomMeshComponent.h:96
A renderer that handles all plCustomMeshRenderData.
Definition CustomMeshComponent.h:117
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
Base class for objects that should be rendered.
Definition RenderComponent.h:9
virtual void OnActivated() override
This method is called when the component gets activated.
Definition RenderComponent.cpp:33
virtual plResult GetLocalBounds(plBoundingBoxSphere &ref_bounds, bool &ref_bAlwaysVisible, plMsgUpdateLocalBounds &ref_msg)=0
Called by plRenderComponent::OnUpdateLocalBounds(). If PL_SUCCESS is returned, bounds and bAlwaysVisi...
Definition RenderDataBatch.h:6
Base class for all render data. Render data must contain all information that is needed to render the...
Definition RenderData.h:14
Definition RenderPipelinePass.h:26
This is the base class for types that handle rendering of different object types.
Definition Renderer.h:9
Reads a world description from a stream. Allows to instantiate that world multiple times in different...
Definition WorldReader.h:47
Stores an entire plWorld in a stream.
Definition WorldWriter.h:13
constexpr TYPE MaxValue()
Returns the largest possible positive value (that is not infinity).
A message to modify the main color of some thing.
Definition SetColorMessage.h:32
This message is used to replace the material on a mesh.
Definition MeshComponentBase.h:49
Definition UpdateLocalBoundsMessage.h:9
Definition Declarations.h:51
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54