4 结论 30
4.1 总结 30
4.2 对于FLASH平台技术结合A*寻路算法的应用展望 30
4.2.1 Flash平台技术的优势 30
4.2.2 Flash平台技术结合A*寻路算法的市场应用及前景 32
致谢 35
参考文献 36
附录 37
1 绪论
1.1 课题研究背景及意义
随着互联网的飞速发展,如今人们已经可以通过网页玩游戏而无需像过去那样下载客户端并且花费时间安装。Flash平台技术是一种RIA开发和应用技术,因为其极高的市场占有率、成熟的开发环境、优秀的跨平台支持、夸张的前端表现能力,有越来越多的网页游戏开始选择了以Flash平台技术为前端核心。而A*寻路算法则是游戏制作过程中的核心算法,特别是在2.5D的虚拟社区中,玩家对于人物的控制往往是由A*寻路算法来完成的。Flash技术结合A*寻路算法的应用有很多,包括从小规模的“连连看”、“塔防”,到大规模MMORPG(大型多人在线角色扮演游戏)以及虚拟社区。目前国外这方面的应用比较多,特别是虚拟社区,比如《哈宝》、《娜娜米米》,《梦境家园》。国内由于带宽、硬件条件所限,Flash平台技术结合A*寻路算法的应用主要还是集中在小游戏方面。而随着硬件条件的提升,这项技术也将成为RIA开发的一个新热点。利用Flash平台技术的优势,可以开发出用户体验性更强,成本更加低的游戏及交互产品。
本课题主要研究了Flash平台技术的使用以及A*寻路算法的实现原理和使用方法,通过使用Flash平台技术渲染出2.5D地图画面及人物运动,更好的展现出寻路算法的功能。课题还探讨了Flash平台技术的优势以及结合A*寻路算法的应用开发前景。
1.2 设计的基本思想
客户端通过使用Flash平台技术,制作一个2.5D的地图环境,地图中有障碍区域,用户可以在地图中进行点击,地图中的人物会根据用户点击的位置进行移动,根据A*寻路算法,显示正确的贴图,并且绕开障碍物到达地点。
程序通过读取外部XML文件,获得地图数据,调用地图、人物的构建算法,实现2.5D地图、人物的显示。
服务器端通过Adobe FMS编写,实现多客户端的交互操作,客户端之间可以看到其他玩家的运动,和别的玩家进行即时交互聊天。
设计的主要难点:
1. A*寻路算法的原理,需要考虑的因素较多,包括代价问题,拐角问题等。
2. 地图构建策略,2D屏幕坐标系与伪3D(2.5D坐标系)的转换问题。
人物8向移动的实现。在2.5D场景中,人物有8个方向,需要对这8个移动方向作出判别。
3. FMS服务器端和客户端的连接问题。
服务器与客户端通过socket方式连接。Socket使用自定义的协议报文。
1.3 开发环境
1.3.1 前台程序
flash cs6是adobe公司于2011年推出的CS(CreateSuit)系列中的一款flash制作工具,相比较于以前的版本,cs6在许多方面得到了改善,本次设计中,cs6主要起到效果模拟以及编译代码的作用,涉及动画、图形制作较少。
flash develop(版本是3.3.3)是一款专门用于轻量级flash程序项目编写的基于.net2.0技术的第三方编程环境,flash cs6自带的ActionScript开发环境,虽然相比较于以前的版本,有了一定的改善,但是对于规模大,结构复杂的程序开发来说,显得有些乏力。而flash develop有着极其强大的代码提示功能,类似于VisualStudio,文件的组织结构也有很直观的表现,在开发项目、编写程序时能够显著提高工作效率,因此对于本次设计来说,是编写代码的主要环境。 Flash平台上自动寻路(A)算法优化设计(2):http://www.youerw.com/jisuanji/lunwen_9650.html