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

Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 19:33
kykcyawe
Даже не знаю как объяснить, но попробую.

Для понятия вот такой скриншот из Sky Force:
Скрытый текст:
Изображение


Камера в перспективе, а не в 2D.
Танки в одной плоскости, самолёты в другой плоскости. Игрок стреляет в плоскости самолётов вперед перед собой. При выстреле в самолёты естественно попадает и 3D коллайдер отрабатывает как надо. Но, как можно реализовать попадание по танкам, если стрельба идёт по другой плоскости? Видимо как-то нужно использовать 2D коллайдеры, но не могу найти материал по подобной тематике.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 20:58
samana
Если я правильно понимаю, то это просто 3d игра с 3d физикой и с видом сверху и всё, тут нет слоёв для самолетов и танков.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 21:05
kykcyawe
Да, никаких слоёв нет. Вопрос то в том, как сделать так, чтобы был коллайдер еще и на танк? Стреляю то я, выше.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 21:09
samana
Можно ведь сделать и несколько коллайдеров у снаряда, один вверху, другой внизу.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 21:20
kykcyawe
Камера в перспективе и она неподвижна, а игрок двигается. Тут проблема будет в перспективе(

Re: Вопрос по коллайдерам

СообщениеДобавлено: 16 май 2017, 22:47
Valentinus
kykcyawe писал(а):Да, никаких слоёв нет. Вопрос то в том, как сделать так, чтобы был коллайдер еще и на танк? Стреляю то я, выше.

сделайте коллайдер снаряда вертикальным, вытянутым от земли до неба, чтобы он задевал все на своем пути, и танки, и самолеты.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 17 май 2017, 00:27
Tolking
Нужно коллайдер объектов ниже/выше проецировать на плоскость стрельбы через камеру... Так же и с выстрелами врагов. Да - делать это в каждом кадре... А еще при смещении к краю экрана корректировать угол стрельбы, чтобы она шла вдоль края экрана....

Re: Вопрос по коллайдерам

СообщениеДобавлено: 17 май 2017, 07:27
samana
А если для каждого снаряда сначала проецировать его в экранные координаты (worldToScreenPoint), а потом пускать луч из камеры в этом направлении (ScreenPointToRay)?

Re: Вопрос по коллайдерам

СообщениеДобавлено: 17 май 2017, 09:27
kykcyawe
samana писал(а):А если для каждого снаряда сначала проецировать его в экранные координаты (worldToScreenPoint), а потом пускать луч из камеры в этом направлении (ScreenPointToRay)?


Крайне энергозатратно получится наверное, для каждого снаряда луч пускать...

Tolking писал(а):Нужно коллайдер объектов ниже/выше проецировать на плоскость стрельбы через камеру... Так же и с выстрелами врагов. Да - делать это в каждом кадре... А еще при смещении к краю экрана корректировать угол стрельбы, чтобы она шла вдоль края экрана....


Тоже так думал, лучше вариантов нет пока, поэтому буду копать в этом направлении.

Всем спасибо, за ответы! :clap:

Re: Вопрос по коллайдерам

СообщениеДобавлено: 17 май 2017, 11:59
maksimov
А какая тут проблема с коллайдером? Просто делаете коллайдер у танков высоким (что бы был вровень с коллайдерами самолётов).

С коллайдерами тут никаких проблем нет вообще. Тут может возникнуть проблема с визуализацией (пуля летящая на одной и той же высоте, попадает у вас то высоко, то низко (в зависимости от того, попала она у вас в танк или в самолёт)). Но если вид чисто сверху и с минимальной перспективой - то это вобщем-то будет не заметно.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 17 май 2017, 12:12
Valentinus
maksimov писал(а):А какая тут проблема с коллайдером? Просто делаете коллайдер у танков высоким (что бы был вровень с коллайдерами самолётов). .

проще коллайдер у снаряда сделать высоким, я как советовал выше.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 22 май 2017, 15:56
maksimov
Valentinus писал(а):
maksimov писал(а):А какая тут проблема с коллайдером? Просто делаете коллайдер у танков высоким (что бы был вровень с коллайдерами самолётов). .

проще коллайдер у снаряда сделать высоким, я как советовал выше.


Чем это проще? Абсолютно одинаково (без разницы). Выбор тут исключительно исходя из общей архитектуры.


А вообще, если по грамотному подходить к вопросу, то в данной ситуации следует вообще юзать Collider2D.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 22 май 2017, 17:44
Valentinus
maksimov писал(а):
Valentinus писал(а):
maksimov писал(а):А какая тут проблема с коллайдером? Просто делаете коллайдер у танков высоким (что бы был вровень с коллайдерами самолётов). .

проще коллайдер у снаряда сделать высоким, я как советовал выше.


Чем это проще? Абсолютно одинаково (без разницы). Выбор тут исключительно исходя из общей архитектуры.
.
отнюдь не "абсолютно одинаково".
Если коллайдеры танков поднять, то они будут задевать о коллайдеры самолетов - лишние срабатывания триггеров, лишние проверки.

Re: Вопрос по коллайдерам

СообщениеДобавлено: 24 май 2017, 12:37
maksimov
Valentinus писал(а):Если коллайдеры танков поднять, то они будут задевать о коллайдеры самолетов - лишние срабатывания триггеров, лишние проверки.

Изображение