我想仅在某些时间步骤进行个人资料。这是为了游戏。
我的游戏循环是这样的(大大简化): -
for(int t=0;t<1000000;t++){
doGameLoop(); // logic -> physic -> graphic -> sleep -> clear allocator ...
};
在Visual Studio中,如何分析doGameLoop()
,例如仅在43<=t<=45
时?
我希望在-O2
开启时发布(发布模式)。
现在,我只能通过
分析整个程序
(Top bar) > Debug > Performance Profiler > CPU Usage
。
它将显示类似https://blogs.msdn.microsoft.com/devops/2015/10/29/profile-your-cpu-in-the-debugger-in-visual-studio-2015/的图形树。
我不介意使t
成为全局变量的解决方案,或在doGameLoop()
附近插入一些特定于Microsoft的代码段。
我不想改变代码的其他部分。
(我已经搜索了几个月的解决方案。)
我听说QueryPerformanceCounter
可能有帮助,但我不知道。