Проект — набор ресурсов, контента и кода, которые работают сообща и выдают финальный результат для конечного пользователя. Все эти ресурсы хранятся на жестком диске в той же самой системе, что и внутри вашего запущенного проекта и в Content Browser’е.
На жестком диске ваш проект представляет папка со всеми ресурсами проекта, так же файлом.uproject, который определяет, какие ресурсы с ним связаны и какие загружать в редактор для последующей работы с ними. Простым языком, это как.exe файл, который загружает ресурсы программы, только специально для редактора UE4.
Вы можете создавать неограниченное количество проектов, и даже работать в нескольких параллельно.
Перед тем, как распространять свой проект пользователям, он должен быть правильно скомпилирован и запакован для быстрого и корректного запуска.
Подготовка проекта состоит из нескольких шагов. Для начала это компиляция кода для корректного запуска, после чего проходит запаковка контента, из которого и состояит игра. Этот контент запаковывается, в основном, под конкретную платформу на которой будет запущен проект. После всего этого останется останется подготовить проект для удобного использования и запуска, например установщик Windows.
В File меню вы сможете найти подменю под названием Package Project. Этот раздел отвечает за подготовку и запаковку вашего проекта для тестирования и распространения. Так же в этом разделе имеются дополнительные настройки запаковки.
После выбора нужной платформы, редактор Unreal Engine 4 начнет компиляцию кода, запаковку контента и подготовку проекта для дистрибутации или тестирования. Процесс может занимать очень долгое время, если в вашем проекте содержится большое количество контента(модели, звуки, карты и т.п.).
Что бы запаковать ваш проект под конкретную платформу, выберете File > Package Project > [Имя платформы] в редакторе UE4.
Вам будет предложено выбрать путь, куда будет помещен ваш проект, а затем начнется процесс запаковки проекта.
Процесс запаковки проходит в фоновом режиме, поэтому возможность использовать редактор остается. В нижнем правом углу будет показываться индикатор, который означает, что ваш проект запаковывается.
Данное окно позволяет прервать процесс в случае необходимости, а так же позволяет открыть окно логов. Окно будет открыто как отдельное окно, в котором будет подробно описан процесс компиляции. В случае ошибки, в данном окне можно посмотреть, на каком моменте и по какой причине был прерван процесс запаковки.
Для менее опытных пользователей, самые важные сообщения, такие как предупреждения или ошибки, можно посмотреть в отдельном окне Message Log.
После того, как проект был успешно запакован и подготовлен, вы можете найти его и запустить по пути, который был выбран перед процессом запаковки.
Для каждой платформы, исполняемые файлы для запуска могут различаться. Таким образом для Windows будет файл.exe, а для Android — .apk
Дополнительные настройки можно найти в File > Package Project > Packaging Settings в главном меню редактора UE4.
Build Configuration | Конфигурация проекта. Для отладки режим Debug. Для тестирования больше подойдет режим Development. Для финального распространения — режим Shipping. |
Staging Directory | Директория, которая будет содержать запакованный проект. Будет автоматически обновлено при выборе другого пути перед запаковкой. |
Full Rebuild | Определяет, будет ли скомпилирован весь код, или же только измененная часть(Выкл). Это может ускорить время запаковки. При подготовки проекта к распространению(режим Shipping) убедитесь, что данная опция включена, что бы не пропустить ничего лишнего при запаковке. |
Use Pak File | Определяет, запаковывать ли весь контент в один файл(.pak) для более удобного распространения, или же хранить контент в индивидуальных файлах(Выкл). |
При обновлении вашего контента, вам может не понадобится перекомпилировать весь проект для того, что бы запустить его и проверить. Вместо этого, в UE4 существует возможность запаковать только сам контент на нужную платформу. Сделать это можно через File > Cook Content > [Платформа].
При первом запуске у вас отобразится «Project Browser».
Project Browser является основным хранилищем ваших проектов. В нем вы можете создать новый проект, так и открыть уже существующий проект с вашего компьютера. Так же имеется поддержка проектов «Примеров», в которых можно оценить возможности и работу Unreal Engine 4.
Здесь будет показан весь список ваших проектов, когда хоть один будет создан. Изначально, тут будет приведен список всех проектов в папке установки.
Двойной клик по иконке открывает проект.
Иконка проекта состоит из.png картинки размером 192х192 пикселей, которая находится в папке с проектом. Есть возможность назначить горячую клавишу на обновление иконки, что бы быстро снять скриншот и поставить его на место иконки. Если же вы вручную не предоставите иконку, то она будет автоматически снята со скриншота, который создается каждый раз, когда вы выходите из редактора или из проекта.
Что бы найти проект, вы можете ввести текст в поле Filter Projects. Будут показаны все проекты, содержащие введенное имя.
Так же вы можете нажать Browse и выбрать проект на вашем компьютере. Вам нужно выбрать.uproject файл.
В Project Tab вы так же можете поставить галочку на Always load last project on startup, что позволит пропусить окно Project Browser’а и запускать сразу выбранный вами проект.
Что бы вручную задать эту настройку, войдите в настройки редактоа, найдите вкладку «General» > «Load & Saving» и установите настройку «Load the Most Recently Loaded Project at Startup».
Вкладка New Project позволяет вам создать новый проект из существующих заготовок. Blank создает полностью пустой проект.
Всего имеется два типа заготовок: C++ и Blueprint. C++ означают, что логику вашего проекта вы будете писать на C++. Другой типо означает, что для логики вам будет предоставлен визуальный скриптовый язык — Blueprint. В процессе разработки можно совмещать два типа.
Что бы создать новый проект:
После создания, откроется редактор и запустится стандартный уровень.
Так же проект можно создать через выпадающеее меню во вкладке File > New Project…
При создании проекта, у вас имеется возможность установить его начальные настройки графики и контента. После создания проекта, эти настройки можно изменить в настройках проекта.
Проект будет оптимизирован для ПК или консолей | |
Оптимизирует проект для запуска на Мобильных платформах | |
Данная опция позволяет создать проект с высокими настройками графики. Используйте, если создаете проект для ПК или консолей | |
Данная опция позволяет создать проект с низкими настройками графики. Используйте, если создаете проект для мобильных платформ | |
Включает в ваш проект стартовый контент. Не рекомендуется включать, если вы создаете мобильную игру, так как данный контент очень сильно влияет на размер. | |
Не включает в проект стартовый контент. |
Приветствую, Хабр! Хотел бы познакомить вас с относительно небольшим проектом, который я сделал c нуля примерно за 150 часов (50 заходов ~3 часа каждый) на Unreal Engine 4. Проект я делал в прямом эфире только на стримах раз в неделю (в общей сложности ушел год), попутно отвечая на вопросы пользователей.
Сам проект не предназначался как коммерческий. Целью я ставил на практике показать всю сложность разработки игр, а именно такие проблемы, как:
В конце всей серии стримов у нас получился играбельный прототип “Сурвайвл” шутера. Те, у кого стакан наполовину полон, смогут даже назвать это пре-альфой без сюжета.
Если вам интересны подробности проекта, записи стримов, исходники и прочее, читайте далее.
Весь проект был реализован на визуальной системе программирования, под названием “Блупринты”. И конечно многие спецы могут назвать её ребяческой, разработать на ней можно спокойно даже относительно крупный проект. Более того, это можно сделать относительно быстро, как мы уже смогли доказать.
Сразу хочу ответить на вопрос: "Почему Блупринты, а не С++? ". Ну во первых, когда я начинал серию, плюсы я почти не знал. Хотя я и сейчас подобный сингл делал бы на БП. Во вторых, БП почти не уступают плюсам в нашем случае, но при этом дают ряд возможностей: Не позволяют наделать множество ошибок, возможных с плюсами, не приходится отвлекаться между БП и С++, понятнее новичкам. Да и они в нашем случае не намного медленнее, учитывая тот факт, что почти вся логика построена на событиях.
Мы так же успели немного поработать над графикой. К сожалению, ассеты делать времени у нас не было, поэтому мы часть оставили пустышками, часть сделали прямо в редакторе из примитивов, а некоторый контент позаимствовали из бесплатных демок Epic Games. Тем не менее, что-то успели сделать и сами, например систему дня и ночи, постобработку для воды и некоторые материалы объектов сцены.
В планы моих стримов так же стояли и проблемы, которые могут возникнуть при разработке. Их я специально решал в прямом эфире, дабы не только показать, с чем могут столкнуться юные разработчики, но и как отлаживать свой код, искать баги и писать свой код так, что бы все это дело можно было делать в два раза быстрее. Конечно опыта в программировании у меня не десятки лет, и это сказывалось на том, какие порой глупые ошибки я делал. Да и уверен, что многие разработчики могут оспорить множество моментов в процессе написания игры.
Естественно, полноценной игрой это вряд ли можно назвать, так как нету ни сюжета, ни цели в игре - только чистая механика. Тем не менее, я считаю, что результатом можно гордится и он вполне отражает то, для чего задумывался весь проект.
Список всего, что мы успели реализовать в нашей игре
Персонаж
Объектная система инвентаря
Система экипировки
Содержание по частям
В новой части автор пересмотрел и переработал материал первого тома, внес в него больше ясности. Кроме того, автор включил в книгу гораздо больше референсных произведений, чтобы читатели глубже прочувствовали каждый важнейший аспект технической стороны.
Познакомьтесь с искусством и наукой геймдизайна с Уиллом Райтом, который спроектировал один из самых популярных симуляторов всех времен - SimCity и The Sims.
Джимми Чин построил свою карьеру, делая фотографии на немыслимых вершинах мира, которые обеспечили ему обложку в National Geographic и множество наград.
азрабатывать RPG-игры порой очень сложно, в них содержится множество систем. С помощью этого курса мы упрощаем данный процесс и учим вас шаг за шагом, как создать основу для хорошей RPG-игры с нуля (4 части).
В этом воркшопе вы узнаете основы создания 3D-моделей с помощью полигональных техник моделирования. Из видео-лекций вы изучите основные производственные техники для создания как сложных так и простых форм.
В этой серии уроков Крис Легаспи продемонстрирует варианты обработки ваших рисунков при помощи различных инструментов. Благодаря доступному и простому объяснению, доработка рисунка станет понятной для всех художников с любым уровнем художественного мастерства.
Это долгожданное продолжение курса Complete Unity Developer (Learn to Code by making games in Unity) - одного из самых популярных курсов в интернете! Полностью переработано с нуля с совершенно новыми проектами и нашими новейшими методами обучения (5 частей).
Марко расскажет, как каждое решение в процессе создания работы влияет на то, какой смысл будет передан зрителю и о том, как это, в свою очередь, влияет на вашу работу с базой и предметом рисунка, а также с общей сюжетной канвой, настроением в соотвествии с выбранной техникой
Если вы хотите создать свой собственный шутер от первого лица, адвенчуру от третьего лица или даже ролевую игру, эта серия курсов Udemy - для вас! Начиная с пустого проекта, мы построим все системы вместе, шаг за шагом, для игры под названием Dead Earth. (5 частей)
Мы начинаем цикл статей, посвященных изучению геймдева на простых примерах. В первой статье мы объясним основные принципы работы видеоигр, как компьютерных программ. Также мы совершим первое знакомство с профессиональным инструментом для создания игр разных жанров – движком Unreal Engine 4 .
Компьютерные игры, как и любые другие программы – это некая последовательность инструкций, то есть алгоритм. Любая сколь либо более сложная, чем всем известная «угадай число» видеоигра не может являться деревянным линейным алгоритмом, иначе слишком много сил уходило бы на создание каждой, даже самой простой игры с нуля.
Как правило, игры состоят из множества модулей, которые в свою очередь состоят из различных классов, методов, параметров и так далее. Реализованные ранее модули можно использовать для последующих проектов. Именно так и поступают расчётливые разработчики игр.
Практически любая современная (да и не очень) игра включает в себя следующие универсальные модули:
Как мы видим, игра – это сложный комплекс систем, выполняющих разные задачи. Работа с готовыми компонентами упрощает разработку, тем самым снижая входной порог. Ведь согласитесь, реализовывать все подсистемы игры и реализовывать только механику – это кардинально разные вещи.
Как уже упоминалось выше, на сегодняшний день нет необходимости реализовывать все подсистемы вашей игры с нуля. Можно воспользоваться готовым набором профессиональных инструментов, именуемым игровым движком.
Какой же движок выбрать для своего первого проекта? Существует немало решений: от примитивных конструкторов, создать игру на которых сможет даже ребенок, до профессиональных программных пакетов. Это ключевой этап для проекта.
Все игровые движки делятся на два класса:
Современные ведущие игровые движки имеют низкий порог вхождения, не потеряв при этом в функциональности. Поэтому, научиться делать игры на начальном уровне достаточно просто. Почти все системы разработки стали в каком-то роде конструкторами, например, есть такая фича, как «визуальное» программирование.
Если мы говорим о серьезных продуктах, то существует лишь 3 основных платформы: CryEngine , Unity , Unreal Engine .
CryEngine мы сразу отметаем, так как это сложный профессиональный продукт, используемый крупными командами для разработки ААА игр. Подобные системы часто страдают от отсутствия структурированной документации и, тем более, каких-либо уроков для начинающих. Использовать их можно только лишь, если вы уже имеете большой опыт разработки игр и других приложений.
Unity имеет гораздо меньший порог входа, нежели Unreal и больше заточен именно под двухмерную графику. Графическая составляющая в трехмерном пространстве «из коробки» достаточно посредственна и для получения стильной и красивой картинки придется изучить языки шейдерного программирования, а также логику работы графического адаптера. Unity не поддерживает самые современные графические технологии (например, воксельное объемное освещение), однако является хорошим вариантом для новичка, ибо в качестве основного скриптового языка движок использует дружелюбный к пользователю C#.
Unreal Engine, напротив, гораздо сложнее, но зато это самый технологичный современный движок. Все графические технологии прежде всего завозят именно сюда. От разработчика не требуется знаний в области шейдерного программирования (например, языка GLSL, который необходим при работе с шейдерами в Unity), достаточно разобраться в простой системе визуального программирования. Для написания игровой логики движок располагает мощным визуальным скриптовым языком под названием BluePrints. Однако, если разработчику угодно, то описывать игровую логику, да и вообще все что угодно можно с помощью языка C++, что дает большую свободу действий и позволяет оптимизировать игру.
Используя Unreal Engine 4 можно создавать игры любых жанров, начиная от простых 2D игр и заканчивая AAA тайтлами для консолей нового поколения. Движок лежит в основе таких игр как: , , , .
Разработка в Unreal Engine 4 понятна даже новичкам. Используя систему визуальных сценариев Blueprints, вы можете создавать готовые продукты, не написав не единой строчки кода! Unreal Engine 4 имеет простой и интуитивно понятный интерфейс.
Цикл статей рассчитан на начинающих, как в геймдеве, так и в программировании. Вот основные шаги, которые будут рассмотрены в этой статье:
Для установки, запуска и последующего использования игрового движка Unreal Engine 4 необходимо использовать программу-ланунчер Epic Games Launcher . Установщик можно скачать с официального сайта Unreal Engine 4. Для запуска загрузки нужно нажать кнопку Get Started Now .
Также будет необходимо завести аккаунт в Epic Games. После того, как вы скачали и установили программу, откройте ее. Вы увидите следующее окно:
Введите данные от аккаунта и нажмите кнопку Sign In. После входа, вы увидите окно управления:
Необходимо выбрать вкладку Unreal Engine и запустить процесс загрузки файлов движка с их последующей установкой, нажав соответствующую кнопку в диалоговом окне. В диалоговом окне установщика желательно выбрать следующие компоненты движка: Starter Content, Templates and Feature Packs, Engine Source для загрузки и установки.
Далее, установщик спросит сборки под какие платформы вы хотите установить. Обязательно выберите свою платформу (ту, на которой вы будете разрабатывать игру), иначе, не сможете проверить и поиграть в билд (готовую к работе сборку) игры. Остальные платформы можно не устанавливать. Для начала они не нужны. После того, как вы выбрали все необходимые компоненты, нажмите кнопку Install. Запустится процесс загрузки и распаковки всех необходимых архивов. Это займет около 30 минут, при условии наличия быстрого соединения и мощного процессора. На этом этапе можно сделать перерыв и выпить чашечку кофе или чая (ну, или еще чего-нибудь).
Для того, чтобы создать первый проект нужно нажать на кнопку Launch. Начнётся загрузка игрового движка и подготовка к работе (в первый раз, это может занять до 10 минут). По окончанию загрузки вы увидите приветственное окно менеджера проектов.
Для того, чтобы создать свою первую игру, не используя программирования (а это то, что нам как раз и нужно), переключитесь на вкладку Blueprint. Далее, не стоит трогать какие-либо настройки (все уже выставлено наилучшим образом для быстрого старта), лучше нажать кнопку Create Project. Проект создастся в корневой папке пользователя, от имени которого вы находитесь в системе. Если вас не устраивает такое расположение, то его можно поменять. Для этого, нужно прописать конечную папку сохранения в текстовом поле Folder.
После того, как процесс создания проекта окончится, автоматически откроется редактор. Интерфейс движка разделен на несколько панелей, несущих на себе функциональные элементы управления.
Сам редактор состоит из нескольких опорных панелей:
Последнее, что мы рассмотрим сегодня – это импорт различных ресурсов в движок. Пустая сцена – это не интересно. Давайте выведем на экран хоть что-нибудь, например, футбольный мяч (скачать тестовый fbx-файл 3d модели).
Распакуйте его и переместите в папку с вашим проектом. Перед тем, как вы сможете использовать скаченный файл в качестве 3d-модели, нужно импортировать его. Используйте кнопку Import для того чтобы открыть окно загрузки.
Начнется процесс импорта, в ходе которого движок будет загружать материалы и меши из файла. Это может занять до 2 минут.
После того, как движок импортировал все необходимое, можно приступать к использованию ассетов. В панели Content Browser , выберите объект Ball _ FBX и перетащите его на вкладку Viewport . Вы увидите что-то наподобие этого:
Мы не видим мячик, так как очень маленький. Перейдите во вкладку Details и установите параметр Scale в 100.0 по всем трем осям. Вы увидите нечто подобное:
Расположите мячик так, как вам нравиться и нажмите кнопку Play на панели Toolbar. Вот и все, ваша первая сцена готова!
Сегодня мы освоили самые азы такого сложного искусства, как геймдев. Обещаю, что в следующих статьях мы сделаем что-нибудь более интересное и необычное. Желаю Вам удачи в ваших проектах!