Plasma Engine  2.0
Loading...
Searching...
No Matches
JointOverrideComponent.h
1#pragma once
2
3#include <Core/World/ComponentManager.h>
4#include <GameEngine/GameEngineDLL.h>
5#include <RendererCore/AnimationSystem/AnimationPose.h>
6
8
18class PL_GAMEENGINE_DLL plJointOverrideComponent : public plComponent
19{
21
23 // plComponent
24
25public:
26 virtual void SerializeComponent(plWorldWriter& inout_stream) const override;
27 virtual void DeserializeComponent(plWorldReader& inout_stream) override;
28
30 // plJointOverrideComponent
31
32public:
35
37 void SetJointName(const char* szName); // [ property ]
38 const char* GetJointName() const; // [ property ]
39
41 bool m_bOverridePosition = false; // [ property ]
42
44 bool m_bOverrideRotation = true; // [ property ]
45
47 bool m_bOverrideScale = false; // [ property ]
48
49protected:
50 void OnAnimationPosePreparing(plMsgAnimationPosePreparing& msg) const; // [ msg handler ]
51
52 plHashedString m_sJointToOverride;
53 mutable plUInt16 m_uiJointIndex = plInvalidJointIndex;
54};
Base class of all component types.
Definition Component.h:25
virtual void SerializeComponent(plWorldWriter &inout_stream) const
Override this to save the current state of the component to the given stream.
Definition Component.cpp:54
virtual void DeserializeComponent(plWorldReader &inout_stream)
Override this to load the current state of the component from the given stream.
Definition Component.cpp:58
Definition ComponentManager.h:88
This class is optimized to take nearly no memory (sizeof(void*)) and to allow very fast checks whethe...
Definition HashedString.h:25
Overrides the local transform of a bone in a skeletal animation.
Definition JointOverrideComponent.h:19
Reads a world description from a stream. Allows to instantiate that world multiple times in different...
Definition WorldReader.h:47
Stores an entire plWorld in a stream.
Definition WorldWriter.h:13
Used by components that skin a mesh to inform children whenever a new pose is being prepared.
Definition Declarations.h:46