IDE — различия между версиями

Материал из GTAModding.ru
Перейти к: навигация, поиск
(Флаги Объектов)
м (Введение)
Строка 1: Строка 1:
 
==Введение==
 
==Введение==
  
Файлы Item Definition обычно имеют расширение '''.ide''' и являются частью т.н. GTAGAME engine, поэтому присутствуют в GTA3, GTA VC, GTA SA и GTA4. В ide каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы [[Limit Adjuster]]), в GTA4 ID не используется (вместо них там хэши имен моделей и флаги). В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель, архив текстур, используйщийся моделью, дистанция и параметры рендеринга модели. Все идентификаторы разбиты на группы, исходя из спецификации модели: OBJectS - обычные объекты карты, TimeOBJects - временные объекты карты, ANIM - анимированные объекты карты, PEDS - педы, WEAPons - оружие, CARS - транспортные средства, HIER - загрузочные слоты для кат-сцен, 2DFX - специальный 2D-эффект для объекта (более подробно о секциях IDE читай ниже).
+
Файлы Item Definition имеют расширение '''.ide''' и являются частью GTAGAME engine, поэтому присутствуют в GTA3, GTA VC, GTA SA и GTA4. В ide, к каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы [[Limit Adjuster]]). В GTA4 - ID не используется (вместо него, используется имя модели и текстуры).
  
Item Definition хранится в текстовом виде, может быть изменён как редакторами карты для GTA - [[MooMaper]], [[MapEditor]], так и любюм текстовым редактором типа блокнота.
+
В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель, архив текстур, использующийся моделью, дистанция и параметры рендеринга модели.
 +
 
 +
В IDE используются секции. Каждая секция отвечает за определенный параметр. Вот пример:
 +
 +
OBJectS - обычные объекты карты, TimeOBJects - временные объекты карты, ANIM - анимированные объекты карты, PEDS - педы, WEAPons - оружие, CARS - транспортные средства, HIER - загрузочные слоты для кат-сцен, 2DFX - специальный 2D-эффект для объекта (более подробно о секциях IDE читай ниже).
 +
 
 +
Item Definition хранится в текстовом виде, может быть изменён как редакторами карты для GTA - [[MooMaper]], [[MapEditor]], так и любым текстовым редактором типа блокнота.
  
 
В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака коментария до конца строки, игнорируется GTAGAME engine.
 
В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака коментария до конца строки, игнорируется GTAGAME engine.

Версия 12:08, 24 октября 2011

Содержание

Введение

Файлы 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

только GTA III и VC:

ID, X, Y, Z, R, G, B, U, Type, ...
ID
ID объекта к которому цепляется эффект (целое)
X, Y, Z
позиция эффекта относительно объекта (3 числа с точкой)
R, G, B
цвет эффекта, если доступно (3 integers, 0 - 255)(формат RGB)
U
Всегда 200 (целое).
Type
специфика типа эффекта.

Ссылки