Kinoko
A reimplementation of Mario Kart Wii's physics engine in C++
Toggle main menu visibility
Loading...
Searching...
No Matches
ObjectCollisionCylinder.cc
1
#include "ObjectCollisionCylinder.hh"
2
3
namespace
Kinoko::Field
{
4
6
ObjectCollisionCylinder::ObjectCollisionCylinder(f32 radius, f32 height,
7
const
EGG::Vector3f ¢er)
8
: m_radius(radius), m_height(height), m_pos(center) {
9
m_worldRadius = radius;
10
m_worldHeight = height;
11
m_worldPos = center;
12
13
m_center = center;
14
m_top = center + EGG::Vector3f::ey * height;
15
m_bottom = center - EGG::Vector3f::ey * height;
16
}
17
19
ObjectCollisionCylinder::~ObjectCollisionCylinder() =
default
;
20
22
void
ObjectCollisionCylinder::transform(
const
EGG::Matrix34f &mat,
const
EGG::Vector3f &scale) {
23
m_worldPos = m_pos * scale.x;
24
m_worldHeight = m_height * scale.y;
25
m_worldRadius = m_radius * scale.x;
26
27
m_center = mat.ps_multVector(m_worldPos);
28
m_top = mat.ps_multVector(m_worldPos + EGG::Vector3f::ey * m_worldHeight);
29
m_bottom = mat.ps_multVector(m_worldPos - EGG::Vector3f::ey * m_worldHeight);
30
}
31
33
void
ObjectCollisionCylinder::transform(
const
EGG::Matrix34f &mat,
const
EGG::Vector3f &scale,
34
const
EGG::Vector3f &speed) {
35
m_translation = speed;
36
ObjectCollisionCylinder::transform(mat, scale);
37
}
38
39
}
// namespace Kinoko::Field
Kinoko::Field
Pertains to collision.
Definition
BoxColManager.cc:10
game
field
ObjectCollisionCylinder.cc
Made by
Malleo
. Logo by
vabold
. Website generated by
Doxygen
1.17.0