Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 24.06.2012, 23:04
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

Да, еще забыл - нарисовав стену, не забудь проверить на столкновение ее и обьект (стена состоит с 2х треугольников, соответственно не забудь их разделить и проверить каждый). Проверка происходит в процедуре calcCollisions.
Принцип, приведен Anclav, отлично подходит для игр типа стратегий на плоскости, в 3D пространстве о не всегда удобен.
Ответить с цитированием
  #17  
Старый 24.06.2012, 23:40
Аватар для DIGS
DIGS DIGS вне форума
Прохожий
 
Регистрация: 23.06.2012
Сообщения: 9
Версия Delphi: Borland Delphi7
Репутация: 10
По умолчанию

ага, понимаю пока, а потом, для проверки столкновения, нужно еше добавить строчку
Код:
  CollEllipsToTr(Human.Position,Human.bounds,v30,v31,v32);
если я создал прямоугольник с векторами
Код:
GLCOLOR3(ColorRGBV(clRed));
         GLQuad(v30, v31, v32, v33);
Правильно?
Ответить с цитированием
  #18  
Старый 24.06.2012, 23:48
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

на 1 квадрат 2ве проверки:
Код:
CollEllipsToTr(Human.Position,Human.bounds,v30,v31,v32);
CollEllipsToTr(Human.Position,Human.bounds,v32,v33,v30);
Ответить с цитированием
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение:
DIGS (24.06.2012)
  #19  
Старый 25.06.2012, 18:14
stanilar stanilar вне форума
Прохожий
 
Регистрация: 31.08.2009
Сообщения: 30
Репутация: 140
По умолчанию

Просто вспомнил вдруг:

Когда в последний раз смотрел расширенную версию демок от GLScene (а было это давно), там было от опредления нормалей к поверхностям мышой, до прыгающего по ступеням мячика. Может поискать ответ на свой вопрос в демках?
Ответить с цитированием
  #20  
Старый 26.06.2012, 14:25
Аватар для DIGS
DIGS DIGS вне форума
Прохожий
 
Регистрация: 23.06.2012
Сообщения: 9
Версия Delphi: Borland Delphi7
Репутация: 10
По умолчанию

YVitaliy
Спасибо, но почему то сквозь некоторые углы можно проходить, не подскажите как исправить?
__________________
01001110 01101001 01100011 01100101 00100000 01100010 01101111 01111001 00101100 00100000 01100001 01101101 00100000 01001001 00111111
Ответить с цитированием
  #21  
Старый 26.06.2012, 18:23
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

Чтоб исправить, нужно чтобы желательно радиус эллипсоида превышал стороны треугольников, тоесть, стену сооружать не с 2х треугольников, а с нескольких. Как на рисунке.
Изображения
Тип файла: jpg полигон.jpg (11.4 Кбайт, 13 просмотров)
Ответить с цитированием
  #22  
Старый 09.07.2012, 02:30
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

Не знаю что все-таки имел введу YVitaliy, но тем не менее решил сделать кое-что свое.
Не смотря на простоту задачи, в некоторых местах пришлось попотеть а именно когда идет столкновение с несколькими стенами. Вроде получилось неплохо.

Как пользоваться:
1. Рисуем линии в 2D редакторе(это собственно стены), путем нажатия правой кнопки мышки, и проведением в другое место.
2. Далее переключаемся в 3D сцену, и ходим наслаждаемся.

З.Ы. Работу алгоритма так же можно проверить в 2D редакторе, т.е. управляем клавой, только единственное он ходит за мышкой

Прога
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:38.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter