![]()  | 
  
    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.