WEB开发网
开发学院手机开发Symbian 开发 Symbian C++ 游戏开发要领 阅读

Symbian C++ 游戏开发要领

 2010-02-26 15:56:00 来源:WEB开发网   
核心提示:1. 介绍1.1 S60平台的游戏编程随着S60设备硬件的提高,在其上运行高质量的有些成为了可能,Symbian C++ 游戏开发要领,当然也同时存在一些挑战的地方就是游戏需要适应许多不同屏幕的能力,另外还有一些其他的限制如下:- 被来电或是短信中断- 限制电池的使用,我们应该尽早的释放这些已分配的内存,每一步都要提醒

1. 介绍

1.1 S60平台的游戏编程

随着S60设备硬件的提高,在其上运行高质量的有些成为了可能。当然也同时存在一些挑战的地方就是游戏需要适应许多不同屏幕的能力。另外还有一些其他的限制如下:

- 被来电或是短信中断

- 限制电池的使用,要处理突然断电的情况

- 内存大小受限

- 显示屏幕和键盘大小的限制

- 相对于PC而言有限的CPU处理能力

1.2 Purpose and scope

N/A

2. S60 Platform-Specific Considerations

2.1 被系统事件中断

当一个游戏在运行的时候,如果系统事件发生了,用户应该被通知到。所以开发人员需要考虑到游戏被中断的情况。

所有的系统端事件都有这样的一个通用性质,那就是可以被一个应用程序所捕获。当一个系统事件发生时,最前面的应用程序会失去焦点。这会导致该应用程序user interface类(CAknAppUi)的HandleForegroundEventL函数被调用。如果不考虑处理这个函数,应用程序可以处理相关的动作,如暂停程序。

2.2 电池耗尽和供电失败

应用程序需要注意电池的消耗。如果一个时间段没有任何操作的话,应该进入休眠模式从而节约用电。如果一个游戏暂停了,那么所有的timer和loops应该停止。如果在一个特定的时间段内,没有任何操作的话,系统的定时器会触发一个时间,应用程序可以通过RTimer::Inactivity方法来获得。

为了处理突然掉电的情况,一个游戏应该每隔一个时间保存一下数据,以便在重启的时候恢复,至少应该保存两份数据,因为很可能在你保存数据的时候会掉电。

2.3 Screen Resolution

S60手机有不同的屏幕分辨率。S60的UI库,Avkon能支持不同的屏幕分辨率,然而通常情况下,游戏里面的控件都是自己描画的,所以需要我们自己根据不同的屏幕分辨率来调整,而不能hard-code。

2.4 Memory

在S60第三版之前的许多S60设备上最多只有8MB的内存。虽然S60第三版的设备的RAM要多些,但是相对于PC设备来说还是很少的,所以内存管理是非常重要的。

除了RAM外,设备还有ROM来存储那些预安装的软件,一个用户数据区域来存储已经安装的应用程序和系统中可写的和连续的数据。

应用程序需要注意内存的节约,这不仅包括在运行时内存的使用,还包括编译后代码的大小,总之,在处理RAM使用中最重要的一条原则就是,我们应该尽早的释放这些已分配的内存,每一步都要提醒自己这样做了吗。在模拟器上,Symbian

1 2 3  下一页

Tags:Symbian 游戏 开发

编辑录入:coldstar [复制链接] [打 印]
赞助商链接