Итак, у меня есть пустой объект игры, который вращается. Теперь у него есть объект сферы как его ребенок. Поэтому, когда объект родительского объекта вращается, дочерняя сфера, похоже, вращается вокруг него. Я хочу знать скорость этой сферы, в частности, ее тангенциальную скорость.Как получить тангенциальную скорость вращающегося объекта?
Когда я отлаживаю, я нахожу все компоненты скорости/угловой скорости твердого тела сферой (0,0,0). Может кто-нибудь, пожалуйста, скажите мне, как я могу это достичь.
Вы вращаете родительский объект GameObject с помощью физики (например, 'AddTorque()') или вручную по сценарию (например, постоянно обновляете 'transform.rotation')? – Serlite
Я использую 'transform.RotateAround (Target.position, Target.up, _directionOfMovement * _speedWithoutInput * Time.deltaTime)', где я передаю родительский точечный объект как цель – Jajan
Если вы используете 'transform.RotateAround()', это означает, что вы манипулируете преобразованием напрямую, а не через физику. Это означает, что получение скорости от Rigidbody ребенка невозможно - вам придется вручную вычислить это, используя ваши знания геометрии/физики. Однако это можно сделать, если вы предоставите родительскому Rigidbody и повернете его с помощью физики (например, ['Rigidbody.AddTorque()'] (http://docs.unity3d.com/ScriptReference/Rigidbody.AddTorque.html) Дайте мне знать, если вы хотите использовать этот подход. – Serlite