Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Input.GetAxis

Объявление

public static float GetAxis(string axisName);

Описание

Возвращает значение виртуальной оси, определенной axisName.

Значение будет находиться в диапазоне -1...1 для устройств ввода с клавиатуры и джойстика.

Значение этого значения зависит от типа элемента управления вводом, например, для горизонтальной оси джойстика значение 1 означает, что джойстик нажат до упора вправо, а значение -1 означает, что он до упора левый; значение 0 означает, что джойстик находится в нейтральном положении.

Если ось сопоставлена ​​с мышью, значение будет другим и не будет находиться в диапазоне -1...1. Вместо этого это будет текущая дельта мыши, умноженная на чувствительность оси. Обычно положительное значение означает, что мышь движется вправо/вниз, а отрицательное значение означает, что мышь движется влево/вверх.

Это не зависит от частоты кадров; вам не нужно беспокоиться о различной частоте кадров при использовании этого значения.

Чтобы настроить ввод или просмотреть параметры для axisName, перейдите в раздел Редактировать > Настройки проекта > Менеджер ввода. Это вызывает диспетчер ввода. Разверните Axis, чтобы увидеть список ваших текущих входных данных. Вы можете использовать один из них как axisName. Чтобы переименовать ввод или изменить кнопку положительного ответа и т. д., разверните один из параметров и измените имя в поле Имя или в поле Кнопка положительного ответа. Кроме того, измените Тип на Ось джойстика. Чтобы добавить новый ввод, добавьте 1 к числу в поле Размер.

using UnityEngine; using System.Collections; // A very simplistic car driving on the x-z plane. public class ExampleClass : MonoBehaviour { public float speed = 10.0f; public float rotationSpeed = 100.0f; void Update() { // Get the horizontal and vertical axis. // By default they are mapped to the arrow keys. // The value is in the range -1 to 1 float translation = Input.GetAxis("Vertical") * speed; float rotation = Input.GetAxis("Horizontal") * rotationSpeed; // Make it move 10 meters per second instead of 10 meters per frame... translation *= Time.deltaTime; rotation *= Time.deltaTime; // Move translation along the object's z-axis transform.Translate(0, 0, translation); // Rotate around our y-axis transform.Rotate(0, rotation, 0); } } using UnityEngine; using System.Collections; // Performs a mouse look. public class ExampleClass : MonoBehaviour { float horizontalSpeed = 2.0f; float verticalSpeed = 2.0f; void Update() { // Get the mouse delta. This is not in the range -1...1 float h = horizontalSpeed * Input.GetAxis("Mouse X"); float v = verticalSpeed * Input.GetAxis("Mouse Y"); transform.Rotate(v, h, 0); } }

Примечание. Горизонтальный и вертикальный диапазоны изменяются от 0 до +1 или -1 с увеличением/уменьшением с шагом 0,05f. GetAxisRaw немедленно изменяет значение с 0 на 1 или -1, поэтому без каких-либо действий.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3