Java Slick2D-等轴测贴图渲染错误
我用程序“平铺”制作了一张等距图,并将其加载到我的代码中。 我有两层瓷砖: 1.背景层(草) 2.对象层(本例中为冰箱) 冰箱渲染不正确。正如你在这里看到的(左边应该是怎样的,右边是怎样的) 图由两部分组成,上部和下部,如图所示: 所以我的第一个想法是,我不能在瓷砖上显示瓷砖。这就解释了为什么冰箱左边和右边的草砖在冰箱前面。但这只适用于上半部分。下部正确显示,并且“覆盖”草地瓷砖。那为什么会这样呢 好吧,我知道了。 可以逐个渲染地图的图层Java Slick2D-等轴测贴图渲染错误,java,map,tile,slick2d,isometric,Java,Map,Tile,Slick2d,Isometric,我用程序“平铺”制作了一张等距图,并将其加载到我的代码中。 我有两层瓷砖: 1.背景层(草) 2.对象层(本例中为冰箱) 冰箱渲染不正确。正如你在这里看到的(左边应该是怎样的,右边是怎样的) 图由两部分组成,上部和下部,如图所示: 所以我的第一个想法是,我不能在瓷砖上显示瓷砖。这就解释了为什么冰箱左边和右边的草砖在冰箱前面。但这只适用于上半部分。下部正确显示,并且“覆盖”草地瓷砖。那为什么会这样呢 好吧,我知道了。 可以逐个渲染地图的图层 map.render(x, y); 一次渲染所有层
map.render(x, y);
一次渲染所有层。那么发生的事情就是@Marco13在我的问题下所评论的。
要避免这种情况,请使用此选项
map.render(x, y, layer);
如果你有两个像我一样的层次,比如说,你只需要:
map.render(x, y, 1);
map.render(x, y, 2);
然后一切看起来都很好:)我不熟悉libGDX,您也没有告诉我它是如何实现的,但是从图像上看,很明显瓷砖是从后面(最上面)到前面(最下面)渲染的,不管它们的“层”,所以它首先绘制冰箱的顶部,然后在冰箱顶部涂上左/右草砖,然后在冰箱底部涂上油漆。这就解释了。。。我将对此做一些研究。