|
ToyMaker Game Engine 0.0.2
ToyMaker is a game engine developed and maintained by Zoheb Shujauddin.
|
Classes and structs representing data related to the engine's spatial query system (the precursor to a full-fledged physics system). More...
#include <cmath>#include <array>#include <queue>#include <glm/glm.hpp>#include <glm/gtc/quaternion.hpp>#include <nlohmann/json.hpp>#include <string>Go to the source code of this file.
Classes | |
| struct | ToyMaker::VolumeBase_ |
| The base class of all spatial query volumes. More... | |
| struct | ToyMaker::Volume< TDerived > |
| struct | ToyMaker::VolumeBox |
| Holds the parameters describing the spatial query volume of a simple three-dimensionsal box. More... | |
| struct | ToyMaker::VolumeCapsule |
| Holds the parameters describing the spatial query volume of a simple three-dimensionsal capsule (or pill, or whatever you like). More... | |
| struct | ToyMaker::VolumeSphere |
| Holds parameters describing a spherical spatial query volume. More... | |
| struct | ToyMaker::AreaTriangle |
| A set of 3 points located in the world forming a (hopefully sensible) triangle. More... | |
| struct | ToyMaker::AreaCircle |
| A set of numbers representing a single circle situated somewhere in the world. More... | |
| struct | ToyMaker::Ray |
| A set of numbers describing a ray with its source at some finite point in the world, projected in a direction for some positive length. More... | |
| struct | ToyMaker::Plane |
| A set of numbers describing a plane situated somewhere in the world. More... | |
| struct | ToyMaker::Simplex |
| Primitive for GJK algorithm. More... | |
| class | ToyMaker::Polytope |
| Primitive for EPA algorithm. More... | |
| struct | ToyMaker::Polytope::Face |
| Stores the indices of a single face of this polytope. More... | |
| struct | ToyMaker::Contact |
| Object representing contact information between a pair of convex shapes from the perspective of one of those shapes. More... | |
| struct | ToyMaker::Collision |
| Data representing everything about a collision. More... | |
| struct | ToyMaker::ObjectBounds |
| A component defining the true bounds of a spatially queryable object situated somewhere in the world. More... | |
| union | ToyMaker::ObjectBounds::TrueVolume |
| A union of supported volume structs. More... | |
| class | ToyMaker::AxisAlignedBounds |
| An object containing a coarse simplified representation, AABB, of spatially queryable objects. More... | |
Namespaces | |
| namespace | ToyMaker |
| Namespace containing all class definitions and functions related to the ToyMaker engine. | |
Enumerations | |
| enum | ToyMaker::BoxCornerSpecifier : BoxCorner { RIGHT =0x1 , TOP =0x2 , FRONT =0x4 } |
| Enum values correspond to bits on a BoxCorner which help specify which side of the box on each axis is being indicated. | |
Functions | |
| float | ToyMaker::squareDistance (const glm::vec3 &vector) |
| bool | ToyMaker::isFinite (float number) |
| Tests whether a given number is finite. | |
| bool | ToyMaker::isFinite (const glm::vec3 &vector) |
| Tests whether a set of 3 numbers is finite. | |
| bool | ToyMaker::isPositiveStrict (float number) |
| Tests whether a number is strictly positive. | |
| bool | ToyMaker::isPositiveStrict (const glm::vec3 &vector) |
| Tests whether a set of 3 numbers is strictly positive. | |
| bool | ToyMaker::isNumber (float number) |
| bool | ToyMaker::isNumber (const glm::vec3 &vector) |
| bool | ToyMaker::isNonNegative (float number) |
| Tests whether a number is non-negative. | |
| bool | ToyMaker::isNonNegative (const glm::vec3 &vector) |
| Tests whether a set of numbers is non-negative. | |
| std::array< AreaTriangle, 12 > | ToyMaker::computeBoxFaceTriangles (const std::array< glm::vec3, 8 > &boxCorners) |
| Generates a list of triangles making up the surface of a box situated somewhere in the world, given the coordinates of its corners. | |
| ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ObjectBounds::TrueVolumeType, { {ObjectBounds::TrueVolumeType::BOX, "box"}, {ObjectBounds::TrueVolumeType::SPHERE, "sphere"}, {ObjectBounds::TrueVolumeType::CAPSULE, "capsule"}, }) inline void to_json(nlohmann | |
| void | ToyMaker::from_json (const nlohmann::json &json, ObjectBounds &objectBounds) |
| void | ToyMaker::to_json (nlohmann::json &json, const AxisAlignedBounds &axisAlignedBounds) |
| void | ToyMaker::from_json (const nlohmann::json &json, AxisAlignedBounds &objectBounds) |
Classes and structs representing data related to the engine's spatial query system (the precursor to a full-fledged physics system).