Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Полный редактор техники в 2D стратегии... [Delphi, Windows]


Nemi ©   (2002-10-22 17:02:00) 

Вернее сказать я уже написал игру в которой можно создавать технику в косоугольной проекции и по этому плану создаеться ее характеристика испрайты в игре. Проблема в том что я хочу создать повреждения реальныи ,так чтобы можно было например попав в корабль снести ему часть корпуса. Но по игре получаеться так что для каждой техники приходиться создавать свой экземпляр (спрайты, карту конструкций и т.д. ), короче памяти сьедает много и получаеться что предел техники где-то 300 ед. при 100Mb ,а хотелосьбы больше...
Чтобы лучше понять суть проблемы могу вывалить исходники с обьеснением.


Mirovodin   (2002-10-24 10:51:00) [1]

Ich Hasse ©

Правильно это если каждый спрайт содержит свой набор спрайтов, но на самом деле этого делать НЕ НУЖНО. В классе спрайта хранится только указатель на то от куда их брать. Т.е. всегда существует по 4 набора спрайтов для каждого юнита (если брать уровень деформации как я описал выше). Можно примерно прикинуть на бумажке, думаю получится не так много.

Хотя полностью противоположный вариат - как делается в большинстве нынешних стратегий : хранение юнита в 3D, а потом render.


Ich Hasse   (2002-10-23 22:16:00) [2]

2 Mirovodin
Да но если танков много и у всех разные шкалы жизни, то все равно придетсмя грузить все картинки, а это съест много ресурсов, и как это реализовать непонятно...


Gandalf   (2002-10-23 21:11:00) [3]

Можно просто вводить набор деформаций и модификаторов. И смотреть какие юниты на карте (сейчас) и в реал-тайм их деформировать и т.д. и т.п. - "ломать". Не супер быстро, но памяти не больше обычного. Но это только мысль - не развитая.


Mirovodin   (2002-10-22 17:52:00) [4]

Интересовался я этим вопросом. В некоторых коммерческих играх хранятся прямо спрайты поврежденной техники. Не знаю как это реализуется в коде, но по логике происходит так. Допустим у танка есть шкала повреждений :

100%
75%
50%
25%
0%

При смене состояния мы подгружаем графику в зависимости от степени повреждения:

100% 1.Bmp
75% 2.Bmp

и т.д. При таком подходе размер памяти НЕ УВЕЛИЧИВАЕТСЯ ! Т.к. в каждый момент времени мы храним всего 1 набор спрайтов.

НО нужно протестировать скорость работы, т.к. может получиться, что это будет слишком медленно, т.е. будут происходить рывки изображения. Хотя подход по моему правильный.


Наверх

Титульная страница Поиск, карта сайта Написать письмо