Babylon.js
Babylon.js copied to clipboard
Profiler tab in NME
A VS and FS profiling tab where I can see the complexity of the generated shader. Basically, I want to know the estimated number of instructions, the number of texture sampling and the number of varying. This will help find performance bottle necks.
@PatrickRyanMS comment : I think this would be really useful even in the early design of a shader so we can make confident tradeoffs early rather than trying to optimize at the end which could invalidate a bunch of work that would not have been necessary had we known going in that the performance trade-offs were too high.
@SahilTara - will the performance tab you are creating be able to address this?
I think the tool that @SahilTara is building could be expanded to cover this need, but right now we don't capture this kind of data around a particular shader in the inspector so that data would not be available to the profiler tool. Even the custom flags that can be captured in the profiler would not cover us as they do not reach into the shaders.
We would probably need to add tooling to NME to provide this data which could then be tracked because adding data capture per shader in a scene could potentially be a nightmare for UX in the inspector. Allowing the user to enable flags in NME or even add profiling nodes into the graph could be an elegant way to handle capturing data for the profiler.
However, I love the idea of the profiler and NME working together rather than needing a separate solution for shader profiling.
No traction. Feel free to re-open.