Performance Comparison: Rust-built apes.io vs. BabylonJS

I’ve recently come across a multiplayer game called https://apes.io which is built using Rust for the web.

I’m intrigued by its performance characteristics and was wondering if it’s possible to achieve similar results with BabylonJS.

Has anyone here tried building something of similar complexity with BabylonJS?

Hi @ertugrulcetin, I checked out the game you mentionned and having used Babylon over a year now I see no reason why it could not achieve similar results/performance.

Check out these project also, they are many more of that level of quality out there I’m sure.

Personnaly, I’ve also been working in my free time, on this project GitHub - oriongunning/t5c: Building a open source multiplayer 3d rpg using babylon.js and colyseus and giving more time and ressources, I could improve it to that type of quality I’ve no doubt.

Babylon.js is truly great to work with once you get the hang of it, and I’m sure it will grow in popularity as time goes on: The ability to code in typescript or js, open your browser and play instantaneously is amazing (no more waiting on unity to compile thank god…).

Anyway, just my 2 cents :slight_smile:

2 Likes

Yes, achieving the same performance might be possible, but these examples you’ve shared are far from having similar performance characteristics.

If I may, what performance characteristics are we talking about? Can you clarify?

There’s a vast terrain with numerous enemy NPCs and multiple players interacting simultaneously. Impressive physics are at play, and despite all these concurrent activities, I don’t notice any drop in FPS. Achieving such performance in a 3D web game is generally quite challenging.

Agreed, it is a very polished action game and runs very smoothly (I would love to see a dev blog on how they built it).

Shell Shockers is the only one I know built with Babylon.js with that type of gameplay, did you check that one?

Then again, if I take my project as an example, and on a recent test, I can have 10 players running arround casting, talking, and moving around, all with 30-50 monsters moving around with their own behaviour, on a small 3d map, and running above 60 fps. Those are good numbers for a 3d web engine. And there is massive improvement I could add like VAT animations and instances to improves these numbers and there is probably many other things I could do but just don’t know about them yet.

So to answer your question, in my experience (only a year though), in 2023 you can definitely build something similar to apes io with Babylon.js.

It’s not engine-specific features. It’s more like general rules/patterns. Like VAT, Instancing etc. Babylon gives you a lot of “common” features which you can use to make performance better.

just had a few games of shell shockers :wink: thanks

Use webgpu with render bundles