3 releases
0.1.2 | Feb 24, 2023 |
---|---|
0.1.1 | Feb 23, 2023 |
0.1.0 | Feb 23, 2023 |
#835 in Graphics APIs
130KB
3K
SLoC
A framework for making 2D games with rust, uses SDL2.
This framework is made out of three parts:
- nze_game_sdl - for hiding the implementation details of sdl2 in rust. Load resources (texture, font, audio), rendering, 2D camera, audio playback, drawing tilemaps User Input, Windowing
- nze_tiled - (in lib dir) for loading Tiled maps
- nze_geometry - (in lib dir) for 2D geometry types and functions
Features
- window creation and keyboard/mouse/controller input
- loading and drawing textures and fonts to the screen
- loading and drawing Tiled maps
- 2D camera for scaling and moving drawn textures and fonts
- loading and playing music and sound effect
Setup
- Clone this repository
- Install Rust if you haven't already
- Install SDL2, SDL2_image, SDL2_mixer, SDL2_ttf (see sections below for details)
- go to the root directory of this project and run
$ cargo run --example main
Installing SDL2 on debian-based systems
Run the following command
$ sudo apt install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev
Installing SDL2 on other systems
Follow the instructions for your system given in the repo for rust-sdl2, but remember you also need to get sdl2_mixer, sdl2_ttf and sdl2_image libraries.
Dependancies
Projects using this framework (older versions)
- Bunny Patch - for GGJ2023 - Simulation
- Coupled Explorers - for LD51 - Platformer
- Hex - for a 48hr Jam - Falling Block Puzzle
TODO
- Better resolution controls
- Fade effects for audio
- Add point/line render options
- make (tiled, font, audio) dependancies optional
Dependencies
~17MB
~366K SLoC