Введение в разработку игр с помощью Unity и C#
Содержание:- Как и зачем использовать скриптинг
- Как начать работу с Unity
- Как работать с языком C#
- Как объявить переменную в Unity
- Как писать функции в Unity
- Как работать с классами в Unity
- Заключение
Unity 3D — один из самых популярных современных кросс-платформенных движков создания игр и приложений. С помощью данного движка можно разрабатывать не только приложения для компьютеров, но и для мобильных устройств (например, на базе Android), игровых приставок и других девайсов. Если вы хотите разрабатывать игры, начать стоит с языка C# (си шарп) и движка Unity, на работе которого основывается большинство современных игр под мобильные устройства, компьютеры и даже игровые консоли. Чтобы помочь вам начать учить C# с нуля и освоить работу с переменными, функциями и классами, которые вы будете использовать в процессе разработки, приводится следующее руководство. Данный материал призван дать вам базовые знания и облегчить самостоятельное изучение методических материалов и учебников по C#.
Как и зачем использовать скриптинг
Unity работает как программа для видеомонтажа: вы говорите ей, что и в каком порядке нужно делать, а затем Unity воспроизводит заданную последовательность действий. Чем больше скорость воспроизведения, тем плавнее будет работать ваша игра. Написание этой последовательности называется «скриптинг». В случае с Unity вам не придется писать весь код вручную, суть программирования на C# сводится к управлению объектами и соответствующими им скриптами и компонентами. Вы действуете как режиссер фильма, управляя всеми аспектами вашей игры с помощью скриптов. Каждому объекту в проекте ставится в соответствие выполняемый скрипт. Скрипты пишутся на языке C#. Это скриптовый язык, который основывается на принципах объектно-ориентированного программирования.
Как начать работу с Unity
- Для начала нужно скачать исполняемый файл с официального сайта проекта.
- Запускаем исполняемый файл. Вместе с Unity можно установить Microsoft Visual Studio. Следует учесть, что программа занимает много дискового пространства. Это среда разработки, которая призвана упростить вам работу с языком C# и Unity.
- Если же вас не устраивает работа с Visual Studio, можно попробовать облегченную версию программы – Visual Studio Code – или встроенный в Unity текстовый редактор MonoDevelop. В нем есть базовые возможности для исправления ошибок в коде, а также сокращения для ускоренного написания кода.
Как работать с языком C#
Далее я приведу структуру кода на Unity. Код взят с официального руководства по Unity Coding in Unity for the Absolute Beginner.
- Переменная — это область памяти, которая хранит нужного типа значение или ссылку на объект. Их название в C# должно начинаться с маленькой буквы, не цифры.
- Функция — код для управления и различных действий над переменными. Может вводиться единожды или использоваться неограниченное количество раз. Их название в C# должно начинаться с большой буквы, не цифры.
- Класс — шаблон для создания объектов, позволяющий удобно сгруппировать функции и переменные.
Как объявить переменную в Unity
При написании кода удобно сначала объявить все переменные, а потом приступать к их обработке. Переменные могут обладать разными модификаторами доступа: public, private, protected, internal, protected internal и private protected. Основные из них – public (член класса доступен из любого участка кода) и private (доступен только из кода в том же классе или контексте). Private удобно использовать, чтобы ограничивать область видимости переменной. Это уменьшает вероятность появления ошибок. Public используется в основном для обеспечения связи между объектами. Они все будут иметь доступ к общей переменной или функции. Тип переменной определяет то, что она будет содержать. Он может быть числовой, символьный или, например, строковый. Имя переменной должно начинаться с маленькой буквы, не цифры, и не содержать пробелов. Слова в имени обычно разделяют большой буквой, например: myTestVoid.
Объявление переменной в коде:
область_видимости(public/private/…) тип имя
protected void myVoid
public int myInt
Как писать функции в Unity
Функции, как и переменные, характеризуются типом. Это тип значения, который возвращает вам функция. Имя функции всегда начинается с большой буквы, не цифры, а выполняемый код пишется в фигурных скобках. Функции могут выполнять алгоритмы, вычислять или обрабатывать данные. Функция специального типа void не будет ничего возвращать. В данном примере две функции: Update и MyFunction.
Функции, которые выполняются автоматически для Unity
- Update. Выполняется каждый кадр. Данная функция отвечает за анимацию, игровую логику и другие действия.
- LateUpdate. Похожа на Update, но вызывается в конце кадра.
- FixedUpdate. Рассчитывает физику.
- Start. Функция, которая выполняется, когда GameObject активен, а компонент включен.
- Awake. Выполняется один раз, когда инициализируется GameObject с данным компонентом. Awake вызывается, даже если компонент не включен.
Как работать с классами в Unity
Класс — это то, на чем основывается объектно-ориентированное программирование. Классы могут содержать переменные и функции. Имя класса обязательно будет совпадать с именем файла скрипта. Классы, как и переменные, могут характеризоваться разными модификаторами доступа (public/private/…). Примером класса в C# может служить List из пространства имен System.Collections.Generic. Это класс, содержащий любой список однотипных объектов. Чтобы класс работал с GameObject, он должен наследоваться из класса MonoBehaviour, как изображено на примере.
Заключение
Базовые знания языка и умение работать с классами, функциями и переменными — это обязательная часть в обучении любого C# разработчика. По Unity и C# существует большое количество видеоуроков и курсов, с помощью которых вы теперь сможете дальше наращивать свои знания и разрабатывать игры. В международном IT Колледже DevEducation обучение строится на выполнении практических задач, которые вам будут помогать решать преподаватели. На курсе по C# за 4 месяца вы сможете обучиться базовым понятиям и концепциям разработки собственных проектов. DevEducation обучает студентов также и по другим направлениям: языки Java, Javascript и CSS, разработка приложений под мобильные устройства, тестирование ПО. Полный список доступных курсов есть на сайте онлайн-колледжа.