Игнорирование Raycast-a на Rigidbody

Физика в Unity

Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 13 сен 2011, 15:02

Подскажите пожалуйста : можно ли игнорировать rigidbody в который попал рейкаст?. Проблема заключается в том , что ригидбоди перехватывает рейкаст, который предназначен для коллайдеров. Есть родительский объект с коллайдером-капсулой, и дочерние объекты с триггерными коллайдерами.Так вот когда ставлю родительский объект, без присоединенного к нему ригидбоди, в слой Ignore Raycast , то рейкаст попадает в дочерние коллайдеры, как и положено, но при добавлении к родительскому объекту ригидбоди рейкаст постоянно попадает в ригидбоди и не принимается коллайдерами. Пробовал пускать луч в отдельном слое , но тогда мои триггерные коллайдеры находящиеся в этом слое не срабатывают :-?
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение Zaicheg 13 сен 2011, 15:40

Рейкаст не реагирует на ригидбоди. Он реагирует на коллайдеры.
Посмотрите RaycastAll
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 13 сен 2011, 18:40

Да, я уже пробовал RaycastAll, просто пока решил отложить это, потому что там нужно будет немного усложнить нахождение нужного коллайдера, а тут просто все элементарно, только вот добавление ригидбоди картину портит, вот и думал может есть способ как то его усмирить.

P.S. Выходит коллайдер с ригидбоди будет принимать луч не зависимо от того , на каком слое находится его геймобъект?
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение Zaicheg 13 сен 2011, 19:40

theSILENT писал(а):P.S. Выходит коллайдер с ригидбоди будет принимать луч не зависимо от того , на каком слое находится его геймобъект?

Если рейкаст имеет параметр LayerMask (смотрите, чтобы вы его не поставили на место дистанции — сверяйтесь с вариантами вызова метода в справке), то зависимо. Если не имеет — независимо.

только вот добавление ригидбоди картину портит

Ригидбоди на рейкастинг не влияет.
Дьяченко Роман
e-mail: _zaicheg.reg@gmail.com
skype: zaicheg12
vkontakte: _vk.com/zaichegq
Работа: _wie3.com _www.sanviz.com
Аватара пользователя
Zaicheg
Адепт
 
Сообщения: 3024
Зарегистрирован: 19 июн 2009, 15:12
Откуда: Череповец

Re: Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 13 сен 2011, 20:59

хмм... Еще разок) Как писал выше, только родительский объект находится в слое Ignore Raycast , его дети с коллайдерами своимим на моем пользовательском слое, рейкаст пускаю на этом самом пользовательском слое(изначально не получалось потому что прописывал просто номер слоя(8) ,вместо 1<<8, как указано в документации), при попадании выводим имя трансформа коллайдера. Так вот, без ригидбоди, на родительском объекте, все работает как часы, т е выводятся имена трансформов "детских" коллайдеров, но всего при одном изменении, т.е. при добавлении ригидбоди к родительскому объекту , рейкаст показывает только его трансформ(род. объекта). Бльше никаких изменений не делается, ни в коде, ни в слоях , нигде. Отсюда вывод: ригидбоди влияет на рейкаст?))
Последний раз редактировалось theSILENT 05 окт 2011, 21:32, всего редактировалось 1 раз.
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение lol 13 сен 2011, 22:03

Одно не понятно. В первом посте ты всё-таки писал, что на родителе есть ещё: "родительский объект с коллайдером-капсулой".
lol
Старожил
 
Сообщения: 508
Зарегистрирован: 15 ноя 2009, 10:48
Откуда: Москва

Re: Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 13 сен 2011, 22:05

lol писал(а):Одно не понятно. В первом посте ты всё-таки писал, что на родителе есть ещё: "родительский объект с коллайдером-капсулой".

Все верно там есть коллайдер-капсула, что именно не понятно?
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 13 сен 2011, 22:46

Для проверки взял простую сферку с коллайдером и ригидбоди и поставил на слой Ignore Raycast - все работает как надо, сфера не реагирует на рейкасты.
На моем объекте - не работает , хоть убейся об стену (полная Ж)
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение theSILENT 14 сен 2011, 01:35

И вот спустя почти двое суток изнасилования своего мозга я кажется понял в чем проблема. Похоже что все дочерние коллайдеры родительского объекта ,на который вешается ригидбоди, относятся к этому ригидбоди(?), в документации , в разделе про RaycastHit, сказано, что RaycastHit.transform возвращает трансформ коллайдера ИЛИ ригидбоди к которому он относится. Так вот похоже что у меня он постоянно возвращал именно трансформ ригидбоди родительского объекта, для того чтобы получить трансформ именно коллайдера в который попали нужно было всего лишь конкретизировать какой трансформ выводить: RaycastHit.collider.transform вместо RaycastHit.transform. И получалось, как раз, что без ригидбоди ,на родительском объекте, через RaycastHit.transform выводились нужные трансформы(трансформы дочерних коллайдеров), а при добавлении ригидбоди - родительский трансформ.Потому и думал что ригидбоди хавает луч :) . Написал специально, может кому-то поможет не наступить на этиже грабли.
Аватара пользователя
theSILENT
UNец
 
Сообщения: 44
Зарегистрирован: 30 ноя 2009, 20:36
Откуда: Россия, Крым, г. Ялта
  • Сайт

Re: Игнорирование Raycast-a на Rigidbody

Сообщение Susanin 28 июн 2019, 01:39

theSILENT писал(а):Написал специально, может кому-то поможет не наступить на этиже грабли.


помогло
Susanin
UNIт
 
Сообщения: 120
Зарегистрирован: 11 дек 2015, 10:52


Вернуться в PhysX

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2