Untitled Game engine no.5  1.0
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Engine Namespace Reference

Namespaces

 BufferUtil
 Utilities for buffers!
 

Classes

struct  Animation
 Container for texture based animations. More...
 
struct  BufferElement
 
class  BufferLayout
 Constructs the layout of a vertex buffer. More...
 
struct  ButtonHook
 
class  Camera
 Singleton, the current view! More...
 
struct  Clip
 Struct to hold music data. More...
 
struct  Collider
 Generic type storage for a GJK enabled collider. More...
 
struct  Collider2D
 Wrapper for 2D collisions. Tells the physics system that you want to process a 2D collision and not a 2D one. More...
 
struct  CollisionHook
 Wrapper for processing collisions between physics entities. More...
 
struct  CollisionPoint
 
struct  ColorMap
 Vertex map for colors. More...
 
class  ComponentBase
 Dummy class so we can make component type ids. More...
 
class  ComponentDataArray
 An array of components of type T. More...
 
struct  Controller
 Scene component that contains a reference to a controller parser. More...
 
struct  ControllerParser
 Wrapper for parsing entities with controllers attached. More...
 
class  ControllerSystem
 System for processing control inputs. More...
 
struct  Debug
 
class  ECS
 Entity Component System. More...
 
class  Engine
 This class sets up the main game engine. More...
 
class  Entity
 
class  Event
 
class  EventDispatcher
 
struct  FacePoint
 Storage for the expanding polytope algorithm. More...
 
struct  Font
 Data structure for storing font texture data. Doubles as a library for loading fonts into memory. More...
 
struct  ForceApplier
 Applies a force! to a colliding body or connected object. More...
 
struct  ForceGenerator
 Generates a force. More...
 
class  GLIndexBuffer
 
class  GLRenderer
 
class  GLTexture2D
 
class  GLVertexBuffer
 
struct  Glyph
 
struct  IComponentDataArray
 Interface for an array of components. More...
 
class  IndexBuffer
 Interface for a buffer of indices. More...
 
class  Input
 
class  JobSystem
 A glorified thread pool. More...
 
struct  Joint
 Physics Component that represents a joint between rigidbodies. Intended to be connected to a Entity and registered in a scene. More...
 
struct  Mesh
 A set of vertices used for drawing. More...
 
struct  MeshRenderer
 Scene Component for passing drawing data to the renderer. Stores vertex data and references to the texture maps which they belong to. More...
 
struct  Mouse
 
struct  Physics
 
struct  PhysicsEntity
 Links all the data necessary to compute physics calculations. More...
 
struct  PlayerController
 Unused data structure for character controls. More...
 
class  Renderer
 
struct  RenderTag
 
struct  RigidBody
 Physics rigidbody component. Stores the physical parameters of an object. Such as moment of inertia, mass, velocity, angular momentum, air drag, force, torque, etc... More...
 
class  Scene
 A container for entities currently in the Scene. More...
 
struct  SceneRenderer
 
class  Shader
 Container for a shader. More...
 
struct  Shape
 
struct  Simplex
 Storage wrapper for support points. More...
 
struct  Support
 GJK support point structure. stores the resulting support point and the components that made it up. storing the components allows us to use barycentric coordinates to calculate collision normals later without redoing furthest direction calculations. More...
 
class  System
 System with multiple types of components. More...
 
class  SystemBase
 
class  Texture
 Container for texture data. More...
 
class  Texture2D
 Representation of a 2D texture. More...
 
struct  TextureCoord
 Texture Coordinate data. More...
 
struct  TextureLookup
 Wrapper for a texture reference and a texture mapping. More...
 
struct  TextureMap
 List of texture coordinates for indexing vector data. More...
 
struct  TextureSheet
 
struct  Time
 static struct for time trackins More...
 
struct  Transform
 Location, orientation, and scale of an entity. More...
 
class  TypeIdGenerator
 This class will generate ids for the different types we will use. More...
 
struct  UIButton
 
struct  UIElement
 
struct  UIText
 
struct  Vertex
 
class  VertexBuffer
 Interface for a buffer of vertices. More...
 
struct  VertexCollider
 A Collider represented by a set of (convex) vertices. More...
 
struct  VertexCollider2D
 VertexCollider but in 2D. by default, all 2D colliders are non-kinematic triggers. More...
 
class  Window
 Wrapper for the display window. More...
 

Typedefs

template<typename T >
using Uni = std::unique_ptr< T >
 Has stuff for making references a lot more easily shared smart pointer representing a unique object.
 
template<typename T >
using Ref = std::shared_ptr< T >
 Has stuff for making references a lot more easily shared smart pointer.
 
typedef SDL_Keycode KeyCode
 
typedef uint8_t MouseCode
 
typedef std::function< void(void)> func
 Alias for any kind of function pointer.
 
typedef std::uint32_t IDType
 
typedef IDType EntityID
 
typedef IDType ComponentTypeID
 
typedef IDType SystemID
 
typedef std::bitset< 32 > Archetype
 

Enumerations

enum  Allignment {
  TOP_LEFT, TOP, TOP_RIGHT, LEFT,
  CENTER, RIGHT, BOTTOM_LEFT, BOTTOM,
  BOTTOM_RIGHT
}
 enumeration representing alignment of text in a string of text.
 
enum  EventType {
  None = 0, WindowClose, WindowResize, WindowFocus,
  WindowLostFocus, WindowMoved, KeyPressed, KeyReleased,
  MouseButtonPressed, MouseButtonReleased, MouseMoved, MouseScrolled
}
 
enum  EventCategorty {
  None = 0, None = 0, EventCatApplication = BIT(0), EventCatInput = BIT(1),
  EventCatKeyboard = BIT(2), EventCatMouse = BIT(3), EventCatMouseButton = BIT(4)
}
 
enum  Primative { QUAD, CUBE }
 
enum  DrawType {
  POINTS, LINES, LINE_STRIP, LINE_LOOP,
  QUADS, QUAD_STRIP, TRIANGLES, TRIANGLE_STRIP,
  TRIANGLE_FAN
}
 
enum  ViewProjection { PROJECTION, ORTHO, UI }
 
enum  ShaderDataType : uint8_t {
  None = 0, Float, Float2, Float3,
  Float4, Mat3, Mat4, Int,
  Int2, Int3, Int4, Bool
}
 data type enum for shader parameter
 
enum  ButtonState { DEFAULT, HOVER, PRESS }
 

Functions

template<typename T , typename ... Args>
constexpr Uni< T > CreateUni (Args &&... args)
 Creates a unique pointer to a resource.
 
template<typename T , typename ... Args>
constexpr Ref< T > CreateRef (Args &&... args)
 Creates a shared reference to a resource.
 

Variables

const uint8_t MAX_JOB_THREADS = 3
 Maximum number of threads used for jobs.
 
const IDType NULL_ENTITY = 0
 THe NULL_ENTITY can be used if we haven't created the entity at compile time.
 
Transform t
 
Transform t2
 
Transform t3
 
JobSystem jobsys (3)
 
Entity dt_display
 

Detailed Description

Processing Center Handles Text Input and Loading System Objects

This just defines these functions for the static class Theoretically we will use other platforms in which case there will be some macros to do

Enumeration Type Documentation

◆ ButtonState

Mouse hover state of a button.

◆ EventCategorty

Unused

◆ EventType

enum Engine::EventType
strong

Unused

Variable Documentation

◆ t

Transform Engine::t
Initial value:
{
{0.f, 0.f, - 100.f},
{0.f, 0.f, 0.f},
{100.f, 100.f, 0.f},
}

◆ t2

Transform Engine::t2
Initial value:
{
{100.f, 100.f, - 100.f},
{0.f, 0.f, 45.f},
{100.f, 100.f, 0.f},
}

◆ t3

Transform Engine::t3
Initial value:
{
{100.f, -100.f, - 100.f},
{0.f, 0.f, 0.f},
{200.f, 100.f, 0.f},
}