Перейти к содержимому


Фотография
- - - - -

Настройка персонажа а Oblivion, как в Skyrim

oblivion тон кожи текстуры тел egt шейный шов редактор персонажа oblivion racemenu oblivion

  • Авторизуйтесь для ответа в теме

#1 Ссылка на это сообщение christianluger

christianluger
  • Скиталец
  • 36 сообщений

Отправлено

Здравствуйте уважаемые фанатики прекрасного мира TES. А в частности его 4 части.

Впервые за почти 5 лет с начала погружения в утопичный мир моддинга TES, я понял, что без Вашей помощи мне не обойтись. Все эти годы я кропотливо и в одиночку строил Скайрим - игру мечты, а теперь решил открыть для себя и Обливион тоже.

 

ВАЖНО: Тема, которую я намерен затронуть была крайне мало разобрана на просторах форумов, поэтому этот пост не потеряет своей актуальности.

Прошу Вашей помощи в непростой и запутанной области моддинга внешноего вида нпс.
Если вы знаете что либо об этом, имеете опыт в создании или настройке текстур, исследовали зарубежные дискуссии данного вопроса, слышали слухи, будьте добры, поделитесь со мной.

 

Очень коротко о том, что я рассчитываю свершить в оригинальной игре Обливион: создать меню настройки персонажа в racemenu в точности такое же, каким мы его видим в ванильном скайриме.

А именно
1) Каждая раса должна иметь единственный цвет кожи. Данмер - синие оттенки, орк - зеленые, редгард цвета афро, и т.д. Двигая ползунок яркости, мы хотим получить лишь более светлую или более темную кожу, но никак не другой цвет. Заставить игру обрабатывать исконный расовый цвет и накладывать поверх определенную текстуру.
2) Сравнять цвет, тональность и яркость лиц и тел каждой расы, что бы шейный шов визуально отсутствовал при любом угле обзора и времени игровых суток.
3) Исследовать, понять и гармонично использовать странный формат EGT если это возможно, или избавиться от него навсегда.
4) Комплект текстур с припиской чисел от 10 до 60 (шрамы, морщины, веснушки) должны накладываться поверх лица по такому же принципу, как это было в скайриме. Никаким образом не влияя на общий цвет и тон.
5) Внедрение нового механизма накладывания текстур макияжа, т.е подкрашивание отдельных частей лица, если это возможно. Или найти иной способ реализации этого.
6) Так как в игре отсутствует возможность изменять вес\массу нпс, ползунок регулировки комплекции либо не нужен вовсе, либо должен влиять только на форму лица.
7) При перемещении ползунков отдельных частей лица, должны меняться непосредственно те части, которые нам нужны. Ползунки не должны гулять туда сюда искривляя вообще все вокруг. (Этого пункта в данной теме пока касаться не будем)

 

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

Касательно того, что известно на данный момент.
Итак.
- Нет изначального заданного цвета тел персонажей как в скайриме. Игра сама регулирует этот параметр в зависимости от текстуры, которую использует модель. Например, если каждиту дать коричневую текстуру, она будет подкрашена зеленым, а если бесцветную (черно-белую) - то фиолетовым.
- Если текстура головы и тела различны по цвету, игра сама пытается найти общий баланс тональности между ними. Неудачно.
- Шейный шов излечить невозможно ни одинаковыми текстурами, ни мешами.
- Цвет и яркость меняется не только своим ползунком, но и при регулировке комплекции. Почему - загадка.
- Текстуры возрастных изменений и шрамов тоже влияют на цвет и тон, хотя не должны делать этого.
- В файле EGT, который почему то всегда идет в связке с nif моделью, хранится еще один комплект текстур, которые игра использует по своему усмотрению. На просторах интернета я нашел единственный плагин, который позволяет распаковывать этот файл - egt packer от пользователя scanti. Но к сожалению скачать его и проверить на 2019 год больше негде.
- При манипуляции и скрещивании текстур с разных сборок с нексуса, можно видеть эффект то в лучшую, то в худшую сторону. А это значит, что и egt тоже кто то пытался с переменным успехом править. А значит причина всех глюков не может быть только в egt, иначе это было бы уже исправлено.
- Есть способ вылечить почти все проблемы описанные выше, путем отключения пункта bFaceGenTexturing в ini файле обливиона. Однако если это сделать, пропадет возможность регулировать цвет как таковая, и все нпс одной расы станут выглядеть одинаково. Не решение.
- Плагин Blockhead позволяет назначить отдельные текстуры \ модели для конкретного нпс \ расы и так далее. Можно использовать как доп инструмент.

Что упустил, будет добавляться в теме.

 

А теперь вопросы к вам, уважаемые мододелы:
По какому приципу движок распоряжается текстурами и их цветами, накладывает и комбинирует их? Что именно внутри файла egt? Почему при всех одинаковых текстурах мы имеем шейные швы и игру цветов тела и головы? Что именно отключает параметр bFaceGenTexturing в ini файле? Почему за столько лет до сих пор лучшее, что мы имеем - это посредственный OCOv2 ? Неужели интерес к этой замечательной части мира TES настолько пропал у модостроителей?

 

Сразу оговорюсь, советы типа "скачай подборку и не парься", "носи одежду с высоким воротником на гг", "поизвращайся с ползунками и получи более менее сносный вариант", "играй в 76 фоллыч" - НЕ ОБСУЖДАЮТСЯ.
Эта тема создана для более высоких и труднодостижимых идей и компромиссов я не ищу. Если воплотить мои 7 пунктов невозможно, значит буду искать хитрости и лазейки. Ковырять движок, насиловать obse, скрипты..

Жду Ваших идей и пожеланий.

 

p.s. Make Oblivion great  ̶a̶g̶a̶i̶n̶  !




  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#2 Ссылка на это сообщение piramis

piramis
  • Талант
  • 230 сообщений
  •    

Отправлено

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

 

Для экспериментаторства можно попробовать мод :

 

LuchairesHGECBodySeamReducer , там как раз три egt модели и он полностью исправляет дефекты HGEC- шов на шее, на левом запястье (его причина, скорее всего в зеркальном отражении единой текстуры руки) и в швах на спине и по левой ноге. Но это исправило только имперцев,босмеров,и, кажется у редгардов исчезли проблемы.Однако стал жутким внешний вид данмеров, а у альтмеров пропал желтоватый оттенок кожи. Ну это проще глянуть самостоятельно, сложнее понять, как работает.

 

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

 

http://tesall.ru/fil...y-seam-reducer/


Сообщение отредактировал piramis: 22 октября 2019 - 19:10


#3 Ссылка на это сообщение christianluger

christianluger
  • Скиталец
  • 36 сообщений

Отправлено

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

 

Для экспериментаторства можно попробовать мод :

 

LuchairesHGECBodySeamReducer , там как раз три egt модели и он полностью исправляет дефекты HGEC- шов на шее, на левом запястье (его причина, скорее всего в зеркальном отражении единой текстуры руки) и в швах на спине и по левой ноге. Но это исправило только имперцев,босмеров,и, кажется у редгардов исчезли проблемы.Однако стал жутким внешний вид данмеров, а у альтмеров пропал желтоватый оттенок кожи. Ну это проще глянуть самостоятельно, сложнее понять, как работает.

 

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

 

http://tesall.ru/fil...y-seam-reducer/

Спасибо, попробую Luchaires, посмотрим что даст он.

 

Дело в том, что все эти ухищрения дают пользу всегда лишь локально, убирая симптомы. Да, можно поиграть текстурами и получить неплохой результат для конкретного положения ползунков цвета и комплекции. Но стоит их потрогать потом, и текстуры все равно равно играют всеми цветами радуги. А это значит, что половина нпс в игре будут ходить норм, а половина как после хлорного поражения, ведь ЭТИ настройки у всех разные. Не вижу смысла "лечить справа, а слева вредить". Тут нужно менять систему.

Конечно можно всех одеть в комбинезоны и не видеть мелких огрехов, но это то же самое что дома прибираясь закинуть мусор под кровать. Смотря как относиться, конечно.

 

Больше всего поражает то, что никто до сих пор не решил эту проблему. Видимо устраивает народ цеплять на шеи чокеры шоб не видно было, и кроме гг, в других нпс не всматриваться....


Сообщение отредактировал christianluger: 22 октября 2019 - 21:33


#4 Ссылка на это сообщение christianluger

christianluger
  • Скиталец
  • 36 сообщений

Отправлено

Обновление № 1
Путем экспериментов и опытов, выяснилось следущее:
В EGT файле, который прилагается к каждой NIF модели, хранится 50 текстур. БОльшая часть из них - это разноцветные области разных частей лица на черном фоне. Это те самые участки, которые мы регулируем в игре для подкраски губ, щек и т.д. Грубо говоря макияж. При сдвигах ползунков цвета губ и щек в игре, мы наблюдаем смену одной текстурки из egt архива, на следующую и далее.
Из за того, что эти текстуры цветные, мы наблюдаем в редакторе радугу на лице. Одновременно игра самовольно меняет и яркость вообще всего, но сейчас не об этом. Можно их обесцветить, но тогда мы не сможем накладывать на лица мэйкап вообще.
В скайриме эта схема выглядела иначе, там текстуры tintmarks черно-белые, они не связаны с палитрой. Они лишь "выделяют" какую то область на лице, которая уже отдельно окрашивалась неким цветом без участия каких либо добавочных текстур.
Разумеется, egt архивы ТЕЛ не имеют таких же узоров, там ЭТИ текстуры просто черные.
Но я сказал бОльшая часть, потому что еще внутри есть еще и просто одноцветные полотна текстурок. Зеленая, розовая, желтая и синяя. Именно они "смешиваются" с footfemale.dds текстурой каждой расы. Это объясняет, почему я сделал каждита черно-белым, а в игре он фиолетовый и зеленый. Обесцветив их (в egt лица и egt тела), мы избавляемся от рандомного колера нашего нпс. При этом регулировка "светлее-темнее" - работает.

Кстати, egt взятая из OCOv2, внутри мало чем отличается от ванильной. Поэтому идеала там быть просто не может.

 

Итог:
Настроив egt таким образом, мы получаем кожу цвета нашей footfemale.dds и headhuman_f.dds текстуры (как и должно быть), при этом можем делать ее и светлее и темнее. Но глючная регулировка мэйкапа продолжает отравлять нам жизнь. По сути, egt не нужен игре вообще, это архаизм. Тупо запаковать туда 50 черных картинок (тогда игра не будет вылетать) и забыть.
Значит, необходимо нарисовать отдельные текстуры tintmarks как скуриме, а потом найти способ заставить игру видеть и накладывать их. Но каким образом движок станет окрашивать эти самые области цветами, я без понятия. Метод надо взять из скайрима. 

Вероятно здесь нужно выстроить особый скрипт на платформе obse, но в этом я полный нуль. 
Решив обе задачи, мы получим возможность точно и конкретно настраивать персонажа и редакторе, а шейного шва больше не будет. И тогда наш обливион сделает огромный скачок вперед в развитии.

 

Буду думать.


Сообщение отредактировал christianluger: 23 октября 2019 - 06:11


#5 Ссылка на это сообщение christianluger

christianluger
  • Скиталец
  • 36 сообщений

Отправлено

Обновление № 2
Коротко скажу так:
За колоссальный разрыв скайрима с обливионом в плане внешнего вида персонажей (в пользу скайрима), целиком и полностью ответственны те люди, кто придумал запихнуть сложноредактируемые и трудночитаемые текстуры окраски и расовых особенностей лиц в egt архивы, которые даже расположены не в традиционном месте с основными текстурами, а в связке с nif моделями (!). До безумия идиотское и неоправданное решение.

 

Уточняю для тех, кто не читал посты выше.

В правильном скайриме и основная, и все дополнительные текстуры, которые влияют на каждый участок лица, расположены в своих отдельных папках. Они не мешают друг другу, могут быть легко отредактированы, заменены, перемещены в любое место и накладываются на модель независимо друг от друга в порядке сендвича. Мы можем поменять трафарет подводки глаз, боевой рисунок, текстуру кожи, и получить любой творческий результат, который задумали.
В обливионе же, эта схема в целом такая же, но с тем исключением, что в egt архиве хранится половина всех важных текстур, в формате tga. Если мы хотим что то отредактировать, - необходимо извлекать их все и после манипуляций паковать обратно. Причем, нормально ли оно станет читаться игрой впоследствии - непредсказуемо. Размер этих текстур 256х256, при общем весе архива 9мб. Если сменить их разрешение на более качественное 512, то egt сразу раздуется до 60мб, потому что все текстуры в архиве должны быть строго одного размера и формата, причем БЕЗ сжатия. Fps проседает значительно, даже на одном нпс. Не говоря уже о 1024 и более..

 

Я пытался осуществить два варианта:

1) Радикальный.

Найти способ заставить игру искать каждую из текстур в отдельных путях (как в скайриме) и отказаться от egt. Советуясь с опытными скриптостроителями я выяснил, что с имеющимся набором скриптовых команд невозможно создать новые пути. Даже сделать копии тех, что есть уже - невозможно. (Была мысль просто продублировать базовую строку выбора текстуры в constructor set, которую назначаем на модель головы или части тел)
Даже с obse, таких возможностей просто нет.
Решить эту задачу можно только одним способом - достучаться до крутых ребят, которые создали skse и obse, и упросить их создать то, в чем мы конкретно нуждаемся. Построить некий dll файл. Или если кто-нибудь, читающий этот пост обладает знаниями в создании и внедрении dll файлов в игру, - пожалуйста, откликнитесь.

 

2) Реалистичный.

Несколько дней я пробовал и испытывал то, что есть сейчас. Анализировал и сравнивал что конкретно за что отвечает в egt архиве. Вечным методом "а что, если?".
Я пошел в этом направлении, временно оставив идею с поиском профессионалов для варианта №1. И есть первые неплохие результаты.

 

Мне УДАЛОСЬ добиться того, что мой редгард имеет только один цвет своей кожи - кофейный. Так же, слушается ползунка яркости - от цвета загорелого негра, до мулата с примесью европейской крови. Никаких других цветов из палитры, двигая любые ползунки оттенков, - получить больше нельзя.
Тело, уши, руки, ступни и голова регулируются синхронно. Это стало возможным, с помощью blockhead, который позволяет назначить каждой расе свое собственное тело.
Что бы задать то же самое другим человеческим расам, - достаточно просто изменить цвет или яркость ОСНОВНОЙ текстуры в папке textures, а злощастный egt остается одинаков для всех.
Шейный шов пока все еще заметен, но теперь избавиться от него труда не составит.
Некрасивая ванильная подкраска глаз, губ и прочего работает как раньше, и ни с чем другим не взаимодействует. Да, выглядит она все еще отстало, но только потому что я еще не включал фотошоп.

 

Итак, первые успехи есть.
НО!!! Есть маленькая проблемка, с которой я прошу вас мне помочь. К сожалению, я не эксперт в работе с графическими редакторами. У меня есть почти черная текстура размером 256х256 без альфа канала, в формате tga. Когда я пихаю ее в игру, она похоже растягивается по лицу персонажа (потому что основная текстура 1024, а эта 256) и дает очень неприятный "сеточый" узор по всей площади.

Вопрос: Как отформатировать, отрегулировать кол-во цветов, задать битность, или что то другое с этой картинкой, что бы в игре она не давала такие артефакты? Что я делаю не так?. Пробовал прогнать через png, да и много чего другого.
Очень жду ваших советов.

 

Цель уже близка.






Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых