Plasma Engine  2.0
Loading...
Searching...
No Matches
JoltSliderConstraintComponent.h
1#pragma once
2
3#include <JoltPlugin/Constraints/JoltConstraintComponent.h>
4
6
12{
14
16 // plComponent
17
18public:
19 virtual void SerializeComponent(plWorldWriter& inout_stream) const override;
20 virtual void DeserializeComponent(plWorldReader& inout_stream) override;
21
23 // plJoltConstraintComponent
24
25protected:
26 virtual void CreateContstraintType(JPH::Body* pBody0, JPH::Body* pBody1) override;
27 virtual void ApplySettings() final override;
28 virtual bool ExceededBreakingPoint() final override;
29
31 // plJoltSliderConstraintComponent
32
33public:
36
38 void SetLimitMode(plJoltConstraintLimitMode::Enum mode); // [ property ]
39 plJoltConstraintLimitMode::Enum GetLimitMode() const { return m_LimitMode; } // [ property ]
40
42 void SetLowerLimitDistance(float f); // [ property ]
43 float GetLowerLimitDistance() const { return m_fLowerLimitDistance; } // [ property ]
44
46 void SetUpperLimitDistance(float f); // [ property ]
47 float GetUpperLimitDistance() const { return m_fUpperLimitDistance; } // [ property ]
48
50 void SetFriction(float f); // [ property ]
51 float GetFriction() const { return m_fFriction; } // [ property ]
52
54 void SetDriveMode(plJoltConstraintDriveMode::Enum mode); // [ property ]
55 plJoltConstraintDriveMode::Enum GetDriveMode() const { return m_DriveMode; } // [ property ]
56
58 void SetDriveTargetValue(float f); // [ property ]
59 float GetDriveTargetValue() const { return m_fDriveTargetValue; } // [ property ]
60
62 void SetDriveStrength(float f); // [ property ]
63 float GetDriveStrength() const { return m_fDriveStrength; } // [ property ]
64
65protected:
67 float m_fLowerLimitDistance = 0;
68 float m_fUpperLimitDistance = 0;
69 float m_fFriction = 0;
70
72 float m_fDriveTargetValue;
73 float m_fDriveStrength = 0; // 0 means maximum strength
74};
Definition ComponentManager.h:88
Base class for all Jolt physics joints (constraints).
Definition JoltConstraintComponent.h:73
virtual void DeserializeComponent(plWorldReader &inout_stream) override
Override this to load the current state of the component from the given stream.
Definition JoltConstraintComponent.cpp:214
virtual void SerializeComponent(plWorldWriter &inout_stream) const override
Override this to save the current state of the component to the given stream.
Definition JoltConstraintComponent.cpp:194
Implements a sliding physics constraint.
Definition JoltSliderConstraintComponent.h:12
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
A custom enum implementation that allows to define the underlying storage type to control its memory ...
Definition Enum.h:37
Enum
Definition JoltConstraintComponent.h:41
Enum
Definition JoltConstraintComponent.h:24