[Туториал]Перекомпиляция моделей

Текстурные модификации, редактирование моделей
Сообщение
Автор
Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#1 Сообщение 03.03.2008, 10:35

Тутор взят с mani-admin-plugin.com, однако по причине постоянных обновлений кое что устарело и мною введены добавления.

На пабликах, как правило, вдобавок ко стандартным моделям и скинам, установлены еще - собственно для админов и по несколько для игроков. Играть ,конечно, становится веселей, но качество этих шкур крайне убогое. Этому есть причина - чтобы установить модель на серв, нужно "прописать" в мани все ее 3d-файлы с анимациями и материалы. А потому админы особо не заморачиваются и устанавливают уже готовые старые "комплекты" , которые и весят легче, и скачиваются быстрее. В отличие от сервера клиенту достаточно подменить mdl-файл. Допустим, с какого то серва мы закачали эту модель, расположена она у нас в D:\Steam\steamapps\VasyaBaykin\counter-strike source\cstrike\models\player\ics\greyskull_t.

Изображение


И мы хотим поменять ее на другую - Janett.
Изображение


1. Прописываем новую системную переменную - VProject, без нее скомпилировать новую модель мы не сможем.
Заходим в Свойства Системы / Дополнительно / Переменные Среды
Создаем переменную среду:
имя: VProject
значение: D:\Steam\steamapps\VasyaBaykin\counter-strike source\cstrike


Изображение

После этого перезагруз.

2..Скачиваем Cannonfodders MDL Decompiler.
Устанавливаем его в D:\Steam\steamapps\VasyaBaykin\sourcesdk\bin\ep1\bin

3.. Создаем папку Modding, в ней две подпапки decompiled и temp.
В папке моддинг создаем текстовый файл bones.txt:
в нем строчки:
$bonemerge "ValveBiped.weapon_bone"
$bonemerge "ValveBiped.weapon_bone_Clip"
$bonemerge "ValveBiped.Bip01_R_Hand"
$bonemerge "ValveBiped.Bip01_L_Hand"
$bonemerge "ValveBiped.Bip01_R_Foot"
$bonemerge "ValveBiped.Bip01_L_Foot"


В папке моддинг создаем ярлык к Cannonfodders MDL Decompiler.
В папку Temp помещаем нужную нам модель - Janett.

4..Декомпилируем нужную нам модель Janett.
Запускаем Source SDK под интересующую нас игру, в данном случае Counter Strike:Source.
Запускаем Cannonfodders MDL Decompiler , снимаем галку с Use Steam File Access...
в "Choose model file" Вставляем путь к .mdl-файлу декомпилируемой модели Janett.
в "choose output directory" выбираем путь к папе "...modding\decompiled"
Изображение
нажимаем EXTRACT

Изображение Изображение

После этого в папке "decompiled" появился декомпил от модели Janett. Там же находим mdldecompiler.qc.

5..Редактируем mdldecompiler.qc с помощью любого текcтового редактора.
В строку "$modelname" вставляем путь до нужной нам АДМИНСКОЙ модели - в нашем случае "player\ics\greyskull_t\terror.mdl" .
После строки "$cdmaterials" вставляем четыре строки из bones.txt:
$bonemerge "ValveBiped.Bip01_R_Hand"
$bonemerge "ValveBiped.Bip01_L_Hand"
$bonemerge "ValveBiped.weapon_bone"
$bonemerge "ValveBiped.weapon_bone_Clip"

Изображение

6.. Создаем батник:
@echo off
E:\Steam\steamapps\VasyaBaykin\sourcesdk\bin\ep1\bin\studiomdl.exe E:\modding\decompiled\mdldecompiler.qc
pause


Обзываем его compile.bat

7..Запускаем compile.bat

Изображение

Модель компилится от нескольких сек. до минут.
8.. Не забываем распаковать материалы от Janett .

9.. Все! Открываем МодельВьюер или же запускаем игру и видим новую модель.


PS: Если мы хотим модель оставить стандартной, а поменять только ее скин, с помощью GCFscape извлекаем нужную нам модель - ct_urban, t_leet и т.д. После ее декомпила в файл mdldecompiler.qc (смотри пункт 5) в строку $cdmaterials вставляем путь к нужной нам текстуре.

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


Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#3 Сообщение 07.03.2008, 21:09

А у меня при открытии MDL Decompiler, выдаешт ошибку: Не найден vstdlib.dll :(

Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#4 Сообщение 08.03.2008, 00:26

Ошибка "Не найден vstdlib.dll" выдается при неправильном пути.
Устанавливаем mdldecompiler в папу ...Steam\steamapps\VasyaBaykin\sourcesdk\bin\ep1\bin... ПРОВЕРЬ ПУТИ. Или у тебя стимаккаунт Вася Бякин? :)

Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#5 Сообщение 14.03.2008, 12:33

zerg_spb писал(а):Ошибка "Не найден vstdlib.dll" выдается при неправильном пути.
Устанавливаем mdldecompiler в папу ...Steam\steamapps\VasyaBaykin\sourcesdk\bin\ep1\bin... ПРОВЕРЬ ПУТИ. Или у тебя стимаккаунт Вася Бякин? :)
Вобщем главное скачать и установить Source SDK и в нем уже есть mdldecompiler. Про Source SDK автор не рассказал, поэтому пришлось попариться...А можно как-нить изменить саму админскую модель?

Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#6 Сообщение 14.03.2008, 19:46

Punisher-VIP писал(а): Вобщем главное скачать и установить Source SDK и в нем уже есть mdldecompiler.
А я даже и не знал , что в Source SDK уже есть mdldecompiler. Тогда его там еще не было! Спасиба за поправочку, исправим.
Punisher-VIP писал(а):А можно как-нить изменить саму админскую модель?
Конечно, можно. Текстуры в фотошопе, а сама модель в Milkshape3d или в Максе. Но для этого понадобятся "спецзнания" по данным предметам, придется учиться... Вышеописанный способ самый простой и не требует почти никаких навыков...

Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#7 Сообщение 15.03.2008, 10:43

Вот у меня есть модель, и я хочу на эту модель добавить надпись/значек. Как это сделать? Сложно ли это?

Аватара пользователя
Backbreaker
Маппер
Маппер
Сообщения: 1184
Зарегистрирован: 27.12.2007

#8 Сообщение 15.03.2008, 11:44

Punisher-VIP писал(а):Вот у меня есть модель, и я хочу на эту модель добавить надпись/значек. Как это сделать? Сложно ли это?
Тебе понадобится: Фотошоп (или аналог фотошопа), прога VTF Edit и.. все
Тебе нужно знать какую текстуру использует модель и где она находится. С самой моделью мутить ниче не надо.
Запускаешь VTF Edit, открываешь эту текстуру, экспортируешь ее в напр. tga, сохраняешь. Открываешь этот тга фотошопом и делаешь с ним ЧЕ ХОЧЕШЬ, только не изменяй его размер. Длее сохраняешь изменненный картинку и импортируешь ее в VTF Edit в vtf и сохраняешь вместо старой (лучше перед этим сделать бэкап оригинальной текстуры)
фсё. :$
Изображение

Аватара пользователя
Backbreaker
Маппер
Маппер
Сообщения: 1184
Зарегистрирован: 27.12.2007

#9 Сообщение 15.03.2008, 11:51

Кстати вот линк на vtf edit http://nemesis.thewavelength.net/index. ... o=15#c2808
Изображение

Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#10 Сообщение 15.03.2008, 11:54

Спасибо!
P.S. В Source SDK есть все!

Аватара пользователя
Backbreaker
Маппер
Маппер
Сообщения: 1184
Зарегистрирован: 27.12.2007

#11 Сообщение 15.03.2008, 11:55

Я просто не думал что у тебя есть сдк
Изображение

Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#12 Сообщение 17.03.2008, 20:29

Тут еще текое дело...Вобщем нашел в нете прикольную модель для CSS (в ней только фаилы materials/models/player...). Поставил в контру, все работает. Решил малеха переделать и всунуть на серв в админский скин. На фотошопе все олично сделал, переделал в VTF, и фаилы из models/player... взял от стандартного, а фаилы с materials/models/player... взял переделанные. После этого у меня на серве получился просто стандартный скин. Что делать?! В игре меняется, а если на серв ставить, он как стандартный идет и не меняется. :cry:

Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#13 Сообщение 19.03.2008, 07:20

Тут есть варианты.

*.qc файл перед компилом правил? См. пункт 5. Именно в нем указаны пути к новым текстурам.


Я не знаю всех подробностей установки модели на СЕРВЕР, но в мани должны быть прописаны не только модель , но и ее шкуры.


Ну и может на серве стоит защита от нестандартных текстур?

Punisher-VIP
Лейтенант
Лейтенант
Сообщения: 118
Зарегистрирован: 31.12.2006
Контактная информация:

#14 Сообщение 19.03.2008, 12:57

zerg_spb писал(а):Тут есть варианты.

*.qc файл перед компилом правил? См. пункт 5. Именно в нем указаны пути к новым текстурам.


Я не знаю всех подробностей установки модели на СЕРВЕР, но в мани должны быть прописаны не только модель , но и ее шкуры.


Ну и может на серве стоит защита от нестандартных текстур?
Вообще я ничего не компилил. Я ставил на пиратку, там все распакованное.
Чтобы поставить шкурки на сервер нужны полность все фаилы модели, тоесть фаилы из:
1) materials/models/player/ics/admin...
2) models/player/ics/admin...
В тех шкурках, что я скачал (для игры) был только пункт 1 (для ct_urban). Тоесть пункт 2 от стандартного идет. На сервер нужен и 2 пункт, пришлось взять из игры (у меня пиратка, там просто выдернуть). Но когда я назначал модель, то она менялась на обыкновенную модель ct_urban. Я так понял, фаилы 2 пункта мне надо самому создать? а как это можно сделать? и можно ли...
И еще, я не очень понял что такое перекомпиляция... :blush: Обьясните новечку...

Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#15 Сообщение 19.03.2008, 16:22

Именно внутри самой модели .mdl-файла находятся все пути:

1.По какому пути расположена сама модель
2.Какие текстуры будет использовать модель.
3.По каким путям расположены эти текстуры.

Если взять и просто переместить модель в другую папку - модель работать не будет! Если переместить текстуры - модель работать будет, но либо co стандартным скином, либо в эмо-шашку.

Перекомпиляция модели именно для того и нужна, чтоб зашить в .mdl новые пути...

Ответить Вложения 23