Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

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

CharacterController.SimpleMove

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство
public function SimpleMove(speed: Vector3): bool;
public bool SimpleMove(Vector3 speed);

Параметры

Описание

Передвигает персонажа со скоростью speed.

Скорость относительно оси-Y игнорируется. Скорость в метрах/сек. Гравитация применяется автоматически. Возвращает если персонаж на земле. Рекомендуется вызывать Move или SimpeMove только один раз за кадр.

	var speed : float = 3.0;
	var rotateSpeed : float = 3.0;

function Update () { var controller : CharacterController = GetComponent.<CharacterController>();

// Rotate around y - axis transform.Rotate(0, Input.GetAxis ("Horizontal") * rotateSpeed, 0); // Move forward / backward var forward : Vector3 = transform.TransformDirection(Vector3.forward); var curSpeed : float = speed * Input.GetAxis ("Vertical"); controller.SimpleMove(forward * curSpeed); }

@script RequireComponent(CharacterController)
using UnityEngine;
using System.Collections;

[RequireComponent(typeof(CharacterController))] public class ExampleClass : MonoBehaviour { public float speed = 3.0F; public float rotateSpeed = 3.0F; void Update() { CharacterController controller = GetComponent<CharacterController>(); transform.Rotate(0, Input.GetAxis("Horizontal") * rotateSpeed, 0); Vector3 forward = transform.TransformDirection(Vector3.forward); float curSpeed = speed * Input.GetAxis("Vertical"); controller.SimpleMove(forward * curSpeed); } }