MW ::: Конвертирование автомобилей в NFS MW

Оглавление:
- 3dsMax
-- Создание текстур
- Шейдеры
-- Покраска машины в любой цвет
-- Нанесение винила
-- Как назвать части моделей
-- Дым, свет и огонь
- Конвертирование
- Логотип машины
- Настройка колёс
- Звук двигателя

Начнём с того какого качества моделей можно сделать.
Движок MW поддерживает модели состоящие более чем из 400000 полигонов, и даже больше. Так что можно создавать High Poly модельки.


3dsMax

Собираем и доводим модель для экспорта в ZModeler.
Корпус автомобиля содержит:
-двери
-багажник
-крышу
-основной каркас
Капот и спойлер идут отдельной частью.
Фары передние и задние для облегчения работы объединяем в один объект.
Тоже самое со стеклами. Всякую мишуру присоединяем к интерьеру.

- Создаем текстуры и наносим материалы.
Имя текстур должно совпадать с именем (имя_материала_в_ZModeler(3dsMax’е)) в файле matlist360.txt

Текстурирование
Открываем файл texdefn.txt и видим:
[tpk]
Identifier=CARTEXTURES
PipelinePath=Global/Pipeline/CarTemplateTextures_наименование_автомобиля.tpk
XName=наименование_автомобиля
Output=output/CARS_REPLACE/наименование_автомобиляTEXTURES.BIN

[texture]
Name=SKINx, где х это число от 1 и до бесконечности.
File=имя_текстуры.dds

Следующий файл matlist360.txt
имя_материала_в_ZModeler(3dsMax’е) = шейдер/x_имя_материала_в_файле_texdefn.txt

Например: текстура интерьера
INTERIOR=INTERIOR/x_MISC


Шейдеры:

Не буду перечислять все, только нужные.

0xD6D6080A - шейдер покраски машины
BOTTOM - шейдер днища автомобиля
MAGSILVER - шейдер тормозного диска, суппорта и литого диска
INTERIOR - шейдер интерьера
BRAKELIGHT - шейдер задних фар
CHROME - хром
WINDSHIELD - шейдер стекла
DRIVER - водитель
DULLPLASTIC - шейдер двух стороннего пластика
RUBBER - шейдер шины


- Покраска машины в любой цвет.
В файле texdefn.txt добавляем следующие строки.
[texture]
Name=SKIN1
File=body.dds
и строчку в файл matlist360.txt
BODY=0xD6D6080A/x_SKIN1
В ZModeler выбираем материал корпуса и переименовываем его в BODY.
Готово.

Увеличить [+]Увеличить [+]


- Наносим винил на машину.
Для примера возьму GALLARDO.
Увеличить [+]
Во первых нужно сделать развертку машины в 3dsMax или в любом другом графическом приложений. Что бы корректно сделать развертку мы возьмём файл GALLARDO_DEBUG.dds из VINYLS.BIN.
Увеличить [+]
Если всё сделано правильно то при наложений материала с текстурой GALLARDO_DEBUG.dds получим следующее:
Увеличить [+]
Добавляем исходный файл VINYLS.BIN в папку с новой машиной.
Например сделали машину которая заменяет GALLARDO. Берём файл VINYLS.BIN из папки Need For Speed Most WantedCARSGALLARDO и кидаем его в Need For Speed Most WantedADDONSCARS_REPLACEGALLARDO


- Как назвать части моделей.
Основной каркас модели именуем kitxx_body_y, где xx это номер кузова (00 - стандартный кузов, 01-05 - дополнительные кузова)
Капот kit00_hood_y
Исходный спойлер kit00_spoiler_y
Тюнингованые капоты stylexx_hood_y , где xx это номер от 0 до 32, y качество модели.
Стекла кузова base_y, где y это качество модели (a - самая качественая и по степени уменьшения b, c ,d ,e).
Передние фары kitxx_left_headlight_y (левая), kitxx_right_headlight_y (правая), стекла передних фар kitxx_left_headlight_glass_y (левая), kitxx_right_headlight_glass_y (правая),где xx это номер кузова которому принадлежит фара обычно это 00, y качество модели (a - самая качественная и по степени уменьшения b, c ,d ,e).
Задние фары аналогично передним единственное что меняем так это headlight на brakelight.

Пилот автомобиля kitxx_driver_y, салон kitxx_interior_y, где хх и y сами знаете что.

- Свет, дым и огонь.
(Работаем с 3dsMax’ом)
Создаем квадрат или любой небольшой геометрический объект, выделяем их и экспортируем в ZModeler (Работаем с ZModeler’ом), импортируем и называем их:
#LEFT_REVERSE, #RIGHT_REVERSE - короче белый цвет при езде назад.
#LEFT_BRAKELIGHT, #RIGHT_BRAKELIGHT - стоп огни.
#LEFT_HEADLIGHT, #RIGHT_HEADLIGHT - передний свет.
#LEFT_EXHAUST, #RIGHT_EXHAUST - дым из труб и огонь при использований закиси, вообще всё что выходит из выхлопной трубы.

Если в модели будет допустим четыре выхлопные трубы или две выходящих в одну сторону, тогда в конце имени просто добавляем [x], где х это числа от 0 до бесконечности. Например: #LEFT_EXHAUST и #LEFT_EXHAUST[0]. Такая же ситуация и с другими объектами имя которого начинается с #.


Спойлер этот думик, находится на багажнике #spoiler
Увеличить [+]Увеличить [+]Увеличить [+]


3 - Конвертирование.

NAME – наименование авто которым вы заменяете
CAR_NAME – наименование авто которые вы меняете
N – номер должен быть больше 34


Открываем файл build.bat (правой кнопкой на файл изменить):
@echo off
echo ==================================================
===
echo Compiling Textures...
echo ==================================================
===
../bin/mwtc.exe texdefn.txt
../bin/ expatch output/FRONTEND/MANUFACTURERS/N-NAME.BIN "CARSELECT_MANUFACTURER_NAME"
../bin/expatch output/CARS_REPLACE/CAR_NAME/SECONDARYLOGO.BIN "SECONDARY_LOGO_CAR_NAME_1"
echo.
echo ==================================================
===
echo Compiling Model...
echo ==================================================
===
../bin/mwgc -nowait -xname "CAR_NAME" -matlist "matlist360.txt" -xlink "xlink360.txt" -source "mw360.mwr" -target "output/CARS_REPLACE/CAR_NAME/GEOMETRY.BIN"
echo.
echo ==================================================
===
echo Complete.
echo ==================================================
===
pause


Файл texdefn.txt

PipelinePath=Global/Pipeline/CarTemplateTextures_CAR_NAME.tpk
XName=CAR_NAME
Output=output/CARS_REPLACE/CAR_NAME/TEXTURES.BIN


Логотип машины.

Кидаем файлы FE_ATTRIB.bin, attributes.bin, gameplay.bin в папку nfsmw-modtools/bin/vltedit запускаем unpackall.bat.
Запускаем vltedit.exe, нажимаем File/Open сначала файл загружаем db.vlt потом frontend.vlt.
Теперь самое муторное Database/fronted/vehicles там три отдела europe, north_america, japan каждый раздел содержит свой автомобили.

Приведу пример на двух машинах sl65.
Путь к sl65 Database/frontend/vehicles/europe/mercedes/sl65
Нажимаем на sl65, справа в окошке появилось куча непонятного мусора, но нам нужны только два параметра это manufacturer и required_bl_level а точнее их значение.
При нажатий на manufacturer получаем значение bin:0x8954.
Увеличить [+]
Тоже самое и с required_bl_level.


Зайдем в директорию output/CARS_REPLACE/ откроем файл FE.MWPS
## manufacturer
patch dword значение_ manufacturer N

## required_bl_level
patch byte значение_ required_bl_level 16

Пример:

## manufacturer
patch dword bin:0x8954 32

## required_bl_level
patch byte bin:0x896d 16


Следующий файл CAR.INI всё в той же папке
[car]
name=имя которое будет показываться в игре
manufacturer=NAME
internal=CAR_NAME
modloader=0.2


В следующих файлах нужно поменять внутренности на свой.

Файл SECONDARYLOGO.BIN
Логотип серий автомобиля.

Файл в папке output/FRONTEND/MANUFACTURERS
Логотип компаний производителя.
N-NAME.BIN
Пример:
32-FERRARI.BIN


Всё, все файлы собраны всё настроено для конверта.
Нажимаем дважды на build.bat и обана готово.


Настройка колес.

Продолжаем работу с vltedit.
Сначала введем в систему шестнадцатеричного исчисления. По названию можно догадаться, что там 16 элементов: 0 1 2 3 4 5 6 7 8 9 a b c d e f.

Перейдем к vltedit открываем Database/ecar/default/racers/имя_авто
Для примера возьмем SL65
Нажимаем на sl65, справа появился список, нам нужен wheel_posiyion, нажимаем на плюсик вываливается список
[0] – переднее правое колесо
[1] – переднее левое колесо
[2] – заднее левое колесо
[3] – заднее правое колесо

Нажимаем на [0], справа появляется таблица со значениями
X 1,32
Y 0,89
Z 0
W 0,33
Ниже под таблицей есть строчка Offset:bin:0x3d680 это адрес координаты x переднего правого колеса.
Увеличить [+]
Для получения координат Y, Z и W прибавляем к адресу 4 единицы:
X - bin:0x3d680
Y - bin:0x3d684
Z - bin:0x3d688
W - bin:0x3d68c

Тоже самое с другими колесами.

В файле ATTRIBUTES.MWPS

[0] – переднее правое колесо
patch float bin:0x3d680 1.158 x - вперед или назад
patch float bin:0x3d684 0.9373 у - в бок
patch float bin:0x3d688 0.0 Не трогать
patch float bin:0x3d68c 0.3186 радиус колеса (от 30 до 36 не больше и не меньше)

[1] – переднее левое колесо
patch float bin:0x3d690 1.158
patch float bin:0x3d694 -0.9373
patch float bin:0x3d698 0.0
patch float bin:0x3d69c 0.3186

[2] – заднее левое колесо
patch float bin:0x3d6a0-1.448
patch float bin:0x3d6a4 -0.9373
patch float bin:0x3d6a8 0.0
patch float bin:0x3d6ac 0.3386

[3] – заднее правое колесо
patch float bin:0x3d6b0 -1.448
patch float bin:0x3d6b4 0.9373
patch float bin:0x3d6b8 0.0
patch float bin:0x3d6bc 0.3386


Звук двигателя.

Думаю всем будет интерестно как поменять звук движка своего автомобиля.
Подробно расписывать не буду.

Открываем vltedit, грузим файл db.vlt.
pvehicle/default/cars/racers/sl65/engineaudio (эта вкладка содержит от 1 до 3 параметров у разных авто)
[0] - звук стокового двигателя
[1] - звук первого форсированого двигателя и т.д.
Нажимае на любой из этих параметров. Например на [0] получаем Offset: bin:0x2e794 прибовляем 4 единицы (обязательно иначе не будет работать), bin:0x2e798 это значение отвечает за звук.

Осталось выбрать сам звук. Идем в engineaudio/default появляеться длиный список (просто сказка :)), в котором есть звуки таких машин как Hummer, 350z, 240sx, Miata и многие другие.
Внизу есть консолька прописываем hash имя_звукового_файла, например hash nis_350z_a нажимаем enter получаем hash(nis_350z_a)=0x896ad470 - адрес звука.

Оформление:
patch dword bin:значение адрес_звука
Например:
patch dword bin:0x2e798 0x896ad470

Удачи! На дорогах.

Need For Speed World Site -=- MW ::: Автостудия -=- MW ::: Конвертирование автомобилей в NFS MW
Страница создана: Нет данных
Обращений к странице: 39573 Автор: crazy для www.nfsko.ru
 Комментарии
как прибавить к коду 4 еденицы
# 19 марта 2012 г. 13:44
Я нихуя не понял!
# 30 ноября 2012 г. 9:39
Можно подробнее описать замену звука? А возможно изменить звук двигателя на добавленном Nissan GTR R35 заменяющем GTO ?
# 16 февраля 2013 г. 13:54
с этого описания по конвертации машин еще больше возникает вопросов ты хоть поясняй каждое свое действие в описании
# 15 января 14:16
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии.