IDE — различия между версиями
Материал из GTAModding.ru
DK22 (обсуждение | вклад) м (→16px GTA Vice City) |
|||
(не показаны 75 промежуточных версий 6 участников) | |||
Строка 1: | Строка 1: | ||
==Введение== | ==Введение== | ||
− | Файлы | + | Файлы <b>I</b>tem <b>DE</b>finition имеют расширение '''.ide''' и являются частью игрового движка серии GTA, поэтому присутствуют в [[GTA 3]], [[GTA VC]], [[GTA SA]], [[GTA LCS]] (iOS/Android), [[GTA VCS]] (iOS/Android) и GTA4 в текстовом виде, в PS2/PSP-версиях GTA LCS и GTA VCS в бинарном. В <code>[[IDE|*.ide]]</code>, к каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы [[Limit Adjuster]]). В GTA 4 - ID не используются (вместо них напрямую используется имена объектов, которые хэшируются в игровой памяти). |
− | + | В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель (<code>[[DFF|*.dff]]</code>), архив текстур (<code>[[TXD|*.txd]]</code>), использующийся моделью, дистанция и параметры рендеринга модели. | |
− | В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо | + | |
+ | Все записи в <code>[[IDE|*.ide]]</code> объединены в специальные секции, каждая из которых отвечает за определенный параметр. Примеры секций: | ||
+ | |||
+ | <b>OBJ</b>ect<b>S</b> - обычные объекты карты, <b>T</b>ime<b>OBJ</b>ects - временные объекты карты, <b>ANIM</b> - анимированные объекты карты, <b>PEDS</b> - пешеходы, <b>WEAP</b>ons - оружие, <b>CARS</b> - транспортные средства, <b>HIER</b> - загрузочные слоты для кат-сцен, <b>2DFX</b> - специальный 2D-эффект для объекта (более подробно о секциях IDE читай ниже). | ||
+ | |||
+ | |||
+ | Item Definition хранится в текстовом виде, может быть изменён как редакторами карты для GTA - [[MooMaper]], [[MapEditor]], так и любым текстовым редактором типа блокнота. | ||
+ | |||
+ | В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака комментария до конца строки, игнорируется игровым движком GTA. | ||
==Структура== | ==Структура== | ||
− | Файлы .ide разделены на секции. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается с идентификатора секции и заканчивется ключевым словом end. | + | Файлы .ide разделены на секции. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается с идентификатора секции и заканчивется ключевым словом end. Строка секции разделяется запятыми, между которыми записаны значения каждой ячейки строки. Каждая ячейка может содержать либо целое или дробное число, либо одно слово. |
Пример: | Пример: | ||
Строка 19: | Строка 27: | ||
'''Обычные объекты карты'''. | '''Обычные объекты карты'''. | ||
− | + | {| {{Таблица}} | |
− | * ModelName, | + | |+ OBJS |
+ | |- | ||
+ | ! Версия GTA !! Код строки | ||
+ | |- | ||
+ | | [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] (Bully)|| ModelId, ModelName, TexDictName, ObjectCount, DrawDist [,DrawDist2, ... ], Flags (, 0, 1, 0, 255, 0, 0, 0) | ||
+ | |- | ||
+ | | [[Изображение:Sa.png|16px]] || ModelId, ModelName, TexDictName, DrawDist, Flags | ||
+ | |- | ||
+ | | PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] || (ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], 2dfxID or F***[2], F***[2], 0[2], TextureID[2], [65535[4]], hashsecID[4], 0[4], DrawDist[4], parametrs[16] | ||
+ | |- | ||
+ | | [[Изображение:GTAIV.png|16px]] || ModelName, TexDictName, DrawDist, Flags ['', FlagsAdd, AABB.Min.X, AABB.Min.Y, AABB.Min.Z, AABB.Max.X, AABB.Max.Y, AABB.Max.Z, BoundSphereCenter.X, BoundSphereCenter.Y, BoundSphereCenter.Z, BoundSphereRadius, WddName''] | ||
+ | |} | ||
− | ;ModelName | + | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] ModelId |
+ | :''<tt>DWORD</tt>'' | ||
+ | :''Уникальный идентификатор модели - целое число. Для PS2/PSP-версии сториесов значение вычисляется.'' | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] [[Изображение:GTAIV.png|16px]] ModelName | ||
:''<tt>string[24]</tt>'' | :''<tt>string[24]</tt>'' | ||
− | :'' | + | :''Название модели (в большинстве случаев - имя соответствующего .[[WDR|wdr]]- или .[[WFT|wft]]-файла для GTA4, [[DFF|dff]]-файла для GTA3, GTA VC, GTA SA, GTA LCS, GTA VCS (без расширения)).'' |
− | ; | + | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] [[Изображение:GTAIV.png|16px]] TexDictName |
:''<tt>string[24]</tt>'' | :''<tt>string[24]</tt>'' | ||
− | :'' | + | :''Название архива с текстурами (имя соответствующего [[WTD|wtd]]-файла для GTA4, [[TXD|txd]]-файла для GTA3, GTA VC, GTA SA, GTA LCS, GTA VCS (без разширения), NULL в случае отсутствия текстур на модели), generic в случае использования generic-текстур (находятся вне .IMG архива).'' |
− | ; | + | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] ObjectCount |
+ | :''<tt>DWORD</tt>'' | ||
+ | :''Количество объектов в dff, отображающихся отдельно друг от друга'' | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] [[Изображение:GTAIV.png|16px]] DrawDist | ||
:''<tt>float</tt>'' | :''<tt>float</tt>'' | ||
− | :''Дистанция прорисовки объекта на карте | + | :''Дистанция прорисовки объекта на карте относительно координат экрана.'' |
− | ; | + | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] [[Изображение:GTAIV.png|16px]] Flags |
:''<tt>DWORD</tt>'' | :''<tt>DWORD</tt>'' | ||
− | :''Специальные параметры объекта, значение по умолчанию '0'.'' | + | :''Специальные параметры отображения объекта, значение по умолчанию '0'. См. раздел "Флаги Объектов".'' |
− | ; | + | ; [[Изображение:GTAIV.png|16px]] FlagsAdd |
:''<tt>DWORD</tt>'' | :''<tt>DWORD</tt>'' | ||
− | :'' | + | :''Дополнительные параметры объекта, значение по умолчанию '0'.'' |
− | ;AABB.Min | + | ; [[Изображение:GTAIV.png|16px]] AABB.Min.X, AABB.Min.Y, AABB.Min.Z |
:''<tt>float[3]</tt>'' | :''<tt>float[3]</tt>'' | ||
:''Минимальная угловая точка <tt>Min</tt> [http://www.gamedev.ru/terms/AABB AABB-коробки].'' | :''Минимальная угловая точка <tt>Min</tt> [http://www.gamedev.ru/terms/AABB AABB-коробки].'' | ||
− | ;AABB.Max | + | ; [[Изображение:GTAIV.png|16px]] AABB.Max.X, AABB.Max.Y, AABB.Max.Z |
:''<tt>float[3]</tt>'' | :''<tt>float[3]</tt>'' | ||
:''Максимальная угловая точка <tt>Max</tt> [http://www.gamedev.ru/terms/AABB AABB-коробки].'' | :''Максимальная угловая точка <tt>Max</tt> [http://www.gamedev.ru/terms/AABB AABB-коробки].'' | ||
− | ; | + | ; [[Изображение:GTAIV.png|16px]] BoundSphereCenter.X, BoundSphereCenter.Y, BoundSphereCenter.Z |
:''<tt>float[3]</tt>'' | :''<tt>float[3]</tt>'' | ||
:''Центр [http://ru.wikipedia.org/wiki/Ограничивающая_сфера ограничивающей сферы].'' | :''Центр [http://ru.wikipedia.org/wiki/Ограничивающая_сфера ограничивающей сферы].'' | ||
− | ;BoundingSphereRadius | + | ; [[Изображение:GTAIV.png|16px]] BoundingSphereRadius |
:''<tt>float</tt>'' | :''<tt>float</tt>'' | ||
:''Радиус [http://ru.wikipedia.org/wiki/Ограничивающая_сфера ограничивающей сферы].'' | :''Радиус [http://ru.wikipedia.org/wiki/Ограничивающая_сфера ограничивающей сферы].'' | ||
− | ; | + | ; [[Изображение:GTAIV.png|16px]] WddName |
:''<tt>string[24]</tt>'' | :''<tt>string[24]</tt>'' | ||
:''Название архива моделей ([[WDD|wdd]]-файла) в котором находится модель. Если модель располагается в .[[WDR|wdr]]- или .[[WFT|wft]]-файле, то текущий параметр имеет значение <tt>'null'</tt>.'' | :''Название архива моделей ([[WDD|wdd]]-файла) в котором находится модель. Если модель располагается в .[[WDR|wdr]]- или .[[WFT|wft]]-файле, то текущий параметр имеет значение <tt>'null'</tt>.'' | ||
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] hashname | |
− | + | :''<tt>hex[4]</tt>'' | |
− | + | :''Хешированное имя игрового объекта по CRC-алгоритму.'' | |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] TextureID | |
− | ; | + | :''<tt>DWORD</tt>'' |
− | ; | + | :''Уникальный идентификатор текстуры - целое число.'' |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] SectionType | |
− | ; | + | :''<tt>BYTE</tt>'' |
− | ; | + | :''Тип секции загруженного объекта - cars, peds, weap, objs, hier и т.д.'' |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] 2dfxcount | |
− | + | :''<tt>BYTE</tt>'' | |
− | + | :''Количество строк из секции 2dfx, используемые для объекта.'' | |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] Co11.offset | |
− | + | :''<tt>WORD</tt>'' | |
− | + | :''Переход на [[Модель коллизии|модель столкновений]] объекта.'' | |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] 2dfxID | |
− | + | :''<tt>WORD</tt>'' | |
− | + | :''ID строки секции 2dfx, с которой начинается чтение эффектов для объекта.'' | |
− | + | ; PS2/PSP [[Изображение:Lcs.png|16px]] [[Изображение:Vcs.png|16px]] hashsecID | |
− | + | :''<tt>DWORD</tt>'' | |
− | + | :''Хэшированное имя секции по CRC-алгоритму (назначение неизвестно).'' | |
− | + | ; Bully: 0, 1, 0, 255, 0, 0, 0 | |
− | + | :''<tt>DWORD[7]</tt>'' | |
− | + | :''Дополнительная часть строки OBJ и TOBJ'' | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | - | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===TOBJ=== | ===TOBJ=== | ||
'''Временные Объекты Карты''', используется для определения объектов карты, которые видны только в определенное время суток. Например свет от окон. | '''Временные Объекты Карты''', используется для определения объектов карты, которые видны только в определенное время суток. Например свет от окон. | ||
− | + | ====Формат GTA III, VC, SA, LCS, VCS==== | |
− | + | ModelId, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff | |
− | ; | + | ;ModelId, ModelName, TextureName, ObjectCount, DrawDist, Flags: аналогично секции OBJS |
;TimeOn: время активации в часах (целое) | ;TimeOn: время активации в часах (целое) | ||
;TimeOff: время деактивации в часах (целое) | ;TimeOff: время деактивации в часах (целое) | ||
− | + | ====Формат PS2/PSP-версий GTA LCS и VCS==== | |
+ | |||
+ | В консольных сториесах секция TOBJ перенесена в LevelZLib и применяется непосредственно для объектов внутри уровня (подробнее читай статью [[LVZ]]). | ||
+ | |||
+ | ====Формат GTA 4==== | ||
* ModelName, TextureName, DrawDist, Flag1, Flag2, AABB.Min, AABB.Max, BoundingSphereCenter, BoundingSphereRadius, ModelsDictionary, NightFlag | * 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) | ;ModelName, TextureName, DrawDist,Flag1,2, AABB.Min, AABB.Max, BSC, BSR, ModelsDictionary: Аналогично секции OBJS(формата gta 4) | ||
− | ;NightFlag | + | ;NightFlag: Ночной флаг |
===ANIM=== | ===ANIM=== | ||
Строка 125: | Строка 125: | ||
Примечание: Модель повреждений в анимации не участвует. | Примечание: Модель повреждений в анимации не участвует. | ||
− | + | ====формат GTA SA==== | |
− | + | ModelId, ModelName, TextureName, AnimName, DrawDist, Flags | |
− | ; | + | ;ModelId, ModelName, TextureName, DrawDist, Flags: аналогично секции OBJS |
;AnimName: название .ifp-файла - архива анимаций, без раcширения (строка) | ;AnimName: название .ifp-файла - архива анимаций, без раcширения (строка) | ||
+ | |||
+ | ====формат GTA 4==== | ||
+ | ModelName, TextureName, AnimName, DrawDist, Flags1, Flags2, AABB.Min, AABB.Max, | ||
+ | BoundingSphereCenter, BoundingSphereRadius, ModelsDictionary | ||
+ | ;!Эти параметры информированы в секции OBJS. | ||
===PEDS=== | ===PEDS=== | ||
− | ''Формат GTA III | + | '''Пешеходы''' - модели людей, используемые в городском трафике, а так же в скриптах. В GTA VCS туда записаны и специальные актёры (почему-то разработчики не стали экономить память ПСП и использовать для них слоты специальных актёров). |
− | + | ||
+ | ====Формат GTA III==== | ||
+ | ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex) | ||
+ | ; | ||
+ | |||
+ | ====Формат GTA VC, GTA LCS, GTA VCS==== | ||
+ | ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex), animFile, | ||
+ | radio1, radio2 | ||
+ | ; | ||
+ | |||
+ | ====Формат GTA SA==== | ||
+ | ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex), animFile, | ||
+ | radio1, radio2, VoiceArchive, Voice1, Voice2 | ||
+ | ; | ||
+ | |||
+ | ====Формат PS2/PSP-версий GTA LCS и VCS==== | ||
+ | (ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], | ||
+ | 2dfxID or F***[2], F***[2], 0[2], TextureID[2], [65535[4]], hashsecID[4], 0[4], DrawDist[4], | ||
+ | animgroupID[4], pedtypeID[4], pedstatID[4], pedflags[4], 0[4], unknowflags[4], [block_co1...] | ||
+ | ; | ||
===WEAP=== | ===WEAP=== | ||
− | ''Формат GTA III | + | '''Оружие''' - модели оружия, включая зарезервированный ID на кулаки. |
− | + | ||
+ | ====Формат GTA III, GTA VC, GTA SA, GTA LCS, GTA VCS==== | ||
+ | ModelId, ModelName, TextureName, Animation, unused, DrawDistance, unused | ||
;Animation: Значения берутся из файла ped.ifp, тип анимации при использовании оружия. | ;Animation: Значения берутся из файла ped.ifp, тип анимации при использовании оружия. | ||
+ | |||
+ | ====Формат PS2/PSP-версий GTA LCS и VCS==== | ||
+ | (ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], | ||
+ | 2dfxID or F***[2], F***[2], 0[2], TextureID[2], [65535[4]], hashsecID[4], 0[4], DrawDist[4], 0[8], | ||
+ | 65281[4], weaponslotID[4], weapontype[4] | ||
+ | ; | ||
===CARS=== | ===CARS=== | ||
− | ''Формат GTA III | + | '''Авто''' - модели транспорта - автомобили, лодки, вертолёты, мотоциклы и т.д. |
− | + | ||
− | + | ====Формат GTA III==== | |
+ | ModelId, ModelName, TextureName, Type, HandlingID, GameName, | ||
+ | Class, Frequency, Level, Comprules, WheelModelId, WheelScale | ||
+ | |||
+ | ====Формат GTA VC==== | ||
+ | ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, | ||
+ | Class, Frequency, Level, Comprules, WheelModelId, WheelScale | ||
+ | |||
+ | ====Формат GTA SA==== | ||
+ | ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, | ||
+ | Class, Frequency, Level, Comprules, WheelModelId, WheelScale_Front, WheelScale_Rear, WheelUpgradeClass | ||
+ | |||
+ | ====Формат GTA LCS, GTA VCS==== | ||
+ | ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, | ||
+ | Class, Frequency, Level, Comprules, WheelModelId, WheelScale, AmountNormals | ||
+ | |||
+ | |||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] ModelId, ModelName, TextureName: аналогично секции OBJS | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] Type: тип транспорта - car, boat, train, heli, plane, bike, trailer, bmx, quad, mtruck. Загрузка этих данных в игре реализована с помощью "hardcoded functions" (что по-нашему через _опу) и может быть изменена только через редактирование [[Gta3.exe]] | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] HandlingID: Имена настроек физической модели транспорта. Значения берутся из [[Handling.dat|handling.cfg]] | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] GameName: Игровое имя транспортного средства из [[GXT_(GTA_3)|.gxt]] файла. Чувствительно к регистру и должно иметь семь символов или меньше. | ||
+ | ; [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] AnimGroup: имя группы анимаций, определяющих анимации входа, выхода, вождения транспортного средства из [[IFP]] | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] Class: определяет классность транспорта | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] Frequency: частота появления транспорта в городском трафике | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] Level: ? | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] Comprules: флаг, определяющий особенности авто | ||
+ | |||
+ | {| class="wikitable" width="100%" | ||
+ | ! HEX-значение | ||
+ | ! Эффект значения | ||
+ | ! Транспорт, на котором используется | ||
+ | |- | ||
+ | | 0 || у авто нет особенностей || | ||
+ | |- | ||
+ | | 0x1f10 || На авто в игре всегда присутствует одна из двух экстра-деталей || Taxi, Cabbie, Hoods Rumpo XL, Borgnine, Zebra Cab, Kaufman Cab | ||
+ | |- | ||
+ | | 0x2ff0 || На авто в дождливую погоду всегда присутствует одна экстра-деталь || Stinger, Stallion, Sabre, Sabre Turbo, Comet, Deluxo | ||
+ | |- | ||
+ | | 0x4fff || || Flatbed, Hotring A, Hotring B, Bloodring Banger A, Bloodring Banger B | ||
+ | |- | ||
+ | | 0x30123345 || || Caddy | ||
+ | |} | ||
+ | |||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] WheelModelId: Идентификатор колеса. Недоступен для типов boat и train. Для типа plane - идентификатор LOD-а модели. В GTA SA заменён на указатель масштабирования модели (-1 - колесо не масштабируется, 0 - масштабируется, коллизия колеса масштабируется всегда). | ||
+ | ; [[Изображение:Gta3.png|16px]] [[Изображение:Vc.png|16px]] [[Изображение:Sa.png|16px]] WheelScale: Множитель масштаба колеса. Недоступен для типов boat, train и plane. Для GTA SA состоит из двух множителей - для передних и задних колёс | ||
+ | ; [[Изображение:Sa.png|16px]] WheelUpgradeClass: идентификаторы из [[carmods.dat]] | ||
+ | |||
+ | ====Формат PS2/PSP-версии GTA LCS==== | ||
+ | (ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], | ||
+ | 2dfxID or F***[2], F***[2], 0[2], TextureID[2], hashsecID[4], 0[4], DrawDist[4], 0[2], gamename[14], | ||
+ | wheelsize[4], wheelID[2], handlingID[2], dorsCount[1], ClassID[1], Level[1], 0[1], Frequency[1], 0[7], | ||
+ | block_XYIrarXYI[5x16], 0[4], 999.(9)[4], block_unknow[200], block_co1[8], co1_total[1], unknow[15] | ||
+ | ; | ||
+ | |||
+ | ====Формат PS2/PSP-версии GTA VCS==== | ||
+ | (ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], | ||
+ | 2dfxID or F***[2], F***[2], 0[2], TextureID[2], 65535[4], hashsecID[4], 0[4], DrawDist[4], ... | ||
+ | ; | ||
+ | |||
+ | ===PATH=== | ||
+ | {{Заготовка}} | ||
+ | |||
+ | В GTA III и GTA LCS система путей используется только в IDE файлах. Пути расположены по центру объекта. Точки дают направление пешеходам и автомобилям. | ||
+ | |||
+ | Лимит количества строк в одном блоке - 12. Если добавить 13, то игра зависнет. | ||
+ | |||
+ | ''Формат GTA III - первая секция:'' | ||
+ | Path Type, ID, Object Name | ||
+ | |||
+ | *Path Type - Тип пути для первой секций. Всего существует два типа - ped и car. | ||
+ | *ID - Идентификатор объекта | ||
+ | *ObjectName - Имя объекта, которому присвоен ID. Не используется. | ||
+ | <source lang="cpp">// CFileLoader::LoadObjectTypes - загрузка обьекта PATH | ||
+ | case OBJECT_PATH: | ||
+ | if(number == -1) // чтение первой секции | ||
+ | { | ||
+ | objId = LoadPathInfo(lineBuf, pathType); | ||
+ | if(!strncmp(pathType, "ped", 4) | ||
+ | pathTypeId = PATH_TYPE_PED; | ||
+ | else if(!strncmp(pathType, "car", 4) | ||
+ | pathTypeId = PATH_TYPE_CAR; | ||
+ | number = 0; | ||
+ | } | ||
+ | else // чтение второй секции | ||
+ | { | ||
+ | if(pathTypeId == PATH_TYPE_PED) | ||
+ | SetupPedPath(lineBuf, objId, number); | ||
+ | else if(pathTypeId == PATH_TYPE_CAR) | ||
+ | SetupCarPath(lineBuf, objId, number); | ||
+ | ++number; | ||
+ | if(number == 12) | ||
+ | number = -1; | ||
+ | } | ||
+ | break;</source> | ||
+ | <source lang="cpp">// LoadPathInfo | ||
+ | int LoadPathInfo(const char *line, char *type) | ||
+ | { | ||
+ | char objName[96]; | ||
+ | int objId; | ||
+ | sscanf(line, "%s %d %s", type, &objId, objName); | ||
+ | return objId; | ||
+ | }</source> | ||
+ | ''Формат GTA III - вторая секция:'' | ||
+ | Node Type, Link To, Unkn1, X, Y, Z, Unkn2, Lanes1, Lanes2 | ||
− | + | *Node Type - Типы точки. Всего 3 типа - None, Middle и End. | |
− | + | *Joins to Next Node - | |
− | + | *Unkn1 - | |
− | + | *Unkn2 - | |
+ | *Lanes1 - | ||
+ | *Lanes2 - | ||
===HIER=== | ===HIER=== | ||
− | ''Формат GTA III | + | ''Формат GTA III, GTA VC, GTA LCS, GTA VCS'' |
ID, ModelName, TextureName | ID, ModelName, TextureName | ||
''Формат SA'' | ''Формат SA'' | ||
Строка 156: | Строка 293: | ||
===TXDP=== | ===TXDP=== | ||
− | + | ||
− | '' | + | '''TXDP'''(Texture Archive Parent) - Одна из секции в IDE файле. Она используется для указания имя текстуры вне архива, где хранятся часто используемые текстуры на карте. |
− | + | ||
− | + | ''Структура'' | |
+ | {|{{Таблица}} | ||
+ | ! width="36px"| {{Icon|SA}} {{Icon|4}} | ||
+ | ! width="150px"| <center>Имя</center> | ||
+ | ! width="100px"| <center>Тип</center> | ||
+ | ! <center>Описание</center> | ||
+ | |- | ||
+ | | <center>A</center> || <center>TextureName</center> || string || Имя <code>.txd/.wtd</code> child текстуры. | ||
+ | |- | ||
+ | | <center>B</center> || <center>TextureParentName</center> || string || Имя <code>.txd/.wtd</code> родителя текстуры. | ||
+ | |} | ||
+ | |||
+ | Пример использования данной секции: | ||
+ | |||
+ | txdp | ||
+ | my_child_texture,my_parent_texture | ||
+ | end | ||
===2DFX=== | ===2DFX=== | ||
− | '' | + | '''2DFX''' используется для расстановки 2D эффектов (например: свет) и поведение педов на объектах. Если игра загружает слишком много эффектов в этой секции, то возможны некоторые артефакты, а точнее некоторые эффекты могут не появиться вообще или долго будут загружаться. |
− | + | ||
− | + | В PS2/PSP-версиях GTA LCS и VCS данная секция хранится в двоичном виде и ничем не отличается от текстового, описанного ниже. | |
− | + | ||
− | + | =====Формат GTA III, GTA VC, GTA LCS, GTA VCS===== | |
− | + | ======Type 0: Lights====== | |
− | + | Создаёт источник света на объект. | |
+ | {|{{Таблица}} width="100%" | ||
+ | ! width="36px"| {{Icon|3}} {{Icon|VC}} | ||
+ | ! width="150px"| Идентификатор | ||
+ | ! width="100px"| Тип | ||
+ | ! Описание | ||
+ | |- | ||
+ | | <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>E,F,G,H</center> || <center>R, G, B, A</center> || integer || Цвет света + значение альфа-канала | ||
+ | |- | ||
+ | | <center>I</center> || <center>2DFX Type</center> || integer || Тип 2DFX. Для "Lights" всегда равен нулю | ||
+ | |- | ||
+ | | <center>J</center> || <center>Corona</center> || string || Текстура короны. Все текстуры короны расположены в файле <code>particle.txd</code> | ||
+ | |- | ||
+ | | <center>K</center> || <center>Shadow</center> || string || Текстура для отбрасывания тени от света. Текстуры хранятся в файле <code>particle.txd</code>. Чаще всего используется "shad_exp" | ||
+ | |- | ||
+ | | <center>L</center> || <center>Distance</center> || float || Дальность света (максимальное расстояние, на котором виден этот источник света) | ||
+ | |- | ||
+ | | <center>M</center> || <center>Outer range</center> || float || Диапазон света, который падает на динамические объекты, пешеходов и автомобили | ||
+ | |- | ||
+ | | <center>N</center> || <center>Size</center> || Integer/float || Размер короны. Тип значения может быть целым числом или числом с точкой. Если значение будет 0, то корона будет незаметна, но эффект освещения всё равно можно заметить | ||
+ | |- | ||
+ | | <center>O</center> || <center>Inner range</center> || float || Размер тени (проекция на земле) | ||
+ | |- | ||
+ | | <center>P</center> || <center>Shadow intensity</center> || integer || Интенсивность тени (проекции на земле), значение от 0 до 255. Обычно используется 40 | ||
+ | |- | ||
+ | | <center>Q</center> || <center>Flash</center> || integer || Тип вспышки | ||
+ | |- | ||
+ | | <center>R</center> || <center>Wet</center> || integer || sets the particle to be "reflective" on wet grounds, will only work if the ground around the light is set to wet when raining<br>0 - not reflective when wet, 1 - reflective when wet | ||
+ | |- | ||
+ | | <center>S</center> || <center>Flare</center> || integer || Устанавливает эффект бликов на экране. <br>0 - отсутствие бликов, 1 - желтые блики, 2 - белые блики | ||
+ | |- | ||
+ | | <center>T</center> || <center>Flags</center> || integer || Флаги источника света. Бит 0 - отключить Z-тест для короны, биты 1-2 - тип "пыли", которая создается под источником света. | ||
+ | |} | ||
+ | |||
+ | '''Типы вспышек''' | ||
+ | {| {{Таблица}} | ||
+ | | 0 | ||
+ | | Горит всё время | ||
+ | |- | ||
+ | | 1 | ||
+ | | Горит всю ночь | ||
+ | |- | ||
+ | | 2 | ||
+ | | Мерцает всё время | ||
+ | |- | ||
+ | | 3 | ||
+ | | Мерцает всю ночь | ||
+ | |- | ||
+ | | 4 | ||
+ | | Вспышка за одну секунду | ||
+ | |- | ||
+ | | 5 | ||
+ | | Вспышка за одну секунду (только ночью) | ||
+ | |- | ||
+ | | 6 | ||
+ | | Вспышка за две секунды | ||
+ | |- | ||
+ | | 7 | ||
+ | | Вспышка за две секунды (только ночью) | ||
+ | |- | ||
+ | | 8 | ||
+ | | Вспышка за три секунды | ||
+ | |- | ||
+ | | 9 | ||
+ | | Вспышка за три секунды (только ночью) | ||
+ | |- | ||
+ | | 10 | ||
+ | | Случайные мерцания | ||
+ | |- | ||
+ | | 11 | ||
+ | | Случайные мерцания ночью | ||
+ | |- | ||
+ | | 12 | ||
+ | | Параметры светофора | ||
+ | |} | ||
+ | |||
+ | Светофор без 12 типа в 2DFX может привести игру к вылету. | ||
+ | |||
+ | ======Type 1: Particles====== | ||
+ | Этим типом 2dfx можно создать эффект частиц на модели. | ||
+ | |||
+ | {|{{Таблица}} width="100%" | ||
+ | ! width="36px"| {{Icon|3}} {{Icon|VC}} | ||
+ | ! width="150px"| Идентификатор | ||
+ | ! width="100px"| Тип | ||
+ | ! Описание | ||
+ | |- | ||
+ | | <center>A</center> || <center>ID</center> || integer || ID объекта в секций ''OBJS'' или ''TOBJ'' | ||
+ | |- | ||
+ | | <center>B,C,D</center> || <center>X, Y, Z</center> || float[3] || Позиция эффекта | ||
+ | |- | ||
+ | | <center>E,F,G,H</center> || <center>R, G, B</center> || integer[3] || Цвет эффекта + значение альфа-канала | ||
+ | |- | ||
+ | | <center>I</center> || <center>2DFX type</center> || integer || Тип 2DFX. Для "Particles" всегда равен единице | ||
+ | |- | ||
+ | | <center>J</center> || <center>Particle</center> || integer || Типы частиц ([[IDE#Типы частиц|см. ниже]]) | ||
+ | |- | ||
+ | | <center>K,L,M</center> || <center>X2, Y2, Z2</center> || float[3] || Направление (вектор) движения эффекта | ||
+ | |- | ||
+ | | <center>N</center> || <center>Size</center> || float || Размер частицы | ||
+ | |} | ||
+ | |||
+ | ====Типы частиц==== | ||
+ | |||
+ | {| {{таблица}} | ||
+ | ! {{Icon|3}} || {{Icon|VC}} | ||
+ | |- | ||
+ | | colspan="2" | <center>0</center> || Небольшой белый дым | ||
+ | |- | ||
+ | | colspan="2" | <center>1</center> || Небольшой белый дым | ||
+ | |- | ||
+ | | colspan="2" | <center>2</center> || Большой белый дым | ||
+ | |- | ||
+ | | colspan="2" | <center>3</center> || Огонь | ||
+ | |- | ||
+ | | colspan="2" | <center>4</center> || Чёрный дым | ||
+ | |- | ||
+ | | <center>-</center> || <center>5</center> || Фонтан | ||
+ | |- | ||
+ | | <center>-</center> || <center>6</center> || Брызги воды | ||
+ | |} | ||
+ | |||
+ | =====Type 2: Unknown===== | ||
+ | Для чего используется этот тип - неизвестно. Используется в GTA III, но возможно работает и для GTA VC. Нажмите [[Медиа:2dfxType2.jpg|сюда]], чтобы посмотреть расположения объектов этого типа на карте GTA III. | ||
+ | |||
+ | {|{{Таблица}} width="100%" | ||
+ | ! width="36px"| {{Icon|3}} {{Icon|VC}} | ||
+ | ! width="150px"| Идентификатор | ||
+ | ! width="100px"| Тип | ||
+ | ! Описание | ||
+ | |- | ||
+ | | <center>A</center> || <center>ID</center> || integer || | ||
+ | |- | ||
+ | | <center>B,C,D</center> || <center>X, Y, Z</center> || float[3] || | ||
+ | |- | ||
+ | | <center>E,F,G</center> || <center>R, G, B</center> || integer[3] || | ||
+ | |- | ||
+ | | <center>H</center> || <center>''unknown''</center> || integer || Обычно 63 или 200 | ||
+ | |- | ||
+ | | <center>I</center> || <center>2DFX type</center> || integer || Всегда 2 | ||
+ | |- | ||
+ | | <center>J</center> || <center>''unknown''</center> || integer || | ||
+ | |- | ||
+ | | <center>K,L,M</center> || <center>''unknown''</center> || float[3] || | ||
+ | |- | ||
+ | | <center>N</center> || <center>''unknown''</center> || integer || | ||
+ | |} | ||
+ | |||
+ | ======Type 3: Peds====== | ||
+ | Тип назначает некоторые действия педу на заданном объекте. | ||
+ | |||
+ | {|{{Таблица}} width="100%" | ||
+ | ! width="36px"| {{Icon|VC}} | ||
+ | ! width="150px"| Идентификация | ||
+ | ! width="100px"| Тип | ||
+ | ! Описание | ||
+ | |- | ||
+ | | <center>A</center> || <center>ID</center> || integer || ID объекта в секций ''OBJS'' или ''TOBJ'' | ||
+ | |- | ||
+ | | <center>B,C,D</center> || <center>X, Y, Z</center> || float[3] || X, Y, и Z координаты, центр расположения объекта | ||
+ | |- | ||
+ | | <center>E,F,G</center> || <center>R, G, B</center> || integer[3] || Цвета | ||
+ | |- | ||
+ | | <center>H</center> || <center>''unknown''</center> || integer || Неизвестно, всегда 0 или 200 | ||
+ | |- | ||
+ | | <center>I</center> || <center>2DFX type</center> || integer || всегда 3 для PEDS | ||
+ | |- | ||
+ | | <center>J</center> || <center>Behavior</center> || integer || Тип поведения ([[IDE#Типы поведения|см. ниже]]) | ||
+ | |- | ||
+ | | <center>K,L,M</center> || <center>unk1, unk2, unk3</center> || float[3] || Неизвестно (игнорируются?) | ||
+ | |- | ||
+ | | <center>N,O,P</center> || <center>RotX, RotY, RotZ</center> || float[3] || Поворот педа во время проигрывания его анимации | ||
+ | |} | ||
+ | |||
+ | ====Типы поведения==== | ||
+ | {| {{Таблица}} | ||
+ | | 0 | ||
+ | | Пользование банкоматом | ||
+ | |- | ||
+ | | 1 | ||
+ | | Сесть на некоторое время, отойти в сторону и уйти | ||
+ | |- | ||
+ | | 2 | ||
+ | | Ожидание автобуса; дополнительные пешеходы будут выстраиваться друг за другом | ||
+ | |- | ||
+ | | 3 | ||
+ | | Постоять некоторое время и уйти (например - поведение в магазине) | ||
+ | |- | ||
+ | | 4 | ||
+ | | Неизвестно | ||
+ | |} | ||
+ | |||
+ | =====Формат GTA SA===== | ||
+ | В данной серий игры, 2dfx используется внутри [[DFF]] модели. | ||
+ | Подробнее об этом написано в статье - [[2DFX (Секция RW)]] | ||
+ | |||
+ | =====Формат GTA 4===== | ||
+ | В данной серий игры, 2dfx используется внутри [[WDR]] модели. | ||
+ | |||
+ | ==Флаги Объектов== | ||
+ | Флаги объектов в GTA3, GTA VC, GTA SA и GTA4 - UInt32-Значения (Впрочем как и все другие флаги). Чтобы лучше их понять нужно представить их в двоичном виде. Вы получите битовые маски флагов. 1 означает, что параметр используется для данной модели, 0 - игнорируется. | ||
+ | |||
+ | Чтобы использовать несколько флагов, нужно указать их сумму, например: | ||
+ | |||
+ | 01 + 10 = 11 | ||
+ | 1 + 2 = 3 | ||
+ | |||
+ | ===[[Изображение:Gta3.png|16px]] GTA 3=== | ||
+ | {| class="wikitable" | ||
+ | ! Биты !! Dec !! Hex !! Имя !! Описание !! Примеры моделей | ||
+ | |- | ||
+ | | 0 || 1 || 0x1 || - || Не рендерить модель, если игрок не смотрит в её сторону? Читается, но не используется (игнорируется). || Заборы | ||
+ | |- | ||
+ | | 1 || 2 || 0x2 || DO_NOT_FADE || Обьект появляется и пропадает мгновенно, а не плавно. || Некоторые фонари | ||
+ | |- | ||
+ | | 2 || 4 || 0x4 || DRAW_LAST || Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. || Деревья | ||
+ | |- | ||
+ | | 3 || 8 || 0x8 || ADDITIVE || Рендерить модель с additive (цвета суммируются) альфа-смешиванием (возможно, этот эффект наблюдается только при появлении/исчезновении обьекта). Предыдущий флаг также должен быть включен. || | ||
+ | |- | ||
+ | | 4 || 16 || 0x10 || IS_SUBWAY || Модель - туннель. Этот флаг работает только на статических моделях. || Туннели, некоторые динамические обьекты | ||
+ | |- | ||
+ | | 5 || 32 || 0x20 || IGNORE_LIGHTING || Модель освещается динамически (а не статически). || Некоторые фонари, светофоры | ||
+ | |- | ||
+ | | 6 || 64 || 0x40 || NO_ZBUFFER_WRITE || На момент рендера такой модели отключается запись в буфер глубины. || Тени | ||
+ | |} | ||
+ | |||
+ | ===[[Изображение:Vc.png|16px]] GTA Vice City=== | ||
+ | {| class="wikitable" | ||
+ | ! Биты !! Dec !! Hex !! Имя !! Описание !! Примеры моделей | ||
+ | |- | ||
+ | | 0 || 1 || 0x1 || IS_ROAD || Модель - дорога. На таких обьектах можно увидеть отражения от света. || Дороги | ||
+ | |- | ||
+ | | 1 || 2 || 0x2 || DO_NOT_FADE || Обьект появляется и пропадает мгновенно, а не плавно. || Некоторые ночные обьекты, North Point Mall | ||
+ | |- | ||
+ | | 2 || 4 || 0x4 || DRAW_LAST || Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. || Заборы, деревья | ||
+ | |- | ||
+ | | 3 || 8 || 0x8 || ADDITIVE || Рендерить модель с additive (цвета суммируются) альфа-смешиванием. Предыдущий флаг будет включен автоматически. || Ночные окна | ||
+ | |- | ||
+ | | 4 || 16 || 0x10 || - || Читается, но не используется. || Обьекты _dy, _dt | ||
+ | |- | ||
+ | | 5 || 32 || 0x20 || IGNORE_LIGHTING || Модель освещается динамически (а не статически). || Обьекты интерьера | ||
+ | |- | ||
+ | | 6 || 64 || 0x40 || NO_ZBUFFER_WRITE || На момент рендера такой модели отключается запись в буфер глубины. || Тени деревьев | ||
+ | |- | ||
+ | | 7 || 128 || 0x80 || DONT_RECEIVE_SHADOWS || Не рисовать динамические тени и проекции на этом обьекте. || Маленькие обьекты, пикапы, фонари, деревья | ||
+ | |- | ||
+ | | 8 || 256 || 0x100 || IGNORE_DRAW_DISTANCE || Игнорировать дистанцию прорисовки для этого обьекта (устанавливает текущий "уровень" (остров) на 0). || LOD модели, North Bridge | ||
+ | |- | ||
+ | | 9 || 512 || 0x200 || IS_GLASS_TYPE_1 || Ломающееся стекло (тип 1). Стекло разбивается, и его текстура изменяется. || Небольшие окна | ||
+ | |- | ||
+ | | 10 || 1024 || 0x400 || IS_GLASS_TYPE_2 || Ломающееся стекло (тип 2). Стекло разбивается без изменения текстуры. || Большие окна | ||
+ | |} | ||
+ | |||
+ | ===[[Изображение:Sa.png|16px]] GTA San Andreas=== | ||
+ | {| class="wikitable" | ||
+ | ! Биты !! Dec !! Hex !! Имя !! Описание !! Примеры моделей | ||
+ | |- | ||
+ | | 0 || 1 || 0x1 || IS_ROAD || Модель - дорога. || Дороги | ||
+ | |- | ||
+ | | 1 || 2 || 0x2 || - || Не читается, но присутствует в IDE файлах. || | ||
+ | |- | ||
+ | | 2 || 4 || 0x4 || DRAW_LAST || Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. || Заборы, деревья | ||
+ | |- | ||
+ | | 3 || 8 || 0x8 || ADDITIVE || Рендерить модель с additive (цвета суммируются) альфа-смешиванием. Предыдущий флаг будет включен автоматически. || Ночные окна | ||
+ | |- | ||
+ | | 4 || 16 || 0x10 || - || Не читается, '''не''' присутствует в IDE файлах. || - | ||
+ | |- | ||
+ | | 5 || 32 || 0x20 || || Работает только с анимированными обьектами (определяются в сеции IDE 'anim'). || Двери | ||
+ | |- | ||
+ | | 6 || 64 || 0x40 || NO_ZBUFFER_WRITE || На момент рендера такой модели отключается запись в буфер глубины. || Тени, проекции света | ||
+ | |- | ||
+ | | 7 || 128 || 0x80 || DONT_RECEIVE_SHADOWS || Не рисовать динамические тени и проекции на этом обьекте. || Маленькие обьекты, пикапы, фонари, деревья | ||
+ | |- | ||
+ | | 8 || 256 || 0x100 || - || Не читается, '''не''' присутствует в IDE файлах. || - | ||
+ | |- | ||
+ | | 9 || 512 || 0x200 || IS_GLASS_TYPE_1 || Ломающееся стекло (тип 1). Стекло разбивается, и его текстура изменяется. || Небольшие окна | ||
+ | |- | ||
+ | | 10 || 1024 || 0x400 || IS_GLASS_TYPE_2 || Ломающееся стекло (тип 2). Стекло разбивается без изменения текстуры. || Большие окна | ||
+ | |- | ||
+ | | 11 || 2048 || 0x800 || IS_GARAGE_DOOR || Модель - дверь гаража (объект должен быть прописан в object.dat). || Двери гаража | ||
+ | |- | ||
+ | | 12 || 4096 || 0x1000 || IS_DAMAGABLE || У модели есть нормальное/повреждённое (ok/dam) состояния. || Модели тюнинга, преграды | ||
+ | |- | ||
+ | | 13 || 8192 || 0x2000 || IS_TREE || Деревья и некоторые растения. Такие обьекты качаются на ветру. || Деревья, некоторые растения | ||
+ | |- | ||
+ | | 14 || 16384 || 0x4000 || IS_PALM || Пальмы. Такие обьекты качаются на ветру. || Пальмы | ||
+ | |- | ||
+ | | 15 || 32768 || 0x8000 || DOES_NOT_COLLIDE_WITH_FLYER || Не проверять на столкновение (коллизию) с летающими средствами? || Деревья, фонари, светофоры, дорожные знаки, телеграфный столб | ||
+ | |- | ||
+ | | 16 || 65536 || 0x10000 || - || Не читается, но присутствует в IDE файлах. || Взрывчатые вещества | ||
+ | |- | ||
+ | | 17 || 131072 || 0x20000 || - || Не читается, но присутствует в IDE файлах. || модели chopcop_ (тело полицейского) | ||
+ | |- | ||
+ | | 18 || 262144 || 0x40000 || - || Не читается, но присутствует в IDE файлах. || pleasure-DL.dff | ||
+ | |- | ||
+ | | 19 || 524288 || 0x80000 || - || Неиспользуемый тип специального обьекта. Читается, но '''не''' присутствует в IDE файлах. || - | ||
+ | |- | ||
+ | | 20 || 1048576 || 0x100000 || IS_TAG || Модель - граффити. || Граффити | ||
+ | |- | ||
+ | | 21 || 2097152 || 0x200000 || DISABLE_BACKFACE_CULLING || Текстура на такой модели рисуется с двух сторон треугольника. || Дороги, дома, деревья, модели тюнинга | ||
+ | |- | ||
+ | | 22 || 4194304 || 0x400000 || IS_BREAKABLE_STATUE || Обьект с такой моделью не может использоваться в качестве укрытия (педы не будут укрываться за этим обьектом). || Части статуи в атриуме | ||
+ | |} | ||
==Ссылки== | ==Ссылки== | ||
Строка 176: | Строка 635: | ||
− | + | {{GTA4-navi}}{{GTA_Stories-navi}}{{SA-navi}}{{VC-navi}}{{GTA3-navi}} | |
− | [[Категория:GTA 3]][[Категория:GTA VC]][[Категория:GTA SA]][[Категория:GTA 4]][[Категория:Маппинг]][[Категория:Форматы файлов]] | + | [[Категория:GTA 3]][[Категория:GTA VC]][[Категория:GTA SA]][[Категория:GTA LCS]][[Категория:GTA VCS]][[Категория:GTA 4]][[Категория:Маппинг]][[Категория:Форматы файлов]] |
Текущая версия на 07:31, 18 декабря 2017
Содержание |
Введение
Файлы Item DEfinition имеют расширение .ide и являются частью игрового движка серии GTA, поэтому присутствуют в GTA 3, GTA VC, GTA SA, GTA LCS (iOS/Android), GTA VCS (iOS/Android) и GTA4 в текстовом виде, в PS2/PSP-версиях GTA LCS и GTA VCS в бинарном. В *.ide
, к каждому объекту игры присваивается свой идентификатор (тэг), измеряющийся от 0 до 19999 (лимит ID можно уменьшать/увеличивать с помощью программы Limit Adjuster). В GTA 4 - ID не используются (вместо них напрямую используется имена объектов, которые хэшируются в игровой памяти).
В свою очередь, к каждому идентификатору, прописанному в ide, присваивается уникальная модель (*.dff
), архив текстур (*.txd
), использующийся моделью, дистанция и параметры рендеринга модели.
Все записи в *.ide
объединены в специальные секции, каждая из которых отвечает за определенный параметр. Примеры секций:
OBJectS - обычные объекты карты, TimeOBJects - временные объекты карты, ANIM - анимированные объекты карты, PEDS - пешеходы, WEAPons - оружие, CARS - транспортные средства, HIER - загрузочные слоты для кат-сцен, 2DFX - специальный 2D-эффект для объекта (более подробно о секциях IDE читай ниже).
Item Definition хранится в текстовом виде, может быть изменён как редакторами карты для GTA - MooMaper, MapEditor, так и любым текстовым редактором типа блокнота.
В IDE можно встретить специальные символы - "#" или ";", после которых идёт закомментированный текст - это либо комментарии разработчиков, либо закомментированные части ide, по определённым причинам убранные из загрузки игры. Любой текст, записанный после знака комментария до конца строки, игнорируется игровым движком GTA.
Структура
Файлы .ide разделены на секции. Они могут быть не обязательны, или даже могут быть пустыми. Каждая секция начинается с идентификатора секции и заканчивется ключевым словом end. Строка секции разделяется запятыми, между которыми записаны значения каждой ячейки строки. Каждая ячейка может содержать либо целое или дробное число, либо одно слово.
Пример:
objs ... end
OBJS
Обычные объекты карты.
- ModelId
- DWORD
- Уникальный идентификатор модели - целое число. Для PS2/PSP-версии сториесов значение вычисляется.
- ModelName
- string[24]
- Название модели (в большинстве случаев - имя соответствующего .wdr- или .wft-файла для GTA4, dff-файла для GTA3, GTA VC, GTA SA, GTA LCS, GTA VCS (без расширения)).
- TexDictName
- string[24]
- Название архива с текстурами (имя соответствующего wtd-файла для GTA4, txd-файла для GTA3, GTA VC, GTA SA, GTA LCS, GTA VCS (без разширения), NULL в случае отсутствия текстур на модели), generic в случае использования generic-текстур (находятся вне .IMG архива).
- ObjectCount
- DWORD
- Количество объектов в dff, отображающихся отдельно друг от друга
- DrawDist
- float
- Дистанция прорисовки объекта на карте относительно координат экрана.
- Flags
- DWORD
- Специальные параметры отображения объекта, значение по умолчанию '0'. См. раздел "Флаги Объектов".
- FlagsAdd
- DWORD
- Дополнительные параметры объекта, значение по умолчанию '0'.
- AABB.Min.X, AABB.Min.Y, AABB.Min.Z
- float[3]
- Минимальная угловая точка Min AABB-коробки.
- AABB.Max.X, AABB.Max.Y, AABB.Max.Z
- float[3]
- Максимальная угловая точка Max AABB-коробки.
- BoundSphereCenter.X, BoundSphereCenter.Y, BoundSphereCenter.Z
- float[3]
- Центр ограничивающей сферы.
- BoundingSphereRadius
- float
- Радиус ограничивающей сферы.
- WddName
- string[24]
- Название архива моделей (wdd-файла) в котором находится модель. Если модель располагается в .wdr- или .wft-файле, то текущий параметр имеет значение 'null'.
- PS2/PSP hashname
- hex[4]
- Хешированное имя игрового объекта по CRC-алгоритму.
- PS2/PSP TextureID
- DWORD
- Уникальный идентификатор текстуры - целое число.
- PS2/PSP SectionType
- BYTE
- Тип секции загруженного объекта - cars, peds, weap, objs, hier и т.д.
- PS2/PSP 2dfxcount
- BYTE
- Количество строк из секции 2dfx, используемые для объекта.
- PS2/PSP Co11.offset
- WORD
- Переход на модель столкновений объекта.
- PS2/PSP 2dfxID
- WORD
- ID строки секции 2dfx, с которой начинается чтение эффектов для объекта.
- PS2/PSP hashsecID
- DWORD
- Хэшированное имя секции по CRC-алгоритму (назначение неизвестно).
- Bully
- 0, 1, 0, 255, 0, 0, 0
- DWORD[7]
- Дополнительная часть строки OBJ и TOBJ
TOBJ
Временные Объекты Карты, используется для определения объектов карты, которые видны только в определенное время суток. Например свет от окон.
Формат GTA III, VC, SA, LCS, VCS
ModelId, ModelName, TextureName, ObjectCount, DrawDist, [DrawDist2, ...], Flags, TimeOn, TimeOff
- ModelId, ModelName, TextureName, ObjectCount, DrawDist, Flags
- аналогично секции OBJS
- TimeOn
- время активации в часах (целое)
- TimeOff
- время деактивации в часах (целое)
Формат PS2/PSP-версий GTA LCS и VCS
В консольных сториесах секция TOBJ перенесена в LevelZLib и применяется непосредственно для объектов внутри уровня (подробнее читай статью LVZ).
Формат 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
ModelId, ModelName, TextureName, AnimName, DrawDist, Flags
- ModelId, 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 VCS туда записаны и специальные актёры (почему-то разработчики не стали экономить память ПСП и использовать для них слоты специальных актёров).
Формат GTA III
ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex)
Формат GTA VC, GTA LCS, GTA VCS
ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex), animFile, radio1, radio2
Формат GTA SA
ModelId, ModelName, TextureName, PedType, PedStats, Animation, CarsCanDriveMask (in hex), animFile, radio1, radio2, VoiceArchive, Voice1, Voice2
Формат PS2/PSP-версий GTA LCS и VCS
(ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], 2dfxID or F***[2], F***[2], 0[2], TextureID[2], [65535[4]], hashsecID[4], 0[4], DrawDist[4], animgroupID[4], pedtypeID[4], pedstatID[4], pedflags[4], 0[4], unknowflags[4], [block_co1...]
WEAP
Оружие - модели оружия, включая зарезервированный ID на кулаки.
Формат GTA III, GTA VC, GTA SA, GTA LCS, GTA VCS
ModelId, ModelName, TextureName, Animation, unused, DrawDistance, unused
- Animation
- Значения берутся из файла ped.ifp, тип анимации при использовании оружия.
Формат PS2/PSP-версий GTA LCS и VCS
(ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], 2dfxID or F***[2], F***[2], 0[2], TextureID[2], [65535[4]], hashsecID[4], 0[4], DrawDist[4], 0[8], 65281[4], weaponslotID[4], weapontype[4]
CARS
Авто - модели транспорта - автомобили, лодки, вертолёты, мотоциклы и т.д.
Формат GTA III
ModelId, ModelName, TextureName, Type, HandlingID, GameName, Class, Frequency, Level, Comprules, WheelModelId, WheelScale
Формат GTA VC
ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, Class, Frequency, Level, Comprules, WheelModelId, WheelScale
Формат GTA SA
ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, Class, Frequency, Level, Comprules, WheelModelId, WheelScale_Front, WheelScale_Rear, WheelUpgradeClass
Формат GTA LCS, GTA VCS
ModelId, ModelName, TextureName, Type, HandlingID, GameName, AnimGroup, Class, Frequency, Level, Comprules, WheelModelId, WheelScale, AmountNormals
- ModelId, ModelName, TextureName
- аналогично секции OBJS
- Type
- тип транспорта - car, boat, train, heli, plane, bike, trailer, bmx, quad, mtruck. Загрузка этих данных в игре реализована с помощью "hardcoded functions" (что по-нашему через _опу) и может быть изменена только через редактирование Gta3.exe
- HandlingID
- Имена настроек физической модели транспорта. Значения берутся из handling.cfg
- GameName
- Игровое имя транспортного средства из .gxt файла. Чувствительно к регистру и должно иметь семь символов или меньше.
- AnimGroup
- имя группы анимаций, определяющих анимации входа, выхода, вождения транспортного средства из IFP
- Class
- определяет классность транспорта
- Frequency
- частота появления транспорта в городском трафике
- Level
- ?
- Comprules
- флаг, определяющий особенности авто
HEX-значение | Эффект значения | Транспорт, на котором используется |
---|---|---|
0 | у авто нет особенностей | |
0x1f10 | На авто в игре всегда присутствует одна из двух экстра-деталей | Taxi, Cabbie, Hoods Rumpo XL, Borgnine, Zebra Cab, Kaufman Cab |
0x2ff0 | На авто в дождливую погоду всегда присутствует одна экстра-деталь | Stinger, Stallion, Sabre, Sabre Turbo, Comet, Deluxo |
0x4fff | Flatbed, Hotring A, Hotring B, Bloodring Banger A, Bloodring Banger B | |
0x30123345 | Caddy |
- WheelModelId
- Идентификатор колеса. Недоступен для типов boat и train. Для типа plane - идентификатор LOD-а модели. В GTA SA заменён на указатель масштабирования модели (-1 - колесо не масштабируется, 0 - масштабируется, коллизия колеса масштабируется всегда).
- WheelScale
- Множитель масштаба колеса. Недоступен для типов boat, train и plane. Для GTA SA состоит из двух множителей - для передних и задних колёс
- WheelUpgradeClass
- идентификаторы из carmods.dat
Формат PS2/PSP-версии GTA LCS
(ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], 2dfxID or F***[2], F***[2], 0[2], TextureID[2], hashsecID[4], 0[4], DrawDist[4], 0[2], gamename[14], wheelsize[4], wheelID[2], handlingID[2], dorsCount[1], ClassID[1], Level[1], 0[1], Frequency[1], 0[7], block_XYIrarXYI[5x16], 0[4], 999.(9)[4], block_unknow[200], block_co1[8], co1_total[1], unknow[15]
Формат PS2/PSP-версии GTA VCS
(ModelId), 0[8], hashname[4], 0[4], SectionType[1], 2dfxcount[1], ParamRender[2], Co11.offset[4], 2dfxID or F***[2], F***[2], 0[2], TextureID[2], 65535[4], hashsecID[4], 0[4], DrawDist[4], ...
PATH
В GTA III и GTA LCS система путей используется только в IDE файлах. Пути расположены по центру объекта. Точки дают направление пешеходам и автомобилям.
Лимит количества строк в одном блоке - 12. Если добавить 13, то игра зависнет.
Формат GTA III - первая секция:
Path Type, ID, Object Name
- Path Type - Тип пути для первой секций. Всего существует два типа - ped и car.
- ID - Идентификатор объекта
- ObjectName - Имя объекта, которому присвоен ID. Не используется.
// CFileLoader::LoadObjectTypes - загрузка обьекта PATH case OBJECT_PATH: if(number == -1) // чтение первой секции { objId = LoadPathInfo(lineBuf, pathType); if(!strncmp(pathType, "ped", 4) pathTypeId = PATH_TYPE_PED; else if(!strncmp(pathType, "car", 4) pathTypeId = PATH_TYPE_CAR; number = 0; } else // чтение второй секции { if(pathTypeId == PATH_TYPE_PED) SetupPedPath(lineBuf, objId, number); else if(pathTypeId == PATH_TYPE_CAR) SetupCarPath(lineBuf, objId, number); ++number; if(number == 12) number = -1; } break;
// LoadPathInfo int LoadPathInfo(const char *line, char *type) { char objName[96]; int objId; sscanf(line, "%s %d %s", type, &objId, objName); return objId; }
Формат GTA III - вторая секция:
Node Type, Link To, Unkn1, X, Y, Z, Unkn2, Lanes1, Lanes2
- Node Type - Типы точки. Всего 3 типа - None, Middle и End.
- Joins to Next Node -
- Unkn1 -
- Unkn2 -
- Lanes1 -
- Lanes2 -
HIER
Формат GTA III, GTA VC, GTA LCS, GTA VCS
ID, ModelName, TextureName
Формат SA
ID, ModelName, TextureName, null, DrawDistance
TXDP
TXDP(Texture Archive Parent) - Одна из секции в IDE файле. Она используется для указания имя текстуры вне архива, где хранятся часто используемые текстуры на карте.
Структура
|
|
| |
---|---|---|---|
|
|
string | Имя .txd/.wtd child текстуры.
|
|
|
string | Имя .txd/.wtd родителя текстуры.
|
Пример использования данной секции:
txdp my_child_texture,my_parent_texture end
2DFX
2DFX используется для расстановки 2D эффектов (например: свет) и поведение педов на объектах. Если игра загружает слишком много эффектов в этой секции, то возможны некоторые артефакты, а точнее некоторые эффекты могут не появиться вообще или долго будут загружаться.
В PS2/PSP-версиях GTA LCS и VCS данная секция хранится в двоичном виде и ничем не отличается от текстового, описанного ниже.
Формат GTA III, GTA VC, GTA LCS, GTA VCS
Type 0: Lights
Создаёт источник света на объект.
Типы вспышек
0 | Горит всё время |
1 | Горит всю ночь |
2 | Мерцает всё время |
3 | Мерцает всю ночь |
4 | Вспышка за одну секунду |
5 | Вспышка за одну секунду (только ночью) |
6 | Вспышка за две секунды |
7 | Вспышка за две секунды (только ночью) |
8 | Вспышка за три секунды |
9 | Вспышка за три секунды (только ночью) |
10 | Случайные мерцания |
11 | Случайные мерцания ночью |
12 | Параметры светофора |
Светофор без 12 типа в 2DFX может привести игру к вылету.
Type 1: Particles
Этим типом 2dfx можно создать эффект частиц на модели.
Идентификатор | Тип | Описание | |
---|---|---|---|
|
|
integer | ID объекта в секций OBJS или TOBJ |
|
|
float[3] | Позиция эффекта |
|
|
integer[3] | Цвет эффекта + значение альфа-канала |
|
|
integer | Тип 2DFX. Для "Particles" всегда равен единице |
|
|
integer | Типы частиц (см. ниже) |
|
|
float[3] | Направление (вектор) движения эффекта |
|
|
float | Размер частицы |
Типы частиц
|
Небольшой белый дым | |
|
Небольшой белый дым | |
|
Большой белый дым | |
|
Огонь | |
|
Чёрный дым | |
|
|
Фонтан |
|
|
Брызги воды |
Type 2: Unknown
Для чего используется этот тип - неизвестно. Используется в GTA III, но возможно работает и для GTA VC. Нажмите сюда, чтобы посмотреть расположения объектов этого типа на карте GTA III.
Type 3: Peds
Тип назначает некоторые действия педу на заданном объекте.
Идентификация | Тип | Описание | |
---|---|---|---|
|
|
integer | ID объекта в секций OBJS или TOBJ |
|
|
float[3] | X, Y, и Z координаты, центр расположения объекта |
|
|
integer[3] | Цвета |
|
|
integer | Неизвестно, всегда 0 или 200 |
|
|
integer | всегда 3 для PEDS |
|
|
integer | Тип поведения (см. ниже) |
|
|
float[3] | Неизвестно (игнорируются?) |
|
|
float[3] | Поворот педа во время проигрывания его анимации |
Типы поведения
0 | Пользование банкоматом |
1 | Сесть на некоторое время, отойти в сторону и уйти |
2 | Ожидание автобуса; дополнительные пешеходы будут выстраиваться друг за другом |
3 | Постоять некоторое время и уйти (например - поведение в магазине) |
4 | Неизвестно |
Формат GTA SA
В данной серий игры, 2dfx используется внутри DFF модели. Подробнее об этом написано в статье - 2DFX (Секция RW)
Формат GTA 4
В данной серий игры, 2dfx используется внутри WDR модели.
Флаги Объектов
Флаги объектов в GTA3, GTA VC, GTA SA и GTA4 - UInt32-Значения (Впрочем как и все другие флаги). Чтобы лучше их понять нужно представить их в двоичном виде. Вы получите битовые маски флагов. 1 означает, что параметр используется для данной модели, 0 - игнорируется.
Чтобы использовать несколько флагов, нужно указать их сумму, например:
01 + 10 = 11 1 + 2 = 3
GTA 3
Биты | Dec | Hex | Имя | Описание | Примеры моделей |
---|---|---|---|---|---|
0 | 1 | 0x1 | - | Не рендерить модель, если игрок не смотрит в её сторону? Читается, но не используется (игнорируется). | Заборы |
1 | 2 | 0x2 | DO_NOT_FADE | Обьект появляется и пропадает мгновенно, а не плавно. | Некоторые фонари |
2 | 4 | 0x4 | DRAW_LAST | Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. | Деревья |
3 | 8 | 0x8 | ADDITIVE | Рендерить модель с additive (цвета суммируются) альфа-смешиванием (возможно, этот эффект наблюдается только при появлении/исчезновении обьекта). Предыдущий флаг также должен быть включен. | |
4 | 16 | 0x10 | IS_SUBWAY | Модель - туннель. Этот флаг работает только на статических моделях. | Туннели, некоторые динамические обьекты |
5 | 32 | 0x20 | IGNORE_LIGHTING | Модель освещается динамически (а не статически). | Некоторые фонари, светофоры |
6 | 64 | 0x40 | NO_ZBUFFER_WRITE | На момент рендера такой модели отключается запись в буфер глубины. | Тени |
GTA Vice City
Биты | Dec | Hex | Имя | Описание | Примеры моделей |
---|---|---|---|---|---|
0 | 1 | 0x1 | IS_ROAD | Модель - дорога. На таких обьектах можно увидеть отражения от света. | Дороги |
1 | 2 | 0x2 | DO_NOT_FADE | Обьект появляется и пропадает мгновенно, а не плавно. | Некоторые ночные обьекты, North Point Mall |
2 | 4 | 0x4 | DRAW_LAST | Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. | Заборы, деревья |
3 | 8 | 0x8 | ADDITIVE | Рендерить модель с additive (цвета суммируются) альфа-смешиванием. Предыдущий флаг будет включен автоматически. | Ночные окна |
4 | 16 | 0x10 | - | Читается, но не используется. | Обьекты _dy, _dt |
5 | 32 | 0x20 | IGNORE_LIGHTING | Модель освещается динамически (а не статически). | Обьекты интерьера |
6 | 64 | 0x40 | NO_ZBUFFER_WRITE | На момент рендера такой модели отключается запись в буфер глубины. | Тени деревьев |
7 | 128 | 0x80 | DONT_RECEIVE_SHADOWS | Не рисовать динамические тени и проекции на этом обьекте. | Маленькие обьекты, пикапы, фонари, деревья |
8 | 256 | 0x100 | IGNORE_DRAW_DISTANCE | Игнорировать дистанцию прорисовки для этого обьекта (устанавливает текущий "уровень" (остров) на 0). | LOD модели, North Bridge |
9 | 512 | 0x200 | IS_GLASS_TYPE_1 | Ломающееся стекло (тип 1). Стекло разбивается, и его текстура изменяется. | Небольшие окна |
10 | 1024 | 0x400 | IS_GLASS_TYPE_2 | Ломающееся стекло (тип 2). Стекло разбивается без изменения текстуры. | Большие окна |
GTA San Andreas
Биты | Dec | Hex | Имя | Описание | Примеры моделей |
---|---|---|---|---|---|
0 | 1 | 0x1 | IS_ROAD | Модель - дорога. | Дороги |
1 | 2 | 0x2 | - | Не читается, но присутствует в IDE файлах. | |
2 | 4 | 0x4 | DRAW_LAST | Модель прозрачна (или некоторые материалы/текстуры прозрачны). Такая модель будет отрендерена после всех "непрозрачных" обьектов. | Заборы, деревья |
3 | 8 | 0x8 | ADDITIVE | Рендерить модель с additive (цвета суммируются) альфа-смешиванием. Предыдущий флаг будет включен автоматически. | Ночные окна |
4 | 16 | 0x10 | - | Не читается, не присутствует в IDE файлах. | - |
5 | 32 | 0x20 | Работает только с анимированными обьектами (определяются в сеции IDE 'anim'). | Двери | |
6 | 64 | 0x40 | NO_ZBUFFER_WRITE | На момент рендера такой модели отключается запись в буфер глубины. | Тени, проекции света |
7 | 128 | 0x80 | DONT_RECEIVE_SHADOWS | Не рисовать динамические тени и проекции на этом обьекте. | Маленькие обьекты, пикапы, фонари, деревья |
8 | 256 | 0x100 | - | Не читается, не присутствует в IDE файлах. | - |
9 | 512 | 0x200 | IS_GLASS_TYPE_1 | Ломающееся стекло (тип 1). Стекло разбивается, и его текстура изменяется. | Небольшие окна |
10 | 1024 | 0x400 | IS_GLASS_TYPE_2 | Ломающееся стекло (тип 2). Стекло разбивается без изменения текстуры. | Большие окна |
11 | 2048 | 0x800 | IS_GARAGE_DOOR | Модель - дверь гаража (объект должен быть прописан в object.dat). | Двери гаража |
12 | 4096 | 0x1000 | IS_DAMAGABLE | У модели есть нормальное/повреждённое (ok/dam) состояния. | Модели тюнинга, преграды |
13 | 8192 | 0x2000 | IS_TREE | Деревья и некоторые растения. Такие обьекты качаются на ветру. | Деревья, некоторые растения |
14 | 16384 | 0x4000 | IS_PALM | Пальмы. Такие обьекты качаются на ветру. | Пальмы |
15 | 32768 | 0x8000 | DOES_NOT_COLLIDE_WITH_FLYER | Не проверять на столкновение (коллизию) с летающими средствами? | Деревья, фонари, светофоры, дорожные знаки, телеграфный столб |
16 | 65536 | 0x10000 | - | Не читается, но присутствует в IDE файлах. | Взрывчатые вещества |
17 | 131072 | 0x20000 | - | Не читается, но присутствует в IDE файлах. | модели chopcop_ (тело полицейского) |
18 | 262144 | 0x40000 | - | Не читается, но присутствует в IDE файлах. | pleasure-DL.dff |
19 | 524288 | 0x80000 | - | Неиспользуемый тип специального обьекта. Читается, но не присутствует в IDE файлах. | - |
20 | 1048576 | 0x100000 | IS_TAG | Модель - граффити. | Граффити |
21 | 2097152 | 0x200000 | DISABLE_BACKFACE_CULLING | Текстура на такой модели рисуется с двух сторон треугольника. | Дороги, дома, деревья, модели тюнинга |
22 | 4194304 | 0x400000 | IS_BREAKABLE_STATUE | Обьект с такой моделью не может использоваться в качестве укрытия (педы не будут укрываться за этим обьектом). | Части статуи в атриуме |
Ссылки
- Описание IDE в GTA VC – топик ODIE на форуме GTAForums.соm, детали IDE-файлов в GTA VC.
- Документация GTA3/VC – топик Opius на форуме GTAForums.соm, описание IDE- и прочих файлов III/VC.