Plasma Engine  2.0
Loading...
Searching...
No Matches
LogicAnimNodes.h
1#pragma once
2
3#include <RendererCore/AnimationSystem/AnimGraph/AnimGraphNode.h>
4
5class PL_RENDERERCORE_DLL plLogicAndAnimNode : public plAnimGraphNode
6{
7 PL_ADD_DYNAMIC_REFLECTION(plLogicAndAnimNode, plAnimGraphNode);
8
10 // plAnimGraphNode
11
12protected:
13 virtual plResult SerializeNode(plStreamWriter& stream) const override;
14 virtual plResult DeserializeNode(plStreamReader& stream) override;
15
16 virtual void Step(plAnimController& ref_controller, plAnimGraphInstance& ref_graph, plTime tDiff, const plSkeletonResource* pSkeleton, plGameObject* pTarget) const override;
17
19 // plLogicAndAnimNode
20
21public:
24
25private:
26 plUInt8 m_uiBoolCount = 2; // [ property ]
27 plHybridArray<plAnimGraphBoolInputPin, 2> m_InBool; // [ property ]
28 plAnimGraphBoolOutputPin m_OutIsTrue; // [ property ]
29 plAnimGraphBoolOutputPin m_OutIsFalse; // [ property ]
30};
31
32class PL_RENDERERCORE_DLL plLogicEventAndAnimNode : public plAnimGraphNode
33{
34 PL_ADD_DYNAMIC_REFLECTION(plLogicEventAndAnimNode, plAnimGraphNode);
35
37 // plAnimGraphNode
38
39protected:
40 virtual plResult SerializeNode(plStreamWriter& stream) const override;
41 virtual plResult DeserializeNode(plStreamReader& stream) override;
42
43 virtual void Step(plAnimController& ref_controller, plAnimGraphInstance& ref_graph, plTime tDiff, const plSkeletonResource* pSkeleton, plGameObject* pTarget) const override;
44
46 // plLogicEventAndAnimNode
47
48public:
51
52private:
53 plAnimGraphTriggerInputPin m_InActivate; // [ property ]
54 plAnimGraphBoolInputPin m_InBool; // [ property ]
55 plAnimGraphTriggerOutputPin m_OutOnActivated; // [ property ]
56};
57
61
62class PL_RENDERERCORE_DLL plLogicOrAnimNode : public plAnimGraphNode
63{
64 PL_ADD_DYNAMIC_REFLECTION(plLogicOrAnimNode, plAnimGraphNode);
65
67 // plAnimGraphNode
68
69protected:
70 virtual plResult SerializeNode(plStreamWriter& stream) const override;
71 virtual plResult DeserializeNode(plStreamReader& stream) override;
72
73 virtual void Step(plAnimController& ref_controller, plAnimGraphInstance& ref_graph, plTime tDiff, const plSkeletonResource* pSkeleton, plGameObject* pTarget) const override;
74
76 // plLogicOrAnimNode
77
78public:
81
82private:
83 plUInt8 m_uiBoolCount = 2; // [ property ]
84 plHybridArray<plAnimGraphBoolInputPin, 2> m_InBool; // [ property ]
85 plAnimGraphBoolOutputPin m_OutIsTrue; // [ property ]
86 plAnimGraphBoolOutputPin m_OutIsFalse; // [ property ]
87};
88
92
93class PL_RENDERERCORE_DLL plLogicNotAnimNode : public plAnimGraphNode
94{
95 PL_ADD_DYNAMIC_REFLECTION(plLogicNotAnimNode, plAnimGraphNode);
96
98 // plAnimGraphNode
99
100protected:
101 virtual plResult SerializeNode(plStreamWriter& stream) const override;
102 virtual plResult DeserializeNode(plStreamReader& stream) override;
103
104 virtual void Step(plAnimController& ref_controller, plAnimGraphInstance& ref_graph, plTime tDiff, const plSkeletonResource* pSkeleton, plGameObject* pTarget) const override;
105
107 // plLogicNotAnimNode
108
109public:
112
113private:
114 plAnimGraphBoolInputPin m_InBool; // [ property ]
115 plAnimGraphBoolOutputPin m_OutBool; // [ property ]
116};
Definition AnimController.h:52
Definition AnimGraphPins.h:130
Definition AnimGraphPins.h:140
Definition AnimGraphInstance.h:15
Base class for all nodes in an plAnimGraphInstance.
Definition AnimGraphNode.h:36
Definition AnimGraphPins.h:81
Definition AnimGraphPins.h:92
This class represents an object inside the world.
Definition GameObject.h:32
A hybrid array uses in-place storage to handle the first few elements without any allocation....
Definition HybridArray.h:12
Definition LogicAnimNodes.h:6
Definition LogicAnimNodes.h:33
Definition LogicAnimNodes.h:94
Definition LogicAnimNodes.h:63
Definition SkeletonResource.h:47
Interface for binary in (read) streams.
Definition Stream.h:22
Interface for binary out (write) streams.
Definition Stream.h:107
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54
The time class encapsulates a double value storing the time in seconds.
Definition Time.h:12