С сегодяшнего дня постараюсь совместно со следующей своей работой по конвертации AUDI A6 из NFS 4 в GTA VC выполняя поэтапно работы, сделать хелп по этой самой конвертации.

Это будет выглядеть в форме небольших уроков лекция с примерами. ИТАК:

 УРОК 1: Используемые программы.

Используемые программы: все эти программы Вы можете найти тут http://ruslev.nm.ru в разделе программы

1. ZModeler 1.07b - последняя версия 3D Редактора.
2.
DFF plugin для GTA VCКачать обязательно даже для последней версии Zmodeller, установить в папку Zmodeller\Filters\.......
3. ResHack -  распаковка текстур из
TXD файла в формате TGA
4.
IMG ToolsУпаковка и распаковка TXD и DFF модели из файла GTA3.IMG
5. TXD Tools – работа с
TXD файлом, импорт и экспорт текстур в формате BMP.
6. TXD GOLD 2 и
TXD WORKSHOPБолее мощная работа с TXD файлом, создание, редактирование, изменение имени текстуры напрямую в TXD файле, установка текстур в 32 Битном цвете, Импорт и Экспорт текстур.
7. ViVMAGIC – Распаковка
ViV файлов (упаковка авто в формате NFS 4)
8.
Vice City GXT EditorРедактирование GXT файлов, содержащих тексты с именами машин в игре
9. Adobe Photoshop - или Другой графический редактор – редактирование текстур.
10. DFF Viewer - Предпросмотр DFF файла
11.
DeAR2 - Распаковка AR файлов (упаковка авто в формате Midtown Madness 2)
12.
CarEdредактирование настроек машин в файле handling.cfg
 

УРОК 2: Поиск модели для NFS 4, распаковка VIV файла , запуск, настройка и экспортирование  FCE модели (формат NFS 4) авто в программу Zmodeller 1.07b.

1. Самый большой сайт с моделями для NFS4 http://nfscars.com и Midtown Madness 2 http://www.mm2.gamigo.de/ , здесь Вы найдете огромное количество моделей от самых известных до самых неизвестных, хороших и плохих, а также русские модели машин. P.S.: не забывайте спросить у автора разрешение на конвертацию его модели авто.

2. Скачав модель распакуёте её и оцените содержимое архива на предмет принадлежности к игре или это к NFS4 (должен быть ViV файл) или к MM2 (должен быть AR файл в папке GEOMETRY).

3. Далее запускаем ViVMAGIC (DeAR2 для MM2)  и загружаем распакованную модель, в ViVMAGIC она автоматически распакуется (в DeAR2 нужно нажать EXTRACT), далее выбираем и копируем в отдельную папку все файлы с расширением FCE и TGA (саг00.fce, car00.tga и т.д.) для NFS4, а для MM2 все файлы с расширением PKG (из папки Geometry) и TGA (из папки Texture, тут заодно можно и BMP файлы).

4. Запускаем Zmodeller 1.07b, жмем File\Import (Ctrl+I) выбираем из папки созданной после распаковки ViV/PKG файлов модель авто (если их несколько берите лучший на ваш взгляд) по умолчанию в Занозе стоит «Все форматы файлов», так что не надо отдельно выбирать между NFS4 или ММ2.

5. После загрузки модели, тут бывают накладки, то модель не открывается, то открывшись вылетает, то еще что, универсального рецепта нет, пробуйте всё опыт покажет, что почём, но лучше её сохранить в формат Zmodellera Z3D, жмем File\Save и сохраняем под удобным для Вас именем (прим: AUDI A6.z3d)

Экспортирование моделей машин из NFS HP2 (NFS 6)

Появилась возможность переносить модели из NFS HP2 (NFS6)в GTA VC (3) с помощью некоторых ниже указанных утилит и плугинов:
Тут http://oedit.nd4spdworld.com/site/index.php?ms=oiftool&ss=dl
находится OIFTool 1.0 он преобразует О-формат НФС6 в OIF формат который понимают многие 3D-программы, а также там же лежит плугин для Zmodeler  который позволяемт последнему открывать (экспорт/импорт) файлы с расширением OIF ну и соответственно их редактировать.
Чуть было незабыл, чтобы вытащить текстуры надо использовать прогу FSHTools можно скачать с любого NFS'овского сайта или тут http://www.nfscars.net/tools.php?page=nfs6
Правда она под ДОС но это не проблемма кидаете, ***.fsh файл вместе с fshtools.exe
и в командной строке любого проводника пишем fshtools.exe car.fsh (через пробел) и жмем Enter всё у нас появилась директория с BMP файлами, теперь их можно переконвертировать любым графическим редактором в формат TGA (Нужен для Занозы) предварительно переименовав иемена текстур в те кототрые указаны будут в Material Editore Занозы (смотреть названия текстур надо заранее, до основной работы с моделью) (
skin и wl00).

УРОК 3: Настройка программы Zmodeler, Удаление лишних деталей. Настройка текстур.

1. После загрузки модели в Zmodeller, необходимо настроить её на нормальную работу, примерный вид окна: Обязательно должны быть видны окна: Numeric Bar #1; Main ToolBox; Objects, ну и естественно сами окна 2D и 3D проекции: Front, Right, Top, User View либо другие на Ваше усмотрение.



Необходимо также проверить настройку в Options\Normals и убрать там все галочки если есть. Так как эти опции сильно влияют на формирование нормалей и если включены то при редактировании, вырезке деталей, их склеивании, у Вас обязательно Нормали будут меняться, что негативно скажется на внешнем виде автомобиля.

Остальное на качество работы сильно не влияет, а скорее влияет на работу программы её быстродействие и удобство, так что оставим эти изменения на Ваше усмотрение и вкус.
Дополнительно стоит настроить отображения модели в окнах, в частности показать сетку полигонов (Wireframe) правой клавишей на значке к примеру User View > Setting\Shde, Fill\Wireframe\Enable или нажать клавишу "W". Там же Вы можете найти много разных нужных и не очень для себя настроек окна показа.


2. Загрузив модель автомобиля зразу необходимо настроить его для дальнейшей работы, т.е. удалить все ненужные объекты и детали сопутствующие модели созданной для NFS4.
Ими являются объекты с названием Dummy:xxxxxxx (вместо х идут разные зависимые названия), а также могут быть и другие детали которые можно определить самостоятельно нужны они или нет, можно будет только оставить коробочную модель машины для последующего присвоения ей имени chassis_vlo (это отображение машины на удалении, в основном применяется упрощенная коробка модели если ориентируется на маломощный компьютер). Удалять можно выбрав деталь и нажав клавишу DEL или непосредственно в окне Objects правой клавишей мышки выбрав пункт Delete.

Таким образом удалив ненужные детали у Вас остаются только те что необходимы в работе. Тоже самое с одним отличием в названиях и отсутствия Dummy объектов (заглушек)  стоит проделать и для модели загруженной из MM2.
Главное тут сильно не переусердствовать, иной раз лучше удалить деталь позже, когда уже станет ясно нужна она или нет.

3. Настройка текстур:
В начале загрузим текстуры в Material Editor жмем View\Textures Management\Textures Browser там Add и выбираем обязательный текстуры whitea128.tga текстура битого стекла и white64.tga текстура битой поверхности, а также текстура хрома chrome.tga (взять эти текстуры можно из готового TXD файла вытащив их предварительно с помощью программы GTAResHack и скопировав в папку с Вашей машиной). Они должны быть в формате TGA.

Далее жмём E (Material Editor) там выбрав выбрав текстуру car00.tga делаем 4 (четыре) копии этой текстуры к двум из которых подписываем в конце [prim] и  [sec], это нужно для того если в игре ваша машина должна будет, в одном из вариантов, белые бамперы и синий корпус, а в другом зеленый корпус и желтые бамперы, то вам нужно будет добавить к названию цвета корпуса [prim] а к названию цвета бампера [sec], например car00.tga[prim] (именно в квадратных скобках). Все дело в том что в файле carcols.dat для каждой машины указана пара цветов, и вот [prim] это как раз первый из них, а [sec] соответственно второй.
Затем создадим текстуру битого стекла, и мятой поверхности из загруженных whitea128.tga  и white64.tga, соответственно, для этого можно скопировать 2 раза  default material или car00.tga и  в названии материала укажем whitea128.tga  и white64.tga, соответственно,  затем поставим Alpha Parametr 

Если вам нужна блестящая поверхность ставьте галочку в пункте Reflection Map и загружайте текстуру блеска нажав Load Map, и выбрав chrome.tga.
ВАЖНО: одна из текстур должна остаться без блеска (для нанесения ее на детали не требующие этого (к примеру салон, шины колес)


 

Теперь осталось добавить текстуру стекла в E (Material Editor) копируем <default material> и переименовываем его к примеру в windscreen (проверьте чтоб в разделе textures не было загружено никаких Примари текстур и блеска), далее в разделе Alpha parameters в окне Type ставим Glowing а в окне Use Alpha должно быть Standard Alpha Glow transparency. Теперь бегунками Material Properties регулируем цвет стекла, а бегунком Opacity его прозрачность.

И осталось добавить текстуру битого стекла, и мятой поверхности из загруженных whitea128.tga  и white64.tga, соответственно, для этого можно скопировать 2 раза  текстуру стекла windscreen   и  в названии (NAME) материала укажем whitea128.tga  и white64.tga, соответственно,  затем проследим чтобы все настройки остались как у текстуры стекла, с одним отличием ползунки RGB поставим в положение белое, чтобы в игре текстуры битого стекла и царапин не были черными, а были белыми. (вообще тут можете поэкспериментировать) ,
ТОНКОСТЬ: При нанесении текстур повреждения бывает выгоднее на время нанесения сделать RGB черным для лучшего контроля за нанесением текстур, иначе они будут просто белыми и Вы их можете не увидеть на белом фоне автомобиля.


УРОК 4: Составляющие. Вырезка деталей из цельной, разбивка основного тела на элементы и присвоение им имен установленных иерархией DFF файла.

Из оставшихся после удаления деталей выбираем основную которая содержит само тело автомобиля, в NFS это :HB, его и берем разбивать на составляющие.

Составляющие:
Двери - door_lf_hi_ok - передняя левая
              door_rf_hi_ok - передняя правая
              door_rr_hi_ok - зандняя правая
              door_lr_hi_ok - задняя левая
Капот - bonnet_hi_ok (он всего один)
Багажник - boot_hi_ok (тоже один)
Передние крылья - wings_lf - переднее левое (если хотите)
                                 wings_rf - переднее правое (если хотите)
Лобовое стекло - windscreen_hi_ok (одно)
Бамперы - bump_front_hi_ok - передний
                   bump_rear_hi_ok - задний
После этого у вас останутся некоторые части, которые лягут в основу Шасси - chassis_hi.

1. Сделаем копию :НВ и назовем её chassis_vlo (это в случае если мы не экономим на полигонах отражающихся  на FPS компьютера).
2. Возвращаемся на :НВ и начинаем выделять контур вырезаемых деталей.
Немного теории: Выделять лучше инструментом Select\Separate или Single (в зависимости от того какой лучше подходит для данного случая, на некоторых правильно сделанных моделях бывает проще использовать инструмент Separate т.к. он выделяет по подобию т.е. если это область стекла то только её и так далее, но так бывает не всегда поэтому приходится использовать инструмент Single). :Желательно не используемую в данный момент область детали скрыть, дабы не вырезать чего лишнего, делается это так в виде сверху на уровне Faces (3) инструментом Select\Quadr выделяем половину машины (правую или левую) и зажав SEL (пробел) потом Display\Disable. В итоге получим вторую половину неактивную. Вернуть из этого состояния можно выбрав поочерёдно уровни Objects (4) (тут  Select\All) > Vertices (1) > Objects (4) .


3. Итак вернемся к разбивке:
Для начала определите то, что вы будете вырезать. Например это будет дверь. Переключитесь в режим Faces (3), затем Select\Single (Quadr, Sepearte и т.д.) и правой кнопкой мыши выделите нужную вам область. Потом Create\Objects\Detach и нажмите внизу SEL (Пробел) и левой кнопкой мыши кликните выделенную область. В появившемся меню назовите ее как угодно (напр. door_lf_hi_ok), после чего спрячьте ее (снимите выделение в списке объектов (Objects)).

 
Далее по тому же сценарию обрабатываем все остальное.
В итоге получаем вот это: 1 скрин это то что осталось от разбивки (кузов), 2 скрин то что получилось после разбивки (отдельные элементы кузова)

После разбивки у нас  должны появится в окне Objects все элементы кузова которые перечислены в разделе УРОКА: Составляющие

УРОК 5: Работа с элементами кузова: установка блеска, остекление.

ВАЖНО: Так уж вышло что по спецификации файла для GTA VC на все детали (кроме прозрачных деталей стекла) обязательно должны быть нанесена текстура, иначе эти детали будут в игре полупрозрачными.
Проводя работу по нанесению блеска на детали и присвоения им качеств свойственных GTA VC, будем наносить текстуры на отдельные детали, на которых они не нанесены.

Итак начнем с элемента - ДВЕРЬ: тут присутствует сразу все типичные свойства: прозрачное стекло, текстура с [prim], текстура с [sec], неокрашиваемая текстура с блеском и без блеска. Итого 5 свойств.

Для начала займемся стеклом  выделим  проекцию стекла Уровень Faces (3) инструмент Select\.(по выбору)., далее Ctrl+A в окне Attributes в разделе Material выберем текстуру с именем windscreen, а в окне Misc уберем все галочки из окошек оставив только одну в окошке Don't Blend Textures. Закроем окно. Все оно у нас стало с наделено свойством текстуры windscreen со всеми свойствами (прозрачное, затемненное).


Снимаем выделение с проекции стекла Select\None и приступаем к выделению других частей.
 


 Следующей будет плоскость двери со второстепенным цветом [sec], выделив выбранную для этого плоскость (накладка двери)  Уровень Faces (3) инструмент Select\.(по выбору).,   выбираем SEL, далее Ctrl+A в окне Attributes в разделе Material выберем текстуру с именем car00.tga [sec], а в окне Misc уберем все галочки из окошек оставив только одну в окошке High Blending (назначение блеска). Выходим снимаем выделение , а в Material Editore (E) для удобства текстуру car00.tga [sec] бегунками можно сделать черной (по окончании работы не забудьте убрать окрашивание), сразу увидите что деталь стала черной приняла цвет текстуры car00.tga [sec], тоже самое можно сделать для [prim] текстуры. 
Теперь повторяем операцию для текстуры с цветом [prim], отличие от [sec], нужно в Атрибутах (Ctrl+A) в окне Attributes в разделе Material выберем текстуру с именем car00.tga [prim], не забудьте назначить блеск в окне Misc поставив галочку в окошке High Blending.
Тоже самое делаем и для поверхности которая должна быть неокрашенной в цвета [prim] и [sec] , выбирая к примеру молдинг назначая ему текстуру car00.tga (вторую текстуру с блеском, наложенным в Material Editore (E) chrome.tga), назначаем блеск в окне Misc поставив галочку в окошке High Blending.
И последнее это рамка окна и нижняя черная окантовка двери , они должны быть не окрашиваемые и без блеска, для них в  Атрибутах (Ctrl+A) в окне Attributes в разделе Material выберем текстуру первую текстуру с именем car00.tga (в  Material Editore (E) она без chrome.tga), в окне Misc поставив галочку в окошке Don't Blend Textures, остальные уберём.

Всё текстурирование и раскраска двери завершена. Смотрим итог работы и радуемся.

Обрадовались а рано,  теперь тоже самое повторяем и для остальных деталей, включая chassis_hi (кузов) и колеса (диск которых покрываем текстурой с блеском, а покрышки без блеска).

ХИТРОСТЬ: Чтобы не назначать текстуры на двери 4-ре раза можно сначала сделать только левую сторону, а правую потом сделать из зеркальных копий левых дверей, о там как сделать копии чуть позже после вделывания в дверь внутренней обшивки.
Обычно зеркала у модели машины для  NFS расположены отдельно от дверей поэтому, их надо будет в конце (именно в конце после копирования дверей левой стороны на правую) присоединить к двери.



ВАЖНО: по окончании работы не забудьте убрать окрашивание  в Material Editore (E) с текстур car00.tga [sec] и car00.tga [prim].


УРОК 6: Текстурирование: элементы рестайлинга и их текстурирование.

К элементам рестайлинга можно отнести детали : установка двигателя, емкости под багажник, дополнительные элементы обвеса и всевозможные украшательства, наносимые на поверхность кузова и его элементов (к примеру на капот 3D значок АУДИ, вместо простой текстуры)



Итак начнем, с добавления к двери обшивки которую возьмём с детали интерьера, там обшивка дверей находится по бокам кокпита, их надо выделить по контуру дверей и вырезать. Начнем с левой стороны передняя дверь Уровень Faces (3), инструмент Select\Single выделяем контур обшивки с детали :OC (по умолчанию интерьер салона) затем SEL (пробел) и Greate\Objects\Detach жмем на выделение, есть часть обшивки двери готова теперь надо соединить их вместе DOOR_LF_HI_OK и вырезанная обшивка двери. В окне объектов оставляем только часть обшивки и левую переднюю дверь, далее Уровень Objects (4) инструмент Greate\Objects\Uniteselect выделить всё Select\All затем кликаем на выделении и в появившемся окне вводим имя двери (если оно совпадает со старым именем переименуйте потом, в окне Объектов, правая клавиша на переименовываемом объекте, выбрать Rename).
Теперь надо закрыть полигонами дырки между дверью и её обшивкой. На Уровне Verticies (1)  инструментом Greate\Faces\Strip накладываем дополнительные полигоны которые закроют дырку. После этого выделяем вновь созданные полигоны Уровень Faces (3) и Select\Material Editor (там Default Material), далее жмем CTRL+A и в списке материалов в закладке Attributes выбираем первую текстуру car00.tga которая без блеска, в закладке Misc ставим Don't Blend Textures. Закрываем окно и выбираем инструмент Surface\Mapping\Assign UV,  зажмем SEL (пробел)(для применения ко всему выделению сразу) и кликнем по выделению в 2D окне, при этом обязательно откройте окно UV Mapper, в нем будет отображаться процесс наложения текстуры. Теперь убираем SEL (пробел) переходим на Уровень Objects (4) берем инструмент Modify\Move (Scale) и передвигаем контуры детали в такое место которое нам выгодно , в данном случае можно переместить просто на черный фон. Если вы хотите натянуть полигоны на конкретную текстуру, то Вы можете перейти на Уровень Verticies (1) выбрать инструмент Modify\Move зажать MUL (объединение) и двигать в UV Mappere полигоны как Вам надо, не беспокоясь за нарушение самой 3D модели так как она несвязана с полигонами которые находятся в UV Mappere.
Только теперь мы скопируем дверь на правую сторону (для экономии времени мы не делаем правую сторону дверей, если правда это позволяет модель, т.е. если она нормально соосная).
Итак оставляем в окне Объектов только левую переднюю дверь, делаем её копию (правой клавишей на детали двери в окне Объектов и выбрать Copy) обзываем копию как door_rf_hi_ok (правая передняя дверь), закрываем левую дверь в окне Объектов, далее на Уровне Objects (4) инструментом Display\Local Axis\Reset убираем центр двери (оси координат на двери должны исчезнуть), потом переключимся на координатную ось X и применим инструмент Modify\Mirror (сделаем зеркальное отражение двери), а затем Modify\Reorient вернём ей ориентацию. (Делать строго в этой последовательности, иначе поверхность двери будет тёмной). Затем надо вернуть центр двери инструментом Display\Center Axis.
Всё, теперь повторяем тоже самое для другой двери, и для всех остальных элементов кузова: двигатель, задний багажник вообщем всё те детали которые требуют дополнительных полигонов и текстурирования, однако если с моторным отсеком можно особо не морочиться, и просто разместить плоскую поверхность под тем местом, подогнав ее по габаритам, где будет находиться капот и нанести текстуру, то с багажником придется немного помучиться. Хотя можно взять багажник от стандартной модели и втиснуть его в вашу, но лучше будет нанести полигоны заново , только обязательно наносите полигоны от точки до точки не допуская перекрещивания поверхностных слоев плоскостей.

ВАЖНО: Ни при каких обстоятельствах не допускайте, чтобы плоскости соприкасались друг с другом чем-либо кроме своих краев и точек !!! В противном случае у вас будет довольно страшный вид машины с черной рябью на местах соприкосновений.

Внедрение новых деталей украшательства, в виде дуг, спойолеров, воздухозаборников, значков и т.д.  оставим на ваш вкус и усмотрение, делаются они также стандартными инструментами Greate, Modify,  и текструрируются Surface.



УРОК 7: Делаем повреждения: Составляющие. Наложение текстур повреждения. Нанесение повреждений.

Итак большая часть работы сделана, детали разбиты на составляющие, добавлены недостающие плоскости, затекстурированы и применены окраска деталей машины, сделаны стекла. 

Теперь вернемся к тому что мы делали в начале. Как вы уже догадались, мы отделяли предметы (крылья, капот и т.д.) потому, что у каждого из них в игре есть реальная возможность зажить своей жизнью, то бишь погнуться, оторваться и потеряться. А потому давайте поподробнее разберемся, как все это делается. Все они делятся на неповрежденные ( ok ) и поврежденные (dam). Вот список этих объектов: 

Составляющие:
Двери - door_lf_hi_dam - передняя левая
              door_rf_hi_dam - передняя правая
              door_rr_hi_dam - зандняя правая
              door_lr_hi_dam - задняя левая
Капот - bonnet_hi_dam (он всего один)
Багажник - boot_hi_dam (тоже один)
Передние крылья - wings_lf_hi_dam - переднее левое (если хотите)
                                 wings_rf_hi_dam - переднее правое (если хотите)
Лобовое стекло - windscreen_hi_dam (одно)
Бамперы - bump_front_hi_dam - передний
                   bump_rear_hi_dam - задний
Chassis_hi ( нет ok или dam, потому что не повреждается, hi означает объект с высокой детализацией, в отличие от vlo -  очень низкая детализация, по сути силуэт машины который виден издалека)
Очень важно правильно написать все эти названия.

Чтобы создать поврежденные объекты (dam) создайте копию нормального (ok) и отведите душу, только не перестарайтесь :) Лучше всего конечно создавать копии оттекстурированных объектов, чтобы не пришлось накладывать текстуры на восемь дверей ! Поэтому поговорим сначала о текстурах.

Выше в Уроке №3 Мы говорили о добавлении в Material Editor текстур повреждения , теперь пришло время их использовать

Попробуем научиться накладывать эти самые текстуры повреждения. Для этого необходимо скопировать еще раз готовую деталь с признаком DAM (прим: door_lf_hi_dam в door_lf_hi_dam[0]) для того что бы, сделать из неё плоскость на которую мы нанесём текстуру повреждения. Итак делаем копию , закрываем оригинал в окне Объектов оставляя только копию и удаляем все лишние полигоны. Сделать можно так перейти в Уровень Faces (3) инструментом Select\By material выделить текстуру car00.tga [prim] и ar00.tga [sec], потом Select\Invert, выделение перейдет на другие полигоны , а тут задать SEL (пробел) навести мышкой на выделение и нажать DEL, т.е. удалить ненужные текстуры. 

 

В итоге у нас останется лишь плоскость двери (см. рис.).

 

Тут наступает самое ответственное , наложение текстуры на эту плоскость. 
Выделяем вновь созданную деталь Уровень Faces (3) и Select\All, далее жмем CTRL+A и в списке материалов в закладке Attributes выбираем текстуру white64.tga, в закладке Misc ставим Don't Blend Textures.

 

Закрываем окно и выбираем инструмент Surface\Mapping\Assign UV (иногда сначала надо сделатьc сборос параметров старой текстуре Reset UV),  зажмем SEL (пробел)(для применения ко всему выделению сразу) и кликнем по выделению в 2D окне (в Zmodeler 1.07b можно и в User View), при этом обязательно откройте окно UV Mapper, в нем будет отображаться процесс наложения текстуры. Теперь убираем SEL (пробел) переходим на Уровень Objects (4) берем инструмент Modify\Move (Scale) и передвигаем контуры детали в такое место которое нам выгодно.

 

Теперь вернёмся к 2D виду и увеличив окно сдвинем немного в сторону нашу деталь с наложенными повреждениями, для того чтобы она несоприкасалась с основной плоскостью двери, это делается для того чтобы во-первых ей было видно и она не растворялась в основных цветах расскраски двери, во-вторых чтобы основная дверь не стала прозрачной так как текстура повреждения изначально идет с опцией прозрачности (вспомните когда мы устанавливали в  Материал Броузер текстуры а потом в Матриал Эдиторе назначали им опции, текстурам повреждения назначалась прозрачность).
Для объектов багажник и капот двигать можно сразу в двух направлениях вверх-вперед, вверх-назад и т.д.

 

Теперь выделим в окне Объектов обе детали door_lf_hi_dam в door_lf_hi_dam[0] при этом увидим нанесённую текстуру повреждения она будет как бы прозрачна (дело в том что в Flip TGA формате в альфа канале черный цвет становится прозрачным а всё остальное отражается на поверхности плоскости вот и результат нашей работы отразился на поверхности двери. Теперь эти два объекта необходимо соединить  Уровень Objects (4) выделить всё Select\All, затем Greate\Objects\Uniteselect. 
Верните  двериеё стандартное имя door_lf_hi_dam .

 

Теперь повторим всё тоже для текстуры повреждения стекла, только выберем в списке материалов в закладке Attributes текстуру whitea128.tga, и в закладке Misc ставим Don't Blend Textures.
Одно отличие тут не надо делать дополнительную плоскость, как для двери,  так как окно само по себе прозрачно.

 


Теперь самое интересное будем ломать дверь.
Тут Вы конечно можете проявить свое мастерство и умение, а я расскажу самый простой способ нанесения повреждений (молотком ;-) ).
Итак в окне Объектов выбираем chassis_hi (кузов) затем берём инструмент Display\Disable и жмем на кузов он должен стать серым то есть деактивироваться, это сделано для того чтобы непереусердствовать с ломанием двери, чтобы всегда видеть на сколько сильно она изувечена по отношению к кузову.
Потом выбираем нашу дверь (door_lf_hi_dam), Уровень Objects (4) инструмент Modify\Move затем жмем на EXT (кнопка внизу окна Main ToolBox) и начинаем ворочая вид User View потихоньку гнуть дверь. Итог нашей работы на скрине.

Проделываем всё тоже самое и с другими элементами автомобиля: капот, багажник, бампер.

Для второй половины  дверей (правой) можно повторить операцию что делали ранее при изготовлении детали с параметром OK/
Итак, скопируем дверь на правую сторону (для экономии времени мы не будем делать правую сторону дверей, если правда это позволяет модель, т.е. если она нормально соосная), оставляем в окне Объектов только левую переднюю дверь, делаем её копию (правой клавишей на детали двери в окне Объектов и выбрать Copy) обзываем копию как door_rf_hi_dam  (правая передняя дверь), закрываем левую дверь в окне Объектов, далее на Уровне Objects (4) инструментом Display\Local Axis\Reset убираем центр двери (оси координат на двери должны исчезнуть), потом переключимся на координатную ось X и применим инструмент Modify\Mirror (сделаем зеркальное отражение двери), а затем Modify\Reorient вернём ей ориентацию. (Делать строго в этой последовательности, иначе поверхность двери будет тёмной). Затем надо вернуть центр двери инструментом Display\Center Axis.

Смотрим итог нашей работы.



УРОК 8: DUMMY: Составляющие, Размещение заглушек, Оси - центрование деталей согласно стандарта GTA VC.

Вначале я сделаю отступление и поясню что такое заглушки. Заглушки (dummies, если кто-то переводит это по другому и более точно, подскажите как) служат для определения ключевых  точек осей вращения частей машины. Возможно их следовало бы назвать якорями, но у слова dummie нет такого значения. Это маленькие объекты невидимые в игре и имеющие чисто техническое значение. С их помощью мы покажем игре где у нас фары, стоп-сигналы, в какую сторону открывается капот или дверь. В неподвижных объектах заглушка определяет центр  тяжести по трем осям координат, в дверях, капоте, багажнике она определяет ось вращения. Вот список заглушек используемых в игре: 

Составляющие:

indicators_front - передние указатели поворота (в GTA VC неиспользуется)
indicators_back - задние указателиbrakelights - стоп-сигналы (в GTA VC неиспользуется)
taillights - хвостовые огни (что-то вроде габаритов)
headlights - головной свет
reverselights - сигнал заднего ходаheadlights - головное освещение (фары) (в GTA VC неиспользуется)
wheel_rf_dummy - переднее правое колесо
wheel_lf_dummy - переднее левое
wheel_rb_dummy - заднее правое
wheel_lb_dummy - заднее левое
manana (название модели машины, вообще название этой заглушки может быть каким угодно) - назначение неизвестно.
chassis_dummy - центр осей вращения шасси
ped_frontseat - расположение водителя и пассажира на переднем сиденье
ped_backseat - расположение пассажира на заднем сиденье
door_rf_dummy - правая передняя дверь
door_lf_dummy - левая передняя
door_rr_dummy - правая задняя
door_lr_dummy - левая задняя
boot_dummy - ось вращения багажника
bonnet_dummy - ось вращения капота
wing_rf_dummy - правое переднее крыло 
wing_lf_dummy - левое переднее
wing_rr_dummy - правое заднее (нигде в моделях замечено не было)
wing_lr_dummy - левое заднее (нигде в моделях замечено не было)
steerwheel_dummy - центр рулевого колеса (в GTA VC неиспользуется)
chassis_vlo_taillight - габариты при низкой детализации (в GTA VC неиспользуется)
chassis_vlo_headlights - головной свет при низкой детализации (в GTA VC неиспользуется)
exhaust - выхлоп 

Для создания заглушек можно использовать инструмент Куб, но проще будет поступить следующим образом : 
1 вариант: создать новый .z3d файл, и затем импортировать .dff файл из которого в редакторе материалов  удалить все материалы, кроме исходного (его желательно переименовать), а из списка объектов все, кроме вышеперечисленных. Сохраните его для дальнейшего использования. Потом File\Merge и указать путь к вашей модели. После этого вам останется только удалить исходный материал, который шел с заглушками и все. 

2 вариант: (проще вроде бы) Открыть любой готовый DFF, удалить все объекты кроме заглушек, затем сохранить его в формате z3d File\Save закрыть. Открыть свою модель и объединить File\Merge указав на сохраненный z3d файл, принять все заглушки.

Размещение:
     Используется инструмент  Modify\Move на Уровне Objects (4) . От того как и где вы разместите заглушки, будет зависеть поведение вашей машины и ее частей. Если расположение заглушек огней, фар и сидений большого значения не имеет ( одно условие - они должны быть каждая в одном экземпляре и располагаться на правой стороне модели, если смотреть сзади), то от остальных зависит будет ли капот  или багажник открываться вперед или назад и т.д. Итак, заглушки дверей нужно устанавливать на стыке двери и проема, т.е. так как если бы это были дверные петли, то же относится к капоту и багажнику. Для колес нужно определить такое место, чтобы они не вылезали из под крыльев, но и не были собраны в кучку. Для бамперов заглушки надо ставить в центр их тяжести (бамперов).

ВАЖНО: Тут главное не сбить те колеса которые шли вместе с машиной т.к. в их центры и надо двигать заглушки, это сэкономит время на долгую погонку колес, а они то и дело  пытаются улизнуть от центров или крутится в разнобой, если Вы будете двигать колеса к заглушкам а не наоборот.
Запомните что заглушки колес определяют их физический центр по осям координат, относительно chassis_dummy, то же относится и к крыльям. 

Теперь перевернём колеса которые расположены по левому боку автомобиля, это необходимо для нормального функционирования колесного мода DmagicWheelMod.
Итак спрячем все объекты кроме колес по левому боку автомобиля, затем переключимся на координату Х  и инструментом Modify\Mirror, потом Modify\Reorient перевернем сначала одно колесо, потом другое. На этом всё.

Оси.
Прежде чем размещать заглушки вам нужно определить центр тяжести деталей вашей машины и заглушек. Переключитесь в Уровень Objects (4) и выберите Display\Local Axis\Center Axis, затем кликайте на объектах левой кнопкой мыши, для удобства их можно по очереди прятать. То же для заглушек. После этого вам нужно совместить заглушки и центры осей деталей. Для этого спрячьте все, кроме самой детали и соотнесенной с ней заглушки, выберите Display\Local Axis\Move и перемещайтеих центр осей детали в центр её заглушки.. Пользуйтесь увеличением и разными видами для большего удобства.
Сделав все это с объектами с параметром ok, также сделайте и для объектов с параметром dam.

В принципе это все логично и понятно.



УРОК 9: Иерархия.
  

ВАЖНО: БЕЗ ПРАВИЛЬНО НАСТРОЕННОЙ ИЕРАРХИИ МАШИНЫ В ИГРЕ НЕ РАБОТАЮТ

Иерархия это своего рода карта расположения деталей с определением их зависимости друг от друга. Вы можете открыть это окно через Tools\Hierarchy\Browser.

Здесь изображено правильное расположение всех объектов.
Похоже на дерево файлов в Проводнике.
Синие кубики - это  одиночные объекты, оранжевые - составные, т.е. содержащие  в себе другие объекты (похоже на архивы).
Самый верхний это заглушка с именем модели, в него вложен chassis_dummy и некоторые другие заглушки,  в chassis_dummy вложены все остальные.
Каждая из заглушек содержит в себе по два объекта : ok и dam. Есть еще chassis_hi и chassis_vlo, которые не являются заглушками, но могут содержать в себе объекты.
При первом открытии все будет выглядеть совсем по другому, поэтому вам придется методом перетащить-и-отпустить навести порядок.
Будьте осторожны, т.к. при неправильном расположении объектов игра будет виснуть. Если вы случайно сделали составной объект из одиночного, придется копировать его в меню объектов, а потом удалить, а в списке иерархии у вас появится новый объект (копия которую вы создали), который вы уже сами доведете до ума (не забудьте вернуть ему настоящее имя).
Здесь легко запомнить, что все неизвестные новые объекты появляются вверху списка.
Если ваш список ничем не отличается от приведенного на рисунке (кроме количества дверей), то все что осталось сделать, нажать кнопку Export и выбрать в списке типов файлов Grand Theft Auto 3(.dff .col), назвать стандартным именем той машины которой вы готовили замену и сохранить.
Одно примечание, если вы хотите, чтобы  .dff файл можно было повторно импортировать, сохраняйте его как имя файла .DFF( то есть в верхнем регистре), а лучше конечно все это сохранить и как .z3d файл, для дальнейшей доводки.
Все, теперь можно приступать к установке машины в игру.



УРОК 10: Создания TXD файла  модели,

Для создания TXD файла модели будем использовать TXD Workshop, на данный момент это самый лучший (на мой взгляд) редактор TXD файлов, но и он не без глюков, но тут конечно всё зависит от Вас как Вы будете работать и нажимать на кнопки. (аккуратней надо однако).
Один замеченный минус он не может создавать
TXD файлы одновременно содержащий и 32 битные текстуры и 8 битные, только что то одно, иногда нужно чтобы были обе.

Итак, мы имеем готовые текстуры в формате
TGA для работы с Zmodeler, которые используются при наложении текстур на модель, однако для упаковывания в TXD файл надо не TGA формат, а BMP, его можно получить с помощью любого графического редактора (Я  использую Adobe Photoshop).
В графическом редакторе необходимо
1. Сохранить
BMP файл в том цветовом формате (8 бит, 16 бит, 32 бит), который Вам нужен. 8 битный сначала переводится в индексированный и выбирается адаптивная палитра цвета.
 
ВАЖНО: чем выше разрядность цвета тем большего объема получается файл, что нежелательно.
2. Перевернуть текстуру вверх ногами, это необходимо для исправления ошибки, по некоторым данным ошибка в Занозе, по другим в TXD файле, не важно ,главное перевернуть необходимо перед сохранением и упаковкой.

 
3. Перевести формат текстуры из TGA в BMP

 

Отлично, создали BMP текстуры из всех своих TGA текстур включая текстуры битого стекла и поверхности, теперь можно и заняться созданием непосредственно TXD файла.

Его можно создать двумя путями
1. Использовать готовый TXD файл (что легче) так как можно выбрать с уже готовыми текстурами битых поверхностей, а остальные просто переименовать и заменить саму текстуру, а также можно найти файлы ссо смешанными текстурами 32 и 8 бит.
2. Создать собственный TXD файл (что нелегче J )

Создадим новый TXD файл

1. Запустим TXD Workshop
2. Создадим новый File\New и выберем формат 8 бит
 
3. Далее в меню выберем Import и импортируем созданный нами файл BMP, потом выбрав созданную текстуру нажмем на панели меню Properties, и в ней изменим имя текстуры на соответствующее к примеру car00 и нажмем ОК. Это мы сделали простую текстуру без альфа канала.
 

4. Теперь добавим дополнительную текстуру в файл TXD, жмем Image\Duplicate и создадим из неё текстуру содержащую альфа канал, это будет текстура повреждения. Кстати для неё надо изначально будет в Адобе Фотошопе сделать простой белый квадрат, он у нас будет загружен в качестве примари текстуры у текстуры повреждения т.к. сама она будет помещена в альфа канал.
Итак сделали Дубликат, переименовали его в white64 и в параметрах поставили галочку в боксе Alpha is used, загрузили в него белый квадрат, затем переключились внизу окна текстуры на Alpha/Mask и импортируем саму текстуру повреждения white64.bmp. Всё готово.
  

5. Так же поступаем и с остальными текстурами простыми и имеющими альфа-канал
6. По аналогии осуществляется редактирование уже готового TXD файла.
7. Сохраняем результат своей работы в TXD файл под названием автомобиля который заменяем.


ВАЖНО: Все текстуры должны быть пропорциональными и иметь разрешение 64х64, 128х128, 256х256, 512х512, и не более иначе в игре могут возникать всевозможные багги и глюки. Хотя это предупреждение скорее относится к началу создания самой текстуры и должно относится к начальным урокам по конвертированию.

КОНЕЦ УРОКОВ.

СОВЕТЫ:

1. Увеличение или уменьшение геометрических размеров.
 

Можно делать на всех этапах работы, но лучше на начальном до выставления ОСЕЙ вращения.
На уровне Objects (4) .
Выделяем всю машину (со всеми деталями и заглушками), инструмент Select\All , затем нажимаем  SEL (пробел) для закрепления всех объектов относительно друг друга.
Затем надо снять со всех деталей их оси, Display\Local Axis\Reset, а теперь будем увеличивать или уменьшать модель. Что бы узнать размер машины надо оставить на отображении только те элементы которые дают машине ширину (кроме дверей с зеркалами), обычно это chassis_hi, и нажмем на CTRL+A и внизу окна в разделе Dimentions будут размеры по X-ширина, Y-высота, Z-длина, (для сравнения можно открыть любую другую модель и поглядеть её размеры, затем в автокаталоге узнать точные размеры машины и подогнать их по отношению к остальным моделям).
Итак закроем окно свойств и выберем инструмент Modify\Scale потом проверим, чтоб было открыто окно Numeric Bar #1 (оно устанавливается в View\Float Bar) и в нём указываем величину увеличения в процентах (начните с 5-10), затем применяем инструмент на модели во всех плоскостях по очереди X,Y,Z. проверив в конце работы размеры (незабываем что только на  chassis_hi) CTRL+A, и если несовпадают, отменяем действия и повторяем заново с изменённым процентом в окне  Numeric Bar #1. (сравнивать габаритные размеры лучше по одной величине , в основном по ширине, так как она делается по чертежу и предполагается соответствие размеров).
Вот и всё машина поменяла размер на соответствующий.

Вернём оси ,отобразить все детали и выделить всё нажать SEL, затем Display\Center Axis
А теперь самое неприятное необходимо восстановить ОСИ (если Вы уже делали их и теперь только ипсравляете уже сделанное) на все открывающихся деталях Display\Local Axis\Move