3 ms·
A lot of the safety features of Rust are very attractive in the game dev space, being able to guarantee against the errors Rust does is really nice there, addit
by chris37879 5y ago
A lot of the safety features of Rust are very attractive in the game dev space, being able to guarantee against the errors Rust does is really nice there, additionally, rust is a fairly pleasant language and well suited to the types of tasks game devs do, as well as still having the flexibilty to reach out in to native libraries as needed / be used as a native library itself. Mind you, my rust experience is fairly limited, but I have a project I'm doing right now that this would be just the ticket for if I can get it to work the way I want.
- pjmlp 5y agoGame devs care about the ultimate performance, many old timers would still be writing in Assembly if given the opportunity. So even if security matters, specially in multiple player games, there won't be much Rust love at GDC.
- chris37879 5y agoAbsolutely, but that's one of the nice things about Rust, it benchmarks almost exactly the same as C. The benefits rust offers are almost entirely in their lexer / analyzer, that's the whole point. Dart does a similar thing with its sound null safety, being able to guarantee what can and can't be null / invalid pointer removes the need for the language to test those cases, your CPU doesn't give a shit if you read uninitialized memory and get into a bad state, but your language does, so being able to divert all that checking to compile time is a nice boost in runtime perf.
- the__alchemist 5y agoThose are all great reasons. I guess I'm more looking at it this way: What is the motivation and intended uses for this engine, in light of existing engines? For example, Jon Blow created a new engine for The Witness because he felt it would be easier than bending an existing one to his work. A Plague Tale uses a novel engine to deal with the massive amount of rats. What's the equivalent use case here?
- chris37879 5y agoIt's a lot of technical stuff, but here's the ones that leap out to me specifically: Rust is a really nice to use, low level language. It competes with C in terms of performance, but also with other modern languages in terms of features. It's almost as easy to integrate with rust as it is C, which also makes it attractive since you can re-use known good C libraries instead of having to find / port / bind them yourself. My specific use case is wanting an embeddable game engine I can use inside Flutter, and it's way easier to bind to a 'native' library like this than to use Flutter's platform system to integrate Unity (I know from first hand experience). There's also the tinkering factor: Some people just aren't content with what's there, maybe this library started as a way to smooth over a frustration the original developer had, or just to learn about game engines, or to learn rust even, but then it proved to be useful and liked and has grown a community.