Fix compilation errors

This commit is contained in:
Chandler Cox
2023-05-31 11:28:26 -05:00
parent 2607e0e187
commit c4c55bfb61
2 changed files with 33 additions and 24 deletions

View File

@@ -9,7 +9,7 @@ CapsuleCollider::CapsuleCollider(const SpawnParams& params)
, _height(100.0f)
, _direction(ColliderOrientationDirection::YAxis)
{
SetDirection(_direction);
SetColliderDirection(_direction);
}
void CapsuleCollider::SetRadius(const float value)
@@ -34,6 +34,24 @@ void CapsuleCollider::SetHeight(const float value)
UpdateBounds();
}
void CapsuleCollider::SetColliderDirection(ColliderOrientationDirection value)
{
_direction = value;
switch (value)
{
case ColliderOrientationDirection::XAxis:
SetColliderOrientation(Quaternion::Identity);
break;
case ColliderOrientationDirection::YAxis:
SetColliderOrientation(Quaternion::Euler(0, 0, 90));
break;
case ColliderOrientationDirection::ZAxis:
SetColliderOrientation(Quaternion::Euler(0, 90, 0));
break;
default: ;
}
}
#if USE_EDITOR
#include "Engine/Debug/DebugDraw.h"
@@ -58,24 +76,6 @@ void CapsuleCollider::DrawPhysicsDebug(RenderView& view)
DEBUG_DRAW_WIRE_TUBE(_transform.LocalToWorld(_center), rot, radius, height, Color::GreenYellow * 0.8f, 0, true);
}
void CapsuleCollider::SetDirection(ColliderOrientationDirection value)
{
_direction = value;
switch (value)
{
case ColliderOrientationDirection::XAxis:
SetColliderOrientation(Quaternion::Identity);
break;
case ColliderOrientationDirection::YAxis:
SetColliderOrientation(Quaternion::Euler(0, 0, 90));
break;
case ColliderOrientationDirection::ZAxis:
SetColliderOrientation(Quaternion::Euler(0, 90, 0));
break;
default: ;
}
}
void CapsuleCollider::OnDebugDrawSelected()
{
Quaternion collRot;
@@ -119,7 +119,7 @@ void CapsuleCollider::Deserialize(DeserializeStream& stream, ISerializeModifier*
DESERIALIZE_MEMBER(Radius, _radius);
DESERIALIZE_MEMBER(Height, _height);
DESERIALIZE(_direction);
SetDirection(_direction);
SetColliderDirection(_direction);
}
void CapsuleCollider::UpdateBounds()

View File

@@ -10,8 +10,19 @@
/// </summary>
API_ENUM() enum class ColliderOrientationDirection
{
/// <summary>
/// Orient to the X-Axis.
/// </summary>
XAxis,
/// <summary>
/// Orient to the Y-Axis.
/// </summary>
YAxis,
/// <summary>
/// Orient to the Z-Axis.
/// </summary>
ZAxis
};
@@ -66,9 +77,8 @@ public:
/// <summary>
/// Gets the orientation direction of the capsule collider.
/// </summary>
/// <remarks>The capsule height will be scaled by the actor's world scale.</remarks>
API_PROPERTY(Attributes="EditorOrder(111), DefaultValue(typeof(ColliderOrientationDirection), \"YAxis\"), EditorDisplay(\"Collider\")")
FORCE_INLINE ColliderOrientationDirection GetDirection() const
FORCE_INLINE ColliderOrientationDirection GetColliderDirection() const
{
return _direction;
}
@@ -76,8 +86,7 @@ public:
/// <summary>
/// Sets the orientation direction of the capsule collider.
/// </summary>
/// <remarks>The capsule height will be scaled by the actor's world scale.</remarks>
API_PROPERTY() void SetDirection(ColliderOrientationDirection value);
API_PROPERTY() void SetColliderDirection(ColliderOrientationDirection value);
public:
// [Collider]