我无法渲染2d的块状地图 这里是如何创建2d地图数组的:
map = new Block[w * h];
块类包含2个变量 - 大小(H:100px,W:100px)和图像纹理。
好的,那该怎么渲染呢? 我的意思是说让玩家走在地图上,我应该如何制作地图移动/滚动效果。
我试图在地图上循环并渲染它,但没有任何运气。因为当我渲染它时我需要以某种方式切割块,我不知道该怎么做。
我真的需要帮助,非常感谢!
答案 0 :(得分:1)
此:
map = new Block[w * h];
应该是2d数组:
map = new Block[w][h];
或者我是误会?
好的,我该如何渲染呢?
如果每个块都有图像纹理,那么只需循环遍历它,如下所示:
for(int i=0; i<w; i++){
for(int j=0; j<h; j++){
Block b = map[i][j];
spritebatcher.draw(b.texture, i*b.W, j*b.H);
}
}
我应该如何制作地图移动/滚动效果?
从技术上讲,地图不会滚动。您移动播放器,相机将跟随他/她。
camera.position.set(player.position.x, player.position.y, 0);
我需要以某种方式切片,当我渲染它时,我不知道该怎么做。
我担心我不明白这个问题。