Вниз
Скачать: CL | DM;

Игровое поле для ТБС   Найти похожие ветки 

← →
неважно   (2004-02-21 15:28) [0]

Извините за тупой вопрос, но как я могу создать игровое поле для моей пошаговой стратегии(120 * 66 клеток по 46 пикселей сторона клетки). Я пытался сделать паинтовый файл и вставить полученый рисунок в ScrollBox, но даже графически не оформленный(пустая сетка) файл занимает 40 Мб и нещадно тормозит при любой работе с ним (У меня Пентиум 3, 256 оперативки, 1,7 ГГц, Виндоуз ХР). Что делать?


← →
KA_ ©   (2004-02-21 19:20) [1]

Есть два варианта:
1.
Вообще-то игровая карта состоит из повторяющихся объектов, которые отрисовываются одинаково. Например, пустое поле, дерево, домик и пр. - они одинаковы даже если расположены в разных частях карты.
Значит есть смысл закодировать карту каким-либо способом, а не хранить ее как готовое изображение. каждой клетке карты присваиваем значение от 0 до 255 - пустое поле соответсвует 0, дерево 2, домик - 3 и т.д.
Потом эту кодированную карту сохраняем в файл. И рисуем картиночки 46х46 для каждого игрового объекта (это спрайты). Во время игры зачитываем кодированную карту и по необходимости спрайты. Спрайты и отрисовываем на экране, а координаты отрисовки расчитываем из текущего положения игрового окна.

2.
Дествительно надо отобразить картинку в 40Mb. Но скорее всего на экране вся она не будет видна. Тогда вычисляем координаты видимой области и пользуемся методом TBitmap.ScanLine.


← →
Alex Storm   (2004-02-25 07:55) [2]

Послушай, неважно, есть у меня исходник , который может тебе помочь. Если заинтересован, то мыль мне :)


← →
Vertex   (2004-02-29 04:44) [3]

2неважно. гениально)


← →
TButton ©   (2004-02-29 15:06) [4]

>и пользуемся методом TBitmap.ScanLine.
или BitBlt


← →
woolf/psycho ©   (2004-03-01 22:19) [5]

Вообще, для начала, рекомендую использовать DelphiX и работу со спрайтами. Так намного легче выходит. Да и красивее.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
10-1013431792
comwad
2002-02-11 15:14
2004.06.27
Corba ест память!!!


14-1086620098
VeTaL
2004-06-07 18:54
2004.06.27
Хороший хостинг!


1-1086886557
Ivolg
2004-06-10 20:55
2004.06.27
Копирование


14-1086629735
Частый
2004-06-07 21:35
2004.06.27
Работа в кладовке


14-1086418009
Flagmen
2004-06-05 10:46
2004.06.27
Виснет ХР




   Наверх