Page 2 of 2
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Wed Dec 12, 2018 2:34 pm
by devsh
Rendering large models, like 1GB meshes of complete cars seems to just load the GPU so much. I guess its still rendering all the sub-meshes even if they are not finally visible.
We've actually improved the performance so much that we've canned occlusion queries and just keep normal per-node frustum culling (exception is for instanced stuff where we do GPU-based frustum culling).
We have plans to do per-meshbuffer culling very soon.
So you made a lot of change to Irrlicht 8.4 for parallel processing then? Does it also handle sub-mesh rendering so as not to render unless visible?
We've done amazing changes to the ways that assets are loaded (meshes and images) as well as how you create GPU objects from CPU data.
Its quite hard to explain without writing pages of A4 (which has already been written in an open google doc linked to on FB and in my thread)
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Thu Dec 13, 2018 11:43 am
by robmar
Sounds great, for sure a lot of hours of sweat!
Did any Irrlicht version support per-meshbuffer culling? I haven't seen that in 1.7.3, which is the main release I use.
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Mon Dec 17, 2018 12:21 pm
by mant
Multiple render targets sample is up!
I'm implementing skeletal animation (GPU skinning).
https://gitlab.com/InnerPieceOSS/Saga3D ... er/samples

Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Mon Dec 17, 2018 1:01 pm
by devsh
Why are you still outputting depth to a separate color Render Target?
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Wed Dec 19, 2018 1:50 pm
by mant
I only copied from a depth buffer to a color image for displaying in this sample.
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Thu Dec 20, 2018 9:39 am
by mant
Animated mesh support and GPU skinning sample is done, some small bugs left then I can merge:
https://gitlab.com/InnerPieceOSS/Saga3D/tree/anim
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Wed Jan 23, 2019 2:21 pm
by robmar
Hi, what's the latest on GPU skinning, is it supported in 1.8.4 or elsewhere? Edit: okay I see 1.8.4 does not change the anim system at all.
AutoDesk and AssimpViewer both perform skinning about 8 x faster than Irrlicht, so that may be code efficiency rather than doing the skinning math in the vertex shader.
Has anyone plugged Assimps animation system into Irrlicht?
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Wed Feb 20, 2019 5:54 am
by mant
GPU Skinning is done.

Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Wed Feb 20, 2019 5:56 am
by mant
robmar wrote:Hi, what's the latest on GPU skinning, is it supported in 1.8.4 or elsewhere? Edit: okay I see 1.8.4 does not change the anim system at all.
AutoDesk and AssimpViewer both perform skinning about 8 x faster than Irrlicht, so that may be code efficiency rather than doing the skinning math in the vertex shader.
Has anyone plugged Assimps animation system into Irrlicht?
I use Assimp's animation system to get bone matrices and send to the vertex shader.
Re: Saga3D - Modernizing Irrlicht with Vulkan
Posted: Fri Feb 22, 2019 11:27 am
by mant
push_constant, SSBO, compute shader is implemented
Re: Saga3D - Re-creating Irrlicht with Vulkan
Posted: Thu Mar 21, 2019 9:38 am
by robmar
Good to read the news! Irrlicht with Vulkan working well would be great!
On the GPU skinning side, how mahy bones can your vertex skinner handle? I read that the shader is limitied on passing 256 floats, 64 matrices max.
Re: Saga3D - Re-creating Irrlicht with Vulkan
Posted: Wed Mar 27, 2019 4:58 pm
by mant
Hi robmar. I need to clarify that this is not Irrlicht at all. It's a new library indeed, see README for clarification on Irrlicht.
I actually use 64 as the max bone count. But this a really soft limit since you can pass matrices to a shader in any way, the sample is only demonstrating an example.
Re: Saga3D - Re-creating Irrlicht with Vulkan
Posted: Thu Mar 28, 2019 12:35 pm
by robmar
Okay, so your driver can't be used with Irrlicht.
64 bone sis enough for games