Форум: "Игры";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
ВнизАлгоритм созжания карты Найти похожие ветки
← →
S.W.I.N.E. (2004-04-26 19:14) [0]Пытаюсь с помощью DelphiX создать маленькую аркаду-платформер. Первая проблемма: как создавать карты? То есть, какой алгоритм необходим для того, чтобы проверять, стоит ли игрок перед препятствием, может ли он его перепрыгнуть и т.д.?
← →
OSokin © (2004-04-26 19:23) [1]Если используешь DelphiX, то там все просто - создаешь кучу спрайтов, соответствующи этим препятствиям, игроку и т. д. и проверяешь у игрока OnCollision (не забудь поставить проверку). Если это препятствие, то запрещаешь движение.
← →
S.W.I.N.E. (2004-05-06 19:18) [2]Не, слишком сложно. Проще координаты запоминать. Создать какой-нибудь массив координат, да только как? Тут хитропопо как-то надо.
← →
Thor © (2004-05-06 19:25) [3]про карты уже много раз было.
самый простой выход - создать массив, в котором прописать значения всех ячеек карты.
тогда спрайт игрока будет перемещаться по этому массиву.
а там уже смотри - игрок нажал налево - проверяем, если там есть препятствие, которое игрок не должен пройти, то не делаем ничего, иначе пропускаем игрока и т.п. :)
← →
S.W.I.N.E. (2004-05-06 20:07) [4]Не, то, что это массив я понял, но какой? Двумерный, трехмерный, записей... Что он из себя представляет?
2Thor: Если уже много раз было, то подкинь ссылку...
← →
Thor © (2004-05-06 20:28) [5]дпустим, для аркады с картой 64х64 это будет 4096 ячеек.
вот что-то типа того:
var map: array [0..64, 0..64] of Integer;
ну и соответственно при создании карты заполняешь его нужными тебе значениями.
mirgames.ru - пример про платформенную аркаду с Астериксом.
← →
Mihey © (2004-05-06 20:45) [6]Буквально здесь человек изложил свои мысли грамотно и понятно:
http://delphimaster.net/view/9-1083832794/
← →
woolf/psycho © (2004-05-07 13:49) [7]Я как-то делал стрелялку-прыгалку вид с боку. И вот к чему я пришел: создавать массив структур, описывающих каждую ячейку карты неудобно, да и не выгодно. Я создал список всех объектов карты, и просто работал с этим списком. Так, вроде, эффективнее, поскольку объект карты может занимать любой размер, а не только кратный размеру ячеек...
← →
Mihey © (2004-05-07 20:07) [8]2 woolf/psycho:
А я точно так же сделал в изометричексом движке. Круто, без проблем, только упорядочивать надо каждый раз - долго это, но ничего, мощности хватает.
← →
хм © (2004-05-08 18:22) [9]>var map: array [0..64, 0..64] of Integer;
зачем ограничевать себя интегером? лучше записи использовать
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c