I hope that people don't get too discouraged about Rust game dev from the other article on HN today. I've been making a game in Rust for the past few months, and I'm glad I chose the language I did. It's true that there were a few spots I had to think creatively to work with the borrow checker, but it's kept me away from several foot guns, and forced me to be thoughtful about how I manage my game state, which will be extremely helpful when I implement multiplayer.
I complain a lot about the ecosystem, but I'm doing big-world with remote content loading, which really exercises the underlying machinery. Most people don't push it that hard.
Fyrox is an impressive achievement. It has a editor, so there's some hope for non-programmers getting things done. That helps a lot. Much of the power of Unreal Engine is in the editor, not the runtime.
Firox is still OpenGL, which is kind of retro at this point.
I agree with OpenGL being retro — that's why I'm using it too ;)
It's the only stable, copiously documented, low level (so less assumptions, not a game engine or even library) graphics API that's still usable by humans and relatively ergonomic. It dying out would be a tragedy — I've really loved learning OpenGL 4.6 tbh. Hopefully Zink keeps it available into the future!
As a developer who has used Unreal and Unity, both tools often encounter crash issues during project development. Therefore, I'm looking for a reliable game engine in the stable Rust language. Compared to other game engines in Rust like Bevy and Macroquad, Fyrox has made significant efforts to reduce programming overhead, which I believe is a promising direction.
People will complain no matter what title you choose—but I think the page's <title> element, "Fyrox - A feature-rich game engine built in Rust", is pretty good
The creator, Dmitry, is active on HN. Ask questions and he will respond. He used to work at Larian on devtools for Baldur's Gate 3 IIRC. That was mostly in C++. He is now a diehard fan of Rust. I'm inclined to think that the conclusion of the recent HN thread bashing Rust gamedev were premature.
The general conclusions on that thread are seemingly agreed upon by most of the Rust community, insofar as I've seen. YMMV, but I don't think they're premature.
That said, there's no real reason it can't be improved over time.
Why would it? Haskell's a super nimble language in my experience. If you commit to high-level constructs it's like a Ruby but with a compiler that catches so many errors and enables type-safe metaprogramming.
And it has an amazing bytecode interpreter that you could use in dev for super fast iteration + hot reloading.
I do that now in my Haskell engine :) but I'm only starting to build all the bog standard gamedev engine stuff. Would be nice to build on an engine that just provides good infra without caring about logic.
The dominant conclusion of that other thread, at least as far as I've seen, is one that I concur with — namely, that Rust is absolutely not good for writing game logic, but is probably quite good for writing game engines, and this engine seems like a step towards making that distinction, since it doesn't work like a framework, where you write your game logic in Rust and compile it with the game engine into a single static binary, you instead have the game engine be a separate executable that you then load your game logic as plugins into. The plugins are still currently written in rust, but I'm sure you can see how that could change.
The vast majority of the reactions from Rust devs to that article - from core language people to random devs like myself - is general agreement. It's understandable why the overzealous-Rust-dev stereotype exists, but I would feel comfortable saying it's really not on display for this saga.
The article was incredibly well written and composed, and if you[0] haven't read it, I highly encourage doing so. I really hope it helps push for improvements at all ends of the spectrum.
Given the other discussion talking about "tech before games" and design issues inherent in Rust, you are correct; I am very unlikely to pick up this game engine.
> The dominant conclusion of that other threat, at least as far as I've seen, is one that I concur with — namely, that Rust is absolutely not good for writing game logic, but is probably quite good for writing game engines, and this engine seems like a step towards making that distinction, since it doesn't work like a framework, where you write your game logic in Rust and compile it with the game engine into a single static binary, you instead have the game engine be a separate executable that you then load your game logic as plugins into. The plugins are still currently written in rust, but I'm sure you can see how that could change.
But to each your own! I'd certainly recommend Godot or Unreal over any Rust engine every day of the week as well, just like I use SDL2, OpenGL, and imGUI over pure Rust solutions even in my own Rust game engine work.
I mean this is likely somebody seizing the opportunity and posting relevant thread, although a 10 minute old thread with one upvote being the top thread on the front page is suspicious.
I'm the original poster, and yeah, I read the recent much bigger post about rust game development, and it linked to this engine, so I followed the link and checked this engine out, and it seemed really cool and like at least partially and actually relevant solution to the problems being discussed in the other thread, as well as criminally underrated in comparison to the hype around bevy, or even amethyst, so I decided to post it. I would have done so even if I wasn't getting any points from it! :D