Obviously I can get the general idea by the name alone, but in more detail, what exactly does ScheduleGeometryJobs refer to? How do I know which “jobs”, and what kind, and which geometry it is talking about?
I’m on Mac and the GPU profiler won’t work. Are geometry jobs something that would normally show up in the GPU profiler, therefor I’m missing half the picture?
Bump. Still battling with this 2 weeks later. Is anyone able to tell me where to look to either profile ScheduleGeometryJobs or have some idea of what it is?
Thanks for the reply. I am using neither post effects nor particles active when these occur. I do have both in the scene, however both are always disabled.
I did some digging in our code base. Some things that could trigger this are:
uGUI on dirty canvases
SkinnedMeshRenderer::UpdateSkinnedMeshes or the Profiler Sample “MeshSkinning.Update” if GPU skinning is not possible
Particle Systems for Mesh, Billboard or Trail particles (scheduled from with code instrumented with the Profiler Marker named: “ParticleSystem.ScheduleGeometryJobs”)
The Gizmo Renderer (Editor Only)
The Tilemap Renderer (Scheduled from within “TilemapRenderer.Render”)
The Sprite Renderer (Scheduled from within “SpriteRenderer.RenderMultiple”)
The Flare Renderer (Scheduled from within “Flare.Render”)
The Halo Renderer (Scheduled from within “Halo.Render”)
Dynamic Batching (Scheduled from within “Batch.DrawDynamic”)
The Billboard Renderer (next to particles this is also use for trees and foilage)
So… this is quite all over the place…
Try looking for any of those samples (names in quotes) to check if that could be your case. I hope this info helps you hunt this down. Also check the activity on other threads around the time this sample starts.
Thanks again, @MartinTilo That’s super-helpful to know what things can trigger “ScheduleGeometryJobs”. Especially since my google-fu is failing me on this one.
At the time of my original post, I had only implement 2 of those (Particle System and Dynamic Batching) so hopefully this will now be a simple process of elimination. My thinking is it’s Dynamic Batching since my particle usage is very minimal.
Will report back if one of these helps shed some light and clear things up!
@cassius Were you able to discover anything more about ScheduleGeometryJobs? This cutie is also popping up in my profiler.
Also, does anyone know how to disable dynamic batching in 2020.2? The docs say it’s under Player Settings → Other Settings but I was only able to find the checkbox for static batching.
EDIT:
Perhaps the dynamic batching setting is now hidden under “Graphics Jobs”:
Sorry for the delay. Honestly, I don’t exactly remember now - and forgot to report back. BUT I believe (with about 80% confidence) that in my case it was the dynamic batching. Unfortunately I can’t verify that right now as I have since reconfigured the way my dynamic objects work and are batched, and on top of that have switched from Mac to Windows.
If you’ve managed to figure yours out I’d be happy to hear.