Skip to content

jamjarlabs/JamJar

Build Documentation Status MIT License

JamJar

JamJar is a 2D, C++ game engine that primarily targets running in the browser through web assembly.

Features

  • Entity-Component-System design.
  • Messaging through a centralised message bus.
  • Modular design, choose to remove parts of the engine and replace parts.
  • Customisable render pipeline.
  • Rendering to a WebGL2 canvas.
  • Interpolation between frames.
  • Orthographic camera projection.
  • Sprites.
  • Image loading from filesystem (virtual or otherwise).
  • Input using SDL2 events (keyboard and mouse).
  • Utility methods around translating input events to useful world information.
  • Box2D based Physics system.
  • Collision detection using Box2D.
  • Window management system.
  • Fullscreen control.

Getting Started

// TODO: add this guide

Documentation

See the documentation for guides and architecture details.

Examples

See the examples directory for working code examples.

Dependencies

Dev Dependencies

Contributing

See the contributing guide.

Releases

No releases published

Packages

No packages published