Страница 1 из 1

Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 18:42
talion
У меня есть контейнер, который по своей концепции напоминает скроллбар, содержащий в себе неограниченное количество элементов с коллайдерами. Но, проблема в том, что перемещение элементов в контейнере происходит посредством изменения их позиции и сокрытие их маской, если они выходят за границы контейнера. Но выйдя за границу контейнера они просто скрываются, но коллайдеры продолжают ловить соприкосновение. Т.е. сам элемент скрыт под маской, но коллайдер предмета реагирует на какие-либо действия, если навести на его позицию.

Вопрос: как то можно понять, что элемент скрыт маской и отключить коллайдер? Либо отключать возможность реакции на коллайдеры, скрытые маской или что-то в этом духе.

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 19:55
Valentinus
если сохраняете ссылки на ГО, то можно их просто деактивировать (а когда нужно - снова активировать).
еще можно отключать коллайдеры у замаскированных объектов (поле enable)

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 20:45
talion
Valentinus писал(а):если сохраняете ссылки на ГО, то можно их просто деактивировать (а когда нужно - снова активировать).
еще можно отключать коллайдеры у замаскированных объектов (поле enable)

Это совет капитана Очевидность?) У меня основной вопрос в том, как понять, что объект находится в маске.

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 21:06
samana
А что представляет маска в вашем случае? Это эффект шейдера?

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 21:24
talion
samana писал(а):А что представляет маска в вашем случае? Это эффект шейдера?

https://docs.unity3d.com/Manual/script-Mask.html - вот этот ui компонент

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 22 май 2017, 21:28
Valentinus
talion писал(а):
samana писал(а):А что представляет маска в вашем случае? Это эффект шейдера?

https://docs.unity3d.com/Manual/script-Mask.html - вот этот ui компонент


есть какое-то св-во или функция которая может проверить - видим объект или нет. можете попробовать ее.

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 23 май 2017, 10:37
talion
Valentinus писал(а):есть какое-то св-во или функция которая может проверить - видим объект или нет. можете попробовать ее.

Где такое есть?

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 23 май 2017, 10:48
Valentinus
talion писал(а):
Valentinus писал(а):есть какое-то св-во или функция которая может проверить - видим объект или нет. можете попробовать ее.

Где такое есть?

вас Роскомнадзор от гугла отлучил?
https://www.google.ru/search?ie=UTF-8&h ... gws_rd=ssl

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

Re: Как отключить коллайдеры у скрытых маской предметов?

СообщениеДобавлено: 23 май 2017, 11:29
talion
Valentinus писал(а):PS кстати, можете же просто проверять координаты у объектов, сравнивая их с границами маски - и выявлять те, что выходят за нее.


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