TUT CS 1. 6 Конвертирование оружий из CS S в CS 1
Так вот, возможно сделать их конвертирование с помощью следующего метода, который я опишу ниже (Точнее переведу)
Для этого нам понадобятся следующие программы:
GCFScape (http://nemesis.thewavelength.net/index.php?p=25)
GFlip (http://www.mediafire.com/?2nnx0yzn02d, если у вас включается в браузере блок страницы, то используйте сайт http://omg5.ru для обхода блока)
Jed Half-Life Model Viewer (http://www.wunderboy.org/apps/jhlmv.php)
HL1 Compiler & Decompiler (http://www.mediafire.com/?2nnx0yzn02d, если у вас включается в браузере блок страницы, то используйте сайт http://omg5.ru для обхода блока)
HL2 Decompiler (http://www.mediafire.com/?2nnx0yzn02d, если у вас включается в браузере блок страницы, то используйте сайт http://omg5.ru для обхода блока)
Milkshape3D
VTFEdit (http://nemesis.thewavelength.net/index.php?c=178)
XNView (http://www.xnview.com/en/)
- Подготовка
Создаём папку для работы с моделью, назовём её например "weapon conversion"
Качаем этот скин: http://css.gamebanana.com/skins/28168
Также нам понадобится AK 47 из CS 1.6, нам нужен .QC файл
Скачанные папки из архива с калашниковым для CS:S (materials, models, sound) копируем в папку "weapon conversion/ak47/"
И также калашников из CS 1.6 копируем в эту же папку "weapon conversion/ak47/"
Папки HL1 Compiler & Decompiler и HL2 Decompiler копируем в папку "weapon conversion/tools/"
Теперь наш каталог должен выглядеть вот так:
https://vk.com/photo-21860125_403983397
- Декомпилируем модель из CS:S
Открываем mdldecompiler.exe который находится в папке "tools\HL2 MDL Decompiler"
Выбираем нашу модель калаша из CS:S нажатием клавиши "..." (Browse), он должен лежать в "ak47\models\weapons"
Выбираем папку, куда мы декомпилируем модель: "ak47\decompiled"
Ставим две верхние галочки из трёх, третью нижнюю не ставим
Жмём "Extract"
https://vk.com/photo-21860125_403983718
- Декомпилируем модель из CS 1.6
Открываем MilkShape 3D
Жмём Tools -> Kratisto's Half-Life MDL Decompiler v1.2
Выбираем нашу модель ак 47 и ставим галочку только на "QC Script"
- Редактируем текстуры
Идём в папку "materials\models\weapons\v_models\aksu", открываем "wpn_aksu.vtf" с помощью VTFEdit
Если в папке находится не один ".vtf" файл, то экстрактим его также, но не экстрактим файлы с окончанием "_normal", "_light" и "_ref"
Жмём File -> Export и сохраняем как ".bmp"
Дальше открываем ".bmp" в XNView
Размер текстур в CS 1.6 не превышает размер в 512 на 512
Поэтому открываем Image -> Resize, пишем 512 в "Width", при этом у нас должна стоять галка на "Keep Ratio"
Жмём "Ок"
Дальше нам надо конвертировать картинку в 256-color (8-bit)
Открываем "Image -> Convert to Colours..." выбираем Colours: 256 и Dithering: None, жмём "Oк"
- Натягиваем текстуры
Прежде чем начнём положим в папку "decompiled", "hands_reference.smd" и "v_hands.bmp" из архива с декомпиляторами и компиляторами
Открываем MilkShape3D, жмём File -> Import -> Half-Life SMD... и выбираем меши от CS:S AK-47
Они должны называться "aks74u.smd" в нашем примере
Справа в MS3D жмём кнопку "Select" и затем кнопку пониже "Group"
Выделяем в 2D окне калаш с руками
https://vk.com/photo-21860125_403987091
Теперь жмём Window -> Texture Coordinat Editor
Сначала мы увидим такую большую картинку:
https://vk.com/photo-21860125_403987257
Пишем "-2" рядом с кнопочкой "Scale" и затем жмём её, дальше всё будет выглядить вот так:
https://vk.com/photo-21860125_403987422
Дальше либо двигаем UV Map вручную на текстуру, либо двигаем вот так:
Жмём "Move"
Пишем Offset: 0.0 -1.0 и жмём M, жмём М пока не увидим что UV Map лежит ровно на текстуре таким образом:
https://vk.com/photo-21860125_403988440
Далее делаем это для всех текстур и сохраняем модель Export -> Half Life SMD
Ставим галочку только на "Reference"
- Работа с .QC файлом
Переносим "v_ak47.qc" в папку "decompiled" (Мы декомпелировали модель 1.6 и остался этот файл)
Открываем этот файл текстовым редактором (Блокнотом):
https://vk.com/photo-21860125_403989116
Также открываем "mdldecompiler.qc" блокнотом:
https://vk.com/photo-21860125_403989198
Теперь мы должны отредактировать "v_ak47.qc" базируясь на "mdldecompiler.qc"
Результат будет выглядеть так:
https://vk.com/photo-21860125_403989453
Меняем:
//reference mesh(es)
$body "rhand" "rhand"
$body "lhand" "lhand"
$body "weapon" "f_ak47_template"
На:
//reference mesh(es)
$body "weapon" "aks74u"
Меняем:
// 2 attachment(s)
$attachment 0 "Bone 04" 2.750000 -22.500000 2.900000
$attachment 1 "Bone52" 0.000000 -3.000000 0.000000
На содержимое из "mdldecompiler.qc":
// 2 attachment(s)
$attachment "1" "a_ak74" -0.50 14.60 -2.50 rotate 0.00 -0.00 0.00
$attachment "2" "a_ak74" 0.30 -0.30 -3.00 rotate 25.00 -0.00 -180.00
Удаляем хитбоксы:
// 4 hit box(es)
$hbox 0 "Bone04" -1.980000 -8.880000 -1.020000 1.730000 0.030000 1.090000
$hbox 0 "Bone_Righthand" -1.340000 -2.980000 -0.410000 1.430000 0.000000 0.630000
$hbox 0 "Bone01" -1.720000 -8.900000 -1.020000 1.990000 0.020000 1.090000
$hbox 0 "Bone_Lefthand" -1.520000 -3.073735 -0.410000 1.250000 0.000000 0.630000
Меняем на:
// 4 hit box(es)
К каждой анимации:
// 6 animation sequence(s)
$sequence "idle1" "idle1" fps 30
Прописываем "rotate -90"
// 6 animation sequence(s)
$sequence "idle1" "idle" fps 30 rotate -90
..
- Компилируем
Открываем компилятор compiler.bat в tools\HL1 Model Compiler & Decompiler\
Закидываем "v_ak47.qc" в окошко компилятора
Жмём "Enter"
Теперь проверяем модель в Jed's Half-Life Model Viewer, а также в игре
https://vk.com/photo-21860125_403990223
https://vk.com/photo-21860125_403990248
Оригинал статьи лежит в архиве вместе с компиляторами и декомпиляторами
Автор: dels (https://forums.alliedmods.net/member.php?u=52287)
https://forums.alliedmods.net/showthread.php?t=94271
Свидетельство о публикации №221120301725