![]() |
ezEngine Release 25.08
|
Renders a single instance of a static mesh. More...
#include <MeshComponent.h>

Public Member Functions | |
| void | OnMsgExtractGeometry (ezMsgExtractGeometry &ref_msg) const |
| Extracts the render geometry for export etc. | |
Public Member Functions inherited from ezMeshComponentBase | |
| virtual void | SerializeComponent (ezWorldWriter &inout_stream) const override |
| Override this to save the current state of the component to the given stream. | |
| virtual void | DeserializeComponent (ezWorldReader &inout_stream) override |
| Override this to load the current state of the component from the given stream. | |
| virtual ezResult | GetLocalBounds (ezBoundingBoxSphere &ref_bounds, bool &ref_bAlwaysVisible, ezMsgUpdateLocalBounds &ref_msg) override |
| Called by ezRenderComponent::OnUpdateLocalBounds(). | |
| void | SetMesh (const ezMeshResourceHandle &hMesh) |
| Changes which mesh to render. | |
| EZ_ALWAYS_INLINE const ezMeshResourceHandle & | GetMesh () const |
| EZ_ADD_RESOURCEHANDLE_ACCESSORS_WITH_SETTER (Mesh, m_hMesh, SetMesh) | |
| void | SetMaterial (ezUInt32 uiIndex, const ezMaterialResourceHandle &hMaterial) |
| Sets the material that should be used for the sub-mesh with the given index. | |
| ezMaterialResourceHandle | GetMaterial (ezUInt32 uiIndex) const |
| void | SetColor (const ezColor &color) |
| An additional tint color passed to the renderer to modify the mesh. | |
| const ezColor & | GetColor () const |
| void | SetCustomData (const ezVec4 &vData) |
| An additional vec4 passed to the renderer that can be used by custom material shaders for effects. | |
| const ezVec4 & | GetCustomData () const |
| void | SetSortingDepthOffset (float fOffset) |
| The sorting depth offset allows to tweak the order in which this mesh is rendered relative to other meshes. | |
| float | GetSortingDepthOffset () const |
| void | OnMsgSetMeshMaterial (ezMsgSetMeshMaterial &ref_msg) |
| void | OnMsgSetColor (ezMsgSetColor &ref_msg) |
| void | OnMsgSetCustomData (ezMsgSetCustomData &ref_msg) |
Public Member Functions inherited from ezRenderComponent | |
| void | TriggerLocalBoundsUpdate () |
| Call this when some value was modified that affects the size of the local bounding box and it should be recomputed. | |
| EZ_ALWAYS_INLINE ezUInt32 | GetUniqueIdForRendering (ezUInt32 uiInnerIndex=0, ezUInt32 uiInnerIndexShift=24) const |
| Computes a unique ID for the given component, that is usually given to the renderer to distinguish objects. | |
Public Member Functions inherited from ezComponent | |
| void | SetActiveFlag (bool bEnabled) |
| Sets the active flag of the component, which affects its active state. | |
| bool | GetActiveFlag () const |
| Checks whether the 'active flag' is set on this component. Note that this does not mean that the component is also 'active'. | |
| bool | IsActive () const |
| Checks whether this component is in an active state. | |
| bool | IsActiveAndInitialized () const |
| Returns whether this component is active and initialized. | |
| bool | IsActiveAndSimulating () const |
| Whether the component is currently active and simulation has been started as well. | |
| ezComponentManagerBase * | GetOwningManager () |
| Returns the corresponding manager for this component. | |
| const ezComponentManagerBase * | GetOwningManager () const |
| Returns the corresponding manager for this component. | |
| ezGameObject * | GetOwner () |
| Returns the owner game object if the component is attached to one or nullptr. | |
| const ezGameObject * | GetOwner () const |
| Returns the owner game object if the component is attached to one or nullptr. | |
| ezWorld * | GetWorld () |
| Returns the corresponding world for this component. | |
| const ezWorld * | GetWorld () const |
| Returns the corresponding world for this component. | |
| ezComponentHandle | GetHandle () const |
| Returns a handle to this component. | |
| ezUInt32 | GetUniqueID () const |
| Returns the unique id for this component. | |
| void | SetUniqueID (ezUInt32 uiUniqueID) |
| Sets the unique id for this component. | |
| void | EnsureInitialized () |
| Ensures that the component is initialized. Must only be called from another component's Initialize callback. | |
| void | EnsureSimulationStarted () |
| Ensures that the OnSimulationStarted method has been called. Must only be called from another component's OnSimulationStarted callback. | |
| EZ_ALWAYS_INLINE bool | SendMessage (ezMessage &ref_msg) |
| Sends a message to this component. | |
| EZ_ALWAYS_INLINE bool | SendMessage (ezMessage &ref_msg) const |
| void | PostMessage (const ezMessage &msg, ezTime delay=ezTime::MakeZero(), ezObjectMsgQueueType::Enum queueType=ezObjectMsgQueueType::NextFrame) const |
| Queues the message for the given phase. The message is processed after the given delay in the corresponding phase. | |
| virtual bool | HandlesMessage (const ezMessage &msg) const |
| Returns whether the given Message is handled by this component. | |
| void | SetUserFlag (ezUInt8 uiFlagIndex, bool bSet) |
| Be careful to check which flags may already be in use by base classes. | |
| bool | GetUserFlag (ezUInt8 uiFlagIndex) const |
| Retrieves a custom flag. Index must be between 0 and 7. | |
| void | SetCreatedByPrefab () |
| Adds ezObjectFlags::CreatedByPrefab to the component. See the flag for details. | |
| bool | WasCreatedByPrefab () const |
| Checks whether the ezObjectFlags::CreatedByPrefab flag is set on this component. | |
| void | DeleteComponent () |
| Deletes this component. Note that the component will be invalidated first and the actual deletion is postponed. | |
Public Member Functions inherited from ezReflectedClass | |
| virtual const ezRTTI * | GetDynamicRTTI () const |
| bool | IsInstanceOf (const ezRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it. | |
| template<typename T > | |
| EZ_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it. | |
Additional Inherited Members | |
Static Public Member Functions inherited from ezRenderComponent | |
| static ezUInt32 | GetUniqueIdForRendering (const ezComponent &component, ezUInt32 uiInnerIndex=0, ezUInt32 uiInnerIndexShift=24) |
| Computes a unique ID for the given component, that is usually given to the renderer to distinguish objects. | |
Static Public Member Functions inherited from ezNoBase | |
| static const ezRTTI * | GetStaticRTTI () |
Protected Member Functions inherited from ezMeshComponentBase | |
| virtual ezMeshRenderData * | CreateRenderData () const |
| ezUInt32 | Materials_GetCount () const |
| ezString | Materials_GetValue (ezUInt32 uiIndex) const |
| void | Materials_SetValue (ezUInt32 uiIndex, ezString sValue) |
| void | Materials_Insert (ezUInt32 uiIndex, ezString sValue) |
| void | Materials_Remove (ezUInt32 uiIndex) |
| void | OnMsgExtractRenderData (ezMsgExtractRenderData &msg) const |
Protected Member Functions inherited from ezRenderComponent | |
| virtual void | Deinitialize () override |
| This method is called before the component is destroyed. A derived type can override this method to do common de-initialization work. | |
| virtual void | OnActivated () override |
| This method is called when the component gets activated. | |
| virtual void | OnDeactivated () override |
| This method is called when the component gets deactivated. | |
| void | OnUpdateLocalBounds (ezMsgUpdateLocalBounds &msg) |
| void | InvalidateCachedRenderData () |
Protected Member Functions inherited from ezComponent | |
| ezComponent () | |
| Keep the constructor private or protected in derived classes, so it cannot be called manually. | |
| bool | IsDynamic () const |
| Returns whether this component is dynamic and thus can only be attached to dynamic game objects. | |
| virtual ezWorldModuleTypeId | GetTypeId () const =0 |
| virtual ezComponentMode::Enum | GetMode () const =0 |
| virtual void | Initialize () |
| Can be overridden for basic initialization that depends on a valid hierarchy and position. | |
| virtual void | OnSimulationStarted () |
| This method is called once for active components, at the start of the next world update, but only when the world is simulated. | |
| void | EnableUnhandledMessageHandler (bool enable) |
| By default disabled. Enable to have OnUnhandledMessage() called for every unhandled message. | |
| virtual bool | OnUnhandledMessage (ezMessage &msg, bool bWasPostedMsg) |
| When EnableUnhandledMessageHandler() was activated, this is called for all messages for which there is no dedicated message handler. | |
| virtual bool | OnUnhandledMessage (ezMessage &msg, bool bWasPostedMsg) const |
| When EnableUnhandledMessageHandler() was activated, this is called for all messages for which there is no dedicated message handler. | |
| bool | IsInitialized () const |
| bool | IsInitializing () const |
| bool | IsSimulationStarted () const |
Protected Attributes inherited from ezMeshComponentBase | |
| ezMeshResourceHandle | m_hMesh |
| ezDynamicArray< ezMaterialResourceHandle > | m_Materials |
| ezColor | m_Color = ezColor::White |
| ezVec4 | m_vCustomData = ezVec4(0, 1, 0, 1) |
| float | m_fSortingDepthOffset = 0.0f |
Protected Attributes inherited from ezComponent | |
| const ezRTTI * | m_pMessageDispatchType = nullptr |
| Messages will be dispatched to this type. Default is what GetDynamicRTTI() returns, can be redirected if necessary. | |
Renders a single instance of a static mesh.
This is the main component to use for rendering regular meshes.