2 #include "IAttributeFields.h" 6 class CanvasAttachment;
107 _MODEL_LIGHT m_lightType;
118 asset_ptr<ParaXEntity> m_baseModel;
120 asset_ptr<ParaXEntity> m_MountModel;
155 void SetOffset(
float x,
float y,
float z);
160 bool SetupParantTransform(
float fCameraToCurObjectDistance = 0.f);
183 void delSlot(
int slot);
187 void delChildByID(
int nID);
214 asset_ptr<ParaXEntity> model;
222 asset_ptr<TextureEntity> texReplaceable;
Which DXT Compression to Use? Obviously, there are some trade-offs between the different formats whic...
Definition: TextureEntity.h:29
std::vector< CanvasAttachmentPtr > children
child models
Definition: ParaXModelCanvas.h:208
an attribute class is a collection of attribute fields.
Definition: AttributeClass.h:10
bool Animate(SceneState *sceneState, CharacterPose *pPose, int nAnimID=0, IAttributeFields *pAnimInstance=NULL)
call this to recalculate the bone transform matrices according to the current frame time the caller m...
Definition: ParaXModelCanvas.cpp:74
ShadowVolume is a structure for storing shadow volume geometries.
Definition: ShadowVolume.h:39
It's used as parameter to Draw method of each scene object.
Definition: SceneState.h:284
CanvasAttachment * addAttachment(ParaXEntity *model, int id, int slot, float fScale=1.0f)
add an attachment to the character
Definition: ParaXModelCanvas.cpp:91
void deleteAttachment(int nAttachmentID)
delete all attachments which is attached to the position specified by the attachment ID ...
Definition: ParaXModelCanvas.cpp:115
virtual IAttributeFields * GetChildAttributeObject(const std::string &sName)
get attribute by child object.
Definition: ParaXModelCanvas.cpp:465
void UnmountModel()
unmount the current model.
Definition: ParaXModelCanvas.cpp:41
float scale
this is a model scale which applies to x,y,z axis uniformly.
Definition: ParaXModelCanvas.h:231
virtual int InstallFields(CAttributeClass *pClass, bool bOverride)
this class should be implemented if one wants to add new attribute.
Definition: ParaXModelCanvas.cpp:459
different physics engine has different winding order.
Definition: EventBinding.h:32
int id
this id will be used to index into the parent model's attachment lookup table to find the actual atta...
Definition: ParaXModelCanvas.h:227
CanvasAttachment * parent
weak reference to parent
Definition: ParaXModelCanvas.h:211
bool m_bIsAutoCharacter
whether the model is a automatic character model, bone matrix calculation for automatic model is give...
Definition: ParaXModelCanvas.h:114
bool InitBaseModel(ParaXEntity *pModel)
reset the model canvas, and initialize with a base model without any attachments. ...
Definition: ParaXModelCanvas.cpp:120
virtual int GetChildAttributeColumnCount()
we support multi-dimensional child object.
Definition: ParaXModelCanvas.cpp:486
Standard 3-dimensional vector.
Definition: ParaVector3.h:16
ref_ptr< CanvasAttachment > m_root
root canvas
Definition: ParaXModelCanvas.h:110
void Draw(SceneState *sceneState, CParameterBlock *materialParams=NULL)
draw the canvas with all models on it.
Definition: ParaXModelCanvas.cpp:85
void SetAutoCharacterModel(bool bAutoCharacterModel)
set this model as automatic character model.
Definition: ParaXModelCanvas.cpp:65
LightParams is a structure for which a shadow volume is built.
Definition: ShadowVolume.h:8
void MountOnModel(ParaXEntity *model, float fScale=1.0f)
mount the current model on another model, such as a horse.
Definition: ParaXModelCanvas.cpp:34
The ref_ptr class template stores a pointer to a dynamically allocated (AssetEntity|CRefCounted|BaseA...
Definition: PERefPtr.h:13
Attachment on parax model canvas.
Definition: ParaXModelCanvas.h:128
Class encapsulating a standard 4x4 homogeneous matrix.
Definition: ParaMatrix4.h:23
Definition: ParaXEntity.h:9
bool IsMounted()
the base object is mounted on another model
Definition: ParaXModelCanvas.cpp:47
A common interface for all classes implementing IAttributeFields By implementing this class's virtual...
Definition: IAttributeFields.h:59
virtual int GetChildAttributeObjectCount(int nColumnIndex=0)
get the number of child objects (row count) in the given column.
Definition: ParaXModelCanvas.cpp:479
CanvasAttachment * GetChild(int id, int slot=-1)
get the first attachment matching the id
Definition: ParaXModelCanvas.cpp:110
int slot
the slot ID used to identify the logical position of this attachment
Definition: ParaXModelCanvas.h:229
MeshEntity distinguish one template from other.
Definition: MeshEntity.h:38
the pose of the character.
Definition: ParaXModel.h:381
ParaXEntity * GetBaseModel()
get the base model, where body attachments are attached.Base model is usually the main character mode...
Definition: ParaXModelCanvas.cpp:52
void BuildShadowVolume(SceneState *sceneState, ShadowVolume *pShadowVolume, LightParams *pLight, Matrix4 *mxWorld)
build the shadow volume
Definition: ParaXModelCanvas.cpp:79
ParaXEntity * GetAnimModel()
get the animation model.
Definition: ParaXModelCanvas.cpp:57
void deleteSlot(int slot)
delete everything on a specified slot of the character
Definition: ParaXModelCanvas.cpp:105
void clearAttachments()
delete all attachment to this character.
Definition: ParaXModelCanvas.cpp:100
a list of CParameter{name, value} pairs of anything.
Definition: ParameterBlock.h:108
A ParaX Model canvas is just a hierarchy of parax Models.
Definition: ParaXModelCanvas.h:17