Skip to content

claby2/camlcade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

96 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿซ๐ŸŽฎ camlcade

Warning

Still in development. Not ready for production.

camlcade is an OCaml game engine. It features an archetype-based entity-component system (ECS) and an OpenGL-based renderer.

Features

  • Archetype storage
  • Composable plugins
  • User-defined GLSL shaders
  • Custom meshes

Examples

To see how to use camlcade, see examples/.

Run an example with:

# Runs the "shapes" example
dune exec shapes

Development

Project Structure

lib
โ”œโ”€โ”€ ecs       # Entity-component system
โ”œโ”€โ”€ graphics  # OpenGL-based renderer
โ”œโ”€โ”€ input     # Input and event handling
โ”œโ”€โ”€ math      # Math utilities
โ”œโ”€โ”€ storage   # Sparse storage
โ””โ”€โ”€ transform # Transform component

Quick Start

  • Build: dune build
  • Test: dune test
  • Benchmark: dune exec bench
  • Documentation: dune build @doc (see _build/default/_doc/_html/index.html)