Так как это FAQ, то я не буду приводить подробнейший тутор, а ограничусь лишь небольшим руководством на примере создания замены автомату AK47, но со стандартной анимацией. Вначале нужно нарисовать саму модель (сетку) и наложить на неё текстуры. Желательно чтобы новая модель приблизительно совпадала по размерам с оригиналом, это нужно для того, чтобы не было глюков при проигрывании анимации - рука въехала в рожок и т.д.
Рисовать модель можно в любом редакторе (например в 3D Studio MAX), это кому как удобнее. По собственному опыту скажу, что рисовать желательно по фотографии, наложив её на задний фон в редакторе, благодаря этому пропорции модели будут верны и не будет такого, что рожок больше чем он должен быть. Я не буду описывать процесс рисования, в Интернете есть множество различных уроков по этой теме (www.render.ru, www.dlight.ru и т.д.).
После того как модель закончена и на неё наложены текстуры, а они должны быть в формате BMP, размерностью не более 512х512 и 256 цветные (иначе модель не скомпилируется), экспортируем сетку в формат 3ds, если рисовали в 3D Studio MAX. А если в другом редакторе, то в любой другой формат, который понимает программа Milkshape 3D.
Итак, после этих манипуляций получился один файл с расширением 3ds и один или несколько файлов с текстурами в формате BMP.
Оставим их на некоторое время и займёмся подготовкой к следующему этапу. Для этого понадобится Milkshape 3D - это 3D-редактор, заточенный специально под игры. Рисовать в нём, на мой взгляд, неудобно. И у него слишком мало возможностей, по сравнению с профессиональным редактором. Но у него есть один большой плюс - большое количество поддерживаемых игровых форматов.
В нём с помощью утилиты Kratisto's MDL Decompiler ( в меню Tools) декомпилируем MDL-файл той модели, на место которой нужно вставить нашу (ну например v_ak47.mdl).
Результат работы декомпилера - это несколько файлов с расширением:
1. SMD - один из них это сетка, а остальные это анимации;
2. QC - это текстовый файл, из него компилятор берёт информацию о модели, анимации, текстурах и т.д.;
3. BMP - все файлы кроме hand.bmp и thumb.bmp можно сразу удалить.
Далее в Milkshape 3D импортируем файл с сеткой (как правило, он один. Например f_ak47_template.smd), в окошке появится модель автомата с руками. Ничего не трогая и не изменяя, импортируем нашу модель (FileImportAutodesk 3DS). Скорее всего, наша модель будет больше чем оригинал и будет располагаться не в том месте. Что бы исправить это недоразумение, выделим её и с помощью инструмента Move и Rotate развернём и передвинем на место оригинала. А с помощью Scale уменьшим до приемлемых размеров. Цель - чтобы наша модель располагалась точно на месте оригинальной, чтобы рукояти и рожки совпадали по размерам и находились в одинаковых местах (чтобы не было так: рука держится за пустоту, а рукоятка вообще сбоку).
После того как новая модель подогнана под старую, нужно присоединить её к костям. Для большего удобства желательно записать на бумажку, к каким именно прицеплены части старого автомата. Лезем в закладку Joints и ищем нужные нам кости, как правило, это Bone_AK47 (к ней цепляется весь автомат) и несколько штук после неё (одна для рожка, одна для затвора, одна для спускового крючка). Кстати, лучше кости не передвигать и тем более переименовывать, а то проблем не оберётесь.
Дальше можно с чистой совестью удалить старую сетку, она больше не понадобится, а нашу по бумажечке присоединять к костям - рожок к одной, затвор к другой, спусковой крючок к третьей, а всё остальное к Bone_AK47. Ещё желательно проверить - нет ли не назначенных вершин (в закладке Joints нажать на кнопку SelUnAssigned).
После то, что получилось можно смело экспортировать в SMD (FileExportHL smd). Вот модель почти готова, осталось только её скомпилировать, для этого необходимо собрать все файлы в один каталог - QC файл из декомпилированной модели, несколько SMD файлов с анимациями, исправленный нами SMD файл с сеткой (f_ak47_template.smd) и BMP файлы с текстурами. Лезем в меню ToolsHalf LifeCompile QC File и в появившемся диалоговом окне указываем наш QC файл. Если всё прошло гладко, то в папке с файлами появится один новый файл с расширением MDL, а если не совсем гладко, то начинаем искать, где была допущена ошибка. Как вариант - можно компилировать с помощью консольной утилиты studiomdl.exe. В этом случае при возникновении ошибки в той же консоли можно посмотреть, что это за ошибка и быстро её исправить. Наиболее распространеннее ошибки это:
- не найдены какие либо файлы.
- текстуры содержат более 256 цветов.
Ну, вот и всё, это конечно не тутор, но с помощью этого совета можно достаточно быстро сделать собственную модель или конвертировать какую-нибудь модель из другой игры.