标题之间的白线

White lines between titles

我使用 Monogame 和 Xamarin 在 Android 上创建了简单的 RPG 游戏,但我遇到了图块问题。

我使用 16x16 的图块,但我将其缩放到 32x32,我创建了简单的地图编辑器,我可以创建地图并转换为 JSON 格式。

但是在游戏中加载地图后我看到瓷砖之间有线条,这些线条显示 object 应该稍微透明的地方 https://i.imgur.com/R9azGQo.png

加载地图

            using (var stream = TitleContainer.OpenStream(path2))
            {
                spriteSheet2 = Texture2D.FromStream(graphicsDevice, stream);
            }
            currSprite = 2;
            for (int y = 0; y < spriteSheet2.Height; y += 32 + 2)
            {
                for (int x = 0; x < spriteSheet2.Width; x += 32 + 2)
                {
                    objects[currSprite].Add(new Rectangle(x, y, 32, 32));

                }
            }

            using (var stream = TitleContainer.OpenStream("Content/x.png"))
            {
                test = Texture2D.FromStream(graphicsDevice, stream);
            }

我调试它并使用 GIMP,在 spritesheet 中任何这些行 在地图编辑器中我没有看到这条线,我该如何解决? 我有相同的代码在地图编辑器和游戏中加载 spritesheet,在 spritesheet 中我有 2px margin beetwen tiles。

(我必须用图片创建相册,因为我不能给两个以上的链接) http://imgur.com/a/RlPKo

将代码中的边距更改为 1px 后的图片 (参见,相册中的第一张图片)

将图块大小更改为 31x31 后的图像 (参见相册中的第二张图片)

我在 spritesheet 中获取位置地板砖并使用 gimp 我检查了边距是否太小,我放大到这个瓷砖 (参见相册中的第三张图片)

当我将矩形地砖设置为273、69并将大小更改为30、30时,我可以消除white-lines(它是在瓷砖中没有透明线的位置矩形,但为什么透明线在游戏中是白色的? ) (参见相册中的最后一张图片)

我通过消除瓷砖的透明来修复地板,如何快速修复所有瓷砖?

你的代码很好我看到了问题,你的精灵在边框上有透明度。如果您想删除图块精灵中的所有线条,您需要编辑精灵并将边框替换为纯色。

问候