在我所做的这个A-RPG游戏中,地图总共有8张
最小的为25*25个title,最大的为40*40个title
所以说地图数据量相对于手机平台来说算是比较大的
那么这么大的数据该如何处理才能最优化呢?
以下是我的做法:
当然,不一定是最好的,喜欢大家能积极交流,想出更好的办法。
在我的地图上总共有4种数据:地板title、障碍物、遮盖物、怪物等。
那么这就存在一个层次的问题,也就是先画那个的问题。
如果在程序中每个层对应一个数组的话,肯定是不合适的,太浪费资源了!
那么有没有一办法用一个数组来代表四个层次呢?
我是这么做的:
用一个int[] 来表示这四个层次,每个int元素有5位数字,第一位代表怪物ID,第二,三位代表遮盖物ID或障碍物ID,第四、五位代表地板title。
而每次程序只读取屏幕大小范围内的数组元素,这个看似很复杂,其实如果理顺思路了很简单,具体程序如下:
for(int i = 0;i < 13;i++)
{
for(int j = 0;j < 11;j++)
{
int tempVar = (x0-screenX)/16+j+((y0-screenY)/16+i)*screenW[screenIndex];
drawByIndex(g,screen_1_Image,x0+j*16,y0+i*16,sc[tempVar]%100,16,16);
}
}
首先计算出当前屏幕范围内的每个title的索引tempVar,然后对应的读取数组内容。
因为我们的最后两位代表的是地板title,所以%100取得最后两位内容。
这样只把当前屏幕的内容画出来,从而提高了效率。
相应的,也可以把遮盖物、怪物、障碍物画出来。
最终的效果图在“Crazy Wind手机游戏工作室最新A-RPG力作隆重登场(图)"里可以看到
分享到:
相关推荐
j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api j2me----api
J2ME---游戏共享(8个经典游戏例子)
J2ME游戏源码---泡泡堂,想学习游戏开发的来看看吧。
J2ME----CSDN名士---陈跃峰老师讲课代码 J2ME----CSDN名士---陈跃峰老师讲课代码
j2me_cldc-1_1-fcs-src-winunix.rar cldc1.1源码
J2ME设计论文--手机游戏黑白棋 应用J2ME技术 让你放心使用
J2ME游戏源码---bubble breaker,快来看看吧。
J2ME手机游戏--数独
J2ME的KVM-KNI-资料J2ME的KVM-KNI-资料J2ME的KVM-KNI-资料J2ME的KVM-KNI-资料
简单的J2ME游戏--小蜜蜂 0{r8W x ] ^ o c3 这个小游戏 是大家用来学习J2ME游戏编程 的入门 教程,写的层次比较清晰还不错。
第一章J2ME简介--j2me开发.ppt
J2ME-J2EE-J2SE
J2ME CLDC1.1官方源代码, 有研究J2ME虚拟机移植的朋友共享
这是一款J2ME的手机游戏,属于射击游戏,有详细的源代码,测试通过顺利运行。
J2ME开发详解-工具篇.pdf
J2ME项目开发-手机游戏“亡者归来”。 13个人得小组,一周时间的项目开发。 所有得开发文档(需求分析,模块开发卷宗,软件测试文档,个人总结.....) 以及源代码 。 绝对珍贵资源!! 可以做为自己项目开发得 参考...
安卓手机上的j2me模拟器 可导入本地jar文件 可模拟Java手机(比如塞班)用的软件 可以体验以前的手机操作
cldc参考实现 包括kvm
j2me 手机游戏 本人自己制作,希望大家多多支持,多提宝贵意见