17 #ifndef GZ_RENDERING_OGRE_OGREMESH_HH_
18 #define GZ_RENDERING_OGRE_OGREMESH_HH_
23 #include <unordered_map>
40 inline namespace GZ_RENDERING_VERSION_NAMESPACE {
43 class OgreMeshPrivate;
55 public:
virtual void Destroy()
override;
58 public:
virtual bool HasSkeleton()
const override;
62 SkeletonLocalTransforms()
const override;
65 public:
virtual void SetSkeletonLocalTransforms(
73 public:
virtual void SetSkeletonWeights(
77 public:
virtual void SetSkeletonAnimationEnabled(
const std::string &_name,
78 bool _enabled,
bool _loop =
true,
float _weight = 1.0)
override;
81 public:
virtual bool SkeletonAnimationEnabled(
const std::string &_name)
85 public:
virtual void UpdateSkeletonAnimation(
86 std::chrono::steady_clock::duration _time)
override;
88 public:
virtual Ogre::MovableObject *
OgreObject()
const override;
94 protected: Ogre::Entity *ogreEntity =
nullptr;
111 public:
virtual Ogre::SubEntity *OgreSubEntity()
const;
113 public:
virtual void Destroy()
override;
116 protected:
virtual void SetMaterialImpl(
MaterialPtr _material)
override;
118 protected:
virtual void Init()
override;