Skip to content

quentin-dev/microengine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

µEngine

A simple C game engine

Badges

Codacy Badge Gitlab CI Pipeline Badge

Goal

My goal when writing µEngine was to learn about the internal workings of a game engine. µEngine aims mostly to be easy-to-understand. This is certainly not an attempt at a performance-driven or highly-configurable game engine.

Features

Current

  • C 20 compliant
  • Configurable settings
  • Command line arguments
  • Uses a modern build system

Upcoming

By order of likeliness:

  • Configurable levels
  • Cross-platform

Dependencies

µEngine

Documentation

Usage

Command line arguments

  • --help: display µEngine options
  • --settings-file: path to the settings file - defaults to config/settings.toml
  • --settings-format: format of the settings file - defaults to 'toml'
  • '--dry-run': only run the set up and tear down steps
  • '--disable-graphics': disable the graphics manager

Settings

The settings in config/settings.toml correspond to the following table:

Section Name Type Default value
graphics width int 640
graphics height int 480
graphics windowName std::string "MicroEngine"
graphics framerateLimit int 60
graphics enableVsync bool true
graphics fullscreen bool false

Building

µEngine

The "official" build system for µEngine is CMake, but the Makefile is there to provide "aliases" to avoid typing long commands every time.

The usual build steps go like this:

  1. Install dependencies
  2. Clone the repo
  3. make release or make debug depending on what you want
  4. ./build/µEngine

Otherwise you can always follow the typical CMake build steps:

  1. Install dependencies
  2. Clone the repo
  3. mkdir build && cd build
  4. cmake .. && make
  5. ./µEngine

Documentation

  1. Install dependencies
  2. Clone the repo
  3. make doc
  4. Open build/html/index.html with the web browser of your choice

References

A big thanks to the following:

About

A simple C game engine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published