Mario Kart 64
|
#include "EditorMath.h"
#include <libultraship/libultraship.h>
#include "port/Game.h"
#include "port/Engine.h"
#include <libultra/types.h>
#include "GameObject.h"
#include <vector>
#include <limits>
#include <cmath>
#include <graphic/Fast3D/Fast3dWindow.h>
#include <graphic/Fast3D/interpreter.h>
#include "common_structs.h"
#include "main.h"
#include "defines.h"
#include "actors.h"
#include "math_util.h"
#include "math_util_2.h"
#include "camera.h"
Functions | |
bool | IsInGameScreen () |
FVector | ScreenRayTrace () |
bool | QueryCollisionRayActor (Vec3f rayOrigin, Vec3f rayDir, Vec3f actorMin, Vec3f actorMax, float *t) |
FVector4 | MultiplyMatrixVector (float matrix[4][4], float vector[4]) |
static bool | InverseMatrix (const float m[16], float invOut[16]) |
FVector | TransformVecByMatrix (const FVector &vec, const float mtx[4][4]) |
FVector | TransformVecDirection (const FVector &dir, const float mtx[4][4]) |
Ray | RayToLocalSpace (MtxF mtx, const Ray &ray) |
bool | IntersectRayTriangle (const Ray &ray, const Triangle &tri, float &t) |
bool | IntersectRayTriangleAndTransform (const Ray &ray, FVector pos, const Triangle &tri, float &t) |
std::optional< FVector > | QueryHandleIntersection (MtxF mtx, Ray ray, const Triangle &tri) |
bool | IntersectRaySphere (const Ray &ray, const FVector &sphereCenter, float radius, float &t) |
void | Editor_MatrixIdentity (Mat4 mtx) |
void | Editor_AddMatrix (Mat4 mtx, int32_t flags) |
float | CalculateAngle (const FVector &start, const FVector &end) |
void | SetDirectionFromRotator (IRotator rot, s8 direction[3]) |
void | SetRotatorFromDirection (FVector direction, IRotator *rot) |
FVector | GetPositionAheadOfCamera (f32 dist) |
Variables | |
std::vector< Mtx > | EditorMatrix |
void Editor_AddMatrix | ( | Mat4 | mtx, |
int32_t | flags ) |
void Editor_MatrixIdentity | ( | Mat4 | mtx | ) |
FVector GetPositionAheadOfCamera | ( | f32 | dist | ) |
bool IntersectRayTriangleAndTransform | ( | const Ray & | ray, |
FVector | pos, | ||
const Triangle & | tri, | ||
float & | t ) |
|
static |
bool IsInGameScreen | ( | ) |
Projects 2D cursor into the game world
ray.x = camera->pos[0] + direction.x * length; ray.y = camera->pos[1] + direction.y * length; ray.z = camera->pos[2] + direction.z * length;
FVector4 MultiplyMatrixVector | ( | float | matrix[4][4], |
float | vector[4] ) |
bool QueryCollisionRayActor | ( | Vec3f | rayOrigin, |
Vec3f | rayDir, | ||
Vec3f | actorMin, | ||
Vec3f | actorMax, | ||
float * | t ) |
optional used here so we can check for successful query and return the click position
FVector ScreenRayTrace | ( | ) |
void SetDirectionFromRotator | ( | IRotator | rot, |
s8 | direction[3] ) |
std::vector<Mtx> EditorMatrix |