Quest3D - Русскоязычное сообщество

Quest3D => Программирование => Тема начата: kyard от 15 Января 2010, 06:56:11



Название: Вызов координат из таблицы
Отправлено: kyard от 15 Января 2010, 06:56:11
Разбираю пример Quest3D 4.3\Examples\Advanced\Dynamic Collision.

Как сделать чтобы происходила проверка на положение объектов т.е. один объект не ставился в том месте где уже стоит другой, причем не только объекты одного типа.

Например: куб не должен поставиться на том месте, где уже стоит такой же куб или шар.

P.S. предполагаю что нужно произвести вызов координат из таблицы и сравнить их с координатами других объектов, но реализовать это не получается.

Я так понимаю:
 
красная рамка - это координаты в данный момент

зеленая рамка - эти координаты сохраняются в таблицу

синяя рамка - это вызов в таблицу (в этом месте нужно прописать условие?)

Мое предположение верно или я двигаюсь не в том направлении.


Название: Re: Вызов координат из таблицы
Отправлено: Cludz от 16 Января 2010, 01:06:59
а не проще проверять на колизию об*екты?
твой пример я не понял, мб знающие люди розкажут что ты не правильно в нем зделал


Название: Re: Вызов координат из таблицы
Отправлено: kyard от 16 Января 2010, 10:44:20
Возможно и проще, но как проверить на столкновение объекты цикла т.е. копию одного и того же объекта.
Я делаю это через Get distance, но проверяются только объект который был последним записан в таблицу.

Как сделать что бы вся колонка с координатами проверялась?


Название: Re: Вызов координат из таблицы
Отправлено: kyard от 16 Января 2010, 16:01:06
А так в обще можно - проверять координаты целого столба?


Название: Re: Вызов координат из таблицы
Отправлено: DimiS от 16 Января 2010, 16:06:02
В цикле обратиться к каждой строчке и проверить координату, если не нашлось ни одной координаты слишком близкой к той, куда ты хочешь поставить новый объект, то можно там ставить новый объект.


Название: Re: Вызов координат из таблицы
Отправлено: kyard от 25 Января 2010, 08:39:00
DimiS Большое СПАСИБО!!! Я разобрался!