Создание современного игрового 3D окружения от White Noise Team.
В рамках работы над проектом Twin Soul мы ведем Devlog и часто получаем вместе с фидбеком вопросы о создании игрового контента. Подобную информацию трудно уместить в рамках одного комментария, что сподвигло на написание данной статьи.
Вне зависимости от того, слышали ли вы краем уха слова “полигон” и “нормалка”, занимаетесь разработкой видеоигр, или же простой обыватель - мы постарались сделать статью максимально понятной и интересной для всех. А конкретно - мы расскажем о нашем пайплайне (поэтапный алгоритм ведения работы) создания простых игровых моделей (на жаргоне разработчиков - “пропсов”; от англ. “props”), познакомим с технической терминологией, и дадим несколько практических советов.
Сбор референсов.
В первую очередь все начинается с подбора референсов (вспомогательные изображения в качестве примера). Неисчерпаемым и бессмертным источником референсов является Google.
Но несмотря на подобное изобилие, чаще всего мы берем в руки фотоаппарат и ищем источники вдохновения самостоятельно. К счастью, наша стилистика способствует легкой добыче необходимых фотографий, зачастую, даже не выходя из дома.
Естественно, данные методы не совсем эффективны, когда окружение переходит из рамок реальности в рамки фантазии. На этот случай у нас есть концепт-художник.
Для более глубокого погружения мы стараемся максимально правдоподобно копировать референс в виде 3Д. “Эксперты” любящие писать “Вот так вот не бывает!” знайте - на каждое “не бывает” у нас есть фото, подтверждающее обратное.
Но иногда приходится жертвовать правдоподобностью в угоду игровым условностям, оптимизации или искаженному восприятию пропорций в игре.
Мелкие объекты и детали могут быть плохо заметны “нечитабельны”, приходится увеличивать их в разы относительно реальных аналогов. Например, это может быть тонкая картонная упаковка, мелкие радиодетали, незаметные провода и трубы, кнопки на электроприборах и т.п.
Моделирование - базовая теория.
Имея представление о том, как будет выглядеть будущий объект, можно приступить к его созданию. Специально для освоения теоретической части придумаем и вылепим простенькую деталь.
Готово! Получена желаемая форма, но для использования в игре она не годится. Это пока еще скетч, на основе него предстоит сделать две модели, и начнем с низко полигональной (полигон - плоскость 3Д модели описанная точками), будем называть такие объекты - LP (low poly).
В процессе создания LP, мы удалим со скетча точки не влияющие на форму объекта, тем самым сократим количество полигонов и упростим оставшиеся. Теперь модель будет потреблять значительно меньше ресурсов вашего компьютера. На этом же этапе удаляются все полигоны, которые не будут видны в игре.
Вроде то что нужно, но хотелось бы скруглить конус и вообще сгладить все острые углы. При этом нам нельзя увеличивать количество полигонов.
Дело в том что каждый полигон по стандарту имеет свой уникальный вектор, отвечающий за его шейдинг (как ложится на поверхность тень) и называется этот вектор - нормаль. Именно из-за набора уникальных нормалей у каждого полигона - конус выглядит граненым. К счастью, c помощью настроек групп сглаживания можно задать для всей модели одну и ту же нормаль.
Выходит не очень, и становится очевидно, что для “графона” грамотный подход в работе с нормалями жизненно необходим. Относительная погрешность в виде подобных артефактов допускается, но в данном объекте сгладим только конусную часть.
При моделировании сложной геометрии могут возникнуть различные ошибки в построении полигональной сетки LP, приводящие к искажению полигонов. Один из популярных способов избежания подобных ошибок - триангулирование (деление полигонов на треугольники).
В примере выше “кривой” полигон был триангулирован по разному, путем соединения ребром разных точек и в результате получились две разные формы. Любая полигональная графика изначально строится на основе треугольников, так или иначе среда разработки поделит полигоны, но не всегда как нужно. Кроме того, триангулирование дает дополнительные возможности в работе с нормалями, а в некоторых случаях помогает избавиться от артефактов, вызванных жесткими группами сглаживания. Правильно строя сетку можно значительно оптимизировать модели и улучшить их визуальное качество.
И на самый конец создания LP её разворачивают, это даёт возможность накладывать на модель текстурные карты. Процесс похож на развертку картонной коробки в плоскость и игру в тетрис одновременно.
Боковые части объекта одинаковы на предполагаемой текстуре, поэтому положим их друг в друга. На внешней части конуса предполагаем наличие фаски или другой текстурной детализации, поэтому немного увеличим её на развертке. Дно модели редко будет видно игроку, уменьшим его развертку в несколько раз.
Если сравнить два варианта развертки становится очевидно, что при условии идентичного разрешения текстуры второй вариант будет выглядеть намного четче.
Теперь деталь полностью готова к экспорту в игровой движок. Но такие квадратные формы явно не подходят под определения “современного игрового окружения”, по прежнему хочется сгладить все углы. Для этого мы возвращаемся к нашему 3D скетчу и сделаем из него высоко полигональную модель HP (high poly).
Модель сглажена за счет большого количества полигонов и их нормалей, теперь предстоит задача перенести эти нормали с HP на LP. Перенос осуществляется методом запекания в ранее созданную развертку, на выходе мы имеем карту нормалей, где RGB значение каждого пикселя соответствует XYZ значения вектора.
Возникает вопрос, зачем мы настраивали группы сглаживания на LP, если собираемся использовать карту нормалей? К сожалениею, карта нормалей лишь вспомогательная, для обмана зрения. Во время рендера векторы карты нормалей будут умножены на базовые.
Подробнее о картах нормалей.
Для максимального эффекта карты нормалей нужно заранее хорошо сгладить углы и выделить детали в HP модели больше, чем в реальном аналоге (референсе). Базовые нормали LP объекта можно также использовать для подчеркивания формы.
Использования подобных карт - не новинка в игровой графике, но современный пайплайн создания фотореалистичного контента требует совершенно иной уровень качества. Именно поэтому создание почти каждого объекта требует дополнительно HP вариант, что увеличивает временные затраты разработки. Моделирование промежуточного скетча, сетка которого позволяет быстро получить HP и LP, экономит время и, кроме того, габариты двух моделей выходят идентичными. Чем больше идентичность HP и LP - тем меньше выходит проблем с запеканием нормалей.
Во время запекания на основе LP сетки строится клетка “захвата”, форма клетки влияет на угол проекции запекания. И иногда нам приходится добавлять в LP дополнительные ребра, тем самым выровнять клетку и исправить некоторые “косяки”. После временные ребра можно удалить.
Как правило игровые модели состоят из ряда мешей (цельные полигональные объекты), эти части будут мешать запеканию перекрывая друг друга, приходится отделять их и печь по отдельности. Куски получившихся карт нормалей склеиваются воедино после.
Для непосредственного запекания может использоваться почти любой современный пакет 3D моделирования, но мы используем Substance Painter 2 (программа для процедурноготекстурирования,далее SP2). Помимо нормалей, софт позволяет качественно запекать на основе HP целый ряд различных карт. К примеру, карта базового затемнения (Ambient Occlusion - АО) или карта высот (Height Map). Эти и некоторые более технически сложные карты могут участвовать в генерации необходимых визуальных деталей - грязь, потертости на углах, и т.п.
В качество нюансов можно указать что работаем мы исключительно с OBJ форматом, как показала практика общепризнанный FBX по неизвестным причинам может выдать неприемлемый результат.a
Иные методы моделирования.
Часто, если на HP модели должны присутствовать рельефные детали типа узоров, трещин, скол, следы коррозии и т.п., в таком случае разработчики прибегаю к скульптингу (принцип моделирования основанный на скульптурной лепке, использует для работы очень большое количество полигонов). Хорошим примером для использования подобного метода может выступать старый советский подоконник.
Способ не без минусов, требует для себя чуть больше времени, умений и не всегда необходим. Так как человеческие ресурсы в нашей команде довольно ограничены, мы редко прибегаем к скульптингу, но иногда без него нельзя обойтись.
Часто нас спрашивают, используем ли мы фотограмметрию (способ получения 3D объекта с помощью фотографий), бытует мнение, что данный способ является чуть ли не манной небесной. К сожалению, для качественной фотограмметрии нужен студийный равномерный свет, дополнительная работа с фото, большое время для просчета. На выходе получаем меш с хаотичной высокополигональной сеткой, и для дальнейшей работы требуется проведение ретопологии (изменения топологии сетки), а после - устранения артефактов с помощью скульптинга. Одним из преимуществ фотограмметрии является создание реалистичной текстурной карты, но она тоже требует дополнительные правки и сильно ограничивает в оптимизации развертки.
В результате простой проп гораздо быстрее и качественнее сделать вручную. Способ оправдан для создания объектов требующих от себя продвинутых художественных умений. Это могут быть сложные геометрические формы, органика, естественные объекты. На данный момент мы применяем фотограмметрию только для создания персонажей, тема явно требует для себя отдельной статьи.
Стандартом для создания тканевых ассетов в игровых пайплайнах давно уже стал Marvelous Design. Продукт позволяет создавать и симулировать ткани из заготовленных пользователем выкроек. Наша команда пока еще только осваивает новый инструментарий, но он уже нашел свое применение и для создания предметов окружения.
Способ довольно оптимальный, симуляции не занимают много времени, легко настраивать топологию сетки и к тому же на выходе автоматически получаем развертку на основе выкроек.
Материалы - базовая теория.
Краеугольным камнем в плане производительности и визуальных качеств графики является свет и материалы, а материал - это набор параметров включающий в себя текстурные карты и шейдер (алгоритм отрисовки поверхности). Современные материалы неразрывно связаны со светом, во время рендера (процесс отрисовки компьютерной графики) они формируют привычную для пользователей картинку, но в данной статье мы больше поговорим о материалах.
С приходом консолей последнего поколения в пайплайн разработчиков внедрился новый технологичный стандарт, пришедший в игры из кинематографа - физически корректный шейдинг (сокращено PBS, в сети можно встретить также под аббревиатурой PBR, IBR). Технология представляет с собой наиболее наиболее подобную реалтайм симуляцию взаимодействия света и материалов.
В реальности свет взаимодействует с объектами на который падает, отражается, рассеивается и поглощается. Степень, с которой происходят данные физические явления, зависит от микроструктуры вещества. Чем более поверхность неровная, тем больше свет поглощается или рассеивается, кроме того, отражаясь от поверхности свет формирует видимое отражение окружающего мира. Металлы и неметаллы отражают свет по разному, для первых свойственно фронтальное отражение (зеркало) и изменения цвета блика.
PBR использует те же правила для отрисовки поверхностей, но, к сожалению, симуляция отражений в реальном времени до сих пор остается тяжелой темой для игровой графики. Поэтому в большинстве случаев в качестве отражения используются заранее заготовленные кубмапы (панорамные изображения натянутые на куб/сферу). А так как понятие вещество не применимо к полигональной графике, информацию о микроструктурах храниться в текстурных картах.
Раньше разработчики вкладывали большую часть информации о поверхности в диффузную карту. И не смотря на появления карт нормалей и спекуляров (карты бликов) с приходом DX9, дифузная карта до недавнего времени содержала в себе информацию о затемнении, бликах. Попросту говоря дифуз был слегка обработанной фотографией. Теперь на их смену пришли альбедо карты, содержащие в себе только цвет поверхности и ничего больше.
Остальная информация о материале раскидана по остальным картам, их количество зависит от особых физ свойств объекта, которые требуется просимулировать. В нашей пайплайне для простых объектов, на базе работы с Unreal Engine 4 используется не так много карт. К знакомым нам уже картам нормалей и альбедо добавляется рафнес (roughness - карта шероховатости), металик (metalicкарта металличности) и АО (ambient occlusion - карта базового затемнения).
Наличие различных карт не обязательно, физ свойства поверхности могут быть заданы параметрически, процедурно или сгенерированы из небольших фактурных текстур. Поэтому эксперты графики, обсуждающие на сколько текстуры в очередной новой игре HD или не HD - знайте, текстуры ничего не значат в отрыве от материала и падающего на него света, а иногда их нет вообще, кроме того понятие HD не применимо к текстурам.
Создание материалов.
Теперь, когда мы знаем как работают современные материалы, можно рассказать о том, как они создаются. Для этого вновь вернемся к разговору о SP2.
Программа предназначена для работы с PBR и по аналогии с Marvelous Designer широко распространена среди игровых разработчиков. В базе SP2 имеется библиотека уже готовых процедурных материалов. При наличии прямых рук и художественного вкуса, можно быстро “разукрасить” большинство простых объектов, не прибегая к использованию сторонних ресурсов.
В качестве примера “затекстурим” старый чайник, и для начала сгенерируем все необходимое для дальнейшей работы карты.
Путем манипуляций с Curvature map (карта кривизны) и наложением стандартных материалов можно получить стальной чайник с эффектами стертой краски по краям.
Конечно, такой результат нас не устроит. Это пока еще набросок, попытка понять, что мы желаем получить и как нам следует настроить материал. Всегда стоит держать перед собой референсный пример, а если подобный чайник находится у нашего художника прямо на плите, то он быстро переезжает поближе к компьютеру, для более внимательно изучения деталей.
После первых проб задается основа для объекта. В данном случае мы использовали “сталь” из стандартных материалов. На этом этапе важно выбрать правильно панорамное изображение, чтобы лучше видеть и понимать, как будут играть на нем свет и отражения. Настойка панорамы и освещения рабочей сцены особенно важны для работы с металлами, так как их внешний вид сильно зависит от отражений.
Подобно Adobe Photoshop, программа имеет функционал работы со слоями и масками. С помощью слоев, поверх базового металла, мы добавим новые материалы, полностью скрывшие базовый. В данном случаи мы покрыли чайник эмалью, а с помощью масок основа чайника и его ручка окрашены в разные цвета.
Фактически чайник уже готов, но его внешний вид не подходит под определение “старый”. Как правило, для эффекта состаривания добавляются грязь, царапины, цветовые вариации и пр. На данном этапе работа по большей части идет на уровне Roughness maps (карты шероховатости). Естественно, карты шероховатости уже содержаться в базовых материалах, но ничто не мешает добавить новые поверх них. Для тела чайника мы добавим карту, имитирующую потертости, а для ручки - еще и следы от пальцев.
Этого все еще мало, нам понадобятся дополнительные эффекты и маски. SP2 содержит в себе набор процедурных масок, для работы которых важно качество HP и запеченных с помощью него карт. Добавим грязь, коррозию, обнажим немного стальной слой под эмалью.
Каким бы не был крутой софт, он не сможет все грамотно нарисовать за вас путем лишь манипуляций с настройками. Финальная доводка и добавление деталей не обходится без ручного режима рисования. Для подобной работы обязательно нужен графический планшет.
Из дополнительных приемов можно отметить использование старых добрых фото-текстур. Для подобного чайника, как и для другой утвари из советского периода, характерны декоративные изображения цветов. Найдем в гугле подходящую картинку и с помощью фотошопа подготовим для дальнейшей работы. Cамая большая сложность - найти изображение хорошего качества, без засветов, теней, перспективы. Готовую текстуру импортируем в SP2 и проецируем на поверхность чайника.
В качестве экономии времени незначительные детали можно не отмоделивать в HP. SP2 содержит в себе набор заготовок, или же можно найти найти на просторах гугла заготовки в виде карт высот. Например, мы добавим болты-крепежи на ручках.
В итоге чайник готов. В качестве результата, мы экспортируем набор карт (альбедо, нормалка, рафнес, металик) для дальнейшей работы с ними в игровом движке.
Работа с контентом в UE4.
“Нарисовать” объект - это пол работы, требуется произвести с ним еще много различных манипуляций, сделать лоды и коллизию, лайтмап развертки, произвести батчинг, настроить пивоты… Но рассмотреть все аспекты пайплайна тяжело в рамках ознакомительной статьи, поэтому сконцентрируемся только на сборке визуальной составляющей.
Одна из основ оптимизации современной графики - сокращение количества текстурных карт, материалов и упрощение последних. Тем самым мы уменьшаем количество обращений к видеокарте для отрисовки элементов. К сожалению, текстурных карт даже в простом чайнике выходит не мало, и они требуют дополнительной оптимизации. Если внимательно взглянуть на AO, Roughness и Metalic, можно заметить что все три карты черно-белые, а почти любые цифровые изображения стоят из RGB каналов, каждый из которых является градацией серого. Проще говоря, один цветовой канал позволяет хранить одну черно-белую текстуру. В результате мы сливаем все три вышеуказанные карты в одну текстуру.
Различные дополнительные карты, к примеру для светящихся материалов или материалов с прозрачностью, мы дополнительно запаковываем в Alpha канал альбедо текстуры (некоторые форматы изображений имеют помимо RGB дополнительный канал для прозрачностей).
Касательно сокращения количества материалов - существует понятие атласов. Атласы это особый вид текстурных карт, который содержит в себе развертки сразу нескольких объектов. Некоторые разработчики производят атласинг уже готового контента, мы же по большей части проводим атласинг еще на этапе моделирования. К сожалению, в один атлас нельзя запихать все подряд, нужно учитывать максимально возможное расширение приемлемое для движка и платформы для которой разрабатывается проект, группировать по типу материалов.
Помимо всего мы руководствуемся логикой. Допустим сделали набор инструментов. Естественно все объекты пакуются в один атлас, а значит и один материал, что здорово экономит ресурс производительности. Но если мы захотим использовать на сцене один конкретный инструмент, то он забьет видео-память большими атласами, из которых используется лишь маленькая часть, что делает использование одной модели из сета не целесообразным.
В Unreal Engine 4 встроен шикарный редактор материалов рассчитанный на дизайнеров, с помощью графов в нем можно реализовать любую свою фантазию. К примеру, таким образом у нас реализован процедурный шум для телевизора и переключатель светящейся панели электронных часов.
Не смотря на такое технологическое изобилие, мы предпочитаем создавать простые материалы. Ниже пример материала, использующий уже знакомые текстурные карты:
Но и тут не без подводных камней. То что в Unreal Engine 4 называется материалом и редактором материалов, является полноценным шейдером и редактором шейдеров. Здорово что шейдер может теперь создавать рядовой художник, пользователи Unity или CryEngine, к примеру, лишены такого удобства в стандартной коробке, но любая работа созданная таким образом генерирует полноценный C++ код и, к сожалению, не самый оптимизированный.
Раньше материал представлял собой экземпляр конкретного шейдера с изменением параметров или текстурных карт, но неизменным кодом. Граница понятий и терминов во многих 3Д редакторах со временем размылась, но возможность создавать традиционные “материалы” в UE4 осталась, и в подобном виде у нас хранятся материалы для большинства объектов.
Послесловие.
Надеемся, нам удалось максимально понятно и на простых примерах рассказать о том, как создаются современные игровые модели. Если такое большое колличество букв найдет своего читателя, мы со временем расскажем о других пайплайнах, не обязательно касающихся игровой графики, на примере нашего инди-проекта.
В качестве помощи вы можете дать нам фидбек, распространить статью, либо поддержать наш патреон, или просто подписаться на наши социалки:
https://www.youtube.com/c/WhiteNoiseTeam
https://www.facebook.com/twinsoulgame/
Подробнее
6. М4Х40 50 ! ^о 3- 2- T г Ф ¿ h. X A ■IT" !■ ИГ IHM •ïlîStî ^ -т - ч -:■■->/ ^P3Í~1 эт Г ИНШ ~* •* , ;с^ й • г ^ „
KAMI eítrr»rnnnO! jbifmru^AI WjflQWK. LommoMen. CharvkteOI CPk*r»J<«40? Crandrtlft02 Me* >tarm»hU»p U)ht*)M>f> ü*m*HMep l’ WIMf<dTO4 MrtlWMaDl MetlMcfeUl »tormKU.4;. Hottest*. №rm»*M»p VVO V Ш^Г т i ьг 'Ær&ffl ^В * « « ; * В •■("г- ■>'• ■ ' ~1. • -- . V-¡.^ 1*1 **П*«1Л* I '-.1 1 -Ч'.Л ^В|1| •:• .• - LUI ГП Ш œj; kl ¡Ы :-. , ft Bwy Chu acter г ftett • Il n f w ront ugnt b» И Ptoyftrstwt Л _ 1 Cube SL C RhMA — • H ^ M Л - - MM* J- 1 A Cone * • ■
¡шшшиiiii aiU, Г7-«* y(E •ice U »••■o* Ü' IT; 7 f % -¿Ж Г. l Ll^.J 1 T.'-Om I i t*Д _ tis:
т - ш
■л
Perspective 30° points: 2,971,677 Photos
ni» г- •« if Ц , i : р -(ti î
Shelf I CD K +â Ü g V (Smart... X Search... All ,f-f >y Project v / Alphas Grunges Procedurals Textures Hard Surfaces Filters Brushes Particles Tools Materials Smart materials Smart masks Environments Color profiles I Aluminium ... Aluminium ... barrel Baseball Hat... 7/ л * Chrome Blu... Cobalt Dam... coffee table coffee table_1 % m Dusty_Plasti... Fabric Burlap Fabric Dobb... Fabric Stretc... Ш á Fabric WOO.. Fiberglass W... flashlight Glass dirty 1% Leather Da... Leather Fine... Leather Rou... Leather Seat... * %%% Machinery Marble Fine... Marble Polis... matches 9*1* Plastic Armo... Plastic Dirty ... Plastic Fake ... Plastic Furni... Plastic Used... Plastic Used... Rubber Dry Rubber Tire Ü x| 1 V' Skin Human... Smooth_Ru... sofa Steel \ \ Steel Medie... Steel Painted Steel Painte... Steel Painte... % % 1 уЛ»цл Wood Beec... Wood Chest... Wood paint.. Wood Paint... % Ííd % m m m Bone Styfized Bronze Armor Bronze Corr... Bronze Statue Cardboard.... Cardboard.... "A X /l * Copper Copper Red... Copper Worn Dirt Dirty.Plascti... Dust m ь mш * Fabric Super... Fabric UCP Fabric UCP ... Fabric UCP ... Fabric WOO... Fabric WOO... ф <§- > 1 ’ Gold Armor Height Blend Hull Damag... Iron Old Latex Black Leather Seat... /ГГ Leather Sofa Leather Styfi... Leather Wea... Leatherette Leatherette ... %% -V matches 2 Normal Fix Paper Pirate_wood_1 Plastic Armo... Plastic Armo.. \ к Plastic Glossy Plastic Hexa... Plastic Matte Plastic Rubber Plastic Soft... Plastic tv "V ч %%% * Rubber Tire ... Silver Armor Skin Face Skin Face Skin Face_1 Skin Feverish '^N i M § Steel Bright... Steel Dark A... Steel Dark St... Steel Gun Mat Steel Gun P... Steel Keys /i \ V \\ \ Steel Polearm Steel Rust S... Steel Scratc... Steel Stained Tank Painted teapot □ □ □ □ Wood Walnut
Base Color Ü r fc ' * ® $» finish_brushed_linear ^^3 ■ xuu Norm 100 i i Ldge 15 f fjj ■nl ! • Norm 100 \ l/ff fffi 1 Norm 100 m Surface Details
Plü ей ¿Ip1 d> i'riinr^ IVnrfAnk Textur-« I ard 5-rlaccs Itrticlcs Mate* ais "'t ir atería fcdcc; Mronc kdy-5 kdQcs.b OfOUTd Urt Ouifcdqca Moehrc Moas Moa; Horn Psn:OW3i. PaírcCld r.ust Dr ps Hjst Ground Star Ocíele.. Stains Surface Sjbife Seiet. Scrface llu-t Serfвсе Won
•••••••** ••••••о•• ••••••••• # # # о # о оооооооо ••••••о«» ооооооооо ооооооооо ооооооооо ооооооооо
-- .4 fc. ^ ¿г* . . Я Ь*
flMi ^ кж М&-Ж .4« CHBAA«CB>*ri J '—H . * - • mí|ú>s 5 ' { r>¿ *1 i ' Mirai gL . v-í' л£ .'Y^fc’Tí * *J3tД| f7> :
Ceard" Volonctr c NxtDireclicnal File Ec it Asset whdow Homf OlpanlJ-) I iv» No dps I ivp llprat* ia/p Rro/rv1 Palette M While Noise Uat^07 -¿Atmosphère Atnocphciicl-oguoo- •¿Blonds BUüi<JLCukjtB»jm RbnrLOnlor Dodnp Rl?*nd_Darlcpn Dlend Ditte'ence Ulend.Dtclucior Blend.HardLiaht Bland.L qtten Bl=;iid_L n^ai But ii BU>nd_L inrai DoJya RlendJ n=arl igl't Dlend Overlay Ulend lïnüçht Blend_bcicen Bland.softLicht Lfcip_SjialciGiiint Lerp_Scralc iGiiint2 -¿Color Uccoturcticn * Constants Cou* la il Dons tait? Ver. for Consla-itFVer.tnr Constait4Vector UictanccüuIlFacc Partie leUolor Partie le Direction Pai lideMutiw Blui Face PaitiüiiRaifiiR! Partir IpRanron Ta rtic le ne lativ eTirr e Partie le üize Partie lebpeed Perinsiance=adeAtrojnt PeilnslanceRandbm Pi vcorn ju Le JAD Mc s < Tinp TwoGbedOgi Ve rte «Ce ler viewPcperty A c oc rd in aies lDlo2ClinJfcX IDtoF.nindpx 2DtolC Index ODtolCIndex ACtO'-’OCÎt 01\Vb BUrSampleOffsais Bou.d noBcx3a&«J_0-l_LV\V CaitiiiaPosilionWS M>;<( R ) M.fpV Mjliplr Puiuiei 'i Details y- SpoculJI •> FrmntrMii •• Sussi'tCika * Physical Maiorial MjtipV O- Nomul 0- V/yM P«c*x>Ott:c Pive Material d Material Mateïcl Dcnair > /nottr.lOíí LsK’n cuirp ifAn-.ji rMav- ij l>ac3l álanc Mod« y* um wpíuX s«t icdinq Model Uac Motcrio Aitri MJtipW d Translu^ency Sarcén Space Ref Liohtirifl Mode .-ccm« ▼ ’ •• » Co inc ¥ • ' S ne » t re ▼ > « 0 ♦ #• • Sine w — 1 - j -- O’ ► • - . G i ^ — •• - Noie 4- 3 jra:e 0| aiclxen: Dafaul: Lit M3ck(e) ▼ p5ï ▼ - •• * 9- - ña ▼ ■ •• File Eclt Asset vvhdow ia/p P.rovrv5 Home Olean Ui kJmlwjlMlfia llffgffifflftur. I ive Node?. I ivpllpeate hpfSjfc. [ Vtjahile Ttats Petspeclr«! Il ^ Lit 11 Shew M Clock 02 Uat2Ç07 -¿Atmosphere AtnosphcrrcFagüo o* •¿Blonds Blsnd.Color Buril Rlend_0rlm Dodoe Rl=*nd_r)a ricen Dlend Ditte'ence tíl end_t«c lucio«-Ulond.HordLight Bland_Lqnen BliMid.LiieaiBuiii Bl¿nd_LiiifaiCoJye RlendJ n=>arl ight Dlend Overlay ulend PinLight ubnd.bcrcen Bbnd.scftLicht Ltrp.SjiaLc iGiiint Le r p_Sci alc ; iGr i 11 ifc 2 J Color ücsaturctbn •¿Constante Consta il Consta it/Vpr.tor Consla itFVpr.tor Consta it4Vector UictanccCuIlFacc Particlcuolor ParticleDirection Pai (¡ÜeM-iliur iBlur Face PaiticluRadius Partir IpRanron Tartic lene lativ eTitre l’articleüize Particlcbpccd Pe r i n sta nc e =a de Amo jnt PeiliiüIanceRa kíjiii Pr ecom jule JAD Me s < Tinp TwoGidedS gi Verte«Colcr ViewPcperty ¿Coc id ¡n ales 10lo2C Index mtoRRIndpx 2DtolClndex OOtolCIndex ACtO' -’OCit 01\Vb Bürsampleoffsais Bou id nqBoxBa»« J_0-1_LVW Cameia^osilioiAAS • WfT.ll O w*«J roy\*t o'<: • VrAeït Co Alien •¿ General Parameter sana Sort Pioriry * Material Depression boalar Paramcler Daí3ult valúa Á Material Depression
m Details Scorch Physical Material Phy? M?tpri;l * Material Mntnrol fVtmnin №Q№Pi) M.MasterRGB Albedo Parar>2D Km Jf?? Specular ||¿mm (0.5) RGB_mask PaiamlD
л parameter (iratipa л Tr»-iirr Pwnmrlor Vakirn И 4- э:оо T.Mj*kC«nter.01.0C «- P *s Q Nui mui Q J ífir •• ■‘n-nnpri'f Vnlllpr- B íl-muIji л Cene 'al •Nvy- 5ai еЫ t> . jlil ■ KtSel. <ju (> Material Property С.:ПЗ:з := 1ПЗ*вГС€ Г5П?тз Uегф Чипе «- P M.Wnater tK ¥ P - 3aitf il L1alrci.il cjn«m 'Jane HLM ir.InPr.P M MusicC«nti- Cl P
Twin Soul,сделал сам,нарисовал сам, сфоткал сам, написал сам, придумал сам, перевел сам,game art,Игры,gamedev,unreal engine 4,длиннопост,3D
Ща конечно уже начали появляться реалтаймовое глобальное освещение, в том числе в ue4. Не знаю, как на практике, но должно тоже жрать прилично, но как бы, это должно быть красивей, аккуратней.
Не то, чего ожидаешь на риахтуре, но ебически круто.
давно мелкими шагами интересуюсь game dev
Скрипты анимации, катсцен, диалогов, поведения AI и т.д. тоже набираются в таком вот редакторе в виде графов из элементарных блоков, а потом из них генерится код, который ещё надо "причёсывать"? С нуля такой код кто-нибудь из разработчиков под такие движки ещё пишет или нет?
Программеры просто повторяют все то что написано на блупринтах, но делают это на си, смотря в блюпринты как в план действий или руководство по сборке.
но без мелких деталей и кое чего брал из свободных источников
Брал, я надеюсь, только сабли?
По современным меркам модель этой пепельницы более чем пригодна в роли игровой модели под пс/консоли.
Экономия и оптимизация должна быть разумной.
Не слежу пристально, но ваши посты регулярно выходят в топ, так что не заметить вас нельзя. Пару раз отписывался в предыдущих постах и читал ваше общение с публикой - видно, что вы действительно принимаете во внимание советы и работаете над ошибками. Едва ли не по пунктам и комментариям могу вспомнить и разбить "чейнджлог". Выглядит всё лучше и лучше, за пределами проходной любительской работы - действительно корпите с полной отдачей.
Сейчас от независимых студий только низкополигональная индюшатина (что не плохо, но в исполнении куда проще, чем гиперреалистичные проекты), сильных проектов за которые берутся терпеливые люди крайне мало. Моё уважение и успехов в работе над игрой. Надеюсь, геймплей и сюжет будут не хуже графики - тогда это будет настоящим шедевром
И потом лутбоксов не будет.
=)