Hazatron
7 постов
7 постов
Trion-1
продолжаем наблюдение
Gazer, в полном соответствии с именем, занимается тем что глазеет вокруг и как только видит игрока, тут же призывает толпу других механоидов.
Текстуры/материалы обновили в процессе эпопеи "обметаливания" всех врагов - изначально поленились делать карту metalness и очень зря, с ней гораздо правильнее выглядит.
Описываемый подход решает две задачи :
экономия памяти (она всё-таки не бесконечна, особенно на бюджетных машинах)
лёгкость добавления вариаций цветов (“перекрашивание палитры“)
Раскладка текстур выглядит так :
Самое непонятное в этой схеме (для художника) — цвет (base color/albedo), который нужно укладывать в 4х-точечный градиент. Это, конечно, ограничивает свободу творчества и добавляет несколько занудных этапов в рисование текстуры.
Я большой проблемы в этом не вижу — концепты всё равно обычно рисуют в 3-4 базовых цвета; если не нужен реализм (мне он не нужен) — “палитра” всё равно ограничена и эти цвета хочется быстро подгонять, иногда массово править десятки/сотни объектов.
В Substance Designer работать с градиентом несложно, в Substance Painter чуть больше возни (но есть готовые фильтры для работы с градиентами на 3/4 точки, самому даже делать не пришлось).
Пример настройки материала с двумя разными наборами опорных цветов :
Самый занудный этап во всей этой схеме текстурирования – сборка всех нужных карт в текстуры.
В худшем случае это придётся делать вручную, раскладывая карты по RGBA-каналам.
Когда текстуры делаются в Substance Designer, там несложно упаковать каналы в нужном порядке через ноду `RGBA Merge` и сразу экспортить готовые упакованные текстуры.
(Все текстуры окружения в своих проектах делаются именно так – это значительный кусок работы, и 99% занудной рутины полностью автоматизировано).
Когда текстуры делаются Substance Painter, возни побольше. Есть готовый фильтр для работы с градиентами на 3/4 точки (чтобы сразу видеть base color / albedo), но экспортить нужные карты приходится вручную.
В моём движке есть такой "формат картинок", который по сути текстовый конфиг, где указано из каких файлов собирается картинка.
Для примера с иллюстрации выше будут два таких файла :
// bomber-7.lci
red = "bomber-7_c.png"
green = "bomber-7_b.png"
blue = "bomber-7_e.png"
// bomber-7_rxmy.lci
red = "bomber-7_r.png"
green = "bomber-7_n.png" green_src = "r"
blue = "bomber-7_m.png"
alpha = "bomber-7_n.png" alpha_src = "g"
Вся эта схема хорошо укладывается в DXT1+DXT5. Нормал-мапа раскладывается в GA-каналы, где точность больше (трюк древний, но до сих пор замечательно работает).
Для ASTC получится даже чуть лучше – можно выставить опции "non-related" каналов, будет меньше искажений.
Хочется верить, что производители GPU перестанут страдать фигнёй с “аи“ и сделают массовый формат для 6/7/8-канальных текстур :)
Достал из пыли стимдек, собрал стим-билд, запустил побегал -- правильно всё работает вроде как.
Немного странные ощущения от очень далеко разведённых стиков и триггеров, ну да я не играю на стимдеке, может оно и нормально так...
Не очень понятно за какую такую совместимость борются адепты зелёной галочки, по-мойму любая игра с нормальной поддержкой геймпада сразу работает хорошо.
Отдельный смех сквозь слёзы по девелоперским приблудам валвы. Показал бы им кто-нить хотя бы Target Manager сони/нинтенды, а то ж так и будут ещё лет 10 изобретать свои кривые велосипеды...
Гуй - вещь традиционно занудная, но если оно совсем криво/косо выглядит - это как-то неправильно.
Сайфайно-прямоугольчатый стиль в-основном из экономии :)
Хотя оно в целом подходит по стилю/сеттингу игры.
Нотебук кажется игрушечным, но там был полноценный 2х-ядерный проц и достаточно памяти чтобы работать в 3д-максе. Приличную часть движка на виту прямо на этом карманном нотебуке я и написал в далёком 2011-2012м.
Мышка VAIO была уникальная -- работала просто по bluetooth (без дополнительных затычек) и никогда не теряла связь, и даже могла разбудить компутер.
