IAttachment

Represents an attachment attached to a character, usually loaded from the .CDF file - but can also be created at run-time. More...

#include

Public Member Functions

virtual void AddRef ()=0
virtual void Release ()=0
virtual const char * GetName () const =0
virtual uint32 GetNameCRC () const =0
virtual uint32 ReName (const char *szSocketName, uint32 crc)=0
virtual uint32 GetType () const =0
bool IsMerged () const
virtual uint32 SetJointName (const char *szJointName)=0
virtual void SetFlags (uint32 flags)=0
virtual uint32 GetFlags () const =0
virtual void SetAttAbsoluteDefault (const QuatT &rot)=0
virtual const QuatT & GetAttAbsoluteDefault () const =0
virtual void SetAttRelativeDefault (const QuatT &mat)=0
virtual const QuatT & GetAttRelativeDefault () const =0
virtual const QuatT & GetAttModelRelative () const =0
virtual const QuatTS GetAttWorldAbsolute () const =0
virtual const QuatT & GetAdditionalTransformation () const =0
virtual void UpdateAttModelRelative ()=0
virtual void HideAttachment (uint32 x)=0
virtual uint32 IsAttachmentHidden () const =0
virtual void HideInRecursion (uint32 x)=0
virtual uint32 IsAttachmentHiddenInRecursion () const =0
virtual void HideInShadow (uint32 x)=0
virtual uint32 IsAttachmentHiddenInShadow () const =0
virtual void AlignJointAttachment ()=0
virtual uint32 GetJointID () const =0
virtual IAttachmentObject * GetIAttachmentObject () const =0
virtual IAttachmentSkin * GetIAttachmentSkin ()=0
virtual void AddBinding (IAttachmentObject *pModel, ISkin *pISkin=0, uint32 nLoadingFlags=0)=0
virtual void ClearBinding (uint32 nLoadingFlags=0)=0
virtual void SwapBinding (IAttachment *pNewAttachment)=0
virtual SimulationParams & GetSimulationParams ()
virtual void PostUpdateSimulationParams (bool bAttachmentSortingRequired, const char *pJointName=0)
virtual RowSimulationParams & GetRowParams ()
virtual void SetVClothParams (const SVClothParams &params)
virtual size_t SizeOfThis () const =0
virtual void Serialize (TSerialize ser)=0
virtual void GetMemoryUsage (ICrySizer *pSizer) const =0

Detailed Description

Represents an attachment attached to a character, usually loaded from the .CDF file - but can also be created at run-time.

Member Function Documentation

◆ GetAdditionalTransformation()

virtual const QuatT& IAttachment::GetAdditionalTransformation ( ) const
pure virtual

Retrieves the additional transformation which is applied on top of the model-space location while rendering this attachment. Typically this returns QuatT(IDENTITY), except when simulation is running.

Returns
Additional transformation

◆ GetAttAbsoluteDefault()

virtual const QuatT& IAttachment::GetAttAbsoluteDefault ( ) const
pure virtual

Retrieves model-space location of this attachment in the default pose.

Returns
Attachment location.

◆ GetAttModelRelative()

virtual const QuatT& IAttachment::GetAttModelRelative ( ) const
pure virtual

Retrieves current model-space location of this attachment.

Returns
Attachment location.

◆ GetAttRelativeDefault()

virtual const QuatT& IAttachment::GetAttRelativeDefault ( ) const
pure virtual

Retrieves parent-space location of this attachment in the default pose.

Returns
Attachment location.

◆ GetAttWorldAbsolute()

virtual const QuatTS IAttachment::GetAttWorldAbsolute ( ) const
pure virtual

Retrieves current world-space location of this attachment.

Returns
Attachment location.

◆ SetAttAbsoluteDefault()

virtual void IAttachment::SetAttAbsoluteDefault ( const QuatT & rot)
pure virtual

Sets model-space location of this attachment in the default pose.

Parameters
rotNew attachment location.

◆ SetAttRelativeDefault()

virtual void IAttachment::SetAttRelativeDefault ( const QuatT & mat)
pure virtual

Sets parent-space location of this attachment in the default pose.

Parameters
matNew attachment location. IMPORTANT: This feature is currently missing. The location set by this method is being overridden by the animation update. Please compute the location manually and use the SetAttAbsoluteDefault() method instead as a workaround.