Как работать в unity

Создание и монетизация мобильных игр — Курсы по разработке игр на Unity3D

Свои вопросы пишите здесь на сайте, либо под роликом на Ютубе

Создание игры Tower Defense на Unity3D (Полная версия)

В этом уроке вы узнаете как можно создать игру жанра Tower Defense на Unity3D. 

Создание игры Snake (Змейка) на Unity3D за час

В этом уроке вы узнаете как можно создать игру «Змейка» на Unity3D всего за час.

Unity3D Урок 7.5 — Упаковка игры [Компиляция(создание exe)]

 Седьмой урок, Пятая часть, урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru.  Пятая часть седьмого видеоурока по Unity 3d  Упаковка игры [Компиляция(создание exe)].

Unity3D Урок 7 [4] — Создание шутера [Физика игры]

 Седьмой урок, Четвёртая часть, урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru.  Четвертая часть седьмого видеоурока по Unity 3d  Создание шутера [Физика игры].

Unity3D Урок 7 [3] — Создание шутера [Прицел]

Седьмой урок, Третья часть, урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru.  Третья часть седьмого видеоурока по Unity 3d Создание шутера [Прицел].

Unity3D Урок 7 [2] — Создание шутера [Ракета Взрыв Звук]

Седьмой урок, вторая часть, урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru.  В этом уроке вы узнаете как создать звук взрыва ракеты в Unity3D. — Добавление взрыва — Добавление звука — Написание скрипта взрыва

Unity3D Урок 7 [1] — Создание шутера [Подготовка]

Седьмой урок, первая часть, урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru. Unity3D Урок 7.1 — Создание шутера [Подготовка]

Unity3D Урок 6 — Создание управляемого персонажа

Шестой урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru. Unity3D Урок 6 — Создание управляемого персонажа видео геймплей, прохождение игры, подробное описание

Unity3D Урок 5 — Работа с 3D’s Max [экспорт моделей]

Пятый урок из серии обучающих видео по работе с игровым движком Unity3D с сайта 4fps.ru. Как экспортировать модель в Юнити, как настроить материалы, текстуры и префабы, как с ними обращаться — обо всем об этом смотрите в уроке.

— Есть собственно движок на C++. У него там внутри рендеринг, физика, рантайм mono, всё что надо.

Для каждой платформы скомпилирована своя версия.

О Unity: обзор движка

В терминологии Unity это проигрыватели, playback engines. Они будут проигрывать то, что насоздавал пользователь.

— Есть пользовательские скрипты, написанные на любом .net языке. Эти скрипты компилируются в обычные управляемые сборки/dll. У Unity есть свои компиляторы для C#, UnityScript и Boo, но необязательно использовать именно их. Исходники на C# можно прекрасно компилировать в Visual Studio, получая точно такие же dll. Можно писать на любом .net-языке, лишь бы для него был компилятор: Visual Basic, F#, C++ CLI, … ― один хрен на выходе будет универсальный IL-код.

— Mono в Unity хоть и сильно модифицированный, но более-менее полноценный ― позволяет даже такие вещи как unsafe-код и pinvoke (из скриптов можно спокойно вызывать функции из WinAPI или своих нативных библиотек).

— Между пользовательскими управляемыми библиотеками и неуправляемым кодом движка имеется прослойка — управляемая библиотека UnityEngine.dll. Собственно это API Unity. Она перенаправляет вызовы управляемых функций дальше в недра движка. Например, когда я в скрипте создаю новый игровой объект:

var enemy = new GameObject("Monster");

конструктор класса GameObject вызывает внутреннюю функцию движка, которая где-то там на графе текущей сцены создаёт новый объект. В результате получается два объекта: один настоящий ― с которым непосредственно работает движок, а второй ― управляемая обёртка над ним, с которой работаю я. Про тот настоящий мне и знать не обязательно.

— При запуске билда игры запускается проигрыватель, загружает ресурсы, а встроенный в него рантайм mono загружает управляемые dll с пользовательскими скриптами и по необходимости компилирует и вызывает из них обработчики всякий событий: Awake, OnEnable, Update и прочее. На всех(?) платформах кроме iOS используется JIT-компилятор. Для iOS вместо него применяется AOT-компилятор, который переводит управляемый IL-код в машинный не во время его выполнения, а заранее на этапе сборки проекта.

Сейчас цепочка от скрипта до машинного кода выглядит обыкновенно:

код на C# -> компилятор C# -> код на IL -> JIT-компилятор -> машинный код.

Юнитеки сейчас делают штуку под кодовым названием IL2CPP ― транслятор IL в C++. Работать будет не как JIT-компилятор во время выполнения игры, а заранее на этапе сборки проекта, как существующий AOT-компилятор для iOS. Цепочка должна получиться такая:

код на C# -> компилятор C# -> код на IL -> IL2CPP -> код на C++ -> компилятор C++ -> машинный код.

А в случае WebGL должно работать так:

код на C# -> компилятор C# -> код на IL -> IL2CPP -> код на C++ -> транслятор C++ в JavaScript -> JavaScript ->  а дальше браузер будет разбираться.

.

Для Unity уже давно существует ассет Playmaker, который позволяет создавать сценарии игры без написания кода. У него есть свои пользователи и их достаточно много. Я никогда не пользовался такими инструментами и думаю, что какой-либо более-менее серьезный проект невозможно сделать без написания кода.

Однако, для каких-то отдельных элементов и частей игры, такой подход вполне может сократить время разработки. Так недавно появился ещё один инструмент для визуального программирования, похожий на Blueprints из движка Unreal — Bolt.

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

  • два типа графов: как в Unreal Blueprints и конечные автоматы как в Playmaker
  • группировка, слои и зум
  • события, макросы, плагины
  • live-редактирование
  • поддержка всех типов
  • встроенная документация

Кроме того, судя по плану разработки — у этого инструмента будет много полезных и удобных функций.

Как работать с Raycast 2D в Unity 5

Ещё есть сравнительная таблица с другими визуальными редакторами.


А вот что касается использования визуальных средств для создания сложных шейдеров, то тут я «за» 🙂 Таких инструментов много, цены на них приемлемые и результат достойный.

  1. Amplify Shader Editor
  2. Shader Forge
  3. Shader Weaver

Если хочется начать с чего-нибудь попроще и получить красивый результат, есть ассет Minimalist. Привет, Monument Valley!

Можно применять разные цвета на разные стороны объекта с одним материалом, использовать градиенты, есть встроенный редактор материалов, стоит недорого и есть версия Free.

Думаю что для мини-игр визуальное программирование отлично подойдет, комбинированный вариант тоже. А редакторы шейдеров определенно стоит попробовать!

Unity3D — это такой инструмент, балансирующий где-то на грани между игровым движком и игровым конструктором.

Тамашняя среда разработки — эдакий WYSIWYG-редактор всего, в котором почти всё решается drag’n’drop’ом.
Хотя, конечно, скрипты писать нужно. Для этих целей поддерживается JavaScript, C# и Boo; и делается это всё-таки в отдельном редакторе, по умолчанию в MonoDevelop.
Движок умеет лайтмапы, реал-таймовые тени, всякие шейдеры и постэффекты. Есть свой редактор ландшафтов, используется PhysX и FMod.
Куча примеров и документации.

Как начать разбираться в 3D-моделировании и Unity 3D

Всё это добро работает на PC, Mac, Wii, PS3, XBox, Android, iPhone и в браузере.

Бесплатная версия поддерживает только десктопы и вэб, и сильно урезана (нет постэффектов, рендера в текстуру и т.д).
Полный функционал (pro) стоит 1500$. Причём для десктопов, iPhone и Android ценник отдельный; а на консоли нужно вообще специально догавариваться.

Тем не менее на Unity вышло много коммерческих игр, таких как BattleStar Galactica Online, Feist, King’s Bounty Online.
Всё больше порталов и социальных сетей поддерживают API Unity наряду с Flash.
А EA и вовсе заключили многолетнее соглашение, благодаря которому все инструменты Unity доступны любому сотруднику EA в полном объеме.

Казалось бы, вот он, простой, но мощный и при этом весьма демократичный движок! Но почему-то на форуме активность unity крайне мала.
Все либо пишут свои движки, либо используют какой-нибудь Game- или RPGMaker. Есть даже мнение, что его время прошло… собственно, почему так?

Хочется разобраться; услышать отзывы тех, кто с ним работал более плотно.
Первое впечатление оно производит очень хорошее, но какие подводные камни?

Итак, кто что думает?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *