关于java开发2d游戏地图问题 30
摸索了好几天了,头都搞大了...网上找的都是说什么地图编辑器,还有分块title一小块一小块,可是我想知道的是地图分块分了,怎么加载进去?一张完整的图按每个索引添加,那多...
摸索了好几天了, 头都搞大了...网上找的都是说什么地图编辑器,还有分块title一小块一小块,可是我想知道的是地图分块分了,怎么加载进去?一张完整的图按每个索引添加,那多复杂...还有,屏幕是如何实现对地图的滚屏的...求大侠帮忙..谢谢了
展开
1个回答
展开全部
分析:
地图->排列好的地图元素->N个加载图片的对象->单个图片->位置X,Y,宽高W,H,颜色,ARGB,等相关属性
举例:
地图元素的实现:
class m_Cell
{
m_Cell();
~m_Cell();
Image m_img;
int x,y,w,h;
int A,R,G,B;
}
地图M的实现:
class M
{
m_Cell cell=new m_Cell[10];//定义10个地图元素
for(int i=0;i<10;i++)
{
cell[i].x=i*cell[i].w;
draw(cell[i]);
}
}
实现10个地图元素的地图在1行的平铺,如果想加2,3,4行,那代码里的X下面加上Y的和H的变化就可以了.
滚屏请查看卡马克算法..一般游戏都是参照这个经典算法的.除了DX貌似是全屏刷新基本不需要之外,2D尽量采用这种算法
地图->排列好的地图元素->N个加载图片的对象->单个图片->位置X,Y,宽高W,H,颜色,ARGB,等相关属性
举例:
地图元素的实现:
class m_Cell
{
m_Cell();
~m_Cell();
Image m_img;
int x,y,w,h;
int A,R,G,B;
}
地图M的实现:
class M
{
m_Cell cell=new m_Cell[10];//定义10个地图元素
for(int i=0;i<10;i++)
{
cell[i].x=i*cell[i].w;
draw(cell[i]);
}
}
实现10个地图元素的地图在1行的平铺,如果想加2,3,4行,那代码里的X下面加上Y的和H的变化就可以了.
滚屏请查看卡马克算法..一般游戏都是参照这个经典算法的.除了DX貌似是全屏刷新基本不需要之外,2D尽量采用这种算法
追问
谢谢,但是这个原理跟我想的是差不多的, 但是在实现滚屏这一效果上有误差,Bufferedimage这个类当做缓冲图像处理的时候,我移动这个画布,可是并没有我想象的那样把后面的图像加载进来,这个该怎么解决,困扰了我好久,十分感谢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询