Lex Darlog

+134
с 2019
5 подписчиков
4 подписки

Устройство софта побуждает пользователя к определённым привычкам. Так, легендарное стремление максистов всё делать через булианы - притча во языцех. А потом они приходят из своего архивиза в геймдев - и делают большие круглые глаза, не понимая, "а чо не так-то".

Так и тут. Я не пользуюсь блендером сам. Слышал, что вроде как там хороший моделлинг. Уж точно лучше, чем в майе, даже с новыми тулсетами. Вроде, даже лучше, чем в максе. Но я также слышал, что этот пакет - очень специфический, и в нём нет массы вещей, стандартных для всей остальной индустрии. Такие вот making-of'ы - отличный анти-шоукейз. Потому как - неясно: это у моделлера руки кривоваты (или же просто маловато опыта, а ТА не дал за такое по шапке), либо же - это в принципе типовой результат на выходе из блендера. Для мувиков - на это насрать. Но вот для геймдева - это явный минус.

Потому я и написал, что не знаю, но выглядит это - в любом случае, отталкивающе. В Майе всё дефолтное для работы с уви - тоже беспросветный мрак. Но это ж никто и не использует. Все поголовно используют либо UVLayout, либо - RizomUV.

У меня - животрепещущий вопрос: во всей игре - такая феноменальная™ запатентованная© шикарная® UV-развёртка с не менее потрясающей топологией, или это один такой экземпляр?


Минимизация швов? Реюз текстур? Оптимизация эдж-лупов? Да хотя бы - банально, ровная топология? (у основания ручки - вообще шик!)
Не, не слышали?

А потом - удивляемся, чо это у нас нынче колды по 100+ Гб весят.

Не знаю, как там у вас в блендерах, но в майе разворачивать пропсы без UVLayout (headus) или RizomUV (сам не пользовался) - себя не уважать. И если в блендере даже с плагинами такой результат - то либо моделлеру надо бы основательно так вкурить матчасть, либо - отличная анти-реклама блендера.

По играм юбиков разве не видно, что основной столп их корпоративной культуры - "а пох*й"?
Когда такой подход насквозь пронизывает разработку - ничего удивительного в сливах на сотни гигабайт. Ну и - да - если у тебя на удалёнке трудятся сотни рабов из менее благополучных стран, которых всех надо так или иначе подключать к пайплайну - суммарный траффик у компании будет такой, что и Тб на его фоне легко затеряется.

11

а откуда качать-то?
После того, что они там наворотили с русской локализацией - чисто из принципа хочется поднасрать.

Да с нынешними ценами на винты - не такая уж это и проблема. У меня дома стоят 1Тб + 3Тб. Купил, чтоб просто бэкапить данные.

1

А ты видел сорцы билда, или оцениваешь инструментарий по финальному продукту? Даже не так: по тизеру финального продукта.

Если сам прогер - то уж распарсить csv-шку (которая под это и создана) - вообще как два пальца. Если нет - то наверняка есть готовые тулы.
И куда проще - не самому разбираться с форматом всяких obj/fbx, а просто внутри какой-нибудь Майи/Гудини - прочитать csv-шку питоном и просто по одной точке построить меш самому, пользуясь уже теми командами, которые дают Майя/Гудя.
Таким образом затянуть геометрию в сцену редактора, а уже оттуда выгрузить в любой нужный формат стандартными средствами - куда как легче, чем изобретать собственный писальщик в стандартный формат файлов.

Алексей Полепчук, действительно, может, не будем понты гнуть? Хорош кидаться buzzword'ами, которые, как тебе кажется, должны произвести впечатление матёрого девелопера. Человек, который не знает, но интересуется, создаёт куда более приятное впечатление, чем тот, кто не знает, но делает вид, будто знает.

По пунктам:
1. при чём тут user generated content и формат исходников проекта? Тебе вообще понятна разница между сорцом и ассетом; ассетом в проекте и им же - в билде?

2. Каким образом участие или неучастие в ААА само по себе характеризует скилл в конкретной специальности? Что вообще эта претензия должна была значить? Сервер, что ли, прогается принципиально по-разному для какой-нить бездушной браузерки и условного ААА-онлайн проекта? Контент делается фундаментально по-другому? Для освоения мощностей ПК нужно какое-то особое мастерство, которое негде применить с немощным видеочипом телефона? Или, быть может, все разработчики проходят экспертизу какого-то Всевидящего Ока, которое всех Элитных представителей геймдева по разнарядке отправляет в ААА, а всех не-элитных - в мобилки?

3. Видеокарта не понимает джипег. Ну вот просто не понимает - и точка. Твоя "загруженная из сети" текстура всё равно должна быть преобразована в понятный устройству формат. dds, etc, pvrtc - знакомые названия? Либо - текстуру для отрисовки придётся распаковать в вообще несжатый truecolor адского веса... что, по сути, тоже есть преобразование в "понятный видюхе формат", но при этом беспощадно разбазаривая видеопамять. Жопеги, без конвертации - могут быть отрисованы только таким образом.
Если ты имел в виду стримминг текстур прям из сети - то:
а) именно в качестве стримминга (а не пред-загрузки бандлом) и именно из сети (а не с жётского диска) - это очень плохая идея.
б) даже если стримятся - они всё равно сжаты в формат целевой платформы. А зачастую - ещё и перепакованы в какой-нить индексированный архив для быстрого доступа.

4. Есть такая концепция, как non-destructive editing. По-хорошему, она предполагает linear workflow (вся обработка производится строго в линейном цветовом пространстве) в 16/32-битном float'е. Но этого даже фотошоп не умеет. Поэтому как самый минимум - мы хотя бы не поганим 8-битное изображение сжатием при каждом пересохранении. Исходник храним в psd, слоями. А в игру - выкидываем png, чтоб максимально снизить число рекомпрессий с потерями - до одной-единственной, в самом конце, в формат видеокарты.

Поправка: (нужно) в форматах со сжатием, но без потерь (lossless). То есть - да, PNG.
Если нужно 16/32-битные (на канал) тру-float данные и ты/студия в состоянии придумать свой энкодер, чтоб запихать текстуры в форматы, понятные видюхе - то EXR.
За жопеги, сданные в проект - художников бьют по рукам молотком.
Юнити (как, полагаю, и унрыл) - в любом случае пережимает текстуры под формат целевой платформы (который у каждой платформы - свой). Так что сдавать, а, тем более, править текстуры в жопеге - верный способ засрать качество просто на ровном месте.

1

Сам тоже на d9vk вышел. Поколупался с ним. Завёл на винде. Поколупаться пришлось знатно - но только из-за того, что проклятая нвидия опять чо-то незаметно поломала у себя в дровах (на сей раз - в вулканских).
Про плагины - хз, но у него ж есть апи для питона: зачем какие-то плагины? В самом дебаггере - есть все атрибуты меша (позиция/тангенс/нормаль/увихи), которые можно просто по ПКМ сохранить в CSV-файл. А через апи это можно сделать пакетно для всех нужных мешей. Уже CSV-файл - можно чем угодно распарсить и во что угодно выгрузить. Я, вот, намеревался питоном же строить меш в Гудине (там это очень просто) и уже там его чистить.

Одна загвоздка: после нескольких часов колупаний - я так и не смог найти то место, в которое шейдеру приходят матрицы трансформаций для каждого объекта. Там в констант-регистрах - какой-то прям лютый адок: прилетает 256 непонятных float-значений в виде массива - и ломай голову, как хочешь. Учитывая, что shader disassembly там очень такой себе - может реально проще оказаться восстанавливать эти матрицы самому, через позиции вертексов в исходном меше и в clip-space.