你可能遇到过:一个游戏,在自己的主机上调试没问题,效果挺好,但是在别人的电脑上运行就卡的不得了。
这是为啥?
举个例子,如果一个游戏中,用一个 for 循环使 NPC 保持移动,如果在好的电脑上,for循环的执行速度很快,1s执行完一个循环;但是在差的电脑上,2s执行一个循环,那么这样下来,单位时间过后,两台电脑上的 NPC 移动的路程不同。
那么就需要用clock()函数。把循环开始时的时间记录下来,再在循环末尾得到现在的时间,相减,看这个循环耗时多久,然后据此推算出这个时间内,NPC 本应该走多少路程,然后让 NPC 走这么远。这样动态计算 NPC 的位置,就可以实现用户眼中的 " fps稳定 " 了。