我的游戏运行了很多计算,有时帧率会在没有明显原因的情况下下降,我想知道什么需要这么长时间来处理。如何创建一个计时器(或其他东西)来打印每个主要操作的经过时间?
UPD:运行默认分析器后,我发现瓶颈在我的 tile 数组循环中。我有大约 50 万个瓷砖,循环要求瓷砖的一个属性,每帧大约 200 个瓷砖。像这样:
if (tileArray[tile].this_tile_is_on_screen)
tileArray[tile].Draw();
当 tileArray 非常大时,这会导致减速吗?关于如何避免它的任何建议?