Just™ Game Engine
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
jng Namespace Reference

Namespaces

namespace  Key
 
namespace  LuaEngine
 
namespace  LuaGlobal
 
namespace  LuaInput
 
namespace  math
 
namespace  Mouse
 
namespace  Platform
 
namespace  Renderer
 
namespace  Renderer2D
 
namespace  RendererAPI
 

Classes

struct  BoxCollider2DComponent
 
class  Camera
 
struct  CameraComponent
 
struct  CircleCollider2DComponent
 
struct  CircleRendererComponent
 
struct  ComponentGroup
 
class  Engine
 Main engine class from which all client applications derive. More...
 
class  Entity
 
class  Event
 
class  EventDispatcher
 
class  Framebuffer
 
struct  GLFWInitializer
 
class  GraphicsContext
 
class  GUID
 
struct  IDComponent
 
class  ImGuiLayer
 
class  IndexBuffer
 
class  Input
 
class  KeyEvent
 
class  KeyPressEvent
 
class  KeyReleaseEvent
 
class  Layer
 
class  LayerStack
 
struct  LayoutElement
 
struct  LuaBoxCollider2DComponent
 
struct  LuaCameraComponent
 
struct  LuaCircleCollider2DComponent
 
struct  LuaCircleRendererComponent
 
struct  LuaEntity
 
struct  LuaRigidbody2DComponent
 
struct  LuaScene
 
struct  LuaScriptComponent
 
struct  LuaSpriteRendererComponent
 
class  MouseButtonEvent
 
class  MouseButtonPressEvent
 
class  MouseButtonReleaseEvent
 
class  MouseMoveEvent
 
class  MouseScrollEvent
 
class  NativeScript
 
class  NonCopyable
 
struct  Rigidbody2DComponent
 
class  Scene
 
class  SceneSerializer
 
class  Shader
 
struct  SpriteRendererComponent
 
struct  TagComponent
 
class  Texture
 
struct  TextureSpecification
 
struct  TransformComponent
 
class  UniformBuffer
 
class  VertexArray
 
class  VertexBuffer
 
class  VertexLayout
 
class  Window
 
class  WindowCloseEvent
 
class  WindowResizeEvent
 

Typedefs

template<typename T >
using Scope = std::unique_ptr< T >
 
template<typename T >
using Ref = std::shared_ptr< T >
 
using u8 = uint8_t
 
using u16 = uint16_t
 
using u32 = uint32_t
 
using u64 = uint64_t
 
using s8 = int8_t
 
using s16 = int16_t
 
using s32 = int32_t
 
using s64 = int64_t
 
using f32 = float
 
using f64 = double
 
using AllComponents = ComponentGroup< TransformComponent, CameraComponent, CircleRendererComponent, SpriteRendererComponent, BoxCollider2DComponent, CircleCollider2DComponent, Rigidbody2DComponent, LuaScriptComponent >
 

Enumerations

enum class  EventType {
  None = 0 ,
  WindowClose ,
  WindowResize ,
  WindowFocus ,
  WindowNotFocus ,
  WindowMove ,
  GameTick ,
  GameUpdate ,
  GameRender ,
  KeyPress ,
  KeyRelease ,
  MouseButtonPress ,
  MouseButtonRelease ,
  MouseMove ,
  MouseScroll
}
 
enum class  TextureFormat {
  None ,
  RGBA8 ,
  R32 ,
  Depth24Stencil8
}
 
enum class  TextureFilter {
  Linear ,
  Nearest
}
 
enum class  TextureWrapMode {
  Clamp ,
  Wrap
}
 
enum class  LuaComponentID : s64 {
  Camera ,
  SpriteRenderer ,
  CircleRenderer ,
  BoxCollider2D ,
  CircleCollider2D ,
  Rigidbody2D
}
 

Functions

template<typename T , typename ... Args>
constexpr Scope< T > makeScope (Args &&...args)
 
template<typename T , typename ... Args>
constexpr Ref< T > makeRef (Args &&...args)
 
std::ostream & operator<< (std::ostream &os, const Event &event)
 
bool readFile (const char *filename, char *data, size_t &size, bool binary)
 
bool writeFile (const char *filename, const char *data, size_t size, bool binary)
 
std::wstring stringToWstring (const std::string &string)
 

Variables

constexpr float PHYSICS_SCALE = 30.f
 
constexpr float PHYSICS_TIMESTEP = 1.f / 60.f
 
constexpr int PHYSICS_VEL_ITERATIONS = 8
 
constexpr int PHYSICS_POS_ITERATIONS = 3
 
constexpr float PI_F = 3.14159265f
 
constexpr double PI_D = 3.141592653589793
 
constexpr double NANO_TO_BASE_MULTIPLIER = 0.000000001
 
struct jng::GLFWInitializer globalGLFWInitializer
 

Typedef Documentation

◆ AllComponents

◆ f32

using jng::f32 = typedef float

◆ f64

using jng::f64 = typedef double

◆ Ref

template<typename T >
using jng::Ref = typedef std::shared_ptr<T>

◆ s16

using jng::s16 = typedef int16_t

◆ s32

using jng::s32 = typedef int32_t

◆ s64

using jng::s64 = typedef int64_t

◆ s8

using jng::s8 = typedef int8_t

◆ Scope

template<typename T >
using jng::Scope = typedef std::unique_ptr<T>

◆ u16

using jng::u16 = typedef uint16_t

◆ u32

using jng::u32 = typedef uint32_t

◆ u64

using jng::u64 = typedef uint64_t

◆ u8

using jng::u8 = typedef uint8_t

Enumeration Type Documentation

◆ EventType

enum class jng::EventType
strong
Enumerator
None 
WindowClose 
WindowResize 
WindowFocus 
WindowNotFocus 
WindowMove 
GameTick 
GameUpdate 
GameRender 
KeyPress 
KeyRelease 
MouseButtonPress 
MouseButtonRelease 
MouseMove 
MouseScroll 

◆ LuaComponentID

enum class jng::LuaComponentID : s64
strong
Enumerator
Camera 
SpriteRenderer 
CircleRenderer 
BoxCollider2D 
CircleCollider2D 
Rigidbody2D 

◆ TextureFilter

enum class jng::TextureFilter
strong
Enumerator
Linear 
Nearest 

◆ TextureFormat

enum class jng::TextureFormat
strong
Enumerator
None 
RGBA8 
R32 
Depth24Stencil8 

◆ TextureWrapMode

enum class jng::TextureWrapMode
strong
Enumerator
Clamp 
Wrap 

Function Documentation

◆ makeRef()

template<typename T , typename ... Args>
constexpr Ref< T > jng::makeRef ( Args &&...  args)
constexpr

◆ makeScope()

template<typename T , typename ... Args>
constexpr Scope< T > jng::makeScope ( Args &&...  args)
constexpr

◆ operator<<()

std::ostream & jng::operator<< ( std::ostream &  os,
const Event event 
)
inline

◆ readFile()

bool jng::readFile ( const char *  filename,
char *  data,
size_t &  size,
bool  binary 
)

◆ stringToWstring()

std::wstring jng::stringToWstring ( const std::string &  string)

◆ writeFile()

bool jng::writeFile ( const char *  filename,
const char *  data,
size_t  size,
bool  binary 
)

Variable Documentation

◆ globalGLFWInitializer

struct jng::GLFWInitializer jng::globalGLFWInitializer

◆ NANO_TO_BASE_MULTIPLIER

constexpr double jng::NANO_TO_BASE_MULTIPLIER = 0.000000001
constexpr

◆ PHYSICS_POS_ITERATIONS

constexpr int jng::PHYSICS_POS_ITERATIONS = 3
constexpr

◆ PHYSICS_SCALE

constexpr float jng::PHYSICS_SCALE = 30.f
constexpr

◆ PHYSICS_TIMESTEP

constexpr float jng::PHYSICS_TIMESTEP = 1.f / 60.f
constexpr

◆ PHYSICS_VEL_ITERATIONS

constexpr int jng::PHYSICS_VEL_ITERATIONS = 8
constexpr

◆ PI_D

constexpr double jng::PI_D = 3.141592653589793
constexpr

◆ PI_F

constexpr float jng::PI_F = 3.14159265f
constexpr