〖J2ME〗
廖雪峰
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用MIDP2.0开发游戏 (5) 游戏内核
我们准备开始设计游戏内核。通常,游戏和桌面Windows程序不同(扫雷等桌面游戏除外),它不能依赖消息驱动,因为游戏通常只有一个画面,而且需要高速更新。因此,游戏只能靠时钟驱动。大部分游戏都在一个时钟驱动下定时渲染一帧画面。此外,游戏需要接收用户输入,处理游戏事件(比如碰撞检测等),可能还需要AI计算,这些任务都必须巧妙地在两幅画面切换的时间段里处理完毕,因此,一个高效而灵活的调度器就是游戏进原创 2004-09-18 23:24:00 · 3711 阅读 · 0 评论 -
使用MIDP2.0开发游戏 (6) 设计Clock
Clock负责提供一个真实时间和一个虚拟时间,真实时间从0开始按ms递增,和硬件时钟是同步的;虚拟时间也从0开始按ms递增,但不一定和真实时间同步。要获得系统时间可以用System.currentTimeMillies(),系统硬件有一个计数器,当计算机启动时,计数器从0开始每1ms加1,System.currentTimeMillies()返回从开机到现在经过的ms。我们不需要知道时分秒,只原创 2004-09-19 15:56:00 · 4114 阅读 · 2 评论 -
使用MIDP2.0开发游戏 (4) 改进的地图生成方式
上次我们用Sprite实现了背景,但是这样不便于通过地图数据生成地图。通常,游戏中的地图都被分成NxN的方格,一般仅有几种图案。幸运的是,SUN在MIDP 2.0已经考虑到了游戏开发者需要的这个功能,TiledLayer便是通过贴图实现的层,它的使用同样异常简单!首先准备好我们需要的小块区域,在坦克大战的地图中,一共有下面5种: (注意这是放大的jpg格式,你需要处理成40x8的png原创 2004-09-03 20:50:00 · 4054 阅读 · 24 评论 -
使用MIDP2.0开发游戏 (7) 设计Scheduler
Scheduler负责以固定的频率执行每一帧,所需的时钟由Clock提供,Scheduler还可以计算每帧所需时间和CPU占用率,以便可能的话动态调整任务。以下的Scheduler的实现参考自Marshall "Game Programming Gems 3"中的C++代码:package game.engine.core;public class Scheduler {原创 2004-09-20 22:39:00 · 3685 阅读 · 10 评论 -
使用MIDP2.0开发游戏 (3) 添加背景和前景
上次我们已经让坦克动起来了,现在我们准备给游戏添加背景和前景。上次讨论了用Sprite实现动画,其实背景和前景也是用Sprite实现的,我们准备一幅背景和一幅前景图片: 注意背景可以不透明,但前景一定要处理成透明的png格式(以上均为jpg截图,请自行用Photoshop等转换)。修改TankGameCanvas如下:public class TankGameCan原创 2004-08-31 21:09:00 · 4211 阅读 · 6 评论 -
使用MIDP2.0开发游戏 (2) 使用Sprite
Sprite,精灵,顾名思义,专用来代表游戏中的动画角色,比如飞机,坦克等等。在MIDP1.0中,我们必须自己写专门的类来实现Sprite,幸运的是,MIDP2.0为Sprite提供了强力支持,可以创建静态,动态,不透明和透明的Sprite,下面我们准备在上次的GameCanvas基础上添加一个Sprite并让它动起来。Sprite的主要构造方法有:Sprite(Image):构造一个单幅原创 2004-08-27 19:38:00 · 8226 阅读 · 9 评论 -
使用MIDP2.0开发游戏 (1) GameCanvas基础
MIDP2.0提供了对游戏的强有力支持,通过javax.microedition.lcdui.game包,原来在MIDP1.0中很多需要自己写的功能现在都被当作标准API实现了,包括GameCanvas,Sprite,Layer等等。我们将使用MIDP2.0编写一个坦克大战的手机游戏,我也是初学J2ME不久,准备边看书边做,争取把这个游戏做出来!J2ME高手请多指点,和我一样学习中的朋友欢迎多原创 2004-08-26 19:36:00 · 6531 阅读 · 6 评论
分享