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

Помогите, пожалуйста, понять стратегии!!!   Найти похожие ветки 

 
Вась-вась   (2004-10-17 18:19) [0]

Добрый день, уважаемые мастера! У меня к вам вопрос принципиального характера: как в стратегиях типа Age of Empires или Settlers (изометрических или 2,5-мерных) осуществляется проверка на пересечение спрайтов? Если один человечек стоит чуть выше другого, то нижний изображается поверх верхнего. Но друг сквозь друга они не ходят. Может, происходит проверка пересечений параллелограммов, находящихся в плоскости ступней. Ну, т.е. каждый спрайт представляется в виде прямоугольного параллелепипеда и проверяется пересечение их нижних оснований. И теперь практический вопрос: можно ли это осуществить на DelphiX? И как? Заранее спасибо за развёрнутые и полные ответы.


 
Ландграф Павел ©   (2004-10-17 18:49) [1]

Развернетее некуда: есть такое свойство у класса спрайт z (высота) вот и присваивай ей значение y (спрайта), и все уокей=)
z:=self.y


 
NikeOLD ©   (2004-10-18 08:59) [2]

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

При спрайтах разного размера несколько сложнее. Но на сколько я знаю в DelphiX над этим особо не задумываются: "Все уже украдено до вас".


 
Вась-вась   (2004-10-24 21:41) [3]

Добрый день! Спасибо за отклик на зов о помощи!Но не мог бы ты описать поподробнее, что такое Sprite.z и с чем его едят? Благодарю за поддержку!



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

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



Память: 0.45 MB
Время: 0.022 c
14-1105518608
syte_ser78
2005-01-12 11:30
2005.01.30
Господа, кто писал под Автокад?


6-1100588695
ИМХО
2004-11-16 10:04
2005.01.30
как работать с ящиками UNIX?


6-1100647101
Kot Vaska
2004-11-17 02:18
2005.01.30
Передача пользователя и пароля


3-1104141098
PSH
2004-12-27 12:51
2005.01.30
Разрыв страницы в Report Builder Pro 7.03


11-1088366446
Владимир
2004-06-28 00:00
2005.01.30
Как конвертировать JPEG в BMP ?




   Наверх