Как сделать игру через cryengine
Создание игр на Cryengine 5
Захотел изучить Cryengine 5 но по нему пока очень мало документации и обучающих видео (во всяком случае, я не нашел, то что мне надо, как для начинающего игродела на данном движке). Несмотря на то что я хорошо владею программированием, а также много работал с OpenGL API, я не знаю, с чего начинать. На столько все в нем сложно на мой взгляд. Но движок интересный и перспективный, поэтому, у меня, всё же, осталось желание его изучать, несмотря на все сложности. Хотелось бы начать с азов. Например, как создать главного персонажа и прописать ему движение по уровню и так далее, чтобы управлять им, а так же другие основы, необходимые для создания простого 3Д шутера. Никакой информации по этим основам я не нашел. А скачивать готовые примеры на сайте Cryengine и переделывать их для своих игр не охота (могут обвинить в плагиате). Мне и самому интересно как и что работает. Да и не хочу зависеть от каких то примеров. Хочу все как следует изучить и делать всё сам. Кто что посоветует?
cyberdev
> А скачивать готовые примеры на сайте Cryengine и переделывать их для своих игр
> не охота (могут обвинить в плагиате). Мне и самому интересно как и что
> работает. Да и не хочу зависеть от каких то примеров.
PS: Смотрел видео есть даже Vulkan Render в движке.
Что сказать. Либо учи Юнити новую (у них тоже есть Вулкан) либо жди\ищи уроки по Край Энджине 5
> По другому никак
Если кто-то объяснит мне как устроены эти примеры (например, главный игрок), то буду только благодарен, потому как сейчас даже его создать не могу, чтобы он взаимодействовал с игрой и я понимал, как он устроен и что он делает.
> Что сказать. Либо учи Юнити новую (у них тоже есть Вулкан) либо жди\ищи уроки по Край Энджине 5
В Юнити нельзя писать код на C++, а также, разработчики много требуют за продажу игр на их движке (но это неточно). В то время как Cryengine не требует отчислений, за исключением крупных разработчиков, доход которых равен или превышает 5000 евро в месяц.
cyberdev
Читаешь код, понимаешь, делаешь у себя так же или лучше.
Главный игрок может быть сделан по разному, зависит от твоей игры, как хочешь так и делаешь.
> Читаешь код, понимаешь, делаешь у себя так же или лучше
В том то и дело, что я даже не знаю откуда его читать и как он добавляется в игру. А так же, как сделать перемещающегося с помощью кнопок юнита, чтобы камера следила за ним и т.п.
> но на каждый чих туториалов не бывает
Так, собственно, поэтому я и хочу всё досконально изучить, чтобы потом можно было сделать всё что я захочу.
cyberdev
Темплейты игр самодостаточны, весь код который тебе нужен(отлов кнопок, перемещение, камера) внутри. А шутер, который называется GameSDK, использует некоторый код из CryAction модуля, но тоже по сути все внутри и там код тянет на полную игру, хоть он и кривой и частями мертвый.
> Темплейты игр самодостаточны, весь код который тебе нужен(отлов кнопок, перемещение, камера) внутри. А шутер, который называется GameSDK, использует некоторый код из CryAction модуля, но тоже по сути все внутри и там код тянет на полную игру, хоть он и кривой и частями мертвый
А как кодить? Всё что у меня получилось узнать, делается это с помощью VS, вроде. Но в том видео рассматривался какой-то пример вывода простого диалога и всё не очень внятно:
В самом движке персонажи добавляются, вроде, с помощью «Empy Entry». Что дальше делать с этим Entry я вообще без понятия. А главное, как получить к нему доступ с помощьюю C++? даже не представляю
возьми на вооружение гул-транслейт и https://forum.cryengine.com/
кроме того у них же есть темлейты FPS/TPS. в cryengien5 лаунчере
создай проект вы выбранному темплейту, сгенерируй солюшен и смотри в коды до просветления)
ищи или пости свои вопросы у них на форуме мб кто-то ответит )
> сгенерируй солюшен и смотри в коды до просветления
А что такое солюшен?
Solution в Visual Studio.
У некоторых выглядит как «Решение» (прости, Господи).
> У некоторых выглядит как «Решение» (прости, Господи)
А.. вспомнил. Просто VS только вчера установил 🙂
> создай проект вы выбранному темплейту, сгенерируй солюшен и смотри в коды до просветления
А как же код игры засунуть в VS а потом, после изменений, обратно в движок?
cyberdev
> А что такое солюшен?
Скачай GameSDK, побегай персонажем, поимортируй модельки и анимации, рано пока тебе в код лезть) А когда будешь отличать Entry от Entity, тогда может быть.
Полезные плагины и ассеты для Unity, Unreal Engine и CryEngine Статьи редакции
Инструменты, которые могут облегчить жизнь и ускорить разработку.
Плагины и ассеты позволяют разработчикам использовать в своём проекте готовые решения, созданные другими людьми. В официальных магазинах движков можно найти самые разные товары — от диалоговых систем и генераторов объектов до подборки звуков шагов. Но зачастую там нет универсальных решений, которые подойдут абсолютно всем.
Мы собрали подборку плагинов и ассетов, которая поможет вам ознакомиться с современным рынком, а также позволит оценить качество и разнообразие представленных инструментов.
Unreal Engine 4 — это игровой движок, созданный студией Epic Games. Он распространяется по бесплатной модели, если доход разработчиков не превышает 3 тысяч долларов за квартал. В ином случае они должны платить пять процентов прибыли от продаж своей игры. Это стало важным фактором популярности движка.
Другая причина заключается в его универсальности — Unreal Engine 4 позволяет создавать игры любых жанров. Например, на UE4 сделаны Gears 5, Star Wars Jedi: Fallen Order, Dragon Quest XI, Hellblade: Senua’s Sacrifice, Ace Combat 7: Skies Unknown, Aven Colony, Assetto Corsa Competizione, Days Gone, Mutant Year Zero: Road to Eden и многие другие.
Увеличение популярности UE4 связано ещё и с блупринтами (Blueprints) — системой визуального скриптинга. Её главное достоинство заключается в наглядности и сравнительной быстроте исполнения — достаточно правильно связать между собой ноды, а не писать строчки кода, чтобы быстро создать прототип игры.
Плагины и ассеты для Unreal Engine 4 в первую очередь отличаются тем, что многие из них работают на блупринтах, что делает их интеграцию сравнительно простой задачей.
Создание адекватных погодных эффектов — это далеко не первостепенная задача для большинства игр. Тем не менее проработанные погодные условия делают мир более живым.
Плагин trueSKY от компании Simul рендерит погоду в реальном времени и даёт разработчикам доступ к широким настройкам эффектов. Например, можно сделать так, чтобы при крупных баталиях автоматически начиналась буря, что придаст особый драматический эффект событиям.
Плагин также позволяет управлять временем суток, облаками и динамическими световыми эффектами.
Альтернативой может выступать набор ассетов Orbit Weather and Seasons для Unreal Engine, который также позволяет менять время суток, настраивать погоду и поведение облаков. К тому же он работает на блупринтах.
Чтобы герой оставлял следы на снегу, достаточно использовать плагин Surface Trails. Примерно так снег работает в RDR 2.
Если же вас интересует левелдизайн, то с этим поможет набор ассетов SuperGrid, который включает в себя материалы и модульные меши, предназначенные специально для прототипирования.
Также можно найти плагины для генерации уровней. Например, Dungeon Architect — это процедурный генератор, который сильно облегчает создание локаций. Плагин позволяет регулировать настройки генерации уровня, а также подходит для работы в самых разных сеттингах.
Если предыдущий плагин позволяет генерировать только небольшие локации-подземелья, то StreetArch даёт возможность создавать целые улицы в городских локациях. На видео можно увидеть принцип работы альфа-версии этого плагина.
Если же вам нужна открытая локация с природным ландшафтом, обратите внимание на Procedural Landscape Generator. Плагин использует встроенную библиотеку для создания рандомных локаций на основе шума Перлина, диаграммы Вороного и других принципов. Плагин также работает на блупринтах.
Плагин Prefabricator позволяет рандомно генерировать объекты, собранные из нескольких моделей. Иными словами, он пересобирает составные объекты, чтобы сделать несколько аналогов.
Одна из необходимых базовых функций во многих играх — это возможность общаться с персонажами. Плагин Not Yet: Dialogue System позволяет создать диалоговую систему, которая может иметь как линейную структуру, так и разветвлённую, с множеством вариантов реплик. Плагин поддерживает блупринты, а также имеет полностью открытый исходный код.
Вместе с диалоговой системой стоит упомянуть и про инвентарь. Action RPG Inventory System — плагин, который даёт возможность добавить в свой проект традиционный инвентарь из игр жанра экшен-RPG. Альтернативой может выступать, например, плагин кругового инвентаря — Advanced Circle Inventory.
В магазинах обычно представлена большая библиотека ассетов разных персонажей или объектов, которые можно использовать в своей игре. Но некоторые разработчики плагинов пошли иным путём и создали генераторы ассетов, которые могут создавать уникальный набор объектов.
Procedural Asset Creator — один из них. Плагин позволяет создавать 25 типов рандомных объектов: мечи, топоры, книги, пистолеты и так далее.
Поведение противников во многом зависит от геймплея, поэтому важно осознавать, какую цель будет преследовать игрок, и от этого строить ИИ. Например, для простого битемапа подойдёт плагин Basic Beat’em Up AI Behavior, который делает из обычных болванчиков полноценных противников.
Название плагина Vehicle AI Plugin говорит само за себя — он добавляет ИИ для транспорта, благодаря чему автомобили и танки могут перемещаться по игровому пространству с помощью навигационной сетки.
Для анимирования персонажей можно использовать бесплатный набор от Epic Games — Animation Starter Pack. Он содержит 62 анимации, которые включают в себя все ключевые движения героев видеоигр.
Для текстурирования есть специальный плагин Substance, который позволяет использовать материалы Substance прямо в Unreal Engine.
Первое, с чем чаще всего сталкиваются пользователи в игре — это меню. Плагин Menu System Pro для Unreal Engine позволит создать качественное меню, в котором доступна широкая кастомизация, а также реализованы все основные функции — например, плагин даёт возможность настраивать качество графики и так далее.
Современные движки имеют множество функций, однако в некоторых аспектах они могут быть недостаточно удобными. Из-за этого разработчики придумывают собственные решения в виде плагинов или отдельных сервисов.
Например, Simplygon нужен для работы с LoD (уровнем детализации), а также для оптимизации контента. Этот сервис использовался при разработке The Witcher 3, Gears 5, EVE Online и многих других.
Если вам понадобится точно понимать, какой длины получится путь от точки до точки, то стоит обратить внимание на плагин Distance Measuring Tool.
Часто в проектах содержится огромное количество объектов, поэтому есть плагины, созданные для сортировки и управления списком. Например, Multi Objects Renaming позволяет одновременно переименовывать множество объектов, а также сортировать их по своему желанию. А плагин Unused Assets Filter находит и сортирует все неиспользуемые в проекте ассеты.
В магазине можно найти самые разнообразные по функциям плагины. Есть и те, которые придают рабочему пространству определённый визуальный стиль. Например, Electronic Nodes делает все связи и ноды похожими на микросхемы. А плагин Auto Size Comments автоматически подбирает поле для связанных нод и позволяет менять цвет фона такого контейнера.
Unity — другой популярный движок, известный примерно по тем же причинам, что и UE4. Во-первых, Unity универсален, и его используют как крупные компании, так и инди-студии. Вот некоторые игры на этом движке: Hollow Knight, Cuphead, Subnautica, Gris, Outer Wilds, Untitled Goose Game, Torment: Tides of Numenera.
Во-вторых, движок распространяется по бесплатной модели до тех пор, пока игра не заработает более 100 тысяч долларов за год. Если игра преодолевает эту планку, то разработчикам приходится платить 420 долларов в год. Если же студия зарабатывает свыше 200 тысяч долларов, то цена за движок вырастает ещё больше.
Магазин ассетов для Unity не имеет принципиальных отличий от того, что представлено в Unreal Engine 4. Тем не менее библиотеки различаются наполнением.
GeNa 2 — плагин для генерации природного ландшафта, который поможет за короткий срок создать карту, наполненную деревьями, травой, растениями и другими объектами. Кроме того, плагин позволяет создавать и поселения, например, деревни.
Другой плагин от того же разработчика позволяет генерировать облака и погодные условия. Ambient Skies добавляет в проект возможность настраивать погоду, создавать воздушную перспективу, отражения, управлять временем суток и так далее. Ещё одна альтернатива — Enviro, который обладает подобными функциями.
Aura 2 — это плагин для создания объёмного света и тумана. По словам разработчиков, они ориентировались на создание такого же эффекта, как в Red Dead Redemption 2.
Также для создания природного ландшафта можно использовать бесплатный набор ассетов Terrain Tools.
A* Pathfinding Project Pro — это плагин, который позволяет ИИ персонажей адекватно оценивать окружение и выполнять сложные задачи. Особенно хорошо эта система работает в стратегиях в реальном времени и шутерах. Плагин может сэкономить ваше время — например, он автоматически создаёт навигационную сетку, поэтому её не нужно настраивать вручную.
В разделе про UE4 мы упоминали про плагин Substance — он же доступен и для Unity. Этот плагин позволяет наносить текстуры прямо в рабочей области движка.
Если вы хотите использовать процедурную музыку, обратите внимание на Procedural Music Generator. Он включает в себя более 100 инструментов и генерирует мелодию в режиме реального времени. Всё, что требуется от вас — настроить параметры для этой музыки.
Final IK — это набор, который позволяет анимировать двуногих персонажей с использованием принципов инверсной кинематики. Следующее видео демонстрирует возможности этого набора. Например, разработчик может притянуть одну руку персонажа к земле, из-за чего изменится походка.
Другой плагин для анимирования персонажей — UMotion Pro. В отличие от предыдущего примера, этот плагин более универсальный и позволяет анимировать самые разные игровые объекты. Также он не ограничен функционалом IK и даёт возможность работать c мокапом.
Dialogue System — диалоговая система, которая основана на нодах. Этот плагин даёт возможность создавать сложные разветвлённые диалоги и квесты для игры. Разработчики плагина особенно отмечают, что на его основе были созданы диалоги в Disco Elysium — RPG, в которой текст занимает важнейшую часть геймплея.
Если вы создаёте 2D-игру, но при этом не умеете рисовать персонажей, то вам может помочь Character Creator 2D. Это конструктор, в котором доступно большое количество элементов, из которых и собирается герой. В плагине уже есть анимация и даже разнообразная мимика. Кроме того, туда можно интегрировать собственные наработки.
Но основной недостаток заключается в том, что нельзя выбрать стиль рисовки. А предложенный вариант подойдёт не каждому проекту.
Плагин Anti-Cheat Toolkit предоставляет защиту против пользователей, которые пытаются использовать читы, а также стремятся взломать игру.
Если вы хотите за короткое время создать качественно выглядящий интерфейс, то в этом может помочь плагин DoozyUI. Он дружелюбен к новичкам и не требует навыков кодинга — для создания UI с помощью плагина можно использовать ноды.
Game Creator — это плагин, который был разработан с целью упрощения всего процесса разработки игры. Создатели плагина постарались сделать очень простой и понятный интерфейс, который помогает собрать собственный проект как конструктор.
В нём уже есть много необходимых функций — сохранение/загрузка, переменные, разные камеры и так далее. Также разработчики продают отдельные модули, например, систему инвентаря или диалогов.
Editor Console Pro — плагин, который позволяет фильтровать логи, экспортировать их в текстовые файлы и многое другое. Это очень полезные функции, когда объём проекта расширяется и приходится иметь дело с огромным количеством элементов.
Ещё один плагин, который позволяет сохранять свою рабочую среду в порядке — это Maintainer. Он обнаруживает пропавшие, продублированные или лишние компоненты, следит за тем, чтобы префабы не потерялись и многое другое.
Плагин Heavy-Duty Inspector упрощает многие действия и позволяет выполнять задачи всего лишь одной строчкой кода. Например, добавляет цвета и названия для компонентов, позволяет легко копировать, вырезать или передвинуть объекты из списка и так далее. А Rainbow Folders 2 даёт возможность менять цвета папок и добавлять к каждой из них разные символы.
CryEngine — это движок, разработанный компанией Crytek, на основе которого были созданы Prey, Kingdom Come: Deliverance, Hunt: Showdown и многие другие игры. Сейчас движок распространяется по бесплатной модели, но Crytek забирает себе пять процентов дохода, если он превышает 5 тысяч долларов в год.
Ассортимент магазина плагинов для CryEngine может показаться скудным по сравнению с тем, что представлено в Unity и UE4. Поэтому в этом разделе мы не будем делить плагины по категориям.
В магазине представлено мало плагинов и ассетов, которые добавляют игровые системы. Но там можно найти множество моделей самых разных объектов — от предметов декора до полноценных персонажей и животных. Также есть библиотека материалов и шейдеров, в которой можно найти нужный ассет.
Значительно меньше выбор среди анимаций — в магазине есть бесплатный набор анимаций из Crysis, который включает в себя движения людей, транспорта и животных. А в остальном в магазине представлены отдельные mocap-анимации, которые подойдут для ограниченного количества проектов.
Splash Screen Example Plugin — плагин для создания загрузочных экранов. К нему прилагается наглядная инструкция для интеграции в проект и быстрого запуска. При этом он распространяется бесплатно.
CEV Player — плагин, который позволяет встраивать видео в игру и воспроизводить его на разных объектах.
Также в магазине CryEngine представлена относительно объёмная библиотека музыки и звуковых эффектов. Там встречаются как одиночные мелодии, так и подборки эффектов, например, 25 звуков шагов в лесу.
Ассеты и плагины чаще всего созданы для решения узких и конкретных задач. Возможно, вы не смогли найти в нашем списке пример, который справится именно с вашей проблемой. Но этого достаточно, чтобы понимать уровень качества и разнообразия инструментов, которые есть в магазинах.
Расскажите в комментариях про свой опыт использования плагинов и ассетов. Что вы считаете обязательным во время разработки, а что оказалось пустой тратой денег и времени?
показываешь демку своей игры бабушке
— ну внучок, ну художник-компьютерщик! Сам всё вот это нарисовал!
— да, бабуль.
Собрал игру из ассетов а в отзывах пишут про крутой графон
Not Yet: Dialogue System и Dungeon Architect тухлятина, а о самых полезных плагинах для UE4 ни слова.
Вот список реально использущийся почти в каждом проекте: ALS3, LowEntryExtStdLib, VaRestPlugin, VictoryBPLibrary, AdvancedSessions.
было бы круто еще описание.
Приятно увидеть свой плагин для cryengine, жаль движок умирает
Вот только вы вчера об этой дэмке вспомнили и уже сегодня крайтеки выложили её в свободный доступ в качестве бенчмарка. Качать с ихнего офсайта по реге.
И это не в подсайте? Я считаю это бан.
Комментарий удален по просьбе пользователя
А плагин на микроволновку, который заставит её греть еду, а не тарелку имеется? Это упростит мне жизнь.