块2D游戏(Tile based Game)标准场景地图由2维数组构.docVIP

块2D游戏(Tile based Game)标准场景地图由2维数组构.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
区块2D游戏(Tile based Game)标准场景地图由2维数组构成,2维数组的值代表不同的地表类型及精灵。关卡设计人员可以用文本文件来设计不同的关卡。地表类型一般都是简单的等高等宽的几何形状,如矩形或圆等。 选择的理由: 入门游戏,有一定乐趣,关卡足够多 能引入A*寻路,动画 足够的简单,关卡设计已经完成,不需要剧情设计,不需要滚屏 有一个好的原型,能够展开重构,随时可以发布,随时可以告一段落 原始游戏截图:(标准的2D正视图) HYPERLINK MIT授权模式,比GPL宽松,可以进行修改和再发布,应包含原作者的著作权声明和版权声明。 不成功的转换:(x、y弄反了,贴图有些也没有用45度素材) 转换后的地图: 另一套素材: 使用PNG的素材:(注意光影的表现) 公测版的缺省素材,注意,墙都连起来了,还有外墙衬 材质 3d材质的45度投影 遮挡 美工设计,方块菱形不遮挡,标准48*24中点连线菱形,周围全透明:可以和以前一样重绘,在重绘前用一个白菱形清一下底 采用全部重绘解决 遮挡问题,先全部清空,再逐一绘制,见TileMap的PaintListener,全部重绘对于这个游戏,在主流PC上是足够了 考虑遮挡,重绘 选择b,足够简单,对美工约束最小,两套图分别为48*32、48*38,可以更自由发挥。重绘时间足够短,全绘一遍40毫秒左右,能达到30FPS效果。 选择c,需要采用剪切和局部绘制顺序,重绘时间为0或16毫秒,速度有质的提高。 A*寻路 比想像中简单,有树的宽度搜索算法概念,理解A*就比较容易了。为了保持A*的通用性,摘了一个算法实现,并且将游戏中的格式转换了一下,而没有做一个定制的A*实现。效率可能会有影响,本游戏体现不出来。 动画 使用Display的timerExec方法。 自动行走过程中再次点击鼠标,将导致又触发一次自动行走 两次行为线程叠加,混乱,将step变量全局化来控制不允许重入。 屏幕坐标转游戏坐标 先减去余数,将屏幕坐标通过定位方块的原点获取到正确的矩形索引,然后判断点与矩形及内菱形的关系来确定菱形索引。 负数坐标的修正? 更完整的算法采用MouseMap,MouseMap最后的颜色查找表回归到自己写的“点与矩形及内菱形的关系”函数进行简化。 键盘控制 1.右上方为向上 2.左上方为向上 3.用左右键调方向,只允许用向上键向前走 第三套就使用方向感,也不容易犯错误,但按键次数太多。 键盘控制方案可在第2、第3套之间选择。 完全的国际化 提供perties和SokobanMperties的语言文件即可。 进一步可以将SokobanMessages.Properties合并到plugin.Properties中。 Retarget action 工具栏先定义占位符,再retarget,在freenote中有GEF帮着做了,在普通RCP中如何实现?见附件一。 抗锯齿 gif图边缘是有锯齿的,png图就好了 全绘制gif图30毫秒,全绘png图40毫秒 PNG带来图像质的飞跃 PNG的阴影效果 PNG的光效果: 两套素材切换,换肤 就是切换时将原有资源dispose掉,再载入新的 地图数据清洗  ①冗余的墙 找一个最小包围即可。 多余的墙特征,其东南、东北、西南、西北均为墙或为空(地板不为空) ②墙拐角bug 当小人走过拐角时,因为上边为空,不刷,所以留下一截图。 如果先清白,再与背景不合,简单的方法是这种地方再增加一块墙。 地图特点: ###### ## . # # $@#. # # $# # 该块特征,空白块,其西南、东南为墙,其南为地板、目标或小人 界面布局调整 调整后为: 增加背景图 实现局部刷新之后,CPU负担比较小,背景图也可以考虑了,以下是一例: 墙拐角的自动处理 见附件 云风的字符表格的算法,共有16种情况,以2D角度来划分,分别为 序号 2D位置情况 0 孤立一块 1 竖向的末端,如孤立两块竖连的第二块 2 横向的起点,如孤立两块横连的第一块 3 矩形的左下角,形如┗ 4 竖向的起点,如孤立两块竖连的第一块 5 竖连的中间,形如┃ 6 矩形的左上角,形如┏ 7 三通之一,形如┣ 8 横向的末端,如孤立两块横连的第二块 9 矩形的右下角,形如┛ 10 横连的中间,形如━ 11 三通之一,形如┻ 12 矩形的右上角,形如┓ 13 三通之一,形如┫ 14 三通之一,形如┳ 15 四通,形如╋ 墙外围增加一圈地板做修饰 同上,更简单一些,只要3、5、6、9、10、12这6种横竖及拐角情况即可。 工具栏 图标 功能 备注 前一关 选关 下一关 重玩 撤消 重做 关卡集选择 下拉工具栏 皮肤选择 下拉工具栏,可扩充 背景选择 声音开关 3D按键开关 游戏暂停开关

文档评论(0)

woai118doc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档