Введение в программирование c# на unity

Содержание:

Хорошие ресурсы для разработки игр в Unity

Сообщество разработчиков игр — одно из лучших среди всех, и в индустрии есть множество высококвалифицированных профессионалов, которые размещают контент бесплатно или почти бесплатно. В этой области требуются 3D-моделисты, концептуальные художники, геймдизайнеры, программисты и так далее. Я связал несколько отличных общих ресурсов, с которыми я столкнулся, для каждого из этих полей ниже:

Watch this video on YouTube

Watch this video on YouTube

Watch this video on YouTube

Концептуальное искусство

  • Школа дизайна Фэн Чжу (более 90 часов уроков по концепт-арту)
  • Тайлер Эдлин Арт (Великое арт-сообщество BST с отзывами профессионалов о ежемесячных испытаниях)
  • Art Cafe (Интервью и мастер-классы с известными концепт-художниками)
  • Трент Канюга (иллюстратор и 2D-художник, который также создает свою собственную игру)

3D моделирование

  • CG Cookie (лучшие основы моделирования сетки в Blender, у них есть множество другого отличного контента для блендера)
  • Тор Фрик (модельеры и скульпторы твердых поверхностей в Blender)
  • Глеб Александров (Краткие мощные уроки по рендерингу в Blender)

Игровой дизайн

  • DoubleFine Amnesia Fortnight (разработчики игр, которые проводят двухнедельный хакатон и записывают весь процесс проектирования)
  • Инструментарий GameMakers (изучает принципы игрового дизайна)

Программирование

  • Handmade Hero (Написание игры и движка с нуля на C)
  • Джонатан Блоу (инди-разработчик, транслирующий свою разработку игры)
  • Brackeys ( хорошие учебные пособия по Unity)

Тceh

Сделаете игру на Unity за 6 уроков!

Unity 5 — популярный инструмент для создания игр для iOS, Android, PC, Mac OS X, XBox, PS3 и PS4. Пройдите 6 уроков, чтобы убедиться, что делать игры — гораздо интереснее и проще, чем кажется на первый взгляд.

Курс сделан бесплатным, чтобы больше людей верили в свои силы и осознавали свои возможности. Вы можете стать разработчиком вне зависимости от местоположения. Всё, что нужно — компьютер и интернет.
Быстрый способ стать разработчиком.

С этим курсом всего за 6 занятий вы сможете самостоятельно создать свою собственную игру: различные уровни, враги, сбор очков — всё включено.

Почему стоит научиться работать с Unity:

  • Unity — самый популярный движок для создания игр в мире. Его используют мировые гиганты типа Blizzard, Disney, NASA наравне с indie-разработчиками.
  • Курс предоставлен компанией Microsoft, участие полностью бесплатное.
  • Чтобы получить доступ к курсу и другим полезным материалам, заполните форму регистрации.

Расширенные возможности

Мы не будем вдаваться в подробности сейчас, но, возможно, в следующей статье — просто чтобы вы знали, что они существуют.

Создание графического интерфейса

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

Расширение редактора Unity

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

Анимация

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

Материалы и PBR

Unity использует физический движок рендеринга, который обеспечивает освещение в реальном времени и реалистичные материалы. Реальность такова, что вам нужно либо сначала изучить 3D-моделирование, либо использовать модели, созданные и оптимизированные кем-то другим, прежде чем вы доберетесь до этого, чтобы создавать вещи, которые действительно хорошо выглядят.

Unity3d

Как сочетать в себе одновременно сценариста, дизайнера и разработчика? Как создавать свои игровые миры, персонажей и даже свои правила? 3D Developer знает ответы.

Курс «Unity 3D Developer» — возможность максимально быстро приобрести новую профессию и зарабатывать на том, что приносит удовольствие. За 40 занятий курса вы получите отличную базу для старта в геймдев и освоите необходимые инструменты для создания собственной игры!

Программа курса построена таким образом, что итоговые проекты поэтапно собираются в ходе выполнения практических заданий.

Результатом прохождения курса станут две игры: 3D-игра в жанре Survival Shooter и 2D-игра платформер. Благодаря творческой наполненности у каждого студента будет свой уникальный проект, который сможет стать частью первого портфолио разработчика игр.

ТУСУР

Курс — для начинающих разработчиков компьютерных игр. Это отличный способ начать свою карьеру геймдевелопера. В процессе обучения вы научитесь создавать свои игровые приложения легко и быстро, используя современные технологии в области графики и звука.

Unity — это полноценный игровой движок, рассчитанный на то, что весь процесс разработки (кроме подготовки контента и скриптинга) будет происходить в поставляемом комплекте (в Unity3D интегрировано большое количество мощных вспомогательных средств, связанных с проектированием и дизайном). Работать в Unity просто и удобно, интерфейс дружелюбен и интуитивно понятен.

Пакет Unity 3D позволяет создавать игры и интерактивные приложения для любых платформ и устройств – будь то компьютер, игровая приставка или смартфон. Игру можно запустить прямо на веб-странице в браузере. Так вы сможете оживить ваш сайт, блог или форум.

Плюсы Unity:

  • Кроссплатформенность — поддерживаются Windows, MacOS, Wii, iPhone, iPod, iPad, Android, PS3 и XBox 360.
  • Современный уровень графики (есть deferred освещение, встроенный редактор шейдеров, стандартный набор постпроцессинговых эффектов.
  • Физический движок — PhysX.
  • Полноценное 3D в браузере! Скорость и сложность разработки обычной браузерной казуалки на ней не выше, чем на Flash, а графическое превосходство — налицо.

Да и wow-эффект! Яркий пример — Джаггернаут отечественных разработчиков (IT Territory LLC под эгидой mail.ru). Мощь и невероятные способности движка Unity3D позволили этой игре моментально завоевать огромную армию поклонников по всему миру.

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

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

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

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

Создание пользовательских компонентов

Встроенные компоненты в первую очередь управляют физикой и визуальными эффектами, но для того, чтобы действительно создать игру, вам нужно будет принимать вводимые пользователем данные и манипулировать этими стандартными компонентами, а также самими игровыми объектами.Чтобы начать создание компонентов, перейдите в нужный GameObject> Добавить компонент> введите имя вашего нового компонента в строке поиска> новый скрипт (c #).

В качестве общей рекомендации я бы не советовал использовать Javascript в Unity. Он не обновлялся со всеми замечательными вещами, которые поставлялись с ES6, а большая часть более продвинутых вещей основана на материалах C #, перенесенных на Javascript … По моему опыту, это просто становится одним гигантским обходным решением.

«Bubolab»

Если ваш ребёнок увлечен видеоиграми, не ограничивайте его интерес, а лучше взгляните на игровой мир по-новому. Дети с высоким уровнем цифровой грамотности способны к эффективному самообучению за счёт навыков критического мышления и умению ориентироваться в цифровой среде.

Занятия проходят в режиме Онлайн. Ваш ребёнок познакомится с основами программирования, а также созданием 3D- и 2D-игр при помощи среды CryEngine5 и языка C#.

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

Онлайн школа обучения IT профессиям «ItProger»

Программа рассчитана на новичков, которые хотят войти в сферу построения игр. За программу вы изучите разработку как 2D, так и 3D игр при помощи движка Unity и языка C#.

Вы пройдете все этапы построения игр, научитесь работать в Unity, писать C# скрипты, добавлять анимацию и рекламу в игры, а также загрузите вашу игру в Google Play и App Store.

Что будет в курсе:

  • Большая база знаний. На протяжении 2 месяцев вам предстоит пройти 85 уроков, что состоят из теоретических и практических лекций. Общая продолжительность которых более 41 часа.
  • Каждый новый модуль открывается по времени в 19:00. У вас будет достаточно времени чтобы пройти все уроки, а также выполнить домашние задания, прежде чем переходить к новому модулю.
  • К каждой лекции есть задания, которые вам предстоит отправлять на проверку. Также на самом сайте вы найдете сотни тестовых и более 200 практических заданий на вкладке «Тесты и практика».
  • Каждый ученик получает поддержку как со стороны лектора, так и со стороны наставника. Все вопросы можно задавать напрямую через специальную форму на сайте.

Навыки:

  • Знание языка C#
  • Создание Windows программ на C#
  • Работа с БД C# и БД Unity
  • Разработка мобильных 2D проектов
  • Разработка 3D проектов в Unity
  • Создание анимации в Unity
  • Публикация в Google Play и App Store
  • Разработка AR приложений
  • Внедрение монетизации в игры
  • Навыки создания простого ИИ

Крайне важный GameObject

Практически все в вашей сцене является GameObject. Вспомните System.Object в .NET Framework. От него наследуют почти все типы. Та же концепция относится и к GameObject. Это базовый класс для всех объектов в сцене Unity. Все объекты, показанные на рис. 5 (и многие другие), наследуют от GameObject.

Рис. 5. Класс GameObject в Unity

Lights Источники освещения
3D Models 3D-модели
Sprites Спрайты
HUDs Игровые интерфейсы
Particle Systems Системы частиц
GameObject GameObject

GameObject довольно прост, так как он относится к окну Inspector. На рис

6 видно, что к сцене был добавлен пустой GameObject; обратите внимание на его свойства в Inspector. У GameObject по умолчанию нет визуальных свойств, если не считать того, что при выделении этого объекта появляется виджет Unity

На этом этапе это фактически пустой объект.

Рис. 6. Простой GameObject

GameObject имеет свойства Name, Tag (аналог тега text, присваиваемого через FrameworkElement.Tag в XAML или тегу в Windows Forms), Layer и Transform (пожалуй, это свойство самое важное). Свойство Transform определяет позицию, поворот и масштаб любого GameObject

Unity использует левостороннюю систему координат, в которой координаты на экране компьютера рассматриваются как X (по горизонтали), Y (по вертикали) и Z (глубина, т. е. входящие или исходящие из экрана)

Свойство Transform определяет позицию, поворот и масштаб любого GameObject. Unity использует левостороннюю систему координат, в которой координаты на экране компьютера рассматриваются как X (по горизонтали), Y (по вертикали) и Z (глубина, т. е. входящие или исходящие из экрана).

В разработке игр весьма распространено использование векторов, о которых я подробнее расскажу в следующих статьях. А пока достаточно сказать, что Transform.Position и Transform.Scale являются объектами Vector3. Vector3 — это трехмерный вектор; иначе говоря, в нем не более трех точек: только X, Y и Z. Манипулируя этими тремя простыми значениями, вы можете задавать местонахождение объекта и даже перемещать его в направлении вектора.

Свойство Transform определяет позицию, поворот и масштаб любого GameObject.

Структура моноповедения

Ключевые функции

Все компоненты наследуются от класса MonoBehaviour. Он включает в себя несколько стандартных методов, главное:

  • void Start (), который вызывается всякий раз, когда объект, содержащий скрипт, создается в сцене. Это полезно в любое время, когда мы хотим выполнить некоторый код инициализации, например. установить экипировку игрока после того, как он появится в матче.
  • void Update (), который вызывается каждый кадр. Это то место, где будет выполняться основная часть кода, включающего пользовательский ввод, обновляющего различные свойства, такие как движение игрока в сцене.

Переменные инспектора

Часто мы хотим сделать компоненты максимально гибкими. Например, все оружие может иметь разный урон, скорострельность, has_sight и т. Д. Хотя все оружие, по сути, одно и то же, мы можем захотеть иметь возможность быстро создавать различные вариации с помощью редактора единства.

Другой пример, когда мы можем захотеть это сделать, — это создание компонента пользовательского интерфейса, который отслеживает движения мыши пользователя и помещает курсор в область просмотра. Здесь мы можем захотеть контролировать чувствительность курсора к движениям (если пользователь использовал джойстик или геймпад, а не компьютерную мышь). Таким образом, имеет смысл сделать эти переменные легко изменяемыми как в режиме редактирования, так и поэкспериментировать с ними во время выполнения.

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

Мы можем сделать это легко, просто объявив их как общедоступные переменные в теле компонента.

Обратите внимание, как мы можем сделать переменные с разными уровнями доступа, частными, общедоступными или общедоступными, но не отображаемыми в окне инспектора

Принятие пользовательского ввода

Конечно, мы хотим, чтобы наша игра реагировала на ввод пользователя. Наиболее распространенные способы сделать это — использовать следующие методы в функции Update () компонента (или в любом другом месте, которое вам нравится):

  • Input.GetKey (KeyCode.W) Возвращает True W, удерживается клавиша W
  • Input.GetKeyDown (KeyCode.W) Возвращает True при первом нажатии клавиши W.
  • Input.GetAxis («Вертикальный»), Input.GetAxis («Горизонтальный») Возвращает значение между -1,1 перемещения мыши при вводе.

Unity

  • 07/02/2015
  • Чтение занимает 21 мин

В этой статье

Разработка вашей первой игры с помощью Unity и C#

Продукты и технологии:
Unity, C#, Microsoft .NET Framework, Mono

В статье рассматриваются:

  • интерфейс Unity;
  • сцены, игровые объекты и компоненты;
  • написание кода;
  • проекты кода, генерируемые Unity.

Как архитектор ПО я создал много систем, занимался обратным инжинирингом вредоносного программного кода и, в целом, мог бы достаточно легко разобраться почти в любом коде. Однако, когда дело дошло до создания игр, я слегка растерялся, даже не зная, с чего начать. На заре эпохи Windows я немного программировал графику в неуправляемом коде — не могу сказать, что это доставило мне удовольствие. Я тогда начинал разработку на DirectX, но осознал, что, хотя он обладает колоссальными возможностями, мне пришлось бы писать слишком много кода для того, что я хотел сделать.

И вот однажды я решил поэкспериментировать с Unity — инфраструктурой, способной на удивительные вещи. Это первая из четырех статей, в которой я расскажу об основах и архитектуре Unity. Я покажу, как создавать двух- и трехмерные игры и, наконец, как вести разработку с ее применением на платформах Windows.

Настройка среды в Unity

Начнем с самого простого: загрузки и настройки Unity.

Загрузите последнюю версию с официального сайта или торрента и запустите установочный файл.

Полезно знать: невозможно использовать отладчик Visual Studio 2013 Express с Unity. Вы должны иметь Pro версию Visual Studio и купить плагин. С версией Express, вы будете иметь лучший редактор кода, но отсутствие отладчика сведет на нет все его достоинства.

Mac OS X

— существенно лучше, чем старый MonoDevelop 2 в предыдущих версиях Unity. Он, конечно, далек от совершенства, но ничего лучшего под на Mac не придумано.

На каком языке программировать в Unity?

Unity позволяет кодировать на трех языках: JavaScript, C# и Boo. Рекомендую использовать C# — он более мощный и проще.

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

Вот несколько ссылок, которые могут быть вам полезными:

  • : основа всех основ. Не зная интерфейса, вы не сможете создавать игры в Unity 3D
  • : изучение этого раздела поможет вам создать свою собственную сцену
Первая сцена. Создаем новый проект.

Выберите меню File, а затем создаqnt новый проект. Не выбирайте нивакой стандартный пакет на первое время. Вы можете повторно импортировать их позже, если вы захотите, просто поначалу они будут просто сбивать вас с толку.

Выберите 2D настройки. Как и прежде, вы можете изменить этот флаг в настройках проекта позже.

Не беспокойтесь о названии. Оно определяется в настройках, и чтобы изменить имя проекта достаточно просто переименовать папку.

Настройка интерфейса

В стандартном интерфейсе проекта шесть элементов рабочей области:

  1. Верхняя панель инструментов — в ней находятся стандартные вкладки File, Edit, Help, как во многих других интерфейсах, а также вкладки Assets, GameObject, Components и Window.
  2. Scene — окно сцены, в котором выстраивается игровое пространство (элементы игрового мира, текстуры, фигурки персонажей и прочее).
  3. Games — это окно игры, в котором можно посмотреть глазами пользователя, как будут двигаться элементы и работать игровые механики.
  4. Hierarchy — окно иерархии, в нем перечислен список всех элементов (GameObject), которые помещены в окно Scene.
  5. Project — это система папок, в которых хранятся ассеты по категориям (текстуры, шрифты, звуки и т.д.).
  6. Inspector — окно для изменения элементов игры, их размера, цвета, положения в пространстве и других характеристик.

Доступ к другим игровым объектам и компонентам

Часто нам нужно взаимодействовать с другими GameObject, а также с их ассоциированными компонентами. Если у вас есть ссылка на игровой объект, это довольно просто.ComponentName comp = some_game_object.GetComponent <ComponentName> ();

После этого вы можете получить доступ к любому из общедоступных методов / переменных компонента, чтобы управлять GameObject. Это простой момент, однако на самом деле получить ссылку на GameObject можно несколькими способами …

Доступ через переменную инспектора

Это самый простой способ. Просто создайте общедоступную переменную для GameObject, как мы продемонстрировали ранее с префабами, и вручную перетащите ее на компонент через инспектор. Затем перейдите к переменной, как указано выше.

Доступ через теги

Мы можем пометить GameObjects или prefabs через инспектор, а затем использовать функции поиска игровых объектов, чтобы найти ссылки на них.

Это просто делается, как показано ниже.GameObject some_game_object = GameObject.FindGameObjectWithTag («Кирпич»);

Доступ через преобразование

Если мы хотим получить доступ к компонентам в каком-либо родительском объекте, мы можем легко сделать это с помощью атрибута transform.ComponentName comp = gameObject.transform.parent.GetComponent <ComponentName> ();

Доступ через SendMessage

В качестве альтернативы, если мы хотим отправить сообщение многим другим компонентам или хотим отправить сообщение объекту, который находится далеко вверх по вложенной иерархии, мы можем использовать функции отправки сообщения, которые принимают имя функции, за которым следуют аргументы.gameObject.SendMessage («MethodName», параметры); // Трансляция сообщениеgameObject.SendMessageUpwards («ИмяМетода», параметры); // Получено только компонентами, вложенными выше.

Unity

Развивайте навыки и карьеру в собственном темпе с помощью обучающих ресурсов или под руководством экспертов Unity.

Получите три месяца бесплатного доступа к Unity Learn Premium и присоединяйтесь к Create with Code Live — виртуальному онлайн-курсу для учащихся, преподавателей и для всех, кто хочет научиться программированию.

Есть ресурсы как для новичков и студентов, так и для экспертов и профессионалов:

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

School XYZ

UnityОбучение инди-разработчиков создавать 2D-платформеры на Unity

За 5 месяцев ты создашь рабочий прототип игры, который можно доделать и загрузить Steam, App Store, Google Play.

Ты научишься:

  • Полному циклу разработки игры на Unity
    Освоишь создание игры, сборку под ПК, оптимизацию для мобилок, настройку аналитики, базовую публикацию.
  • Делать понятный игровой интерфейс
    Заверстаешь игровое меню. Реализуешь контроллер, инвентарь и ячейки быстрого доступа.
  • Реализовывать множество игровых механик
    Механики боя и разрушения, сбор зелья здоровья, прокачка персонажа, фонарик на темном уровне и другие.
  • Создавать умных NPC и взаимодействовать с ними
    Сделаешь мобов, в том числе стреляющих и летающих. Пропишешь механику разговора, анимируешь диалоги.

РЕЗУЛЬТАТ — В конце курса у тебя будет рабочий прототип игры с несколькими уровнями, который ты уже можешь показывать друзьям.

Что делать дальше:

  • Пойти Unity-разработчиком в студию. В этом случае, твой дипломный проект станет весомым аргументом для будущего работодателя.
  • Создать собственную игру. Тогда смело бери дипломный проект как образец. Лайфхак: в закрытом Дискорде школы ты сможешь найти студентов из курсов по пиксель-арту или 2D-иллюстрации. Если кого-то увлечет идея твоей игры, тебе сделают крутые оригинальные ассеты.

В подарок при записи на курс — Карьерный чит: уроки и выручалки от консультантов и HR`ов топовых игровых студий. Они помогут завоевать вакансию мечты, даже если это твоя первая работа. Ты узнаешь, как HR`ы «фильтруют» кандидатов, что писать в резюме, если писать нечего, что говорить на собеседовании, чтобы впечатлить работодателя. И получишь доступ к закрытым Q&A-сессиям с представителями Wargaming, Trace Studio, Sperasoft, My.Games, 1518 Studios.

Обнаружение столкновений

Ранее мы упоминали компоненты Collider и Rigidbody, которые можно добавить к объекту. Правило для столкновений состоит в том, что один объект в столкновении должен иметь твердое тело, а другой — коллайдер (или оба имеют оба компонента). Обратите внимание, что при использовании raycasting лучи будут взаимодействовать только с объектами, к которым прикреплены компоненты коллайдера. После настройки в любом настраиваемом компоненте, прикрепленном к объекту, мы можем использовать методы OnCollisionEnter, OnCollisionStay и OnCollisionExit для реагирования на коллизии. Получив информацию о столкновении, мы можем получить ответственность за GameObject и использовать то, что мы узнали ранее, для взаимодействия с прикрепленными к нему компонентами

После настройки в любом настраиваемом компоненте, прикрепленном к объекту, мы можем использовать методы OnCollisionEnter, OnCollisionStay и OnCollisionExit для реагирования на коллизии. Получив информацию о столкновении, мы можем получить ответственность за GameObject и использовать то, что мы узнали ранее, для взаимодействия с прикрепленными к нему компонентами.

Следует отметить, что твердые тела обеспечивают физику, такую ​​как гравитация, для объектов, поэтому, если вы хотите отключить это, вам нужно будет включить is_kinematic .

Установите флажок «Кинематика», чтобы отключить нежелательную физику, но сохранить хорошее обнаружение столкновений.

Сколько зарабатывает юнити разработчик

На рынке высокая востребованность unity специалистов, такой человек может работать как в штате компании, так и из дома. Уровень дохода зависит от навыков и степени подготовки. Ниже мы собрали зарплатные данные юнити разработчиков в России.

Источник Минимальная зарплата Максимальная зарплата
workius.ru 30 000 руб. 200 000 руб.
hh.ru 23 000 руб. 250 000 руб.
russia.trud 63 500  руб. 100 000 руб.

Больше информации о навыках и умениях юнити специалиста смотрите в этом видео. Автор канала подробно рассказывает о требованиях к кандидатам на должность разработчика.

Unity Junior Developer — Требования к кандидатам

Открытое образование

Курс посвящен изучению разработки игр с помощью движка Unity. По окончании курса вы сможете осуществить мечту любого геймера: создать игру по собственному сценарию.

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

Для успешного прохождения курса, необходимо знание языка программирования C#, а также крайне желателен хотя бы базовый уровень английского.

В состав курса входят видеолекции, видеопрезентации, интерактивные формы обучения в формате видеоконференций. Длительность курса составляет 10 недель. Трудоемкость курса – 3 зачетные единицы. Средняя недельная нагрузка на обучающегося – 10 часов.

Результаты обучения:

  • Знание на уровне представлений алгоритмов, методов и средств обработки информации, применяемых при анализе научно-технической информации, отечественного и зарубежного опыта по тематике исследования.
  • Знание на уровне представлений основ объектно-ориентированного программирования, синтаксиса языка программирования C#.
  • Знание на уровне воспроизведения инструментальных средств разработки, доступных у платформы Unity.
  • Знание на уровне воспроизведения назначений и основных свойств стандартных элементов Unity.
  • Умения теоретические собирать эмпирический материал, опираясь на современные источники, осуществлять сбор, анализ научно-технической информации, отечественного и зарубежного опыта по тематике исследования.
  • Умения практические реализовывать базовые алгоритмические конструкции на языке программирования C#.
  • Владение навыками самостоятельного проведения библиографической работы с привлечением современных электронных технологий.
  • Владение навыками работы с интегрированной средой разработки, которая позволяет реализовывать разработку проекта.

Что такое Unity

Unity — это ядро и инфраструктура, образующие систему для разработки двух- и трехмерных игр или сцен в приложениях (и даже 2.5D). Я упоминаю игры и приложения потому, что встречал не только игры, но и обучающие симуляторы, приложения экстренного реагирования (first-responder applications) и другие приложения, ориентированные на бизнес, которые разрабатывались с помощью Unity и должны были обеспечивать взаимодействие с двух- и трехмерным пространством. Unity позволяет оперировать не только кодом, но и визуальными компонентами с последующим их экспортом на любую распространенную мобильную платформу, а также делать много всего другого, причем бесплатно. (Существует и профессиональная версия, но она не бесплатна. Впрочем, даже бесплатная версия позволяет делать впечатляющие вещи.) Unity поддерживает все основные 3D-приложения, множество форматов звука и даже понимает формат .psd (Photoshop), поэтому вы можете просто закинуть файл .psd в проект на Unity. Unity разрешает импортировать и собирать ресурсы, писать код, взаимодействующий с вашими объектами, создавать или импортировать анимации для использования с продвинутой системой анимации и многое другое.

В Unity проделана потрясающая работа, благодаря которой обеспечивается кросс-платформенная поддержка.

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

Рис. 1. Платформы, поддерживаемые Unity

Вероятно, самая мощная часть Unity — это Unity Asset Store; пожалуй, лучшая электронная площадка для приобретения игровых ресурсов. Здесь вы найдете все необходимые компоненты для своих игр, такие как художественные решения, трехмерные модели, файлы анимаций для трехмерных моделей (см. контент Mixamo в магазине для более чем 10 000 движений), звуковые эффекты и полные треки, плагины (в том числе, инструментальный набор MultiPlatform, помогающий поддерживать несколько платформ), визуальные скриптовые системы вроде PlayMaker и Behave, продвинутые шейдеры, текстуры, эффекты на основе частиц и др. Интерфейс Unity полностью управляем скриптами и поддерживает интеграцию сторонних плагинов прямо в Unity GUI. Большинство профессиональных разработчиков игр (если не все) использует ряд пакетов из этого магазина ресурсов, и, если вы можете предложить нечто приличное, публикуйте его там.

Microsoft и Unity тесно сотрудничают, чтобы обеспечить полную поддержку для всего стека платформ Microsoft.

Что почитать

  • «Разработка игр на Unity 2018 за 24 часа», Майк Гейг. Книга поможет в сжатые сроки обучить читателя принципам unity разработки.
  • «Unity для разработчика. Мобильные мультиплатформенные игры», Джон Мэннинг, Пэрис Батфилд-Эддисон. Советы авторов книги помогут сделать красивый и интерактивный 2D и 3D контент для игр.
  • «Unity и С#. Геймдев от идеи до реализации», Джереми Гибсон Бонд. Книга поможет разобраться в методах и техниках прототипирования и геймдизайна игр.
  • «Unity в действии. Мультиплатформенная разработка на C#», Джозеф Хокинг. Знания, полученные в книге, помогут разработать свою игру, с помощью современных подходов и идей для создания игр.

Заключение

Эта статья была обзором архитектуры и процессов в Unity. Я рассказал об интерфейсе, основах назначения кода, объектах GameObject, компонентах, Mono, .NET и о некоторых других вещах. Это позволит мне в следующей статье углубиться в сборку компонентов для двухмерной игры. Заглядывайте в Microsoft Virtual Academy, где в конце лета я собираюсь устроить двухдневное мероприятие по обучению Unity. И следите за региональными мероприятиями на unity3d.com/pages/windows/events.

Адам Тьюлипер (Adam Tuliper) — старший идеолог по технологиям в Microsoft; живет в солнечной Южной Калифорнии. Разработчик инди-игр, один из администраторов Orange County Unity Meetup и автор на pluralsight.com. Скоро в его семье появится третий ребенок, так что связывайтесь с ним, пока у него еще есть свободные минуты, по адресу adamt@microsoft.com или через .

Выражаю благодарность за рецензирование статьи экспертам Мэтту Ньюмену (Matt Newman) из Subscience Studios, Хайме Родригесу (Jaime Rodriguez) из Microsoft и Тоутвидасу Цилису (Tautvydas Žilys) из Unity.

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

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

Adblock
detector