Godot Version
4.6
Question
What does “cull directionallight3D” mean on the visual profler and how do i fix it being so expensive when i have a bunch of character meshes on screen?
forward+ manages 60fps when not recording but my ryzen 5500U test platform hits 90% gpu usage of a vega 6 at 720p. I’d expect to see triangle count, toon shader or 1200 skeleton bones to cause a bottleneck but the visual profiler only points to “Cull DirectionalLight3D”
Did i miss something stupid when setting up my scene? I’m pretty sure i shouldn’t be capping out the hardware with just 12 textured boxes and 24 rigged characters.
I did a second run of testing with more controlled variables and it seems my 190k-triangle meshes are triggering some work on an unknown part of the renderer that does not scale down with LOD levels.
For all of the following screenshots i had the vega 6 iGPU pinned at 700MHz core, 800MHz VRAM, VSync off, viewport at 1280x720.
- 63 instances of humanoid skinned 190K triangle mesh, with LOD bias at 0.001:
- 63 instances of same mesh, but decimated down to 19K triangles, LOD bias at 128:
As you can see here, the 19K triangle version is displaying way more triangles on the viewport and still renders at a higher framerate! What’s going on here, why is a 1k-tris LOD of a 190k mesh heavier than a full-detail LOD of a 19k-tris mesh?