Я делаю маленькую игру как тестовый проект, ничего особенного. Я только начал и работаю над графикой, но я не уверен, что лучший способ вывести графику на экран.
Это будет похоже на старую Zelda, так что довольно просто использовать растровые изображения и тому подобное. Я начал думать, что могу просто рисовать в элемент управления Picture Box, используя Drawing.Graphics с помощью Handle от элемента управления, но это кажется громоздким. Я также не уверен, могу ли я использовать двойную буферизацию с этим методом.
Я посмотрел на XNA, но сейчас я хотел использовать простой метод для отображения всего.
Итак, мой вопрос. Используя текущие элементы управления и структуру C #, какой подход лучше всего подходит для отображения игровой графики (например, Picture Box, создание пользовательского элемента управления и т. Д.)
EDIT:
Я добавлю, как я в настоящее время рисую на картинке. У меня есть объект Tile, который просто содержит пиксели для плитки ( List< List< Color>> texture;
), ничего более для простоты. Затем я рисую это в поле «Рис.», Перебирая пиксели и используя метод FillRectangle, используя кисть с текущим цветом пикселя и размером, указанным в переменной масштаба:
int scale = 5;
for (int i = 0; i < texture.Width;)
{
for (int j = 0; j < texture.Height; ++j)
{
int x = i * scale;
int y = j * scale;
picBox.FillRectangle(new SolidBrush(currentPixelColor), new Rectangle(x, y, scale, scale));
}
}
Да, довольно громоздко. Любые предложения или комментарии приветствуются.