Я создал сценарий, в котором я меняю базу направления игрока в позиции x на оси x. Но я хочу сделать что-нибудь, чтобы персонаж мог смотреть вверх и вниз в зависимости от y-позиции мыши. Я пытался это реализовать, но, похоже, это не сработало, и я понятия не имею, почему.
Вот мой сценарий:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CharacterMovement : MonoBehaviour
{
CharacterController characterController;
private float xaxis = 0.0f;
private float yaxis = 0.0f;
public float horizontalMovementSpeed = 2f;
public float verticalMovementSpeed = 2f;
public float xSensitivity = 2f;
public float ySensitivity = 2f;
public Transform neck;
void Start()
{
characterController = GetComponent<CharacterController>();
Cursor.lockState = CursorLockMode.Locked;
}
void Update ()
{
if(!characterController.isGrounded)
{
transform.Translate(Input.GetAxis("Horizontal") * horizontalMovementSpeed * Time.deltaTime, 0f, Input.GetAxis("Vertical") * verticalMovementSpeed * Time.deltaTime);
xaxis += Input.GetAxis("Mouse X") * xSensitivity;
yaxis += Input.GetAxis("Mouse Y") * ySensitivity;
transform.eulerAngles = new Vector2(0, xaxis);
yaxis = Mathf.Clamp(yaxis, -40, 85);
neck.eulerAngles = new Vector2(yaxis, 0);
}
}
}