MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / GetLastFrameData

Method GetLastFrameData

Source/Engine/Profiler/ProfilerGPU.cpp:179–207  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

177}
178
179bool ProfilerGPU::GetLastFrameData(float& drawTimeMs, float& presentTimeMs, RenderStatsData& statsData)
180{
181 uint64 maxFrame = 0;
182 int32 maxFrameIndex = -1;
183 auto& frames = Buffers;
184 for (uint32 i = 0; i < ARRAY_COUNT(frames); i++)
185 {
186 if (frames[i].HasData() && frames[i].FrameIndex > maxFrame)
187 {
188 maxFrame = frames[i].FrameIndex;
189 maxFrameIndex = i;
190 }
191 }
192 if (maxFrameIndex != -1)
193 {
194 auto& frame = frames[maxFrameIndex];
195 const auto root = frame.Get(0);
196 drawTimeMs = root->Time;
197 presentTimeMs = frame.PresentTime;
198 statsData = root->Stats;
199 return true;
200 }
201
202 // No data
203 drawTimeMs = 0.0f;
204 presentTimeMs = 0.0f;
205 Platform::MemoryClear(&statsData, sizeof(statsData));
206 return false;
207}
208
209struct GraphicsDumping
210{

Callers

nothing calls this directly

Calls 3

MemoryClearFunction · 0.85
HasDataMethod · 0.45
GetMethod · 0.45

Tested by

no test coverage detected