Uniy 2D. Вопрос про box collider 2D
|
|
Terminator004 | Дата: Среда, 26 Апреля 2017, 17:42 | Сообщение # 1 |
уже был
Сейчас нет на сайте
| Здравствуйте, я создаю платформер 2D на Unity 5.у меня вопрос такой: Допустим у меня есть box collider 2D и настроено что это " Is Trigger ". И мой персонаж может стрелять пулями. Если пуля попадет на какой-нибудь объект ( который имеет box collider 2D с настройкой " Is Trigger") так пуля через него больше не летит. А я хочу сделать исключения одному объекту с box collider 2D у которого " Is Trigger". Чтоб пуля могла через него пролетать. Так какой мне скрипт надо написать тому объекту?
|
|
| |
XanKriegor | Дата: Среда, 26 Апреля 2017, 17:59 | Сообщение # 2 |
участник
Сейчас нет на сайте
| Короче, нужно приписать объектам разные слои (layers). Потом в свойствах проекта, во вкладке физика, найдешь таблицу коллизий. И настраиваешь, кто с кем будет сталкиваться.
|
|
| |
Vostrugin | Дата: Среда, 26 Апреля 2017, 19:20 | Сообщение # 3 |
постоянный участник
Сейчас нет на сайте
| Есть много разных вариантов. Можно через слои, но вариант избыточен, как по мне. Как я понял, столкновения Вы обрабатываете в объекте пули. Добавьте условие, при котором пуля не будет уничтожаться. Несколько вариантов: 1) Сравнивать тег объекта, с которым столкнулся 2) Проверять наличие какого-то компонента или его отсутствия на объекте
|
|
| |
EchoIT | Дата: Среда, 26 Апреля 2017, 19:33 | Сообщение # 4 |
старожил
Сейчас нет на сайте
| Vostrugin, XanKriegor, ему нужен один объект. Для этого делать отдельный слой действительно избыточно, и даже тег - избыточно.
Terminator004, eсть возможность отключить коллизию между двумя конкретными коллайдерами, к сожалению, сходу название метода не вспомню, но в справке есть. Там вообще всё есть, не стесняйтесь туда заглядывать.
Долгожданный анонсик: State of War
Сообщение отредактировал EchoIT - Среда, 26 Апреля 2017, 19:33 |
|
| |
Vostrugin | Дата: Среда, 26 Апреля 2017, 20:09 | Сообщение # 5 |
постоянный участник
Сейчас нет на сайте
| EchoIT, не знал о таком. Действительно есть, походу Physics2D.IgnoreCollision(collider1, collider2)
Сообщение отредактировал Vostrugin - Среда, 26 Апреля 2017, 20:09 |
|
| |