cross-posted from: https://beehaw.org/post/490551

So I’m currently looking to move my game design project(s) over to Rust because I do truly like the language (albeit being frustrated when I tried using it the last time, but I think that was because I let things get complicated without blackboxing them). However, I’m looking for a good framework or engine before diving in with OpenGL/Vulkan and getting my hands dirty with that system (which is what I was using initially).

For the record, one of my games is going to be in the style of Octopath Traveler and the other I’m looking at either doing the same or doing a voxel game. Game 1 is a JRPG and Game 2 is gonna be a combo Tactics/Puzzle game.

I’ve bounced back and forth a bit with both game engines in Rust but also just implementations for this project in general (Game 1, that is). I’ve moved from C to C++ to Unreal Engine to Rust back to C, then to C++ then now back to Rust again. Within Rust specifically, like I said, I did use I believe it was glium and egui to for my OpenGL calls and GUI respectively, but this time around, I’ve looked at specifically Bevy and Fyrox, but I’m not too settled on either. Fyrox seems like a lot to deal with for the projects I’m going for (which is one of the reasons I switched off of Unreal Engine), but Bevy is a little bit difficult to get a handle on with my project (Game 1).

Does anyone have any advice for me on how to go about this? Thanks in advance!

Edit: Per this comment, I do agree that it’s a good idea to find something to work with and stick with it to make something good. I like Bevy and its modular plugin system but outside of the tutorials (which are quite small and focused) and examples from plugins, I don’t really know how the engine works. I also don’t really have any idea how to combine these plugins (e.g. I have a plugin for embedding assets in my executable, a plugin for animating sprites from a sprite sheet, a plugin for loading 2D sprites into a 3D scene, etc.) into what I want to do. I’ll try to do some more reading, but if anyone has a better option, let me know.

  •  tobikl   ( @tobikl@feddit.de ) 
    link
    fedilink
    English
    2
    edit-2
    1 year ago

    Hi Cass.Forest,

    my road was a little bit different: I first started learning Rust, then decided that it would be nice to develop a game using the language. For me its the first time developing a game (at an absolutely glacial pace), and it was a given from the beginning that it would be done in Rust. I have no comparison to game development in other languages.

    When I started there weren’t a lot of options, but Bevy had just been released and thats what I started and stayed with. My game is a 2D squad- and round-based combat game.

    I found Bevy to be very accessible to me, its not too complicated to get something up and running, I found the documentation to be quiet good. So far, again, without any experience in this field, I was able to solve most problems quiet fast with a combination of documentation and community.

    I freely admit that in the beginning I often copied code and had no clue how the hell stuff was working. What did the trick for me there was taking a step back and reading about Entity-Component-Systems in general. After I had understood those principles, everything in Bevy made a lot more sense to me.

    So (again, without having much experience or comparisons) I can highly recommend Bevy for Rust game development. I hope this helped ;)

    • For the past few days, I’ve actually been working through the Bevy Chess example and updating it to Bevy 0.10.1 on my fork of it here. Pretty much the only thing the tutorial lacks is embedding images, mostly because I don’t remember how to do that with GitHub’s markdown 😅.

      I do think I’ll use Bevy now that I have a better understanding of how the ECS system works, but thank you for the recommendation!