计算机应用设计比赛作品释出
今年计算机应用设计比赛花了10天打酱油的成果,成功进入了答辩,还是比较满足的。以下是说明文件。
源代码的下载地址位于:http://www.yinghuochong.com/disk/share_file.aspx?u=841259
--------------------------------------------------
【作品简介】
本次设计大赛的主题要求是“低碳环保”,作者考虑到当今社会倡导低碳环保的主要原因在于减缓全球变暖的趋势,因此寄希望于用一个直观的展示方式使人们认识到全球变暖的危害已经采取措施的迫切性。这样,基于游戏引擎Haff’s Game Engine(后简称HGE)的展示性游戏《家园保卫战》的构思浮出水面。本程序直观的展示了地球在全球变暖的大趋势下的变化过程,并且允许玩家采取各种手段与全球变暖的趋势相对抗,获得了较好的用户体验。
HGE是一套十分易用的硬件加速2D游戏引擎。它基于DX8,运行于各种Win32平台,同时支持VC,BC,MinGW多种编译环境。它使用“The zlib/libpng license”协议发布,可以自由地使用在包括商业性质的项目上。
关键技术有如下几点,在“设计重点难点”中将会着重解释:
1. 游戏工程整体规划;
2. 资源(内存、等待时间)的合理安排;
3. 用户界面设计;
4. 图像、视频、音频的剪辑处理。
【安装说明】
在压缩包中提供了已编译的程序(/作品)与安装包(/安装包)。
可以采取以下方法运行程序:
1. 直接运行/作品/main.exe;
2. 使用/安装包/earthgame.msi安装后,在桌面上即出现“家园保卫战”的快捷方式,使用快捷方式进入游戏。卸载可以直接运行安装包。
【设计思路】
1) 整体流程
1. 欢迎界面与操作简介:进行介绍,资源载入。
2. 主游戏画面:
u 时间增加,事件在特定时间发生,在地图上显示为蓝绿点(离发生还有一段时间、红点(接近发生)、黑点(已经发生过)。
u 可以通过右键调出菜单,进行操作,影响局面(时间、时间流速、及事件发生时间)。
u 事件发生后弹出相关事件区块,提供图片与文字解释。
u 系统游戏信息通过统一的方式进行消息通知。
3. 游戏结束:一定时间一轮游戏结束,从主游戏画面过渡到结束画面,显示用户得分与历史最高分,结束游戏。
2) 使用多张图片表现动画效果:由于开发时间有限,HGE游戏引擎又无法渲染视频,因此作者采用了快放多张图片达到动画效果的方法,将开发难度降低。
3) 以图片为信息的主要载体:由于HGE引擎对于中文的支持并不好,对于需要中文信息的地方,作者使用图片作为载体,达到易于使用的目的。
4) 采用开通手写为主的字体风格以及合适的音效音乐:将字体风格与主题、表现形式、音效与图片结合起来,营造轻松的环境氛围。
【设计重点难点】
1) 整体规划:
游戏引擎主要通过反复调用画面渲染函数(RenderFunc)与帧功能函数(FrameFunc)来完成对游戏显示及数据处理的过程,为了完成游戏功能,对应四种游戏状态,设计了四套渲染函数与功能函数,分别用于开始场景、游戏主场景、弹出消息场景、游戏结束场景。对于不同场景以及主要的其他功能函数进行了分类,提高源码的清晰度与可维护性。
2) 资源的合理使用:
1. 内存使用以及用户等待时间是游戏设计能否成功的重要因素。在初始的设计中,游戏的所有资源都在一开始载入,载入时间极长,给人一种已经死机的假象,由于总共使用了数百张分辨率较高(1024*512)的图片,导致内存资源需求极大(几百兆),在低配置的机器上完全无法运行。后改为“边使用,边释放”的内存管理方式,虽然有短暂的卡顿现象(50ms/1sec),但基本于用户体验无碍。
2. 为了降低整体的资源消耗,对图片、音频都进行了合理的压缩,整体减少了大约60%的空间开销,内存峰值也降至了80MB以内。
3) 用户界面设计:
1. 使用半透明灰色遮罩住主场景,突出了黑板与手写字体构成的菜单,给用户以协调的感受。
2. 使用音效与动画消息提示,吸引用户注意,更好的传达信息。合理设置光标显示,防止无用操作尝试。
3. 尽可能接收用户操作,提高交互程度,把游戏进度的控制权交给用户,防止用户产生不耐烦的情绪。
4. 使用对比度适当的配色,由于画面比较复杂,为了清晰而又不刺眼的传达文字信息,对于配色进行了相当多的实验,最后挑选出一种较好的方案。
4) 图像、视频、声音剪辑:
主要是为了达到满意的效果,本作品大量的使用photoshop、cooledit、aftereffect进行了各种媒体的简单的剪辑、处理,满足对素材的需求。
【开发与运行环境】
CPU |
AMD Phenom II N830 |
内存 |
4.00 GB |
显卡 |
ATI Mobility HD 5400 |
操作系统 |
Microsoft Window 7(Ubuntu10.10 +Wine验证可用) |
编程环境 |
Visual Studio 2008(HGE1.81) |
图片处理 |
Adobe Photoshop CS4 |
视频处理 |
Adobe After Effects CS4 |
【自我评价】
整体系统基本达到了表达最初构思的目的。然而由于准备仓促,整个系统仍然显得比较粗糙,整体美感没有达到作者预定的要求。游戏系统方面存在着一些遗憾之处,比如没有实现在游戏中直接再次开始游戏的功能,与作者在编程经验方面的欠缺有关。但总体上本系统的稳定性非常好,可扩充能力仍然很强,塑造的整体氛围也受到称赞,可以说是一个用心良多、比较成功的作品。