Хорошо, у меня есть изображение, в котором хранится мой набор плиток. Затем я использую PictureBox в качестве «игрового экрана». Все, что делает код, это берет фрагмент моего набора плиток (плитку) и помещает его на игровой экран.
Вот мой код.
private void picMap_Click(object sender, EventArgs e)
{
//screenMain = picMap.CreateGraphics();
// Create image.
//gfxTiles = Image.FromFile(@Program.resourceMapFilePath + "poatiles.png");
// Create coordinates for upper-left corner of image.
int x = 0;
int y = 0;
// Create rectangle for source image.
Rectangle srcRect = new Rectangle(16, 16, 16, 16);
GraphicsUnit units = GraphicsUnit.Pixel;
// Draw image to screen.
screenMain.DrawImage(gfxTiles, x, y, srcRect, units);
screenMain.DrawImage(gfxTiles, 16, 0, srcRect, units);
screenMain.DrawImage(gfxTiles, 32, 0, srcRect, units);
screenMain.DrawImage(gfxTiles, 16, 16, srcRect, units);
}
И вот мой результат:
Есть ли причина, по которой существует этот промежуток между каждой «плиткой» (это промежуток в 2 пикселя)? Я мог бы модифицировать код в гетто, но я планирую использовать алгебру, чтобы программно определять, куда должны идти плитки и т.д. , небрежный.