使用MIDP2.0开发游戏 (6) 设计Clock

原创 2004年09月19日 15:56:00

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"

待续 :)

使用MIDP2.0开发游戏(6)设计Clock

文章来源:J2ME开发网Clock负责提供一个真实时间和一个虚拟时间,真实时间从0开始按ms递增,和硬件时钟是同步的;虚拟时间也从0开始按ms递增,但不一定和真实时间同步。要获得系统时间可以用Syst...
  • mobilechannel
  • mobilechannel
  • 2005年11月29日 16:12
  • 642

使用MIDP2.0开发游戏

http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=20177&threadID=27237&tstart=60
  • zypsg
  • zypsg
  • 2005年11月25日 21:14
  • 1264

使用MIDP2.0开发游戏 (7) 设计Scheduler

Scheduler负责以固定的频率执行每一帧,所需的时钟由Clock提供,Scheduler还可以计算每帧所需时间和CPU占用率,以便可能的话动态调整任务。以下的Scheduler的实现参考自Mars...
  • asklxf
  • asklxf
  • 2004年09月20日 22:39
  • 3411

使用MIDP2.0开发游戏(7)设计Scheduler

文章来源:J2ME开发网Scheduler负责以固定的频率执行每一帧,所需的时钟由Clock提供,Scheduler还可以计算每帧所需时间和CPU占用率,以便可能的话动态调整任务。以下的Schedul...
  • mobilechannel
  • mobilechannel
  • 2005年11月29日 16:32
  • 639

使用MIDP2.0开发游戏 (5) 游戏内核

我们准备开始设计游戏内核。通常,游戏和桌面Windows程序不同(扫雷等桌面游戏除外),它不能依赖消息驱动,因为游戏通常只有一个画面,而且需要高速更新。因此,游戏只能靠时钟驱动。大部分游戏都在一个时钟...
  • asklxf
  • asklxf
  • 2004年09月18日 23:24
  • 3232

使用MIDP2.0开发游戏(5)游戏内核

文章来源:J2ME开发网我们准备开始设计游戏内核。通常,游戏和桌面Windows程序不同(扫雷等桌面游戏除外),它不能依赖消息驱动,因为游戏通常只有一个画面,而且需要高速更新。因此,游戏只能靠时钟驱动...
  • mobilechannel
  • mobilechannel
  • 2005年11月29日 16:11
  • 638

使用MIDP2.0开发游戏 (2) 使用Sprite

Sprite,精灵,顾名思义,专用来代表游戏中的动画角色,比如飞机,坦克等等。在MIDP1.0中,我们必须自己写专门的类来实现Sprite,幸运的是,MIDP2.0为Sprite提供了强力支持,可以创...
  • shiyonggang
  • shiyonggang
  • 2004年08月29日 18:29
  • 740

使用MIDP2.0开发游戏 (2) 使用Sprite

Sprite,精灵,顾名思义,专用来代表游戏中的动画角色,比如飞机,坦克等等。在MIDP1.0中,我们必须自己写专门的类来实现Sprite,幸运的是,MIDP2.0为Sprite提供了强力支持,可以创...
  • asklxf
  • asklxf
  • 2004年08月27日 19:38
  • 7976

使用MIDP2.0开发游戏(2)使用Sprite

文章来源:J2ME开发网Sprite,精灵,顾名思义,专用来代表游戏中的动画角色,比如飞机,坦克等等。在MIDP1.0中,我们必须自己写专门的类来实现Sprite,幸运的是,MIDP2.0为Sprit...
  • mobilechannel
  • mobilechannel
  • 2005年11月29日 16:07
  • 615

使用MIDP2.0开发游戏(1)GameCanvas基础

文章来源:J2ME开发网MIDP2.0提供了对游戏的强有力支持,通过javax.microedition.lcdui.game包,原来在MIDP1.0中很多需要自己写的功能现在都被当作标准API实现了...
  • mobilechannel
  • mobilechannel
  • 2005年11月29日 16:06
  • 717
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用MIDP2.0开发游戏 (6) 设计Clock
举报原因:
原因补充:

(最多只允许输入30个字)