|
SpaghettiKart
|
#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 <fast/Fast3dWindow.h>#include <fast/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 |