Присвоение скорости непосредственно против AddForce () - PullRequest
0 голосов
/ 28 октября 2018

У вас есть тонны учебников и комментариев о применении скорости, имитации прыжка, и все они противоречивы. Например, читая комментарии в «Лучшем прыжке в Unity с четырьмя строками кода» в YouTube, некоторые говорят, что вам следует избегать прямого задания скорости.

Это то, что я пытаюсь сделать, (= использовать только AddForce()), и они (команда Unity) добавили еще один режим силы, так что вот доступные варианты:

public enum ForceMode
{
    /// <summary>
    ///   <para>Add a continuous force to the rigidbody, using its mass.</para>
    /// </summary>
    Force = 0,
    /// <summary>
    ///   <para>Add an instant force impulse to the rigidbody, using its mass.</para>
    /// </summary>
    Impulse = 1,
    /// <summary>
    ///   <para>Add an instant velocity change to the rigidbody, ignoring its mass.</para>
    /// </summary>
    VelocityChange = 2,
    /// <summary>
    ///   <para>Add a continuous acceleration to the rigidbody, ignoring its mass.</para>
    /// </summary>
    Acceleration = 5,
}

То, что я спрашиваю, не основано на мнениях, это: когда и когда не непосредственно назначают скорость?

Если я не ошибаюсь, кажется, что VelocityChange является заменой прямого назначения скорости.

И да, у меня RTFM , и я не понимаю их образец (в нем используется GUI.Button, который официально считается устаревшим ...).

1 Ответ

0 голосов
/ 29 октября 2018

Все зависит от того, как вы хотите, чтобы игра ощущалась.Если вы непосредственно назначаете скорость, вы получаете очень жесткий контроль над тем, как движется объект, тогда как, если вы используете силы, вы можете получить более реалистичное движение, основанное на массе объекта.

Например: если выделая очень быстро развивающуюся игру, в которой важны входы для подергивания, вам, вероятно, следует назначить скорость напрямую.

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

Кроме того, вы правы в том, что использование AddForce с VelocityChange эквивалентно прямому назначению скорости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...