Создание персонажа в unity.

0 0

Всем привет! Сегодня мы с вами создадим скрипт управления персонажем, а в следующей серии мы добавим модель персонажа в unity, и настроим его. Начнем!

Часть 1.0 Создание персонажа

  1. Создайте plane (Hierarchy — ПКМ — 3D objects — plane). Разместите ее как вам удобно, это будет наша земля.
  2. Создайте Capsule ее можно будет найти там же, где и plane. Переименуйте capsule в player, и добавьте тэг player.

3. Удалите у player компонент capsule collider, и добавьте ему новый компонент под названием CharacterController.

Часть 1.1 Написание скрипта.

  1. Создайте новую папку, к примеру под названием Scripts или myScripts, и создайте там новый скрипт под названием PlayerController, откройте этот скрипт, и впишите следующее:
using System.Collections;
using System.Collections.Generic;
using System.Net.Http.Headers;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
    [Header("Player Settings")]
    public float speed = 1.0f;
    public float sensitivity = 2.0f;

    private CharacterController characterController;

    // Start is called before the first frame update
    void Start()
    {
        characterController = GetComponent<CharacterController>();
    }

    // Update is called once per frame
    void Update()
    {
        float horizontalMovement = Input.GetAxis("Horizontal") * speed;
        float verticalMovement = Input.GetAxis("Vertical") * speed;

        Vector3 movement = transform.forward * verticalMovement + transform.right * horizontalMovement;
        characterController.Move(movement * Time.deltaTime);

        float mouseX = Input.GetAxis("Mouse X") * sensitivity;
        float mouseY = Input.GetAxis("Mouse Y") * sensitivity;

        transform.Rotate(0, mouseX, 0);
        Camera.main.transform.Rotate(-mouseY, 0, 0);
    }
}

Часть 1.2 Разбираем код

  1. Мы создали заголовок под названием Player Settings. [Header(«Player Settings»)] — означает, что мы создаем заголовок, а в скобочках указываем текст заголовка.
  2. Также мы создали 2 публичные переменный скорость и чувствительность мыши.
  3. У нас есть приватная переменная типа CharacterController, с помощью нее у нас осуществляется движение персонажа.
  4. При старте игры, мы сразу же ищем компонент CharacterController на том объекте, где он прикреплен (в нашем случае это игрок).
  5. Каждый кадр, мы говорим, что переменная под названием horizontalMovement содержит в себе то, что нажал пользователь на клавиши. (То-есть горизонтальные кнопки, а это означает клавиши A и D, и если игрок нажмет на какую либо из этих клавиш, то переменная это запомнит). Тоже самое и с переменной под названием verticalMovement (только у нее вертикальные кнопки, а это значит клавиши W и S).
  6. Следующие 2 строки — мы осуществляем движение персонажа.
  7. У нас есть две переменные mouseX и mouseY (они содержат в себе то, что ввел пользователь, то-есть у moueX это движение мыши по горизонтали, а у mouseY это движение по вертикали).
  8. Следующие 2 строчки осуществляют движение камерой.

Часть 1.3 Настройка персонажа.

  1. Добавьте камеру дочерней к объекту player.
  1. Теперь сбросьте компонент transform у камеры, а затем измените в transform значение Y на 1.
  2. Теперь добавьте скрипт PlayerController к нашему объекту player, и можете изменить значения переменных на желаемые.

Часть 1.4 Готово!

Все, мы закончили, теперь можно запустить игру, и проверить. Теперь наш персонаж умеет ходить! Это классно. На этом все, если вы хотите 2 часть про добавление модели персонажа вместо нашей Capsule, не забудьте подписаться на мой ютуб-канал! Ютуб-канал: https://www.youtube.com/@it-prog

На этом все, все до скорой встречи!

Оставьте ответ

Ваш электронный адрес не будет опубликован.