I can see the game Perfect Storm Light GTA open world mechanics you get to play as a storm chaser
Ah, so first step is to implement GTA. ezpz
I posted here a few months ago with a stress test where I was moving 100,000 GameObjects along a spline using my spline tool Spline Architect. It was possible, but the FPS was on the lower end (10–20 FPS).
In the comments, I said I would be testing GPU instancing and ECS, and I did. I ended up implementing GPU instancing, and now moving 100,000 is very easy, maybe even possible on some of the better mobile devices. I've only tested it on my PC.
I can see the game Perfect Storm Light GTA open world mechanics you get to play as a storm chaser
Ah, so first step is to implement GTA. ezpz
why
It's great for anything that needs to follow a spline. \- Traffic systems. \- Train systems. \- Road and pipe creation tools for games like City Skylines. \- Any spline-based animations, such as the tornado shown in the clip. And you can easily make any of the above things on mobile devices.
If you are not using ECS, How are you updating the GameObject transform position?
I'm using unitys Graphics.RenderMeshInstanced() and then you need any transforms or GameObjects, just a matrix and a mesh.
Impressive!
Thank you!
that is super impressive! well done.
Thanks!
This is insane performance! 🤯 Seeing 100k objects moving at nearly 180 FPS is mind-blowing.
I’m currently building a custom SDK that handles heavy background requests, and my main focus has been making sure it doesn't drop a single frame. Knowing how brutal FPS management can be, what you achieved with GPU instancing here is super impressive!
Great work!
its cool but from the documentation it seems that i tonly works with instanced objects. how would one optimize it had it been objects that are in deform mode? best i see is static batching and removing the splines in builds
Yes, but I don't think it's possible to build a good system with GPU instancing for mesh deformations. When deforming meshes, every deformation is slightly different. For GPU instancing to work, you need many instances of the same mesh so Unity can batch them together. Doing that with deformed meshes just seems impossible. However, Spline Architect does support static batching for all deformed meshes. Just enable static batching, mark the deformation as static, and you're good to go.
Looks super cool. If possible, I think this would be epic as an "anime style" transformation. Like you could turn the objects into little glowing stars, and when the transformation is nearly complete the stars become brightest and then move away from the character's body. In the beginning, the stars could be light blue, but near the end they turn white light. It would be cool for some type of "ghost spirit form" character too.