piston
A modular game engine written in Rust (by PistonDevelopers)
ggez
Rust library to create a Good Game Easily (by ggez)
Our great sponsors
piston | ggez | |
---|---|---|
11 | 50 | |
4,538 | 4,089 | |
0.8% | 1.7% | |
4.9 | 5.3 | |
5 months ago | 3 days ago | |
Rust | Rust | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
piston
Posts with mentions or reviews of piston.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-15.
-
placing pixels
Well, it depends on how you use it; writing to an image buffer isn't much less efficient than writing to any normal buffer (in fact, although displaying your scene to a window efficiently is important, your main bottleneck will be the actual ray tracing loop). You may want to read this article for a practical example of using an ImageBuffer to create and draw a texture with Piston. Other window backends you could use, apart from pixels which was already mentioned in another comment, include minifb and Mini GL, though I haven't personally used them.
-
Ways to create game engines
And I really like generic systems where you can create a lot of different things. A program that interested me is Piston (https://github.com/PistonDevelopers/piston), I haven't researched it in depth yet, but the concept of being able to create several things with a base and different modules is very interesting
-
Really frustrated. [Warning: Bit of a negative rant]
Try Piston
-
I made my first GL project using Piston.
Check out their homepage, https://piston.rs, they even show off some great examples of how their library has been used!
So, I made a Tweet not too long before I made this post, and it was me showing off my first OpenGL project using Piston. And I attached two images.
-
Emulating the Sega Genesis - Part II
Before I could implement the display output, I needed something to draw the images onto. There are quite a few Rust crates available to create a GUI window and update it with 2D graphics. Most of these are of course intended for making games, and also include ways of getting key presses as input, which I'll also need. I looked at Piston, which I've used before on other projects, Macroquad, which also supports web assembly as well as desktop targets, Pixels, which is intended specifically for 2D games, and Minifb, which is also specifically for 2D applications, but is much simpler. I also tried out libretro, which is specifically made for video game emulation, but I found it much more restrictive than the others because of it's narrow focus.
-
I'm a "low-level, terminal-only" kind of developer, completely new to the game dev world. I've been working on a 2D platformer in my spare time. Can you explain to me what I'm missing out on, by not using a "game engine"?
Depends on my goals. I year ago I wanted to learn rust, so I used piston for a gamejam. (There are several rust engines including bevy, piston, amethyst. They probably vary in quality, features, and constraints.) Piston was a terrible experience because compilation is slow even on that tiny project.
- Question about rust graphics libraries
-
Rust Game Engines (again)
Piston
ggez
Posts with mentions or reviews of ggez.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-26.
-
NANOVOID Devlog #1: Lua Scripting
I'd say to use either https://macroquad.rs/ or http://ggez.rs/, they're both basically "all that you need for 2d". I've used macroquad extensively, but that was mainly because ggez was undergoing a big rewrite to wgpu which is now complete with 0.8.
- Hey Rustaceans! Got a question? Ask here (12/2023)!
- Hey Rustaceans! Got a question? Ask here (10/2023)!
-
Hey Rustaceans! Got a question? Ask here (9/2023)!
ggez also looks pretty straightforward and simple to get graphics moving around quick and easy.
-
Hey Rustaceans! Got a question? Ask here (8/2023)!
https://github.com/ggez/ggez/issues/1158 For this is it as simple as changing the methods to take &Image, .clone() it inside and use that or is cloning missing the point of the change?
-
Hey Rustaceans! Got a question? Ask here! (51/2022)!
Sounds like https://ggez.rs/.
-
Sokoban clone written in Rust using ggez
Nice, can you add it to the list of projects https://github.com/ggez/ggez/blob/master/docs/Projects.md ?
-
ggez 0.8.1 - only text is rendering; help needed please
ggez simple example (not working): https://github.com/ggez/ggez/tree/master/examples/01_super_simple.rs ggez bunnymark (works in batched mode only): https://github.com/ggez/ggez/blob/master/examples/bunnymark.rs wgpu example (working): https://github.com/gfx-rs/wgpu/tree/master/wgpu/examples/hello-triangle
- SDL2 vs Winit/Pixels/CPAL/etc. Is going "native" really worth it?
-
[Beginner] Are there any easy 2d graphic libraries?
I’ve used https://ggez.rs for side projects and have been happy with it.
What are some alternatives?
When comparing piston and ggez you can also consider the following projects:
bevy - A refreshingly simple data-driven game engine built in Rust
macroquad - Cross-platform game engine in Rust.
Tetra - 🎮 A simple 2D game framework written in Rust
Amethyst - Data-oriented and data-driven game engine written in Rust
rust-sdl2 - SDL2 bindings for Rust
love - LÖVE is an awesome 2D game framework for Lua.
specs - Specs - Parallel ECS
RG3D - 3D and 2D game engine written in Rust [Moved to: https://github.com/FyroxEngine/Fyrox]
rust-sfml - SFML bindings for Rust