IDE — различия между версиями
Материал из GTAModding.ru
Solom (обсуждение | вклад) (→GTA III and Vice City) |
Solom (обсуждение | вклад) (→Type 0: Lights) |
||
Строка 198: | Строка 198: | ||
! Описание | ! Описание | ||
|- | |- | ||
− | | <center>A</center> || <center>ID</center> || integer || | + | | <center>A</center> || <center>ID</center> || integer || Ассоциация ID объекта в секции ''OBJS'' или в ''TOBJ'' |
|- | |- | ||
| <center>B,C,D</center> || <center>X, Y, Z</center> || float || Центр объекта по координатам X, Y, Z | | <center>B,C,D</center> || <center>X, Y, Z</center> || float || Центр объекта по координатам X, Y, Z | ||
|- | |- | ||
− | | <center>E,F,G</center> || <center>R, G, B</center> || integer || | + | | <center>E,F,G</center> || <center>R, G, B</center> || integer || Цвет света и всё что ассоциируется с RGB, также влияет на интенсивность света, так что чем темнее цвет света (то есть черный (0,0,0) даст такой эффект света, что он не будет виден) |
|- | |- | ||
| <center>H</center> || <center>''unknown''</center> || integer || Неизвестный параметр. Обычно он выражен числом 0 или 200. | | <center>H</center> || <center>''unknown''</center> || integer || Неизвестный параметр. Обычно он выражен числом 0 или 200. | ||
Строка 210: | Строка 210: | ||
| <center>J</center> || <center>Corona</center> || string || Текстура короны. Все текстуры короны расположены в файле <code>particle.txd</code>. | | <center>J</center> || <center>Corona</center> || string || Текстура короны. Все текстуры короны расположены в файле <code>particle.txd</code>. | ||
|- | |- | ||
− | | <center>K</center> || <center>Shadow</center> || string || | + | | <center>K</center> || <center>Shadow</center> || string || Текстура света на земле, текстуры хранятся в файле <code>particle.txd</code>, обычно используется текстура "shad_exp" для света |
|- | |- | ||
| <center>L</center> || <center>Distance</center> || float || Дальность света | | <center>L</center> || <center>Distance</center> || float || Дальность света | ||
Строка 228: | Строка 228: | ||
| <center>S</center> || <center>Flare</center> || integer || sets the particle to create a lens flare on the screen, similar to what the sun does<br>0 - no lens flare, 1 - yellow lens flare, 2 - white lens flare | | <center>S</center> || <center>Flare</center> || integer || sets the particle to create a lens flare on the screen, similar to what the sun does<br>0 - no lens flare, 1 - yellow lens flare, 2 - white lens flare | ||
|- | |- | ||
− | | <center>T</center> || <center>Dust</center> || integer || Интенсивность света | + | | <center>T</center> || <center>Dust</center> || integer || Интенсивность света с эффектом пыли, значения от 4 до 7 проявляют этот эффект более видимым. |
|} | |} | ||
Версия 13:33, 9 февраля 2012
Содержание |
Введение
Файлы Item Definition имеют расширение .ide и являются частью GTAGAME engine, поэтому присутствуют в GTA3, GTA VC, GTA SA и GTA4. В ide, к каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы Limit Adjuster). В GTA4 - ID не используется (вместо него, используется имя модели и текстуры).
В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель, архив текстур, использующийся моделью, дистанция и параметры рендеринга модели.
В IDE используются секции. Каждая секция отвечает за определенный параметр. Вот пример:
OBJectS - обычные объекты карты, TimeOBJects - временные объекты карты, ANIM - анимированные объекты карты, PEDS - педы, WEAPons - оружие, CARS - транспортные средства, HIER - загрузочные слоты для кат-сцен, 2DFX - специальный 2D-эффект для объекта (более подробно о секциях IDE читай ниже).
Item Definition хранится в текстовом виде, может быть изменён как редакторами карты для GTA - MooMaper, MapEditor, так и любым текстовым редактором типа блокнота.
В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака коментария до конца строки, игнорируется GTAGAME engine.
Структура
Файлы .ide разделены на секции. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается с идентификатора секции и заканчивется ключевым словом end. Строка секции разделяется запятыми, между которыми записаны значения каждой ячейки строки. Каждая ячейка может содержать либо целое или дробное число, либо одно слово. Значениями "0", "0.0" и "null" маркеруются пустые ячейки.
Пример:
objs ... end
OBJS
Обычные объекты карты.
Формат GTA IV
- ModelName, TextureName, DrawDistance, Flags1, Flags2, AABB.Min, AABB.Max, BoundingSphereCenter, BoundingSphereRadius, ModelsDictionary
- ModelName
- string[24]
- название модели (в большинстве случаев - имя соответсвующего .wdr- или .wft-файла (без расширения)).
- TextureName
- string[24]
- название архива с текстурами (имя соответсвующего wtd-файла, (без разширения)).
- DrawDistance
- float
- Дистанция прорисовки объекта на карте (для обычных объектов значение должно быть < 300).
- Flags1
- DWORD
- Специальные параметры объекта, значение по умолчанию '0'.
- Flags2
- DWORD
- Специальные параметры объекта, значение по умолчанию '0'.
- AABB.Min
- float[3]
- Минимальная угловая точка Min AABB-коробки.
- AABB.Max
- float[3]
- Максимальная угловая точка Max AABB-коробки.
- BoundingSphereCenter
- float[3]
- Центр ограничивающей сферы.
- BoundingSphereRadius
- float
- Радиус ограничивающей сферы.
- ModelsDictionary
- string[24]
- Название архива моделей (wdd-файла) в котором находится модель. Если модель располагается в .wdr- или .wft-файле, то текущий параметр имеет значение 'null'.
Формат GTA III, VC и SA
ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags
- ID
- Уникальний идентефикатор ID (целое)
- ModelName
- название .dff - файл модели, без разширения (строка)
- TextureName
- название .txd - файл текстур, без разширения (строка)
- ObjectCount
- количество под-объектов, т.е. разрушаемых частей, по умолчанию = 1, - используется в SA, обычно = 1
- DrawDist
- дистанция прорисовки в юнитах, по одному значению для каждого под-объекта (число с точкой)
- Flags
- флаги - специальные параметры объекта, по умолчанию 0 (целое)
Флаги Объектов
Флаги объектов в SA - UInt32-Значения (Впрочем как и все другие флаги). Чтобы лучше их понять нужно представить их в двоичном виде. Вы получите битовые маски флагов. 1 означает включет, 0 - выключен
Вот список известных флагов SA:
0000000000000000000000000000001 = 1 - Эффект мокрого покрытия (во время и после дождя) 0000000000000000000000000000010 = 2 - Time Object - Ночной Флаг 0000000000000000000000000000100 = 4 - АЛЬФА-прозрачность 1 0000000000000000000000000001000 = 8 - АЛЬФА-прозрачность 2 * 0000000000000000000000000010000 = 16 - Time Object - Дневной Флаг 0000000000000000000000000100000 = 32 - Объект Интерьера ** 0000000000000000000000001000000 = 64 - Отключить Тени (?) 0000000000000000000000010000000 = 128 - Отключить модель коллизии у объекта (?) 0000000000000000000000100000000 = 256 - Отключить дистанцию прорисовки (?) 0000000000000000000001000000000 = 512 - Разбиваемое стекло ** 0000000000000000000010000000000 = 1024 - Разбиваемое стекло с трещинами (треском ?) ** 0000000000000000000100000000000 = 2048 - Дверь для гаража ** 0000000000000000001000000000000 = 4096 - 2-Clump-Object ** (Switches from Clump 2 to 1 after Collision) 0000000000000000010000000000000 = 8192 - Малая растительность, объект пошатывается при сильном ветре 0000000000000000100000000000000 = 16384 - Стандартная растительность ** (Пальмы в Готелях, т.д.) (?) 0000000000000001000000000000000 = 32768 - Использовать Timecycle PoleShadow флаг 0000000000000010000000000000000 = 65536 - Флаг взрыва ** 0000000000000100000000000000000 = 131072 - Неизвестно (Seems to be an SCM Flag) (?) 0000000000001000000000000000000 = 262144 - Неизвестный (Возможно используется в одном из объектов в Jizzy Club) (?) 0000000000010000000000000000000 = 524288 - Неизвестно (?) 0000000000100000000000000000000 = 1048576 - Флаг граффити 0000000001000000000000000000000 = 2097152 - Полигоны видны с двух сторон 0000000010000000000000000000000 = 4194304 - Неизвестно (Часть статуи в Atrium) (?) ... 1000000000000000000000000000000 = 1073741824 - Неизвестно
* Если не в Интерьере, текстура позади объекта становится черной (= IPL | Interior-value) ** Объект должен быть прописан в Object.dat (?) Не известен на 100% ! Все флаги = 2^n, n є Z
Чтобы использовать несколько флагов, нужно указать их сумму, например:
01 + 10 = 11 1 + 2 = 3
TOBJ
Временные Объекты Карты, используется для определения объектов карты, которые видны только в определенное время суток. Например свет от окон.
Формат GTA III, VC и SA:
ID, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff
- ID, ModelName, TextureName, ObjectCount, DrawDist, Flags
- аналогично секции OBJS
- TimeOn
- время активации в часах (целое)
- TimeOff
- время деактивации в часах (целое)
Формат GTA 4:
- ModelName, TextureName, DrawDist, Flag1, Flag2, AABB.Min, AABB.Max, BoundingSphereCenter, BoundingSphereRadius, ModelsDictionary, NightFlag
- ModelName, TextureName, DrawDist,Flag1,2, AABB.Min, AABB.Max, BSC, BSR, ModelsDictionary
- Аналогично секции OBJS(формата gta 4)
- NightFlag
- Ночной флаг
ANIM
Анимированые Объекты Карты, используются для объектов, под-объекты которых анимированы.
Примечание: Модель повреждений в анимации не участвует.
формат GTA SA:
ID, ModelName, TextureName, AnimName, DrawDist, Flags
- ID, ModelName, TextureName, DrawDist, Flags
- аналогично секции OBJS
- AnimName
- название .ifp-файла - архива анимаций, без раcширения (строка)
формат GTA 4:
ModelName, TextureName, AnimName, DrawDist, Flags1, Flags2, AABB.Min, AABB.Max, BoundingSphereCenter, BoundingSphereRadius, ModelsDictionary
- !Эти параметры информированы в секции OBJS.
PEDS
Формат GTA III и VC:
ID, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex), animFile, radio1, radio2
WEAP
Формат GTA III и VC:
ID, ModelName, TextureName, Animation, unused, DrawDistance, unused
- Animation
- Значения берутся из файла ped.ifp, тип анимации при использовании оружия.
CARS
Формат GTA III и VC:
ID, ModelName, TextureName, Type, HandlingID, GXTEntry, PedDrivingAnimation, Class, Frequency, Level, SpecificType, WheelID, WheelSize
- HandlingID
- Значения берутся из handling.cfg
- PedDrivingAnimation
- из ped.ifp, тип анимации входа, выхода, вождения транспортного средства
- WheelID
- Идентификатор колеса. Недоступен для типа boat(катера)
- WheelSize
- Размер колеса. недоступен для типа boat(катера)
PATH
В GTA III, в IDE файлах использовалась секция PATH для прописки пути пешеходов или автомобилей. Позже система всё усложнялась, и со времён GTA SA используется файл .nod.
Формат GTA III - первая категория:
Type, ID, ObjectName
- Type
- Тип пути. Всего существует два типа - ped и car.
- ID
- Идентификатор объекта
- ObjectName
- Имя объекта, которому присвоен ID
Формат GTA III - вторая категория
HIER
Формат GTA III и VC
ID, ModelName, TextureName
Формат SA
ID, ModelName, TextureName, null, DrawDistance
TXDP
- Texture Archive Parent
Только формат SA:
TextureName, TextureParentName
Оба параметра обозначают имена архивов текстур (.txd). Второй архив фактически расширяет первый. Практически игра ищет текстуры в основном архиве, но если их там нет и второй архив был назначен, она проверяет наличие текстур и во втором архиве. Таким образом могут быть созданы общие архивы с часто использоваными текстурами, без необходимости дублирования текстур или разбиения моделей.
2DFX
2DFX используется для расстановки 2D эффектов (например: свет) и поведение педов на объектах. Если игра загружает слишком много эффектов в этой секции, то возможны некоторые артефакты, а точнее некоторые эффекты не будут появляться вообще или долго будут загружаться.
GTA III and Vice City
Type 0: Lights
Создаёт источник света на объект.
Типы вспышек
0 | Горит всё время |
1 | Горит всю ночь |
2 | Мерцает всё время |
3 | Мерцает всю ночь |
4 | Вспышка за одну секунду |
5 | Вспышка за одну секунду (только ночью) |
6 | Вспышка за две секунды |
7 | Вспышка за две секунды (только ночью) |
8 | Вспышка за три секунды |
9 | Вспышка за три секунды (только ночью) |
10 | Случайные мерцания |
11 | Случайные мерцания ночью |
12 | Параметры светофора |
Тип 12 вовлечён в свойства светофора. Он в основном используется для позиционирования света у светофора. Светофор без 2DFX может привести игру к вылету.
Type 1: Particles
Ссылки
- Описание IDE в GTA VC – топик ODIE на форуме GTAForums.соm, детали IDE-файлов в GTA VC.
- Документация GTA3/VC – топик Opius на форуме GTAForums.соm, описание IDE- и прочих файлов III/VC.