游戏地图分块加载思路篇

(1)需求

    通常游戏地图较大,一次性加载时间较长,且加载之后用户不一定会走完地图的每个角落。故为了减少客户端等待地图加载的时间以及降低客户端的内存消耗,我们就需要用到地图的分块加载。

(2)资源

    游戏地图大小尺寸各一张,将大尺寸地图拆分成若干块,小块图片的命名规则定义如下X_Y.文件类型,如果把一块大地图分成四块,那么这四块的命名分别为(此处假设类型为JPG):0_0.jpg,0_1.jpg,1_0.jpg,1_1.jpg。关于切图工具可参看《游戏地图动态加载资源篇——切图工具》。

(3)流程

    a.加载小尺寸地图,并且以大尺寸来显示,这时就会出现模糊类马赛克效果的地图;

    b.计算角色所处的当前屏的范围(x,y,width,height计算范围),根据屏幕显示左上角以及右下角的坐标,将其转换为二维数组的Index,拼成文件地址动态加载当前屏幕的小块地图。

    c.接收到当前角色的移动指令,根据其目标坐标计算出显示范围,依照B中的方法加载需要新加载的小块地图,若大地图较大,可考虑移除超出屏幕的已经加载的小块地图,若大地图较小,可不必移除。

(4)示例 点此下载(只做效果演示,代码简单,故未上源码,下载请慎重)

欢迎交流学习!不喜勿喷!编辑不易,转载请注明出处http://hi.baidu.com/sxw52039/home!

你可能感兴趣的:(Flash/AS3)