Polyphase Game Engine
Loading...
Searching...
No Matches
SkeletalMesh Class Reference

#include <SkeletalMesh.h>

Inheritance diagram for SkeletalMesh:
Asset Object

Public Member Functions

 DECLARE_ASSET (SkeletalMesh, Asset)
 
 SkeletalMesh ()
 
 ~SkeletalMesh ()
 
SkeletalMeshResourceGetResource ()
 
virtual void LoadStream (Stream &stream, Platform platform) override
 
virtual void SaveStream (Stream &stream, Platform platform) override
 
virtual void Create () override
 
virtual void Destroy () override
 
virtual bool Import (const std::string &path, ImportOptions *options) override
 
virtual void GatherProperties (std::vector< Property > &outProps) override
 
virtual glm::vec4 GetTypeColor () override
 
virtual const char * GetTypeName () override
 
virtual const char * GetTypeImportExt () override
 
class MaterialGetMaterial ()
 
void SetMaterial (class Material *newMaterial)
 
uint32_t GetNumIndices ()
 
uint32_t GetNumFaces ()
 
uint32_t GetNumVertices ()
 
const IndexTypeGetIndices () const
 
int32_t FindBoneIndex (const std::string &name) const
 
const std::vector< Bone > & GetBones () const
 
const BoneGetBone (int32_t index) const
 
uint32_t GetNumBones () const
 
glm::mat4 GetInvRootTransform () const
 
const std::vector< Animation > & GetAnimations () const
 
const AnimationGetAnimation (const char *name)
 
float GetAnimationDuration (const char *name)
 
const std::vector< VertexSkinned > & GetVertices () const
 
void FinalizeBoneTransforms (std::vector< glm::mat4 > &inoutTransforms)
 
void CopyBindPose (std::vector< glm::mat4 > &outTransforms)
 
Bounds GetBounds () const
 
const glm::mat4 GetBindPoseMatrix (int32_t boneIndex) const
 
SkeletalMeshGetAnimationLookupMesh ()
 
void SetAnimationLookupMesh (SkeletalMesh *lookupMesh)
 
- Public Member Functions inherited from Asset
 DECLARE_FACTORY_MANAGER (Asset)
 
 DECLARE_FACTORY (Asset, Asset)
 
 DECLARE_OBJECT (Asset, Object)
 
 Asset ()
 
virtual ~Asset ()
 
virtual void Copy (Asset *srcAsset)
 
const std::string & GetName () const
 
bool IsLoaded () const
 
bool IsRefCounted () const
 
int32_t GetRefCount () const
 
bool IsEmbedded () const
 
void SetEmbedded (bool embed)
 
bool IsEngineAsset () const
 
void SetEngineAsset (bool engineAsset)
 
void SetName (const std::string &name)
 
void IncrementRefCount ()
 
void DecrementRefCount ()
 
void LoadFile (const char *path, AsyncLoadRequest *request=nullptr)
 
void LoadEmbedded (const EmbeddedFile *embeddedAsset, AsyncLoadRequest *request=nullptr)
 
void SaveFile (const char *path, Platform platform)
 
virtual bool ShouldSnapshotForPie () const
 
bool IsTransient () const
 
void SetTransient (bool transient)
 
uint64_t GetUuid () const
 
void SetUuid (uint64_t uuid)
 
void EnsureUuid ()
 
void WriteHeader (Stream &stream)
 
- Public Member Functions inherited from Object
virtual ~Object ()=default
 
virtual const char * RuntimeName () const =0
 
virtual const char * RuntimeParentName () const =0
 
virtual RuntimeId InstanceRuntimeId () const =0
 
virtual ObjectQueryInterface (RuntimeId id) const
 
virtual bool Is (RuntimeId id) const
 
virtual bool Is (const char *name) const
 
virtual bool DrawCustomProperty (Property &prop)
 
template<typename T >
T * As () const
 
virtual bool Equals (const Object *rhs) const
 

Static Public Member Functions

static bool HandlePropChange (Datum *datum, uint32_t index, const void *newValue)
 
- Static Public Member Functions inherited from Asset
static AssetHeader ReadHeader (Stream &stream)
 
static std::string GetNameFromPath (const std::string &path)
 
static std::string GetDirectoryFromPath (const std::string &path)
 
static const char * GetNameFromTypeId (TypeId id)
 
static TypeId GetTypeIdFromName (const char *name)
 
- Static Public Member Functions inherited from Object
static const char * ClassRuntimeName ()
 

Additional Inherited Members

- Protected Attributes inherited from Asset
uint32_t mVersion = 0
 
TypeId mType = INVALID_TYPE_ID
 
uint64_t mUuid = 0
 
bool mEmbedded = false
 
bool mLoaded = false
 
bool mEnableRefCount = true
 
bool mEngineAsset = false
 
bool mTransient = false
 
std::string mName = "Asset"
 
int32_t mRefCount = 0
 

Constructor & Destructor Documentation

◆ SkeletalMesh()

SkeletalMesh::SkeletalMesh ( )

◆ ~SkeletalMesh()

SkeletalMesh::~SkeletalMesh ( )

Member Function Documentation

◆ CopyBindPose()

void SkeletalMesh::CopyBindPose ( std::vector< glm::mat4 > &  outTransforms)

◆ Create()

void SkeletalMesh::Create ( )
overridevirtual

Reimplemented from Asset.

◆ DECLARE_ASSET()

SkeletalMesh::DECLARE_ASSET ( SkeletalMesh  ,
Asset   
)

◆ Destroy()

void SkeletalMesh::Destroy ( )
overridevirtual

Reimplemented from Asset.

◆ FinalizeBoneTransforms()

void SkeletalMesh::FinalizeBoneTransforms ( std::vector< glm::mat4 > &  inoutTransforms)

◆ FindBoneIndex()

int32_t SkeletalMesh::FindBoneIndex ( const std::string &  name) const

◆ GatherProperties()

void SkeletalMesh::GatherProperties ( std::vector< Property > &  outProps)
overridevirtual

Reimplemented from Asset.

◆ GetAnimation()

const Animation * SkeletalMesh::GetAnimation ( const char *  name)

◆ GetAnimationDuration()

float SkeletalMesh::GetAnimationDuration ( const char *  name)

◆ GetAnimationLookupMesh()

SkeletalMesh * SkeletalMesh::GetAnimationLookupMesh ( )

◆ GetAnimations()

const std::vector< Animation > & SkeletalMesh::GetAnimations ( ) const

◆ GetBindPoseMatrix()

const glm::mat4 SkeletalMesh::GetBindPoseMatrix ( int32_t  boneIndex) const

◆ GetBone()

const Bone & SkeletalMesh::GetBone ( int32_t  index) const

◆ GetBones()

const std::vector< Bone > & SkeletalMesh::GetBones ( ) const

◆ GetBounds()

Bounds SkeletalMesh::GetBounds ( ) const

◆ GetIndices()

const IndexType * SkeletalMesh::GetIndices ( ) const

◆ GetInvRootTransform()

glm::mat4 SkeletalMesh::GetInvRootTransform ( ) const

◆ GetMaterial()

Material * SkeletalMesh::GetMaterial ( )

◆ GetNumBones()

uint32_t SkeletalMesh::GetNumBones ( ) const

◆ GetNumFaces()

uint32_t SkeletalMesh::GetNumFaces ( )

◆ GetNumIndices()

uint32_t SkeletalMesh::GetNumIndices ( )

◆ GetNumVertices()

uint32_t SkeletalMesh::GetNumVertices ( )

◆ GetResource()

SkeletalMeshResource * SkeletalMesh::GetResource ( )

◆ GetTypeColor()

glm::vec4 SkeletalMesh::GetTypeColor ( )
overridevirtual

Reimplemented from Asset.

◆ GetTypeImportExt()

const char * SkeletalMesh::GetTypeImportExt ( )
overridevirtual

Reimplemented from Asset.

◆ GetTypeName()

const char * SkeletalMesh::GetTypeName ( )
overridevirtual

Reimplemented from Asset.

◆ GetVertices()

const std::vector< VertexSkinned > & SkeletalMesh::GetVertices ( ) const

◆ HandlePropChange()

bool SkeletalMesh::HandlePropChange ( Datum datum,
uint32_t  index,
const void *  newValue 
)
static

◆ Import()

bool SkeletalMesh::Import ( const std::string &  path,
ImportOptions options 
)
overridevirtual

Reimplemented from Asset.

◆ LoadStream()

void SkeletalMesh::LoadStream ( Stream stream,
Platform  platform 
)
overridevirtual

Reimplemented from Asset.

◆ SaveStream()

void SkeletalMesh::SaveStream ( Stream stream,
Platform  platform 
)
overridevirtual

Reimplemented from Asset.

◆ SetAnimationLookupMesh()

void SkeletalMesh::SetAnimationLookupMesh ( SkeletalMesh lookupMesh)

◆ SetMaterial()

void SkeletalMesh::SetMaterial ( class Material newMaterial)

The documentation for this class was generated from the following files: