Найти тему

Скрипт для движения персонажа в Unity3d

Если нужно объяснение напишите в комментарии.

На персонаже должен висеть CharacterController.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FPSInput : MonoBehaviour {
public float speed = 6.0f;
public float gravity = -9.8f;
private CharacterController _charControler;
void Start() {
_charControler = GetComponent<CharacterController>();
}
void Update () {
float deltaX = Input.GetAxis("Horizontal") * speed;
float deltaZ = Input.GetAxis("Vertical") * speed;
Vector3 movement = new Vector3(deltaX,0,deltaZ);
movement = Vector3.ClampMagnitude(movement,speed);
movement.y = gravity;
movement*=Time.deltaTime;
movement = transform.TransformDirection(movement);
_charControler.Move(movement);
}
}