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

MasterModeley

Пользователь
  • Публикации

    15
  • Зарегистрирован

  • Посещение

Репутация

11 Нуп

Контакты

  • Сервер WoT
    RU / CIS

Посетители профиля

836 просмотров профиля
  1. Распаковка клиента Armored Warfare

    Подводем итоги проведённым изысканиям. Рассмотрим подробно принципы формирования новых текстур на примере шасси Сфинкса. Материал определён в файле "\Objects\vehicles\afv\sphinx\sphinx_hull.mtl" и имеет вот такой вид: Перебирая "Item" в "Layers" мы можем получим набор цветов, соответствующих "LayerKey". Для этого надо исследовать файл материалов, определённый в "Material". Например, для "RubberRaw" это будет файл "/materials/at_materials/rubberraw_01.mtl": Здесь нас интересует атрибут "Diffuse", мы и будем использовать. В нашем случае это чёрная резина с цветом #050505. Составив таблицу цветов, займёмся файлом "/objects/vehicles/afv/sphinx/textures/new/wheels/id.xml" в котором описаны материалы и их слои: Мы видим три материала из 4-5 слоёв. По идее, вместо вычисленных выше цветов можно просто использовать текстуры, определённые в этом файле. Но найти их мне не удалось. "BaseLayer" определяет цвет основы, на которую наносятся остальные слои. Интенсивность первого первого слоя определяется R каналом в файле "/objects/vehicles/afv/sphinx/textures/new/wheels/w.dds", интенсивность второго, третьего и четвёртого слоёв каналами G, B и A соответственно. Файл "/objects/vehicles/afv/sphinx/textures/new/wheels/id.dds" в красном канале содержит карту применения того или иного материала. В нашем случае пикселы с R == 1 соответствуют материалу с <Palette id="1"> и т.д. В результате, алгоритм расчёта пикселя тестуры выглядит следующим образом: 1) выбираем пиксель из w.dds и раскладываем на каналы как R, G, B, A 2) выбираем соответствующий пиксель из id.dds и выбираем R канал как M 3) если M == 0 - пиксель не используется 4) выбираем Palette с id == M как P 5) выбираем цвет как СOLOR из таблицы цветов для P[BaseLayer] 6) для каждого слоя P[Layer] выбираем соответствующие цвета из таблицы цветов как cl и смешиваем с СOLOR используя (R, G, B, A): COLOR = blend( COLOR, cl, {R, G, B, A} ) 7) закрашиваем пиксель текстуры цветом COLOR
  2. Распаковка клиента Armored Warfare

    Нет. Это зоны применения того или иного материала/шейдера. Причем "синий" шейдер для колёс это не то же самое, что и "синий" для корпуса или башни. Но ваша теория очень интересная. Попробую проверить её.
  3. Распаковка клиента Armored Warfare

    Я рендерю у себя на сайте. Там нет такой возможности. Либо неправильно читаю UV из сgf. Надо будет еще со смешением цветов поэкспериментировать. Пока результат мне не очень нравится.
  4. Распаковка клиента Armored Warfare

    Вот что получается в итоге. Текстурные координаты орудия и маски куда-то не туда наложились.
  5. Распаковка клиента Armored Warfare

    @Brian19881026 Sorry, I do not speak English and misunderstood you. Try this batch file. @echo off setlocal enableextensions enabledelayedexpansion for /r "root_folder" %%i in ("*.dds.0") do ( echo %%i DDSUnsplit.exe %%i ) endlocal exit /b 0 Do not forget to specify the root_folder На данный момент предполагаю, что id.xml содержит описание многослойных материалов в виде <Palette id="3"> индекс в файле id.dds <Layer name="Dirt.tga" /> 1 слой R канал в w.dds <Layer name="BasePaint.tga" /> 2 слой G канал в w.dds <Layer name="Scratch.tga" /> 3 слой B канал в w.dds <Layer name="BlackMask.tga" /> 4 слой A канал в w.dds <BaseLayer name="base_00FF00" /> </Palette> id.dds содержит карту применения соответствующих материалов из id.xml w.dds содержит карты интенсивности соответствующих слоёв Кажется, царапины могут лежать в разных каналах даже для одной текстуры, в зависимости от порядка слоёв в id.xml Сфинкс раскрашен по приведённому принципу. Чёрный - RubberRaw, красный - Dirt, синий - Scratch.
  6. Распаковка клиента Armored Warfare

    Предполагаю, что: ao_d.dds содержит в альфа-канале карту прозрачности, в красном канале - карту ambient occlusion, в синем канале - маску для камуфляжа, зелёный не используется(?); id.dds содержит в красном канале восьмислойную маску материала. Сами материалы описаны в .mtl файле id.xml. В начальных 32 пикселях содержится какая-то информация, разобраться пока не удалось. До w.dds пока не добрался. Французский Сфинкс, раскрашенный согласно id.dds. Цвета схематичные. https://p3dm.ru/soft/resource-extractors/9316-unsplitalldds.html Syntax: DDSUnsplit <first dds chunk> [output filename]
  7. Всем привет. Можно мне присоединиться к вашему шабашу? В секции BWLC цвета источников света заданы в формате RGBA. То, что у вас обозвано "float - ? (always equal 1.0) " (четвёртая страница темы) это альфа-компонента и формат поля должен быть "4x float - colour ".
  8. Распаковка клиента Armored Warfare

    Там же в cga файлах есть координаты мест, куда и что прикрепляется. Надо только соотнести названия точек крепежа с именами файлов.
  9. Распаковка клиента Armored Warfare

    Про текстуры: 1. Берём любой понравившийся цвет (например, #435748 который, вероятно, используется игрой) 2. Берём КРАСНЫЙ канал из _d Diffuse в виде альфа маски 3. Смешиваем _dm SubSurface и выбранный цвет через вышеуказанную маску 4. Накладываем на полученную текстуру _sm Decal, используя его альфа канал как маску. 5. Профит! P.S. Альфа канал _d Diffuse надо сделать альфа каналом всей текстуры. Если он есть.
  10. Распаковка клиента Armored Warfare

    Это не обычные ogg файлы. Либо они сжаты/зашифрованы.
  11. Распаковка клиента Armored Warfare

    Да, драйвера только под 32 битные Винды. Я специально завёл виртуалку, потому что у меня рабочая машина тоже 64 битная. Причём под VirtualBox игра не запускается, а на VMWare работает нормально. Драйвер стартует, но ничего не перехватывает.
  12. Распаковка клиента Armored Warfare

    У меня драйвер успешно стартует
  13. Распаковка клиента Armored Warfare

    Игра под эмулятором XP не запускается. В системных требованиях написано, что под XP она вообще не работает. У меня сложилось мнение, что AW использует несколько иной метод работы с контейнером SFFS Пробовал под 32 битной Windows 7 в VMWare. Драйвера грузились и запускались успешно, по крайней мере KmdManager говорил "success", без жалоб на неподписанность и прочее. Запускал с правами админа.
  14. Распаковка клиента Armored Warfare

    Не достал. Вообще никакого эффекта, запускал KmdManager.exe, загружал и запускал драйвера (пробовал оба), затем Dbgview.exe и игру. Ловило только сообщение об ошибке прокси. И всё. Ни тебе AppKey ни имён файлов.
  15. Распаковка клиента Armored Warfare

    Сотню танков собирать вручную тяжеловато будет. Попробовал воспользоваться SFFS Unpacker, то ли что неправильно делаю, то ли ещё что, но не получилось.
×