Rw analyze для gta sa как пользоваться
Итак, вы захотели посмотреть модель в Максе, отредактировать для себя, изменить геометрию, но модель защищена. Защиту на модель ставят модмейкеры для предотвращения несанкционированного доступа к ней в редакторе (т.е. для просмотра только в игре). Но, как известно, на любую защиту найдется костыль, и нашел я его сам. Не могу гарантировать качественный результат в процессе снятия такой защиты, но должно получиться. Итак, нам понадобится только одна программа - RW Analyze.
Откройте ее и загрузите в нее модель, которая защищена. В окне просмотра вы увидите секции 3D модели - в GTA модели разделены на секции, которые хранят информацию о полигонах и вершинах, текстуры, коллизию (если она внутри модели), а также хелперы - если откроете машину, то обнаружите десяток-другой хелперов типа vlo_chassis, chassis, talllights, bonnet_dummy, и т.п.
Когда вы ставите в программе галочку "Lock DFF file", программа добавляет в файл в самый конец дополнительную секцию, которая описывает защиту модели. Что ZModeler, что 3DS Max, (я тестировал на скриптах Kam'а) добавляют секцию ZModeler Lock. Внутри ее практически ничего нет. Вот как должна выглядеть защищенная модель в RW Analyze (ненужные секции свернуты для экономии места):
А вот что получилось после удаления секции ZModeler Lock:
Да, тот самый чайник, что я моделировал. Остается только наложить текстуры. Вот и весь учебник по снятию защиты с dff файла, надеюсь, он вам помог.
RW Analyze
RW Analyze можно использовать для получения детальной визуализации и анализа содержания бинарных файлов RenderWare. Потоковые двоичные файлы RenderWare (например, .rws, .anm, .bsp, .dff, .dma или .txd) представляют из себя иерархически структурированные бинарные файлы с данными, используемые графическим движком RenderWare 3.x. RWA позволяет просматривать эти файлы, в том числе содержание отдельных компонентов и иерархическую структуру потока. Кроме того, инструмент предоставляет различные возможности для модификации этих файлов.
Rw analyze для gta sa как пользоваться
DFF (Dive File Format) — формат файлов движка RenderWare 3.x, использующийся в GTA 3, GTA VC, GTA SA, Manhunt и Bully для хранения трёхмерных моделей. Является кроссплатформенным.
DFF был разработан Criterion Games для RenderWare 3.0. После версии 3.2 развитие формата было остановлено, а расширения DFF осуществлялись только самими разработчиками игр с помощью плагинов. Несмотря на то, что в RenderWare 3.5 на смену устаревшего DFF был добавлен новый формат - RWS, в Rockstar North продолжали использовать DFF в GTA: San Andreas.
Структура
Основной секцией бинарного потока DFF является Clump - объект рендеринга. Clump разделяется на секции:
- Frame - "скелет" модели и его положение в пространстве;
- Atomic - подчинённые узлам "скелета" составные части модели;
- GeometryList - (в DFF с версии 3.0.0.2) для поддержки скининга туда вынесена вся геометрия из секции Atomic;
- Light - (в DFF с версии 3.2.0.4) позиция и настройки источника освещения модели;
- Camera - (в DFF с версии 3.2.0.4) позиция и настройки для просмотра модели;
Каждая секция бинарного потока имеет универсальный заголовок, по которому происходит идентификация:
Идентификатор секции определяет, как данные должны быть обработаны. Список таких идентификаторов, определяющих иерархию компонентов DFF:
Полный список идентификаторов можно найти в этой статье.
По имени секции можно догадаться, что в ней хранится (например, rwDATA, что находится в rwGEOMETRY, содержит все вершины и нормали трёхмерных объектов, а rwDATA из секции rwGEOMETRYLIST содержит число и имена геометрических объектов).
Версии DFF
В заголовке секции можно найти закодированный номер SDK-версии RenderWare, под которую собран DFF-файл:
Начиная с RenderWare 3.1, был добавлен номер версии бинарного потока, по которому и стоит различать DFF при чтении (сама версия SDK тут уже особой роли не играет), тот же самый номер (всегда 0) присутствует и в версиях до 3.2, сохраняя совместимость (т.к. это место было зарезервировано).
Обработкой версии занимается функция RwEngineGetCurrentVersion. Значение версии разбивается на 3 числа:
- новая версия SDK (байт), значение которой делиться на 4 и к результату плюсуется 0х300 (максимальная версия = 3.9.5)
- версия бинарного потока (байт), для GTA самая старая - 0, самая последняя - 5 для Android-ов
- старая версия SDK (два байта), значение просто разбивается на 4 4-х битных числа, из которых первое отбрасывается (максимальная версия = 3.15.15)
Если значение старой версии = -1, то истинной считается новая версия SDK (исключая RenderWare 3.7, не поддерживающую форматы старой версии DFF).
Содержимое DFF
Секция Clump
Секция Frame List
Frame List → Struct
Frame List → Extension → R* Frame [количество фреймов]
Секция Geometry List
Geometry List → Struct
Секция Geometry
Подсекция Bin Mesh PLG (или Material Split)
Количество разделений материала задаёт размер массива, который управляет структурой нижнего уровня. Структура элементов массива (TMaterialSplitData) соединяет индекс разделения материала с точками геометрии:
Подсекция Native Data PLG
Format - определяет формат геометрии.
Флаги - значения, определяющие содержимое секции геометрии. Раскладываются на логические значения путём деления на 2 и проверки остатка (либо можно просто проверять каждый бит). Значения в итерациях:
Создание и редактирование 2dfx для .dff моделей
2dfx это секция файла модели .dff в GTA:SA. Эта секция позволяет крепить специальные эффекты к модели. В San Andreas существует 10 типов 2dfx эффектов. Один из них можно добавить только через .ide файлы (это тип 2dfx - мебель(futnitur)), так что добавлять её в dff нет смысла - она просто не будет работать.
2dfx секция в RwAnalyze
Мы можем найти эту секцию (если она существует) в секции Clump->Geometry List->Geometry->Extension.
Можно извлечь/вставить эту секцию, нажав ПКМ и выбрав нужное действие.
После извлечения секции, у созданного файла не будет расширения. Добавьте расширение ".2dfx" к имени файла, чтобы позже использовать его в 2dfx tool.
Эта программа очень проста. Она создаёт текстовый файл (.txt) на основе файла .2dfx, и файл .2dfx - на основе текстового файла.
Итак, если нам нужно изменить оригинальную 2dfx секцию, нам нужно выполнить следующие шаги:
1) извлечь оригинальную секцию в файл, добавить расширение ".2dfx" к имени файла;
2) поместить файл .2dfx в папку "2dfx";
3) запустить программу SA2dfx.exe;
4) открыть созданный текстовый файл (.txt)(он будет создан в этой же папке ("2dfx")) и изменить его;
5) поместить изменённый текстовый файл (.txt) в папку "txt";
6) запустить программу SA2dfx.exe;
7) Полученный файл .2dfx из папки "txt" добавить в dff с помощью RwAnalyze.
Структура файла
Заголовок текстового файла содержит кол-во 2dfx эффектов в секции.
После этого следует описание эффектов.
Описание каждого типа эффектов имеет свой формат, но все они начинаются с этого:
Где "LIGHT" это тип эффекта.
Доступны следующие типы эффектов:
После того, как программа узнает тип эффекта, она выберет нужный формат для чтения информации об эффекте.
Этот тип используется для создания источника света. Такой свет состоит из:
1) короны (2d спрайт);
2) тени (проекция на земле);
3) динамического света (базируется на стандартном освещении графического движка, вершинное освещение для динамических объектов - автомобилей, пешеходов, объектов).
Формат этой секции:
CoronaShowMode
Этот параметр устанавливает дополнительный тип для источника света.
Это известные, именованные типы. Также существуют неименованные типы, назначение которых пока что неизвестно (используйте номера 1,3,4,5,6,9,11,12,13 вместо названия типа).
Использование флагов
Если нужно использовать несколько флагов, их надо разделить запятой (","). Если не нужно использовать ни одного из флагов, ставится знак "-".
Например, такая запись
обеспечит круглосуточную работу источника света.
Привлекает пешехода и заставляет его выполнять определённые действия.
Доступные типы поведения:
Создаёт блик солнца на модели (в виде короны).
SLOTMACHINEWHEEL
Колесо игрового автомата
Назначение этой секции полностью не раскрыто. Предполагается, что это точки навигации для пешеходов.
Основные данные
Все трёхмерные модели в играх на движке RenderWare закодированы в виде иерархически структурированных бинарных потоков. Бинарные потоки разделяются по принципу использования - на динамические (имеют расширение *.dff) и статические (*.bsp). В GTA специфика открытого мира предполагает использование только DFF (аналог BSP - формат WRLD используется только в GTA: LCS и VCS в силу аппаратных ограничений платформы PSP). Для просмотра и редактирования структуры DFF существует программа RW Analyze, автором которой является Steve M. Для работы с DFF в Autodesk 3ds Max используются KAM's Scripts или SA Tools (автор — DENISka). Импорт и экспорт DFF также присутствует в Zanoza Modeler.
Содержание
Читайте также: