Параллельное движение 2D

Физика в Unity

Параллельное движение 2D

Сообщение TTuDa6upka228 31 июл 2017, 12:47

Здравствуйте. В своём проекте я не могу сделать параллельное движение моего персонажа (Соника). Суть в том, что ему нужно пробежать по sircle collider'у не слетев с него.
И не только по sircle collider'у, но и по любой наклонной плоскости. У меня он просто слетает или подлетает. Нужно чтобы он как-бы магнитился к земли. Прошу помощи. :((
TTuDa6upka228
UNец
 
Сообщения: 4
Зарегистрирован: 08 июл 2017, 11:02

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 12:56

Брать в OnCollision нормаль коллизии и задавать персонажу её вместо up или right
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Параллельное движение 2D

Сообщение TTuDa6upka228 31 июл 2017, 13:00

А можно поподробнее. ^:)^
TTuDa6upka228
UNец
 
Сообщения: 4
Зарегистрирован: 08 июл 2017, 11:02

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 13:10

https://docs.unity3d.com/ScriptReferenc ... tacts.html
Справка же есть, более-менее подробная
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Параллельное движение 2D

Сообщение waruiyume 31 июл 2017, 13:27

Нужна не нормаль, а касательная(-нормальY, нормальX).
Поделитесь решением если получится стабильный вариант с модификацией velocity, а то у меня не взлетело: если управлять контроллером по средствам присвоения velocity, ригидбоди, по непонятным для меня причинам, выплёвывается в конце перемещения, когда мы перестаём модифицировать velocity.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 13:32

Касательная же перпендикулярна нормали => если нормаль==up, то right==касательная
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Параллельное движение 2D

Сообщение waruiyume 31 июл 2017, 13:49

Ага, особенно на наклонной плоскости.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Параллельное движение 2D

Сообщение TTuDa6upka228 31 июл 2017, 13:59

У меня он поворачивается то перпендикулярно к плоскости, то параллельно.
TTuDa6upka228
UNец
 
Сообщения: 4
Зарегистрирован: 08 июл 2017, 11:02

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 13:59

waruiyume писал(а):Ага, особенно на наклонной плоскости.

Как может нормаль не быть перпендикулярна касательной? Тут, всё-таки, эвклидово пространство.
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Параллельное движение 2D

Сообщение waruiyume 31 июл 2017, 14:08

А как может быть у наклонной линии, нормаль направленная вверх? Что-то я вообще не вкуриваю о чём речь?
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 14:14

waruiyume писал(а):А как может быть у наклонной линии, нормаль направленная вверх?

Не может быть. С рейкастами такая же проблема, что неправильно считается нормаль?
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Параллельное движение 2D

Сообщение waruiyume 31 июл 2017, 14:19

До меня дошло, вы предлагаете повернуть трансформ и с него получить вектор параллельный нормали.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Параллельное движение 2D

Сообщение Cr0c 31 июл 2017, 14:28

Я думал, что нормаль всегда верно считается, и при повороте трансформа в нормаль - вторая ось станет касательной.
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81


Вернуться в PhysX

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

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