1#include "ObjectCollisionSphere.hh"
6ObjectCollisionSphere::ObjectCollisionSphere(f32 radius,
const EGG::Vector3f ¢er)
7 : m_hasTranslation(false), m_radius(radius), m_pos(center), m_scaledRadius(radius),
8 m_scaledPos(center), m_worldPos(center) {}
11ObjectCollisionSphere::~ObjectCollisionSphere() =
default;
15 m_hasTranslation =
false;
17 if (scale.x != 1.0f) {
18 m_scaledPos = m_pos * scale.x;
19 m_scaledRadius = m_radius * scale.x;
28 m_hasTranslation =
true;
29 m_translation = speed;
31 if (scale.x != 1.0f) {
32 m_scaledPos = m_pos * scale.x;
33 m_scaledRadius = m_radius * scale.x;
38 m_center = m_worldPos - speed;
43 if (!m_hasTranslation) {
47 return m_worldPos.
dot(v) > m_center.dot(v) ? m_worldPos : m_center;
Vector3f multVector(const Vector3f &vec) const
Multiplies a vector by a matrix.
f32 dot(const Vector3f &rhs) const
The dot product between two vectors.