помогите настроить поворот камеры. - Форум - Все для Unity3d

Все для Unity3d> помогите настроить поворот камеры. - Форум>
Страница 1 из 11
Форум » Unity » Вопросы » помогите настроить поворот камеры.
помогите настроить поворот камеры.
artem231Дата: Воскресенье, 06.09.2015, 15:48 | Сообщение # 1
Новый писатель
Группа: Пользователи
Статус: Offline
Помогите сделать чтобы камера не поворачивалось влево и право не на 360 градусов, а от плеча и до плеча.
 
PilotMaxДата: Воскресенье, 06.09.2015, 17:17 | Сообщение # 2
Новый писатель
Группа: Проверенные
Сообщений: 16
Статус: Offline
Для этого тебе нужно узнать минимальное и максимальное значение для поворота. Теперь используем функцию Mathf.Clamp(). Она ограничивает значение в заданных рамках. Схема следующая: Mathf.Clamp(текущее значение, минимальная граница, максимальная граница).

Предположим, ты хочешь поворачивать на 90 градусов в право и влево. Получаем
Код
rightRotation = Mathf.Clamp(currentRotation, -90f, 90f);
. Примерно так, я же не знаю, как у тебя там точно все устроено. Да, можно тупо через if, но так намного лучше.


Сообщение отредактировал PilotMax - Воскресенье, 06.09.2015, 17:19
 
artem231Дата: Воскресенье, 06.09.2015, 22:30 | Сообщение # 3
Новый писатель
Группа: Пользователи
Статус: Offline
У меня Mouse Look стоит. Раньше всё работало, а после переустановки винды пашет ток вверх и вниз(
 
PilotMaxДата: Понедельник, 07.09.2015, 16:25 | Сообщение # 4
Новый писатель
Группа: Проверенные
Сообщений: 16
Статус: Offline
Цитата artem231 ()
Mouse Look

Mouse Look? Я
тебе не совсем понял... Короче, кидай скрипты сюда (или в личку), иначе мы
будем так долго переписываться.
 
artem231Дата: Понедельник, 07.09.2015, 18:55 | Сообщение # 5
Новый писатель
Группа: Пользователи
Статус: Offline
Все скрипты моего перса для поворота камеры:
Mouse Look(Стандартный скрипт Unity3d):
Код
using UnityEngine;
using System.Collections;
/// MouseLook rotates the transform based on the mouse delta.
/// Minimum and Maximum values can be used to constrain the possible rotation
/// To make an FPS style character:
/// - Create a capsule.
/// - Add the MouseLook script to the capsule.
///   -> Set the mouse look to use LookX. (You want to only turn character but not tilt it)
/// - Add FPSInputController script to the capsule
///   -> A CharacterMotor and a CharacterController component will be automatically added.
/// - Create a camera. Make the camera a child of the capsule. Reset it's transform.
/// - Add a MouseLook script to the camera.
///   -> Set the mouse look to use LookY. (You want the camera to tilt up and down like a head. The character already turns.)
[AddComponentMenu("Camera-Control/Mouse Look")]
public class MouseLook : MonoBehaviour {
  public enum RotationAxes { MouseXAndY = 0, MouseX = 1, MouseY = 2 }
  public RotationAxes axes = RotationAxes.MouseXAndY;
  public float sensitivityX = 15F;
  public float sensitivityY = 15F;
  public float minimumX = -360F;
  public float maximumX = 360F;
  public float minimumY = -60F;
  public float maximumY = 60F;
  float rotationY = 0F;
  void Update ()
  {
   if (axes == RotationAxes.MouseXAndY)
   {
    float rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX;
     
    rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
    rotationY = Mathf.Clamp (rotationY, minimumY, maximumY);
     
    transform.localEulerAngles = new Vector3(-rotationY, rotationX, 0);
   }
   else if (axes == RotationAxes.MouseX)
   {
    transform.Rotate(0, Input.GetAxis("Mouse X") * sensitivityX, 0);
   }
   else
   {
    rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
    rotationY = Mathf.Clamp (rotationY, minimumY, maximumY);
     
    transform.localEulerAngles = new Vector3(-rotationY, transform.localEulerAngles.y, 0);
   }
  }
   
  void Start ()
  {
   // Make the rigid body not change rotation
   if (rigidbody)
    rigidbody.freezeRotation = true;
  }
}


А это мои настройки:
 
Goga3912Дата: Вторник, 08.09.2015, 04:57 | Сообщение # 6
Новый писатель
Группа: Пользователи
Сообщений: 13
Статус: Offline
artem231, эммм.... в коде вроди все нормально, тупой вопрос но все же, ты уверен что правильно скрипт применяешь?=)

Сообщение отредактировал Goga3912 - Вторник, 08.09.2015, 05:02
 
artem231Дата: Вторник, 08.09.2015, 10:19 | Сообщение # 7
Новый писатель
Группа: Пользователи
Статус: Offline
Ну да , на камеру кидаю. В камеру шею чтобы голова поворачивалась. Повороты потом сделаю. Блин в чем мжт быть проблема?(
 
Форум » Unity » Вопросы » помогите настроить поворот камеры.
Страница 1 из 11
Поиск:
Свернуть
Развернуть
Необходима авторизация
0
ТОП-5 САЙТА
НОВЫЕ ИГРЫ
ГОРЯЧИЕ ТЕМЫ
СЛУЧАЙНЫЕ ФАЙЛЫ