Как сделать игру в Unity: будет показано на примере простой мобильной 3D-игры лабиринт.
Для демонстрации я собираюсь разработать игру, в которой игрок будет перемещаться по карте наклоняя мобильное устройство, в образе шара, чтобы найти синий квадрат. Это отличный первый проект в Unity для начинающих, который научит некоторым основным концепциям.
Для начала необходимо создать проект. Для этого в необходимо зайти в Unity Hub и создать 3D проект.
Построение лабиринта.

Теперь мы собираемся расставить несколько предметов в нашей сцене. Во-первых, мы собираемся добавить землю, которая на языке Unity называется 3D-plane.
Чтобы добавить это в сцену, перейдите по:

GameObject > 3D Object > Plane
Это приведет к появлению плоского квадрата в вашей Scene. “Scene” - это фактически другое слово для обозначения уровня в Unity, хотя оно также может относиться к таким вещам, как меню. Окно сцены позволяет просматривать и управлять отдельными элементами, которые находятся в вашем игровом мире.
Далее мы добавим несколько кубиков. Вставьте первый, перейдя в:

GameObject > 3D Object > Cube
Это позволит вставить куб, который по умолчанию будет отображаться прямо в центре плоскости. Чтобы перемещать элементы, вы можете выбрать их в сцене, а затем выбрать значок со стрелками в левом верхнем углу. Это позволит вам перетащить элемент по всем трем осям.

Для наших целей куб можно оставить там где он стоит. Теперь необходимо сделать еще несколько таких кубов. Для этого выделите первый и нажмите Ctrl + C. Теперь нажмите Ctrl + V, чтобы вставить, и новый куб появится прямо поверх старого. В иерархии слева появится еще один куб. Иерархия, по сути, список всего, что есть в вашей сцене, что позволяет очень легко находить отдельные элементы и манипулировать ими.

Перетащите выделенный куб подальше от первого куба, чтобы он находился прямо рядом с ним без зазора. Чтобы сделать это точно, вам нужно удерживать кнопку Ctrl при перетаскивании. Это приводит к перемещению объектов на заранее заданную единицу измерения, которой вы сможете управлять в настройках.
Наша цель создать лабиринт, поэтому перетащите несколько из них, чтобы сделать что-то похожее на лабиринт. Персонаж будет начинаться в левом верхнем углу.

Если это необходимо сделать под фиксированным углом, удерживайте клавишу Alt, а затем перетащите ее мышью, чтобы изменить угол обзора. Вы также можете использовать колесо мыши для увеличения и уменьшения масштаба.
Создание игрового персонажа.
Теперь у вас есть уровень, но для того, чтобы знать, как сделать игру в Unity, вам также необходимо создать персонажей, которыми можно управлять. Ради простоты, я иду с маленьким шариком, который можно катать по лабиринту.
Чтобы создать этот шар, просто поместите сферу в сцену, как только вы добавили коробки.














Однако на этот раз мы хотим придать фигуре физику. Для этого вам просто нужно выбрать его в иерархии или в представлении сцены, а затем просмотреть “inspector”, который отображается справа. В этом окне отображаются свойства любого выбранного элемента и вы можете точно их отредактировать. Это также позволяет добавлять “компоненты” в игровые объекты, что означает, что вы можете изменять их поведение.
Нажмите “Add Component”, а затем:
Physics > Rigid Body.







RigidBody-это скрипт, который, по сути, предоставляет готовую физику для применения к любому объекту. Теперь наш мяч упадет на сцену, готовый к перемещению! В этом и заключается реальная сила использования игрового движка, такого как Unity 3D: он предоставляет встроенные функции, которые в противном случае потребовали бы месяцев программирования.
Я уменьшил размер своей сферы по умолчанию до 0,5, отредактировав масштаб по всем трем осям в преобразовании (также найденном в inspector).

Фиксация камеры.
Чтобы играть в эту игру, мы хотим взглянуть на действие сверху вниз. Для этого нам нужно изменить угол наклона камеры и ее угол обзора. Поэтому выберите камеру в Иерархии, и вы увидите, как в вашей сцене появится небольшое окно, в котором показан предварительный просмотр того, что она видит.
Это также открывает некоторые подробности в “Инспекторе” справа, где написано “Rotation”, мы изменим ось X на “90”.
Теперь переместите камеру вверх и в сторону от места действия, пока не увидите всю карту.

Но нам все еще нужен способ контролировать нашу игру. Для этого нам нужно будет написать сценарий.

Создайте новую папку в своих ресурсах и назовите ее “Script". Теперь щелкните правой кнопкой мыши в любом месте здесь и выберите:
Create > C# Script
Назовите свой новый скрипт “TiltControl".












Как только это будет создано, дважды щелкните по нему, чтобы открыть редактор по умолчанию (IDE). Обычно это будет Visual Studio.
Теперь просто удалите все, что там есть в данный момент, и замените его на:

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

public class TiltControl : MonoBehaviour
{

public Rigidbody rb;

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

// Update is called once per frame
void Update()
{

}

void FixedUpdate()
{
Vector3 movement = new Vector3(Input.acceleration.x, 0.0F, Input.acceleration.z);
rb.velocity = movement * 5;
}
}

Здесь мы вызываем компонент твердого тела, который мы добавили ранее, а затем добавляем скорость по трем осям на основе акселерометра в телефоне. Другими словами, теперь игрок сможет перемещать мяч, наклоняя телефон.
Теперь вернитесь в Unity, выберите сферу и перетащите свой сценарий TiltControl в инспектор внизу, где написано “Add Component”. Теперь это означает, что код в вашем сценарии повлияет на игровой объект, к которому вы его прикрепили.

Прежде чем мы протестируем игру, вы также должны поставить галочку в поле с надписью “Freeze Position Y” под ограничениями. Это важно, потому что это предотвратит выпрыгивание нашего мяча из лабиринта, если он будет двигаться слишком быстро!

Создание игры для Android в Unity.

Для этого выберите File > Build Settings. Теперь выделите Android из списка платформ, затем выберите “Switch Platform”.
Для этого вам потребуется, чтобы Android SDK и Java JDK были уже установлены и расположены на вашем компьютере. Вы можете попросить Unity выполнить это за вас во время выполнения, в противном случае вам нужно будет загрузить их отдельно, а затем найти необходимые файлы. Это также может быть достигнуто с помощью Unity Hub.

Вы также должны нажать кнопку с надписью “Add Open Scenes”, которая добавит созданный вами уровень в сборку.
Наконец, нажмите “Player Settings”, а затем прокрутите вниз до места, где указано Default Orientation. Вы хотите установить это значение в положение “Landscape Right”, что предотвратит вращение экрана во время веселья ваших игроков!
Чтобы создать и протестировать приложение, вам нужно всего лишь нажать “Build and Run”, пока ваш смартфон подключен. Убедитесь, что вы включили отладку USB в меню Параметров разработчика.
Если все пойдет по плану, то вы увидите, как игра появится на экране вашего устройства через несколько минут после сборки.

Победа
Но это не настоящая игра, пока вы не сможете выиграть. Чтобы добавить условия выигрыша, необходимо превратить один из наших блоков в цель.
Перетащите простой формат PNG в виде синего квадрата в окно проекта (вы можете создать новую папку под названием “Color” или что-то в этом роде, если хотите). Выберите один из квадратов в вашей игре, а затем перетащите на него этот цвет.
Теперь нам нужно создать еще один новый скрипт, который я называю “WinBlock”. Этот выглядит так:

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

public class WinBlock : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{

}

// Update is called once per frame
void Update()
{

}

void OnCollisionEnter(Collision collision)
{
Application.Quit();
}

}

То, что он делает, - это проверяет, не натыкается ли на него что-нибудь. Все эти кубы по умолчанию имеют “Коллайдеры”, которые являются границами, позволяющими телу Rigidbody знать, где начинаются и заканчиваются препятствия. Это еще одна распространенная особенность движков видеоигр, которая экономит разработчикам много времени.
Поэтому, когда что-то новое касается этой границы, игра заканчивается. Учитывая, что единственное, что может двигаться, - это наш маленький шарик, мы можем с уверенностью предположить, что виновником будет именно он.

Вам нужно будет сделать гораздо больше, чтобы сделать эту игру увлекательной, не говоря уже о том, чтобы ее можно было продать. Нужно добавить текстуры, музыку, графику, доработать игровой процесс. Если бы мы собирали это в более крупный проект, нам также нужно было бы пересмотреть то, как мы расположили элементы в сцене.
Тем не менее, в качестве отправной точки, я думаю, вы согласитесь, что то, чего нам удалось достичь за очень короткое время, впечатляет. И на этом пути мы усвоили несколько основных уроков.
Добавление музыки и параметров громкости.
© Курсовой проект Виноградова Александра
Группа ВС-1
Рыбинский авиационный колледж
Социальные сети
This site was made on Tilda — a website builder that helps to create a website without any code
Create a website