Clock负责提供一个真实时间和一个虚拟时间,真实时间从0开始按ms递增,和硬件时钟是同步的;虚拟时间也从0开始按ms递增,但不一定和真实时间同步。
要获得系统时间可以用System.currentTimeMillies(),系统硬件有一个计数器,当计算机启动时,计数器从0开始每1ms加1,System.currentTimeMillies()返回从开机到现在经过的ms。我们不需要知道时分秒,只需要一个递增的整数计时就可以了。
Clock改自Marshall "Game Programming Gems 3"中的C++代码,主要成员变量:
thisTime:当前硬件时间,即System.currentTimeMillies()
systemTime:游戏的系统时间,即把thisTime转换为从0递增的时间
virtualTime:虚拟时间,从0递增,但和真实时间不同步
代码如下:
参考:Marshall:"Game Programming Gems 3"
待续 :)
博客介绍了Clock提供的真实时间和虚拟时间机制,真实时间与硬件时钟同步,虚拟时间不一定同步。获取系统时间可用System.currentTimeMillies()。还提到Clock改自相关C++代码,介绍了其主要成员变量,如thisTime、systemTime和virtualTime等。
149

被折叠的 条评论
为什么被折叠?



