Files
old-core/README.md
2019-02-07 19:11:42 +01:00

82 lines
2.0 KiB
Markdown

# Basic C SDL2 game
This project is a basic C [SDL2][SDL] game that uses [CMake][] as a build system.<br>
It shows how we can develop a basic grid-based game.
It could be used as a base for any SDL2 grid-based game. Just fork it, clone it
and execute the `rename_project.sh` script. You will be prompted to enter the
new project name, the new executable name and the new git repository, but you
can keep the autodetected values. Finally, just commit and push the result to
your repository.
## Dependencies
- [Git][]
- C Compiler (gcc, ...)
- [CMake][]
- [SDL2][SDL] library
- [SDL2_gfx][] library
**On Debian/Ubuntu based distributions, use the following command:**
```sh
sudo apt install git build-essential pkg-config cmake cmake-data libsdl2-dev libsdl2-gfx-dev
```
**Optional packages:**
- [SDL2_image][] library
- [SDL2_ttf][] library
- [SDL2_net][] library
- [SDL2_mixer][] library
```sh
sudo apt install libsdl2-image-dev libsdl2-ttf-dev libsdl2-net-dev libsdl2-mixer-dev
```
## Build instructions
```sh
# Clone this repo
git clone https://gitlab.com/aminosbh/basic-c-sdl-game.git
cd basic-c-sdl-game
# Create a build folder
mkdir build
cd build
# Build
cmake ..
make
# Run
./basic-c-sdl-game
```
***Note:*** To use SDL2_image, SDL2_ttf, SDL2_net or SDL2_mixer, you should
uncomment some instructions in the CMakeLists.txt file and re-execute the
`make` command.
### Open the project with an IDE under Linux
See [IDE_USAGE.md](IDE_USAGE.md) for details.
## License
Author: Amine B. Hassouna [@aminosbh](https://gitlab.com/aminosbh)
This project is distributed under the terms of the MIT license
[&lt;LICENSE&gt;](LICENSE).
[SDL]: https://www.libsdl.org
[CMake]: https://cmake.org
[Git]: https://git-scm.com
[SDL2_image]: https://www.libsdl.org/projects/SDL_image
[SDL2_ttf]: https://www.libsdl.org/projects/SDL_ttf
[SDL2_net]: https://www.libsdl.org/projects/SDL_net
[SDL2_mixer]: https://www.libsdl.org/projects/SDL_mixer
[SDL2_gfx]: http://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx