Задать вопрос
@LeGionERoF

Ошибка с поворотом камеры в скрипте?

Здравствуйте, написал скрипт на передвижения игрока, но при передвижение почему меняется "Rotation" камеры по осям "x" и "z'. Помогите.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;

public class Dvish : MonoBehaviour
{
NavMeshAgent navMeshAgent;
public float moveSpeed;

// Start is called before the first frame update
void Start()
{
navMeshAgent = GetComponent();
}

// Update is called once per frame
void Update()
{
Vector3 dir = Vector3.zero;
if (Input.GetKey(KeyCode.A))
dir.z = -1.0f;
if (Input.GetKey(KeyCode.D))
dir.z = 1.0f;
if (Input.GetKey(KeyCode.W))
dir.x = -1.0f;
if (Input.GetKey(KeyCode.S))
dir.x = 1.0f;
navMeshAgent.velocity = dir.normalized * moveSpeed;
}
}
  • Вопрос задан
  • 48 просмотров
Подписаться 1 Средний 2 комментария
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Ezekiel4
Охотник на пиратов и сборщик монолитов
Занятный способ использовать агента. Обычно для движения используют Transform, Rigidbody, CharacterController или WheelCollider. Не видя проекта могу лишь сказать, что вы поместили камеру по иерархии внутрь игрока. И когда игрок поворачивается, камера поворачивается вместе с ним. Обычно для управления камерой пишут отдельный скрипт, что я вам и советую сделать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы