Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2008, 22:54   #1
Манжосов Денис :)
Участник клуба
 
Регистрация: 29.01.2008
Сообщений: 1,039
По умолчанию Препятствия в игре.

Я делаю игру, где будет вид сверху. Так вот. Я буду делать разные изображения типа там деревья, скамейки, машины, здания. Конечно же будет главный герой. И вот я знаю как сделать чтобы герой мог не проходить по изображениям, а сталкиваться с ними, предметы будут как препятствия чтобы герой не мог проходить. Но пользоваться процедурой intersectrect вообще никак не правильно это же надо на каждое изображение такую процедуру писать. Ну и вообще я знаю как сделать рациональней это но все равно я думаю что нужно писать какой то другой код. Можете помочь мне кто нибудь? Спасибо.
Манжосов Денис :) вне форума Ответить с цитированием
Старый 07.06.2008, 07:43   #2
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Самый простой вариант при движение ГГ проверить его на столкновение со всеми объектами на карте.

Код:
go:=true;
for i:=1 to n do
  if(x+sx>=gameobject[i].x)and(y+sy>=gameobject[i].y)and(x+sx<=gameobject[i].x+gameobject[i].width)and(y+sy<=gameobject[i].y+gameobject[i].height)then
  begin
    go:=false;
    break;
  end;
if go then
begin
  x:=x+sx; 
  y:=y+sy;
end;
x,y,sx,sy - это координаты игрока и его скорость
gameobject - это массив содержащий положение и ширину с высотой препятствия.

Есть более продвинутый вариант, это разбить карту на квадраты, сделать редактор, где ты расставишь все препятствия, и сделаешь карту путей.

Я в своей игре разбил карту на квадраты 16*16 и в редакторе задал те квадраты где нельзя строить башни.
Kostia вне форума Ответить с цитированием
Старый 07.06.2008, 14:14   #3
Olympian
Форумчанин
 
Аватар для Olympian
 
Регистрация: 06.06.2008
Сообщений: 105
По умолчанию

Либо можно хранить просто массив BOOLEAN - TRUE / False
True - можно пройти
False - нельзя...
И смотреть куда он хочет наступить
Olympian вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать сеть в простенькой игре??? Руслантус Gamedev - cоздание игр: Unity, OpenGL, DirectX 16 21.05.2010 20:44
OnMouseDown в игре. Titan123 Gamedev - cоздание игр: Unity, OpenGL, DirectX 10 29.07.2008 13:10
Хитрости в игре Gothic Altera Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 21.05.2008 00:21
Вопрос по игре!!! Ыть Паскаль, Turbo Pascal, PascalABC.NET 2 28.03.2008 09:02
Помогите сделать сохранения в игре!!! Teen4jump Gamedev - cоздание игр: Unity, OpenGL, DirectX 12 20.06.2007 17:29