Введение в Unity Scripting

Чтобы оживить ресурсы в проекте, нам нужны скрипты. Это самая фундаментальная часть приложения, которую вы хотите создать с использованием Unity Scripting. Скрипты используются для написания логики поведения игровых объектов в приложении. Его можно использовать для создания различных систем AR, VR, графического эффекта, управления анимацией, управления физикой, настраиваемой системы искусственного интеллекта и т. Д. Таким образом, в целом, сценарии - это сердце и душа приложения.

Как использовать Unity Scripting?

Unity 3D использует Monobehaviour для наследования в своих скриптах. Он поддерживает C # изначально. Это наиболее широко используемый язык сценариев в единстве. Однако мы можем писать скрипты на многих других языках .NET, если они могут компилировать совместимые DLL. Итак, пока мы будем придерживаться сценария C #.

Шаги создания сценариев Unity

Давайте узнаем шаги создания и использования сценариев.

1. Создание скриптов

  • Перейдите к проекту. Щелкните правой кнопкой мыши Create> C # Script.
  • Другой способ заключается в выборе Assets> Create> C # Script в главном меню.

  • Будет создан новый скрипт, который предложит нам ввести новое имя.
  • Дайте правильное имя сценарию и нажмите Enter. Наш первый скрипт успешно создан.

2. Выбор редактора скриптов

  • Unity использует Visual Studio в качестве редактора сценариев по умолчанию.
  • Чтобы изменить редактор скриптов, перейдите в «Редактирование»> «Установки»> «Внешние инструменты».
  • Найдите расположение файла редактора сценариев.

3. Сценарий Анатомия

  • Поведение GameObject может управляться различными функциями в Unity, которые называются компонентами.
  • Помимо этих компонентов, если нам нужна какая-то конкретная функция, мы можем реализовать ее, используя сценарии.
  • Когда мы дважды щелкнем по сценарию, откроется редактор сценариев.
  • Структура скрипта будет выглядеть ниже.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyFirstScript: MonoBehaviour
(
// Start is called before the first frame update
void Start()
(
)
// Update is called once per frame
void Update()
(
)
)

  • Все сценарии, которые мы пишем внутри единства, будут получены из встроенного класса Monobehaviour.
  • Это похоже на проект нового пользовательского компонента, который может изменить поведение игрового объекта.
  • Каждый раз, когда вы присоединяете этот скрипт как компонент к игровому объекту, он создает новый экземпляр объекта сценария.
  • Имя класса сценария будет выбрано из имени файла, который мы дали для создания сценария.
  • Чтобы прикрепить скрипт к игровому объекту, убедитесь, что имя класса и имя файла совпадают. Или же это даст нам ошибку компиляции, и мы не сможем присоединить этот скрипт к Game Object.
  • Здесь мы видим, что здесь созданы две функции по умолчанию. Они запускаются и обновляются.
  • Функция запуска используется для инициализации вещей внутри скрипта перед их использованием.
  • Функция запуска вызывается в начале игрового процесса, если скрипт включен в окне инспектора игрового объекта. Он вызывается только один раз за выполнение скрипта.
  • Функция обновления будет вызываться каждый кадр. В основном это необходимо, если что-то обрабатывается в каждом кадре. Это может быть движение, ввод данных пользователем, запуск действий и т. Д.
  • Мы можем написать наши пользовательские функции, аналогично тому, как пишутся функции Start и Update.

4. Прикрепление скрипта к игровому объекту

  • Выберите игровой объект, к которому необходимо прикрепить скрипт.
  • Первый способ - перетащить скрипт напрямую в окно «Инспектор» игрового объекта. Здесь мы прикрепим его к основной камере.
  • Второй способ - щелкнуть «Добавить компонент», начать ввод имени сценария и выбрать сценарий.

  • Он будет прикреплен к игровому объекту, как мы видим в окне инспектора.

5. Что это за переменные, функции и классы?

  • Переменные. Переменные похожи на контейнеры для хранения значений или ссылок на объекты. В соответствии с соглашением имя переменной будет начинаться со строчной буквы.
  • Функции : Функции - это фрагмент кода, который использует переменные и дополнительную логику для изменения поведения объектов. Они также могут изменять эти переменные. Функции начинаются с заглавной буквы. Хорошей практикой является организация нашего кода внутри функции так, чтобы читаемость была увеличена.
  • Классы: Классы - это набор переменных и функций для создания шаблона, который определяет свойство объекта. Имя класса берется из имени файла, которое мы даем во время создания скрипта. Обычно это начинается с заглавной буквы.

6. Предоставление справок в инспекторе:

  • Переменные, объявленные в классе как public, будут доступны инспектору, и мы можем присвоить ему любые ссылки или значения.
  • Рассмотрим следующий код:

public class MyFirstScript : MonoBehaviour
(
public GameObject cameraObject;
// Start is called before the first frame update
void Start()
(

)
)

  • Здесь объект камеры является публичной переменной, которая нуждается в ссылке. Перейти к редактору единства. Выберите объект и, если мы посмотрим на компонент скрипта, мы увидим пустое пространство (None (Game Object)), как показано ниже. Для назначения выберите игровой объект из иерархии и перетащите его в поле «Объект камеры».

7. Доступ к компонентам

  • Будут сценарии, в которых нам потребуется доступ к различным компонентам, прикрепленным к игровому объекту.
  • Давайте рассмотрим пример доступа к компоненту «Камера» игрового объекта.
  • Получить компонент мы получим тип камеры.

void Start ()
(
Camera cameraObject = GetComponent();
Debug.Log("Camera Object is: " + cameraObj);
)

8. Измените значения компонентов

  • Изменение значений компонента является следующим шагом в приведенном выше примере.
  • Приведенный ниже код объясняет, как мы можем изменить поле зрения камеры.
  • После того, как мы нажмем кнопку воспроизведения в редакторе, мы увидим, что поле зрения камеры изменится со значения по умолчанию 60 на 90 в меню инспектора камеры.

public GameObject cameraObject;
private int cameraFOV = 90;
void Start ()
(
Camera cameraObj = GetComponent();
cameraObj.fieldOfView = cameraFOV;
)

Вывод

В этой статье мы узнали о сценариях Unity, необходимости создания сценариев, пошаговом создании сценария и различных компонентов сценария, как получить доступ к компонентам через сценарий и как мы можем их изменить.

Рекомендуемая статья

Это было руководство по написанию сценариев Unity. Здесь мы обсуждаем введение и шаги по созданию сценария. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
  1. Команды сценариев оболочки
  2. Что такое сценарии оболочки?
  3. Что такое межсайтовый скриптинг?
  4. Shell Scripting Интервью Вопросы
  5. Как установить Unity?
  6. Пакетные команды сценариев | Список | Примеры