Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 等轴测地图绘制_C#_Xna_Drawing_Isometric - Fatal编程技术网

C# 等轴测地图绘制

C# 等轴测地图绘制,c#,xna,drawing,isometric,C#,Xna,Drawing,Isometric,我试图创建一个等轴测地图编辑器,但在生成地图时遇到了这个问题: 我生成的地图看起来像(A)方案,屏幕外有一些瓷砖。我必须在代码中更改什么才能获得(B)-ish映射 这是我用来在地图中创建单元格的代码。 (32为瓷砖高度和宽度) for(int i=0;i这里的问题似乎是您的系统从右上角开始构建分片行,然后工作到左下角。由于第一个分片的初始坐标为0,0,当它在左侧绘制子序列行时,它们会很快从屏幕上消失 最简单的解决方法是将x坐标右移,这样它就可以从区域的中间开始绘制顶部瓷砖,同时记住我们希望瓷砖

我试图创建一个等轴测地图编辑器,但在生成地图时遇到了这个问题:

我生成的地图看起来像(A)方案,屏幕外有一些瓷砖。我必须在代码中更改什么才能获得(B)-ish映射

这是我用来在地图中创建单元格的代码。 (32为瓷砖高度和宽度)


for(int i=0;i这里的问题似乎是您的系统从右上角开始构建分片行,然后工作到左下角。由于第一个分片的初始坐标为0,0,当它在左侧绘制子序列行时,它们会很快从屏幕上消失

最简单的解决方法是将x坐标右移,这样它就可以从区域的中间开始绘制顶部瓷砖,同时记住我们希望瓷砖的中心位于区域的中心,而不是左上角

int isox = (Width / 2) - (tileLength / 2) + x - y;
int isox = (Width / 2) - (tileLength / 2) + x - y;