@MartinTilo, There is one thing i want to discuss,
I am doing profiling of the game through a script at run time on mobile device.
I am saving the raw data , per frame json on device when i stop profiling.
I am using ProfilerRecorder class to get a lot of data.
var gcMemoryRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Memory, “GC Reserved Memory”); var mainThreadTimeRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Internal, “Main Thread”, 15);
I also used FrameTiming Manager method to collect data.
My observation is these 2 techniques gives different output about cpu and rendering and maybe more module. Difference i see in these data : like RenderThread , draw calls count, verts, tries count etc… I compared it with stat window and with profiler recorder class data.
so for now, i only used profilerrecorder class for data collection..
Another thing is :
{
Profiler.logFile = binaryLogPath;
Profiler.enabled = true;
Profiler.enableBinaryLog = true;
}
earlier i set Profiler.enabled = false; and did profiling. i was able to save the raw data locally but later on some cases or device, i didnt get the raw data.. dont know why ??
Then i did this : Profiler.enabled = true; and now i get the raw data every time .
and when i load the raw data on profiler window, i only see the data of cpu , no memory, audio, render , physics etc….
`if (baseProfiler.enableCpuGpuProfiling)
{
mainThreadRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Scripts, “Main Thread”);
renderThreadRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “CPU Render Thread Frame Time”);
gpuFrameTimeRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “GPU Frame Time”);
}
if (baseProfiler.enableMemoryProfiling)
{
gcAllocatedMemoryRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Memory, “GC Allocated In Frame”);
gcReservedMemoryRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Memory, “GC Reserved Memory”);
systemUsedMemoryRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Memory, “System Used Memory”);
}
if (baseProfiler.enableRenderProfiling)
{
drawCallsRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “Draw Calls Count”);
trianglesRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “Triangles Count”);
verticesRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “Vertices Count”);
batchesRecorder = ProfilerRecorder.StartNew(ProfilerCategory.Render, “Batches Count”);`
This is how i get data…
Do you know what could be the problem ?