69 lines
1.7 KiB
Markdown
69 lines
1.7 KiB
Markdown
# Birb2D
|
|
Birb2D is a small and delicate 2D game engine made as a learning project.
|
|
|
|
Birb2D is not meant to be *production* quality, but there's a chance it can be used to make some games. Expect segfaults and all that usual stuff that come with newbie hobbyist C++ projects. If anyone ever picks this thing up and actually does something with it, definitely send it [my](https://github.com/Toasterbirb) way. I'd love to see it happen. Also any ideas or suggestions are welcome. Just know the scope, I'm not remaking Unity or Unreal Engine.
|
|
|
|
## Projects made with Birb2D
|
|
- [Flappy Birb](https://github.com/Toasterbirb/Flappy-Birb)
|
|
- [Pong](https://github.com/Toasterbirb/Pong)
|
|
- [SeedSplit](https://github.com/Toasterbirb/SeedSplit)
|
|
- [Breakout](https://github.com/Toasterbirb/Breakout)
|
|
|
|
## External libraries
|
|
- SDL2
|
|
- SDL2_image
|
|
- SDL2_ttf
|
|
- SDL2_mixer
|
|
- SDL2_gfx
|
|
- [doctest](https://github.com/doctest/doctest) (included as a headerfile)
|
|
|
|
## Building
|
|
### Generate documentation
|
|
```sh
|
|
doxygen doxygen_config
|
|
```
|
|
|
|
### Shared library
|
|
```sh
|
|
make -j$(nproc) engine_lib
|
|
```
|
|
|
|
### Pong
|
|
```sh
|
|
make -j$(nproc) pong
|
|
```
|
|
|
|
### Run tests
|
|
```sh
|
|
make -j$(nproc) run_tests
|
|
```
|
|
|
|
### Installation
|
|
Simply compile the shared library and copy the headerfiles with
|
|
```sh
|
|
make -j$(nproc) install
|
|
```
|
|
to uninstall, run the following
|
|
```sh
|
|
make uninstall
|
|
```
|
|
|
|
## Roadmap
|
|
- [x] Sprite rendering
|
|
- [x] Timestep
|
|
- [x] Basic input handling (currently at cave man stage)
|
|
- [x] Entity system (Partially functional currently)
|
|
- [ ] Basic UI functionality
|
|
- [x] Buttons
|
|
- [x] Text
|
|
- [ ] Dropdown menu
|
|
- [ ] Slider
|
|
- [ ] Input box
|
|
- [x] Resizable UI
|
|
- [ ] Resolution independent UI scaling
|
|
- [ ] Anchors
|
|
- [x] Sound
|
|
- [x] Animation (sprite based animations supported)
|
|
- [ ] Physics
|
|
- [ ] To be continued...
|