Русский

Создание и редактирование 2dfx для .dff моделей

29 сентября 2013
DK22Pac

Инструменты

RwAnalyze2dfx tool
Создание и редактирование 2dfx для .dff моделей

Справка

2dfx это секция файла модели .dff в GTA:SA. Эта секция позволяет крепить специальные эффекты к модели. В San Andreas существует 10 типов 2dfx эффектов. Один из них можно добавить только через .ide файлы (это тип 2dfx - мебель(futnitur)), так что добавлять её в dff нет смысла - она просто не будет работать.



2dfx секция в RwAnalyze

Мы можем найти эту секцию (если она существует) в секции Clump->Geometry List->Geometry->Extension.

Создание и редактирование 2dfx для .dff моделей

Можно извлечь/вставить эту секцию, нажав ПКМ и выбрав нужное действие.

Создание и редактирование 2dfx для .dff моделей

После извлечения секции, у созданного файла не будет расширения. Добавьте расширение ".2dfx" к имени файла, чтобы позже использовать его в 2dfx tool.



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 эффектов в секции.

NumEntries       12

После этого следует описание эффектов.
Описание каждого типа эффектов имеет свой формат, но все они начинаются с этого:

2dfxType         LIGHT

Где "LIGHT" это тип эффекта.

Доступны следующие типы эффектов:

LIGHTPARTICLE (партикл-эффект)PED (действие пешехода)SUNFLARE (блик солнца)ENEX (система "вход-выход")ROADSIGN (дорожный указатель)SLOTMACHINEWHEEL (колесо игрового автомата)NAVIPOINT (точка навигации)ESCALATOR (эскалатор)

После того, как программа узнает тип эффекта, она выберет нужный формат для чтения информации об эффекте.

Тип LIGHT

Этот тип используется для создания источника света. Такой свет состоит из:

1) короны (2d спрайт);
2) тени (проекция на земле);
3) динамического света (базируется на стандартном освещении графического движка, вершинное освещение для динамических объектов - автомобилей, пешеходов, объектов).

Формат этой секции:

2dfxType         LIGHTPosition         2.468750 3.131592 4.541241 (позиция)Color            191 206 132 200 (цвет, значение альфа игнорируется)CoronaFarClip    100.000000 (радиус видимости короны)PointlightRange  18.000000 (радиус динамического света)CoronaSize       1.000000 (размер короны)ShadowSize       8.000000 (размер тени)CoronaShowMode   DEFAULT (дополнительный тип)CoronaReflection 0 (включение отражения на земле для короны (0/1))CoronaFlareType  0 (тип бликов для короны (1/2, 0 - без бликов))ShadowColorMP    40 (интенсивность тени)ShadowZDistance  0 (максимальное расстояние до поверхности, на которой может быть отрисована тень)CoronaTexName    coronastar (название текстуры короны в particle.txd)ShadowTexName    shad_exp (название текстуры тени в particle.txd)Flags1           AT_NIGHT (флаги №1)Flags2           -        (флаги №2)ViewVector       0 0 100 (направление, из которого видно корону. Используется, если включен флаг CHECK_DIRECTION)



CoronaShowMode

Этот параметр устанавливает дополнительный тип для источника света.

DEFAULT (стандартный тип)ALWAYS_AT_WET_WEATHER (включается при влажной погоде)TRAFFICLIGHT (используется как светофор)TRAINCROSSLIGHT (используется как светофор на ж/д)AT_RAIN_ONLY (работает только в дождь)

Это известные, именованные типы. Также существуют неименованные типы, назначение которых пока что неизвестно (используйте номера 1,3,4,5,6,9,11,12,13 вместо названия типа).



Флаги №1

CORONA_CHECK_OBSTACLES (при отрисовке короны будет проверяться наличие преград между короной и камерой, если такие преграды будут найдены - корона не отрисуется)FOG_TYPE1 (определяет тип эффекта рассеянного света)FOG_TYPE2 (определяет тип эффекта рассеянного света)WITHOUT_CORONA (отключить корону)CORONA_ONLY_AT_LONG_DISTANCE (корону видно только издалека)AT_DAY (работает днём)AT_NIGHT (работает ночью)BLINKING1 (мигание №1)



Флаги №2

CORONA_ONLY_FROM_BELOW (корону видно только тогда, когда камера находится ниже позиции короны)BLINKING2 (мигание №2)UDPDATE_HEIGHT_ABOVE_GROUND (нужно ли обновить информацию о высоте короны над землей)CHECK_DIRECTION (корону видно только из определённой позиции (параметр ViewVector))BLINKING3 (мигание №3)



Использование флагов

Если нужно использовать несколько флагов, их надо разделить запятой (","). Если не нужно использовать ни одного из флагов, ставится знак "-".

Например, такая запись

Flags1   AT_DAY,AT_NIGHT

обеспечит круглосуточную работу источника света.



PARTICLE

Крепит партикл-эффект.

2dfxType         PARTICLEPosition         0.000000 0.000000 0.000000 (позиция)Name             simplefx (название партикл-эффекта из effects.fxp)



PED

Привлекает пешехода и заставляет его выполнять определённые действия.

2dfxType         PEDPosition         -0.572941 0.661896 0.030715 (позиция)Type             SIT_ON_BENCH_DAY_ONLY (тип действия)Rotation         -0.993852 0.006778 -0.110507  -0.993852 0.006778 -0.110507  0.995570 -0.009073 0.093582 (вращение (направление по 3 осям))ExternalScript   - (имя внешнего скрипта (если используется тип действия "SCRIPTED"))ExistingProb     75 (вероятность выполнения)Unknown1         0 (неизвестно)Unknown2         0 (неизвестно)

Доступные типы поведения:

USE_ATM_DAY_ONLY (использует банкомат (только днём))SIT_ON_BENCH_DAY_ONLY (сидит (только днём))STANDSTILL_DAY_ONLY (стоит (только днём))STANDSTILL_THEN_GO_AWAY (стоит и уходит)GO_AWAY_BUT_STAY_IF_RAINY (уходит, но если идёт дождь - остается. У R* данный тип назывался "Shelter", т.е. "Укрытие")SCRIPTED (используется внешний скрипт)STANDSTILL_GO_AWAY_2 (стоит и уходит)LIE_DAY_ONLY_GO_AWAY_AFTER_6PM (загорает, уходит после 6-ти вечера)SIT_AT_HOUSE (сидит на ступеньках возле дома)



SUNFLARE

Создаёт блик солнца на модели (в виде короны).

2dfxType         SUNFLAREPosition         0.000000 0.000000 0.000000 (позиция)



ROADSIGN

Дорожный указатель.

2dfxType         ROADSIGNPosition         1637.679321 -2063.918701 28.069563 (позиция)Size             5.000000 2.500000 (размер (высота и ширина))Rotation         48.999981 -90.000008 -90.000015 (вращение (по 3 осям))NumLines         4 (кол-во используемых строк)SymbolsInLine    16 (максимальное кол-во символов в строке)Color            WHITE (цвет)Text1            Bluffs_^_______ (содержимое строки 1. Вместо пробелов используется "_")Text2            Downtown_^_____ (содержимое строки 2)Text3            Mulholland^____ (содержимое строки 3)Text4            Vinewood_^_____ (содержимое строки 4)



Цвета

WHITE (белый)
BLACK (чёрный)
GREEN (серый (ошибка в программе))
RED (красный)

SLOTMACHINEWHEEL

Колесо игрового автомата

2dfxType         SLOTMACHINEWHEEL
Position         0.074211 0.510475 0.921751 (позиция)
WheelIndex       0 (индекс (используется в SCM))

NAVIPOINT

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

2dfxType         NAVIPOINT
Position         -0.637695 -12.929321 -4.864481
XY               -0.000001 -1.000000
Type             1

ESCALATOR

Тип создаёт эскалатор (движущиеся ступеньки).

2dfxType         ESCALATORBasePosition     -0.957153 6.627189 -3.237147 (стартовая точка)BottomPosition   -0.947021 4.526084 -3.237147 (точка начала подъёма)TopPosition      -0.980835 -4.370117 3.380810 (точка конца подъёма)EndPosition      -0.985107 -6.449219 3.380810 (конечная точка)Direction        UP (направление движения)

Направление движения

UP (вверх)DOWN (вниз)
Рейтинг: 0 (0 голосов)

Рекомендуемые файлы