Birb2D is a simple 2D game engine written in C++
Go to file
Toasterbirb 0387b42e85 Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
book Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
docs Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
editor/src Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
games/Ping-Pong Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
include Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
project_template Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
res Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
src Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
tests Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
.gitignore Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
CMakeLists.txt Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
LICENSE Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
Makefile Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
README.md Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
birb_project Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
compile_flags.txt Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00
continuous_testing.sh Initial commit (commit history cleanup) 2021-12-10 08:31:09 +02:00

README.md

Birb2D

Birb2D is a simplistic 2D game engine made by an amateur programmer, with the goal to learn how game engines and development is done in more depth and from a complete behind the scenes perspective.

Documentation coming soon(tm).

Games made with Birb2D

External libraries

  • SDL2
  • doctest (included as a headerfile)

Building

Using CMake

mkdir build
cd build
cmake ..
make -j4

Using make (might be going away at some point)

Editor

make -j4 editor

Ping Pong

make -j4 ping-pong

Run tests

make -j4 test

Roadmap

  • Sprite rendering
  • Timestep
  • Basic input handling (currently at cave man stage)
  • Entity system (Partially functional currently)
  • Basic UI functionality
    • Buttons
    • Text
    • Dropdown menu
    • Slider
    • Input box
    • Resizable UI
      • Resolution independent UI scaling
      • Anchors
  • Sound
  • Animation
  • Physics
  • To be continued...