RG3D (Rust game engine) feature highlights
rg3d.rs
rg3d.rs
If you want to support the project, please consider to either do a monthly donation via Patreon (https://www.patreon.com/mrdimas) or one-time via BuyMeACoffee (https://www.buymeacoffee.com/mrDIMAS)
Also join the Discord server, I'm looking to grow the community - https://discord.gg/xENF5Uh and check rg3d on GitHub https://github.com/rg3dengine/rg3d
This is amazing and is something I'm interested in using for my startup. I'd be glad to pitch in!
I think the biggest missing thing that I notice in new engines is that no one is seriously making a game with them. I know, making the engine is more than enough work already, but if it's not you having _somebody_ aiming to release a product made with the engine ought to be somewhere in your priorities. You might have lot of interesting tech, but unless end-user developers are using it in real ways you might find out later you're not headed in the right direction and meeting real needs. You can see this with the difference in emphasis between Unity (not game developers) and Unreal (Epic definitely are), to Unreal's benefit. And I say that as someone who uses Unity in my full-time job every day.
... but of course, you need a base feature-set to attract devs. So it's a big of a chicken-and-egg problem.
Is this the most mature Rust game engine? There seem to be a lot of entrants in that race now. This one has the best video demos with technical rendering specifics, AFAICT.
If a coalition of companies were to band together and build an open source engine, what tech should they back, or is there no good starting point?
Amazon was open sourcing Lumberyard, right? Is that more mature? (I'd love to see Rust take off and "win" over C++, but there's a lot of ground to make up... Especially if you're chasing after Unreal.)
It is.
> There seem to be a lot of entrants in that race now.
None of them are anywhere close to rg3d. Amethyst is kind of dead.
Not sure on "coalition of companies" but godot[0] is probably close.
If you want to see a skilled team with strong leadership building on a carefully designed foundation, and you’re not afraid to wait years for the payoff, there’s Bevy, which has made a splash on HN a couple times over the past year.
If you want an engine that’s comfortably mature today, and you want it to be written in Rust for no particular reason, then RG3D is the clear winner.
Now, that's not a game engine. It's just a graphics API, and a low level one. One level up from that is Rend3, which handles GPU memory allocation and queuing for WGPU. At this level, you put in meshes, textures, material parameters, and transforms. Images come out. No rigged mesh yet, so no characters.
I've been using Rend3/WGPU, and here's some early video.[1] This is a small area of Second Life. I'm working on the issues of handling very complex user-created content efficiently. Most games are constantly reusing the same textures and objects, but Second Life user created content is not like that.
Frankly, it's to soon to be using these libraries for a project with a deadline.
>A: No. It uses generational pools (arenas) which are optimized for efficient memory management to retain more static type safety.
So do you plan to support it anyways?
Rust is my most-used Language, but my pattern-matching brain is cautious about projects that have "uses Rust" as a primary requirement.
So even if security matters, specially in multiple player games, there won't be much Rust love at GDC.
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.
I'm very impressed and I have no idea how I could miss such a project.
I looked into rust game engines last year for work and I had no idea you existed. We were very heavily biased towards ECS, which made us pick Bevy, but the level of maturity of your project would have made for a good contender.
I'd recommend adding your project to: https://github.com/rust-gamedev/arewegameyet