58 glm::vec3 m_RelativeLocation;
61 glm::vec3 m_RelativeRotation;
67 glm::vec3 m_RelativeScale3D;
70 std::shared_ptr<USceneComponent> m_AttachParent;
76 uint8_t m_bAbsoluteLocation : 1;
79 uint8_t m_bAbsoluteRotation : 1;
82 uint8_t m_bAbsoluteScale : 1;
113 return m_RelativeRotation;
128 return m_RelativeLocation;
143 return m_RelativeScale3D;
162 void SetWorldLocation(glm::vec3 newLocation);
178 virtual void SetWorldTransform(
const FTransform& NewTransform);
185 std::shared_ptr<USceneComponent> GetAttachParent()
const;
204 return m_ComponentToWorld;
212 virtual void BeginDestroy()
override;
224 return m_bAbsoluteLocation;
237 return m_bAbsoluteRotation;
250 return m_bAbsoluteScale;
267 void SetRelativeTransform(
const FTransform& NewTransform);
This file contains the class UActorComponent.
EUpdateTransformFlags
Information about how to update transform when something is moved.
Definition ActorComponent.h:38
@ None
Definition ActorComponent.h:40
#define KARMA_API
Defining Karma's API macro for storage class information.
Definition Core.h:41
#define FORCEINLINE
Typical inlining macro for clarity.
Definition Core.h:170
#define DECLARE_KARMA_CLASS(TClass, TSuperClass)
Karma's gamecode object class declaration.
Definition GFrameworkMacros.h:45
ETeleportType
Definition KarmaTypes.h:682
@ None
Definition KarmaTypes.h:684
ERelativeTransformSpace
The space for the transform.
Definition SceneComponent.h:24
@ RTS_World
Definition SceneComponent.h:26
@ RTS_Component
Definition SceneComponent.h:30
@ RTS_Actor
Definition SceneComponent.h:28
@ RTS_ParentBoneSpace
Definition SceneComponent.h:32
UActorComponent()
A constructor.
Definition ActorComponent.cpp:8
A SceneComponent has a transform and supports attachment, but has no rendering or collision capabilit...
Definition SceneComponent.h:42
bool IsUsingAbsoluteScale() const
Gets the literal value of bAbsoluteScale.
Definition SceneComponent.h:248
bool IsUsingAbsoluteLocation() const
Gets the literal value of bAbsoluteLocation.
Definition SceneComponent.h:222
const glm::vec3 & GetRelativeRotation() const
Gets the literal value of RelativeRotation.
Definition SceneComponent.h:111
glm::vec3 m_ComponentVelocity
Definition SceneComponent.h:89
const glm::vec3 & GetRelativeLocation() const
Gets the literal value of RelativeLocation.
Definition SceneComponent.h:126
FORCEINLINE const std::string & GetAttachSocketName() const
Getter for the m_AttachSocektName.
Definition SceneComponent.h:285
const glm::vec3 & GetRelativeScale3D() const
Gets the literal value of RelativeScale3D.
Definition SceneComponent.h:141
virtual void UpdateComponentToWorld(EUpdateTransformFlags UpdateTransformFlags=EUpdateTransformFlags::None, ETeleportType Teleport=ETeleportType::None) override final
Recalculate the value of our component to world transform.
Definition SceneComponent.h:274
bool IsUsingAbsoluteRotation() const
Gets the literal value of bAbsoluteRotation.
Definition SceneComponent.h:235
const FTransform & GetComponentTransform() const
Get the current component-to-world transform for this component.
Definition SceneComponent.h:202
USceneComponent()
A constructor.
Definition SceneComponent.cpp:8
std::vector< std::shared_ptr< USceneComponent > > m_AttachChildren
Definition SceneComponent.h:99
std::string m_AttachSocketName
Definition SceneComponent.h:96