• Stars
    star
    214
  • Rank 184,678 (Top 4 %)
  • Language
    Rust
  • License
    MIT License
  • Created over 3 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Scion is a tiny 2D game library built on top of wgpu and winit, following the KISS principle.

Scion

Scion is a 2D game library made in rust.

Please note that this project is in its first milestones and is subject to change according to convenience needs and big features coming. You can use Scion as you want although I just made this open source to serve the community not to be a competitor to the current Rust game engine eco-system.

Why this project?

Well, firstly because it's a good way to learn the different aspects of game dev under the hood. Then, because I wanted to create something with modest goals, focused on ease of use and a short list of principles that also serves as a guideline.

Scion is not 'inspired' by any other engine, it's inspired by the needs from real projects.

Goals

  • Strong focus on 2D only.
  • Easy and Fun to use.
  • Clean and readable source code
  • Tauri based Editor

Non goals

  • Ultra/over optimized code and performances. For this, please try other engines or build your own!
  • 3D

Documentations, Tutorials?

Yes, they are planned and being worked on. If you want to see scion in action, check the examples for now.

Why ECS?

Today, ECS is like a 'magic' word for games, game libs and game engine. But ECS is not and must not be considered as a universal answer to multiple questions. I believe that ECS has its strength and its weaknesses. The choice of it here is made because the main target games of this lib at its start were to be able to make:

  • a complex city building game.
  • a pkmn fan game with real time trainer progression and wild pkmn.
  • granular network packets representation && dot simulation games.

Notable dependencies

These are the dependencies this project is relying on. Thanks to these awesome communities, we are able to build this kind of tiny projects.

Pre-requisites

To build Scion, you need to install the required packages for your system:

Debian, Ubuntu, PopOS...

sudo apt install gcc cmake build-essential libx11-dev libxi-dev libgl1-mesa-dev libasound2-dev

Fedora

sudo dnf install gcc cmake make automake gcc gcc-c++ kernel-devel libX11-devel libXi-devel mesa-libGL-devel alsa-lib-devel

Arch, Manjaro...

sudo pacman -S gcc cmake make automake linux-headers libx11 libxi mesa alsa-lib

Run an example

Then, you can run an example:

cargo run --example bomberman --release

Showcase

Taquin Tetris Mario
Bomberman Jezzball New bark town