Перемещение персонажа относительно их местоположения с использованием единства жесткого телаC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Перемещение персонажа относительно их местоположения с использованием единства жесткого тела

Сообщение Anonymous »

Как показано в видео ссылке ниже, игрок движется относительно глобальной оси, поэтому у него есть некоторые раздражающие эффекты. < /p>

Я хочу сделать так, чтобы персонаж движется по его локальной оси, таким образом будет легче применить анимации, когда он идет назад, боко и т. Д. Как я могу сделать это? происходит:
link < /p>

Кроме того, вот код для моего сценария движения персонажа: < /p>

using UnityEngine;

public class PlayerMovement : MonoBehaviour
{
public float speed = 6f; // The speed that the player will move at.
Vector3 movement; // The vector to store the direction of the player's movement.
Animator anim; // Reference to the animator component.
Rigidbody playerRigidbody; // Reference to the player's rigidbody.
int floorMask; // A layer mask so that a ray can be cast just at gameobjects on the floor layer.
float camRayLength = 100f; // The length of the ray from the camera into the scene.

void Awake ()
{
// Create a layer mask for the floor layer.
floorMask = LayerMask.GetMask ("Floor");

// Set up references.
anim = GetComponent ();
playerRigidbody = GetComponent ();
}

void FixedUpdate ()
{
// Store the input axes.
float h = Input.GetAxisRaw ("Horizontal");
float v = Input.GetAxisRaw ("Vertical");

// Move the player around the scene.
Move (h, v);

// Turn the player to face the mouse cursor.
Turning ();

// Animate the player.
Animating (h, v);
}

void Move (float h, float v)
{
// Set the movement vector based on the axis input.
movement.Set (h, 0f, v);

// Normalise the movement vector and make it proportional to the speed per second.
movement = movement.normalized * speed * Time.deltaTime;

// Move the player to it's current position plus the movement.
playerRigidbody.MovePosition (transform.position + movement);
}
< /code>

Дайте мне знать, если вам нужно что -нибудь еще. < /p>

Подробнее здесь: https://stackoverflow.com/questions/335 ... body-unity
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»