Движок unreal engine что это
История игровых движков №5 — Unreal Engine
Unreal Engine — один из самых популярных и старых игровых движков, ставший известным благодаря возможности создания на нем сцен, схожих по качеству с кинематографическими. Он работает на большинстве современных игровых платформ — это консоли последнего поколения, ПК, устройства на iOS и Android, а так же macOS, Linux и html5. К тому же заявлена поддержка и недавно вышедшей новой портативной консоли — Nintendo Switch. Такая кроссплатформенность возможна благодаря поддержке всех современных стандартов как рендеринга (API DirectX, OpenGL, а так же на устройствах iOS — PowerVR), так и воспроизведения звука (OpenAl, EAX, DirectSound3D). Как и другие движки, UE комплектуется собственным редактором — UnrealEd, однако по удобству тот заметно проигрывает Unity3D и заточен скорее под создание профессиональных, а не любительских игр и анимаций.
Первая версия движка вышла почти 20 лет назад — в 1998 году, и уже тогда оказалась универсальнее топового движка того времени — id Tech 3: она включала в себя графический движок, физический движок, искусственный интеллект, управление файловой и сетевой системами и готовую среду разработки игр — UnrealEd. Движок работал на macOS, Windows, PlayStation 2 и Xbox, причем сетевая составляющая была кроссплатформенной — игроки с Windows могли играть на одних серверах с игроками на macOS.
Главной особенностью Unreal Engine было то, что это был первый векторный движок: то есть движок, работающий с графами сцены. Граф сцены представляет собой структуру (набор узлов в виде дерева или графа), которая содержит логическое и, зачастую, пространственное представление графической сцены. Например, в игре может быть определена логическая связь между объектами «человек» и «машина». Последняя, в свою очередь, может быть связана с объектом «гараж», и так далее — таким образом выстраивается сеть взаимосвязанных объектов, что сильно упрощает как написание игры, так и взаимодействие объектов в самой игре.
Скайбокс (Skybox) — проецирование на поверхности отрисовки с другой точки (которая обычно помещалась в небольшую «коробку» с наложенной текстурой неба, отсюда и название Skybox). Таким образом, отображение не лицевой грани полигонов, а обратной, с заранее наложенной текстурой «неба» на объект. В движке широко использовался приём масштабирования текстур таким способом, что приводило к реалистичным видам окружающей среды — к примеру, неба в игре Unreal. Так же движок позволял использовать мультитекстурирование, позволявшее (при правильной расстановке источников света и ориентации относительно пререндеренных текстур) добиться эффекта трёхмерности поверхностей, хотя до появления движков с поддержкой истинной тесселяции еще оставалось почти 10 лет (первый движок с ее поддержкой, CryEngine 2, вышел в 2007 году).
Движок стал одним из первых, в котором появился эффект гало вокруг источников света, которые плавно затухали, будучи перекрыты краями стен по мере движения игрока.
Лава и некоторые текстуры луж, в которые падали капли, сделаны динамическими благодаря использованию не шейдеров, как в поздних играх, а процедурных текстур.
В 1999 году вышло крупное обновление — Unreal Engine 1.5. Движок обзавелся лицевой анимации для персонажей, максимальное разрешение текстур было увеличено до 1024×1024, введена расширяемая система частиц и технология S3TC (S3 Texture Compression — метод сжатия текстур DirectX с потерями). Также была интегрирована вторая версия редактора UnrealEd. Пожалуй, самой красивой игрой на Unreal Engine 1.5 была игр-демонстрация возможностей движка — Unreal Tournament:
Первая версия движка больше не доступна для лицензирования, однако исходный код, необходимый для сборки собственных исполняемых файлов, существует в свободном доступе, но не для коммерческого использования — они распространяются по лицензии «Unreal Retail» — то есть только для персонального использования. Всего на UE 1 вышло больше двух десятков игр, среди них — всем известные Unreal Tournament, Deus Ex и Duke Nukem Forever.
Вторая версия Unreal Engine увидела свет в 2002 году с появлением Unreal Tournament 2003. В ней были практически полностью переписаны ядро и механизм рендеринга, а также интегрирована третья версия редактора UnrealEd. Физический движок теперь от сторонних издателей — Karma. Он поддерживает физику тряпичной куклы: обработку действия на тело не как на один объект, а как на скелет с привязкой к нему частей тела. У каждого сустава персонажа появились ограничители вращения, эти ограничители бывают двух видов: шарнирные и линейные. Линейные могут вращаться только вокруг одной оси, а шарнирные по всем трём.
Основные особенности движка:
Поддержка VoIP — возможность переговоров через микрофон с другими игроками во время игры.
Распознавание речи — перевод голоса в текст и обработка как команды (например, возможность отдавать ботам команды голосом). Эта технология использовала Microsoft Speech API и поэтому поддерживалась только в 32-битной версии Windows.
Транспортные средства — неподвижные (стационарные оборонительные установки), составленные из нескольких объектов (Karma vehicle), с использованием скелетной структуры и транспортные средства, прикрепляемые к другим транспортным средствам (например, пулемёт на башне танка). Некоторые транспортные средства могут действовать без «пилота», управляемые собственным искусственным интеллектом.
EAX 3.0 — движок трёхмерного звука, разработанный Creative Labs.
Отказ от варп-зон из-за перехода на движок Karma и 32-битной графики.
Unreal Engine 2.5
Как и версия 1.5, 2.5 нацелена в основном на оптимизацию движка под новые API — появилась поддержка DirectX 9, OpenGL 2 и Pixomatic (специальная версия рендера, умеющая рендерить изображения в основном силами процессора, то есть она подходила для компьютеров с мощным процессором и слабой видеокартой). Так же добавлена поддержка 64-битных операционных систем Windows (NT 4 и в дальнейшем XP) и Linux. Наибольшее возможное разрешение текстур поднято до 4096×4096 пикселов, добавлена полноценная поддержка юникода (16-бит), что позволило создавать полностью локализованные игры на азиатских языках (до этого часть фраз приходилось оставлять на английском).
Самой красивой игрой на UE 2.5 можно назвать Killing Floor — игра вышла в 2009 году, уже после выхода UE 3:
Unreal Engine 2X и Runtime
Это специальные версии движка — в первом случае для Xbox: были введены новые визуальные эффекты, такие как depth of field (глубина зрения), динамическая гамма-коррекция, bloom и различные вариации blur. Формат текстур был изменён для более реалистичного отображения теней в высоком разрешении, добавлена поддержка голосового чата, сервиса Xbox Live, а также функция разделения экрана. Был использован только в Unreal Championship 2. Во втором случае — урезанная бесплатная для некоммерческого использования версия движка, имевшая лишь базовый набор моделей и текстур. Полная же версия была платной — за лицензию на одну игру Epic Games просили от 350000 долларов.
Новая версия была сделана с упором на многоядерные процессоры — как в ПК, так и в новых (в то время) консолях PlayStation 3 и Xbox 360: теперь движок использует два параллельных потока данных — основной поток (отвечающий преимущественно за игровой процесс) и поток рендеринга. Кроме двух главных потоков могут быть вызваны второстепенные, которые выполняют разовые задачи. Так же движок обзавелся поддержкой API DirectX 10 и OpenGL 3 (от Pixomatic отказались как из-за его старости, так и из-за того, что даже самые мощные процессоры перестали справляться с графическими задачами). Появилась поддержка множества других платформ — начиная с Wii, iOS и Android и заканчивая такой экзотикой, как Windows RT.
Основные особенности нового движка:
Как и в предыдущих версиях х.5, тут была произведена, в основном, оптимизация — движок научился работать с DirectX 11, а так же был добавлен фильтр пост-обработки Ambient occlusion, улучшающий тени и освещения. Было увеличено число обрабатываемых персонажей в кадре. Переработана на новом уровне технология динамической водной поверхности, физика мягких тел и разрушаемое окружение также значительно улучшены.
На движке вышло больше 100 проектов, среди которых линейки Bioshock, Borderlands, Mass Effect, X-com, Mortal Combat, Battlefront и многие другие. Среди мобильных игр стоит отдельно выделить линейку Infinity Blade, до сих пор являющуюся эталоном графики под мобильные платформы:
Самой красивой игрой под ПК на UE 3 стоит назвать, пожалуй, Outlast 2 (хотя она еще в разработке):
Увы — для обычных пользователей доступна только бесплатная некоммерческая версия движка, полная версия продается только крупным игровым студиям, цена за лицензию на одну игру неизвестны.
Это самая новая и постоянно развивающаяся версия движка. Она поддерживает консоли текущего поколения (PlayStation 4 и Xbox One), API DirectX 12, а так же с недавних пор — и Nintendo Switch. Добавили достаточно много нового:
Будущее движка
Об UE 5 неизвестно ничего, да и это понятно — 4ая версия вышла всего пару лет назад и активно разрабатывается, поэтому ждать крупного релиза ближайшие пару лет не стоит.
Чего ждать от Unreal Engine 5 и что он умеет в сравнении с UE4
Содержание
Содержание
Геймеры, заставшие 1990-е годы, помнят имена Джона Кармака и Тима Суини — программистов, фактически определивших, как выглядят современные игры. Но если Кармак давно не в id Software и не занимается id Tech, то Суини по-прежнему прихорашивает Unreal Engine. Будущее видеоигр, несомненно, тесно связано с UE5. И если фотореалистичная графика покорилась еще UE4, то чем же удивит UE5 на PC и «некстгене»? Разберемся в новой статье.
История Unreal Engine: от Unreal до Gears of War
Unreal (1998) вышла спустя два года после Quake, первого полностью трехмерного шутера. Игра базировалась на движке Unreal Engine. Его написал Тим Суини, основатель и глава Epic Games. Сейчас Суини знают по бесплатным раздачам игр в Epic Store и судебному разбирательству с Apple. И сейчас, и на заре карьеры Суини программирует движок самостоятельно. Миллиарды долларов, заработанные на Fortnite, и почтенный возраст (50 лет) ему ничуть не мешают.
Чем же удивила первая версия Unreal Engine? В Unreal поражало красивое небо, прозрачная вода, хитрый искусственный интеллект. Радовала динамическая смена музыки — композиторы позаботились о вариациях тем для разных ситуаций. Текстуры не ужасали при приближении. Еще можно вспомнить порталы и зеркальные отражения.
Были и проблемы. Так, с рендерером Glide на видеокартах 3dfx движок взаимодействовал без нареканий. С OpenGL и Direct3D — увы, нет. Шутер Unreal ценили за графику, однако на слабых и средних компьютерах он работал плохо.
Epic исправила недостатки в Unreal Tournament (1999) и заодно причесала сетевой код, иначе в мультиплеерный FPS никто бы не стал играть. Кстати, UT99 основана на UE1.5 — промежуточной версии движка. Впоследствии выпуск подобных итераций с небольшими правками (с поддержкой текстур почетче и последних технологий) превратился для американской студии в норму.
UE задумывался как продукт для лицензирования. Суини встроил в него удобный редактор UnrealEd и язык программирования UnrealScript. От UnrealScript он отказался только к выходу UE4.
И действительно — Unreal Engine покупали крупные компании. В 2000 году свет увидели Deus Ex и Rune, взращенные как раз на UE. В наши дни UE лицензируют для десятков проектов, но в 1990-е и 2000-е годы разработчики зачастую сами писали движок для конкретной игры, универсальных инструментов на рынке не наблюдалось. UE попытался предстать универсальным. Он подавался как мультиплатформенная технология и даже позволял наладить кроссплатформенный мультиплеер.
UE2 помнят по Unreal Tournament 2003 (2002), Splinter Cell (2002), Postal 2 (2003) и другим играм. Среди его новшеств — поддержка VoIP (голосовой связи в многопользовательских матчах), неплохая физика транспорта (помните режим Onslaught в Unreal Tournament 2004?), скелетная анимация и, конечно, физический движок Karma. Он гарантировал, что тело врага после попадания отлетит эффектно, на манер тряпичной куклы.
С UE2 изменения пробрались не только на компьютеры, но и на консоли. Так, Unreal Championship (2002) вошла в историю как одна из первых консольных игр, что получила патч по интернету.
UE3 уже ближе к современности. Как известно, переход от шестого к седьмому поколению консолей сопровождался гигантским рывком в плане качества графики. В революции поучаствовал третий Unreal Engine, выступив «сердцем» Gears of War (2006), Mass Effect (2007), Borderlands (2009).
К UE3 в Mortal Kombat vs. DC Universe (2008) обратился Эд Бун. Вы удивитесь, но недавняя Mortal Kombat 11 тоже использует UE3, пусть и за долгие годы серьезно переписанный программистами NetherRealm Studios!
В числе «фишек» UE3 упомянем попиксельный расчет освещения и теней, поддержку технологии генерации растительности SpeedTree и DirectX 10-11, правдоподобную симуляцию толпы. На смену Karma пришла NVIDIA PhysX. Из недостатков отметим порой медленную загрузку текстур.
UE3 расширил список привычных платформ. Он покинул пределы PC и консолей и обосновался на iOS и Android, взять небезызвестную Infinity Blade (2010). За движок охотно садились независимые разработчики — в итоге мы имеем, к примеру, The Vanishing of Ethan Carter (2014) и Life Is Strange (2015).
Особенности Unreal Engine 4
UE4 отбыл в свободное плавание в 2014 году. Вам наверняка попадались на глаза файтинги на этом движке (Tekken 7, Street Fighter V), слэшеры (Hellblade: Senua’s Sacrifice), стратегии (Battlefleet Gothic: Armada), платформеры (Yoshi’s Crafted World, Psychonauts 2), RPG (Vampyr, Final Fantasy VII Remake, Kingdom Hearts 3), шутеры (PUBG, S.T.A.L.K.E.R. 2: Heart of Chernobyl)… Разброс жанров широк, количество проектов с трудом поддается подсчету. В крупнобюджетной разработке UE4 практически стал синонимом понятия «игровой движок».
В нем Epic наконец вынесла за скобки собственный язык программирования UnrealScript. Создавать игры в UE4 вы можете либо на языке C++, либо пользуясь визуальным инструментом программирования — так называемыми «блюпринтами», они же «чертежи». Теоретически они позволяют вообще обойтись без кода.
Технология, придуманная Тимом Суини, шагнула за пределы игровой индустрии. На 2023 год, например, запланирована премьера мультфильма Gilgamesh от аргентинского режиссера Томаса Липгота. Картина о герое Древней Месопотамии примечательна тем, что целиком снята в программной среде Unreal Engine.
Unreal Engine и Unity
У UE сейчас только один приличный соперник — Unity. Его с 2005 года совершенствует Unity Technologies. В основном движок распространен в мобильном секторе (Pokemon Go, Monument Valley, Hearthstone), однако громкие игры для PC и консолей в активе тоже есть: Firewatch, Inside, отечественные Escape from Tarkov и «Мор». Под стать UE, Unity — мультиплатформенный инструмент.
Исходный код UE4 открыт. Unity Technologies на такую щедрость не отважилась.
В Unreal Marketplace хватает бесплатных материалов для создания игр. Магазин с моделями и материалами для конкурирующего движка называется Unity Asset Store. Тут тоже присутствуют халявные ассеты, но их часто ругают за низкое качество.
В случае UE4 можно выбирать между C++ и «блюпринтами». У Unity языком программирования выступает С#, а аналогом «блюпринтов» служит инструмент Playmaker, однако его придется докупать отдельно.
Unity хвалят за низкий порог вхождения и обилие учебных материалов в сети. Освоить UE4 сложнее, зато многие функции работают «из коробки».
В итоге нельзя однозначно сказать, какой из движков лучше. Исторически сложилось так, что UE4, как правило, берут для AAA-игр, Unity — для мобильных и инди-проектов.
Что нового в Unreal Engine 5
Первый показ UE5 состоялся в мае 2020 года. В числе двух главных «фишек» движка Epic заявила Nanite и Lumen. Из обеих выгоду извлекут и разработчики, и геймеры.
Описывая Nanite, Epic пускает в дело определения «виртуализированная геометрия» и «микрополигональный рендеринг». Что это значит? Разработчики теперь смогут загружать в движок модели высокого, кинематографического качества из миллионов полигонов. Впоследствии их не придется искусственно «портить», ухудшать детализацию, чтобы движок смог вывести всю эту красоту на экран с приемлемой кадровой частотой.
Напротив, благодаря Nanite не нужно соглашаться на компромиссы. Не нужно думать, среди прочего, о настройке LOD (level of detail) — уровней детализации моделей для разных ситуаций. Раньше, чтобы сэкономить ресурсы, разработчики делали, допустим, один вариант модели для близкого расстояния, второй — для среднего, третий — для дальнего. Но Nanite в UE5 рендерит изображение из расчета полигон на пиксель дисплея, то есть чем разрешение выше, тем картинка четче. Без разницы, лицом к лицу вы с персонажем или в сотне метров от него, количество полигонов в модели не уменьшится. Есть одно «но»: иногда число объектов в кадре зашкаливает, и тогда приходится использовать уловку с динамическим (изменяемым в зависимости от нагрузки) разрешением.
Дебютную техническую демоверсию UE5 компания Epic назвала «Lumen in the Land of Nanite». Демка обсчитывалась в реальном времени на PS5 в разрешении 1440p при 30 кадрах/с. Разрешение динамическое. Epic использовала 8K-текстуры и сделала статую, на которую натыкается героиня демки, из 33 миллионов полигонов. Позже в зале девушка видит 485 таких статуй, что дает нам свыше 16 миллиардов полигонов.
Теперь о Lumen. Это система динамического глобального освещения в реальном времени. Она выступает чем-то средним между «лайтмэпами» (карта статичных источников света), известными с 1990-х годов, и рэйтрейсингом. Представьте сцену, созданную в UE5: освещение реагирует на смену условий (например, со дня на ночь) и окружения — медленно открываешь окно, и комнату правдоподобно заливает светом. Причем от поверхностей лучи отражаются бессчетное количество раз.
В «Lumen in the Land of Nanite» есть момент, где героиня протискивается в узком пространстве Поначалу пресса подумала, что это пресловутое «бутылочное горлышко» — ухищрение от дизайнеров уровня. «Бутылочное горлышко» позволяет выгрузить из памяти старые данные и загрузить новые при переходе между просторными сегментами уровня. В итоге геймер изображает какую-то деятельность, а не скучает за загрузочным экраном. В играх «бутылочное горлышко» обычно замаскировано лифтом или щелью. Однако Джефф Фаррис, один из технических специалистов Epic, заверил, что разработчики нарочно создали этот момент — чтобы вы поближе рассмотрели детали сцены.
В мае 2021 года американская компания организовала еще один показ UE5 и раскрыла некоторые его особенности через технодемку «Valley of the Ancient». Вот что заслуживает внимания в движке, помимо Nanite и Lumen:
Интерфейс в UE5 «взрослее», чем в UE4, с небольшими иконками. Расположение разделов изменено, но в целом для обучения сгодятся даже уроки, посвященные четвертой версии движка. UE5 требовательнее UE4, «народной» GeForce 1060 ему не хватает, разработчикам придется докупать GeForce RTX.
Крупные студии потихоньку показывают результаты трудов на UE5. Так, The Coalition, которая сейчас развивает серию Gears of War, недавно выложила на YouTube запись демки «Alpha Point» на Xbox Series X.
Ассеты в «Alpha Point» состоят из 300 000–500 000 треугольников. В среднем в Gears 5 на объект приходится в 15 раз меньше полигонов.
Ресницы персонажа, вылепленного The Coalition на UE5, содержат 3500 полигонов, то есть примерно столько же, сколько в целом было в модели героя эпохи Xbox 360.
Unreal Engine 5 распространяется по программе раннего доступа с мая 2021 года. Масштабный запуск намечен на начало следующего года. Движок заточен под PC, PS5 и Xbox Series, но готовить в нем можно будет и проекты для консолей предыдущего поколения, а также для мобильных устройств.
Какие игры выйдут на UE5? Пока известно о Senua’s Saga: Hellblade 2, Dragon Quest XII: The Flames of Fate, ArcheAge 2 и Fortnite. UE5 держит курс на фотореализм уровня голливудских блокбастеров. Пожалуй, уже Hellblade 2 даст понять, так ли это на самом деле.
Unreal Engine 4 для развития своих способностей
Доброго времени суток, Хабр!
В этой статье я бы хотел поговорить с вами о недавно вышедшем Unreal Engine 4, который на данный момент набирает все большую популярность среди разработчиков игр. И хотя статья о UE4, однако она совсем не про игростой, хоть и связана с ним.
Я бы хотел обратить ваше внимание на другую сторону Unreal Engine 4, которая будет несомненно полезна тем, кто собирается выбрать свой путь в жизни и обучаться разработке. Речь об образовательных способностях данного движка.
Саму статью я бы хотел разделить на две основные части: Программирование с логикой и Дизайн с творчеством. Но прежде скажу пару слов о себе, что бы вы понимали, почему именно этот движок и что меня натолкнуло на эту статью.
Итак, приступим.
О себе
Меня зовут Александр и мне сейчас 20 полных годиков. Вся жизнь ещё впереди и самое время определиться со своим будущим. Года три назад я начал увлекаться 3х-мерным моделированием и к сегодняшнему дню, на мой взгляд, добился хороших результатов. Ещё с детства я любил играть во всякие компьютерные игры и, как и многие, мечтал сделать что-то подобное. Поэтому моя специальность направлена в основном на real-time моделирование.
Однако для создания полноценных игр мне этого не хватало, так как я не знал языков программирования, хотя мат. мышление было на хорошем уровне. Я пытался познать PHP, C++, Lua, RubyOnRails, JS. Но максимум, на что меня хватило, это Jquery, да и тот через неделю после курса умудрился забыть. Все это довольно таки разочаровывало, но я не сдавался, продолжая тем временем совершенствовать свои способности в 3х-мерной графике.
Меньше года назад вышел UE4 и я, как поклонник Unreal Tournament и самого Unreal Engine, очень обрадовался. Побежал учить. Тут я бы хотел проводить вас к следующим пунктам, которые расскажут, что может дать UE4, помимо самих игр.
Программирование и логика
Как некоторые знают, в движке можно писать игровую логику на С++, а так же с помощью визуальной системы программирования — Blueprint. Для тех, кто не знает, выглядит она так:
Алгоритм сортировки (методом вставки) по цене предметов в инвентаре
Как раз об этой системе я и хотел бы с вами поговорить. Будем называть её «Блупринт».
Блупринты — это визуальный скриптовый язык, который позволяет написать логику игры без применения языков программирования. Каким бы сложными или простым он не казался, он остается довольно таки мощным инструментом, на котором можно создать почти что угодно, от простенького персонажа или открытия дверцы до процедурной генерации уровня.
Когда в первый раз его увидел, я был очень рад, что смог повторить попытку изучения программирования на данной системе. И действительно все пошло куда лучше, чем с текстовыми языками. Я начал с простых вещей. Переменные, простые функции, что куда соединять и все в таком духе. Тогда (это было летом 14-го года) я ещё не очень хорошо соображал, как правильно организовывать работу, как правильно и оптимизированно строить алгоритмы. Но постепенно я стал осваиваться в данной системе.
Через какое-то время стал делать простенькие игрушки. Стал разбираться в классах, в коммуникациях между отдельными объектами, миром и глобальными классами. Тут-то я заметил, что становлюсь настоящим программистом — после компиляции Блупринтов и запуска с проверкой все работало как надо. Счастья было очень много.
Через какое-то время я начал вникать в более сложные вещи и понимать, что все могу написать лучше и более оптимизированно. Таким образом я переписывал свою систему инвентаря (часть которой на скриншоте) не менее трех раз, чтобы добиться наилучшей работы. Да и сейчас продолжаю улучшать, так как система в свободном доступе. На данный момент в Блупринтах разобрался очень хорошо и могу сделать почти все, что угодно (в разумных пределах, конечно).
В итоге данная система научила меня не только работать с ней же, но и очень хорошо дала понять, что нужно строить логику грамотно, оптимизированно и обдуманно, и как это делать. Так же очень хорошо развила логику в сфере построения алгоритмов.
Таким образом, начинающие игроделы, программисты, или просто люди, которые заинтересованы в том, что бы сделать что-то свое, могут без труда обучиться не только работе с Блупринтами, но и узнать много новых вещей, не говоря уже о развитии логики.
Давайте взглянем на другой пример — Материалы:
Тут работа происходит таким же образом, однако нету никаких логических последовательностей, только математика.
С помощью математических операторов и текстур вы строите материал, который в последствии будет наложен на какой-либо объект в вашей сцене. С самого начала может быть не понятно, и зачем это все вообще нужно, однако, как это ни странно, данная система оказывается очень полезной для того, что бы создавать нужные или даже генерируемые материалы.
Давайте возьмем простенький пример: у материала может быть цвет и гладкость; у вас есть текстура, на которой изображены различные делали вашего предмета, и она вся красивая и радует глаз. Но наложив на модель просто текстуру, вы понимаете, что тут чего-то не хватает. Точно! Вот эта часть должна быть гладкая и отражать мир вокруг, а вот эта делать наоборот матовой без каких либо отражений. Тут вам может пригодится математика, что бы из вашей текстуры сгенерировать черно-белую карту, где белый цвет будет означать матовую часть, а черный — гладкую.
Изучав материалы и принцип их работы, можно добиться хороших успехов и в алгебре. Да и не только в ней, но и опять же в самой логике, так как все формулы нужно придумывать самому.
Вот пример материала, который генерирует цвет, металические делали, гладкость в нужных местах и даже рельеф. Все это из одной текстуры:
Конечно, текстура не обычная, а специальная, но суть в том, что после изучения системы и небольшого опыта, вы научитесь строить самые невероятные вещи.
Подытожив часть логики и программирования, хотел бы сказать, что с помощью даже этих двух инструментов, любой человек сможет развить в себе логическое мышление и рано или поздно научиться строить такие системы, о работе которых он не имел не малейшего понятия. Ну и даже написать свою игру ему не составит труда, а с этим опытом можно спокойно идти учить более мощные языки программирования, или хотя бы иметь представление о будущем в подобной сфере.
Дизайн и творчество
Вам когда-нибудь хотелось построить свой дом, походить в нем? Снять свой фильм? Или просто создать красивую или мрачную сцену что бы выплеснуть накопившиеся эмоции? Если да, то Unreal Engine 4 вам тоже сможет чем-то помочь.
Вот несколько впечатляющих роликов, демонстрирующие графические возможности:
А так же в сфере визуализации архитектуры:
Конечно, тут не обошлось без красивых 3д моделей, анимации и всего прочего. Однако я хотел подметить особенность графики, которую может выдавать этот движок в реальном времени.
Сам же Unreal Engine 4 предоставляет некоторый набор, благодаря которому можно создать что-то свое, не прибегая к стороннему софту (не считая текстур). Не хочу вдаваться в подробности, которые вы сами сможете изучить, если заинтересуетесь, однако упомянуть все же стоит.
Внутри редактора существует инструмент, под названием BSP, благодаря которой вы можете спроектировать сцену. Хотя инструмент и предназначен для проектирования, а не для финального результата, но с помощью него можно сделать несложную модель и даже сконвертировать её для того, что бы она могла подвергаться физике. Можно сделать дом, забор и тому подобное. Что угодно, на что хватит терпения, так как инструмент пока что не самый удобный в использовании.
Так же предоставляется инструментарий для создания ландшафтов, с помощью которого возможно сделать довольно красивый пейзаж и населить его теми самыми моделями, а так же растительностью и какими-то дополнительными деталями. Добавив немного пост обработки, с которой, кстати, работать не так-то трудно, можно получить замечательную картину природной сцены. Тут уже зависит от вашего воображения.
Для тех, кто знаком с 3х-мерным моделированием, в UE4 будет ещё больше возможностей. Простота в импортировании (через формат FBX), простота установки, наложение материалов, да и их создание тоже не такое сложное, если разобраться, работа со светом, запекание и многое другое.
Сам я тоже создаю 3D модели и заметил за собой, что все время хочется проверить, как модель будет выглядеть внутри движка. И, признаюсь, качество не уступает современным рендерам.
Работа пользователя The_Distiller с официального форума
Конечно стоит учитывать, что рендеринг происходит в реальном времени, и не все всегда настолько реалистичный, какой мог бы быть, но плюс здесь в том, что вы можете свободно перемещать камеру для просмотра под любым углом.
Конечно, тут можно придумать ещё множество преимуществ. Например, визуализация архитектуры в реальном времени на примере видео, что было выше. Снятие красивых 3д роликов без многочасового рендера. Даже есть поддержка VR очков, благодаря чему можно сделать виртуальный тур. А представьте, если этот тур будет по той реалистичной квартире? Словом, для творческих людей тут тоже найдется местечко.
Подводим итоги
Несмотря на то, что Unreal Engine 4 является движком для создания компьютерных игр, его можно использовать в самых различных целях. В данной статье я хотел выставить его со стороны образования и как личного помощника в развитии своих мыслительных способностей. Не хочу судить свой текст, однако я постарался расписать максимально понятно для людей любого возраста и профессии и, надеюсь, в будущем движок поможет очень многим, в том числе юному поколению.
Конечно, не стоит рассматривать UE4 как набор кнопок «сделать все хорошо». Инструмент очень мощный с впечатляющим функционалом, поэтому изучить все и сразу тоже не получится. Однако если вы сумеете поставить себе стимул и наберетесь достаточно терпения, то все у вас получится!
Сам я изучаю UE4 не больше 7-ми месяцев и преуспел во многих сферах внутри редактора, даже открыл свое сообщество. Однако ещё много чего не изучено, поэтому в будущем от меня могут быть дополнительные статьи. Если и эта статья вам понравится, конечно.