Я ищу любую идею, как перемещать GameObject на основе оси другого объекта. Мне сложно это перевести, поэтому я использую "настоящие" примеры:
У меня есть стол и я хочу переместить на него тарелку. Это конечно, я могу двигать его только в двух направлениях.
У меня есть пол, и я хочу двигать по нему мяч. Повторяю, у меня есть только два направления для этого.
Я знаю, как перемещать объект в направлении мыши, но это всегда оси X, Y и Z. Я использую Rigidbody.AddForce, поэтому мне нужно использовать глобальные/мировые координаты. Поэтому я не могу «просто не использовать» одно направление, потому что мой первый объект (стол, пол и т. д.) может двигаться, вращаться и т. д. Поэтому я думаю, что должен перемещать свой объект (тарелку, шар) на основе локальных координат первый объект. Но я совершенно не знаю, как найти направление/вектор? Я знаю, что это возможно по математике, но я чувствую беспорядок.
ДЕЙСТВИТЕЛЬНО ВАЖНО сделать это с помощью Rigidbody, а НЕ перевести (с помощью перевода это довольно легко для меня ;)).
Надеюсь, мой пост понятен, потому что мне трудно перевести эту проблему. Если что-то уточню - пишите.
РЕДАКТИРОВАТЬ: этот пост был помечен как дубликат, но я не вижу ответа на свой вопрос во втором посте. Я хочу перемещать свои объекты относительно другой поверхности, используя твердое тело, в предлагаемом посте об этом не говорится.
Rigidbody.MovePosition
. Я уверен, что вы могли бы найти это, если бы вы искали в Google, как перемещать твердое тело... - person Programmer   schedule 13.12.2017