Компиляция и декомпиляция MDL-моделей движка GoldSrc

Эта статья пригодится тем людям, которым нужно поменять какие-либо параметры MDL-модельки для Half-Life или Counter-Strike 1.6, но они не знают с чего начать. Мне понадобилось просто перетекстурировать модель игрока, однако, в декомпилированной модельке можно изменить все параметры, включая анимацию и геометрию.


Котик

Для декомпиляции нашей MDL-модели мы будем использовать консольную утилиту mdldec.exe (скачать все инструменты можно ниже, в приложенном архиве). Этот декомпилятор умеет извлекать из модельки: SMD-исходники (меши и анимацию), BMP-текстуры и QC-скрипт. Для удобства декомпиляции в папке с mdldec.exe был создан батник decompile_all.bat, позволяющий декомпилировать все MDL-модели разом.

Для компиляции будет использоваться консольная утилита studiomdl.exe, любезно модифицированная Дядей Мишей. В отличие от той studiomdl.exe, что входила в HL SDK, в утилите от Дяди Миши исправлены критические ошибки и добавлены некоторые возможности, например: поддержка тяжёлых моделей, поддержка текстур размером 1024х1024, поддержка до 768 кадров в анимации и другие.

Итак, декомпиляция:
1. Распакуем архив MDL_tools.zip в любую удобную для вас папку.
2. Перенесём необходимую модельку для декомпиляции (в моём случае это blackcat.mdl) в папку MDL_tools.



3. Запустим файл decompile_all.bat (просто два раза кликнув на него).
4. Откроется чёрное окошко, и создастся папка «Имя модели» (в моём случае это папка blackcat/) с исходниками, текстурами модели и QC-скриптом.



5. Внесём необходимые изменения в исходники или текстуры.

Компиляция:
1. Перенесём файл studiomdl.exe в папку с исходниками модели и QC-скриптом.
2. Перенесём QC-скрипт на файл studiomdl.exe, моделька скомпилируется.



3. Забираем в папке полученную MDL-модельку.

Примечание: Если вам нужно воспользоваться некоторыми параметрами studiomdl.exe, для этого её можно запустить из приложения cmd.exe. Для примера:

  • Пуск – Выполнить – cmd.exe
  • cd «Полный путь до папки, где находится studiomdl.exe»
  • studiomdl «параметры» file.qc

Список параметров можно посмотреть просто выполнив studiomdl.

Чем изменять исходники и текстуры?

  • Для изменения SMD-исходников можно воспользоваться любой удобной для вас программой – например, kHED или MilkShape3D.
  • QC-скрипт редактируется в любом текстовом редакторе, например, я использую Notepad++.
  • Для изменения текстур можно использовать Adobe Photoshop или GIMP. Для удобного редактирования в Photoshop’е следует переключить режим изображения (Изображение – Режим) в «RGB», а после внесения изменений в текстуру, изменить режим на «Индексированные цвета». Сохранять текстуры следует в формате BMP и глубиной цвета 8 бит.

Вот такой симпатичный котик у меня получился:


 

Скачать набор инструментов MDL_tools.zip

Half-Life, Others

Комментарии: 10

  1. Народ, и в частности тот, кто написал статью.
    Почитал я. Описано конечно поверзностно, лишь компилировать и декомпилировать.
    А вот как реально изменить модель, лишь п. 5.
    Я скопировал все програмулки эти залез туда и понял, что уйдут годы, чтобы освоить
    все то, что там есть. Там такие навороты по точкам, что мозги раком встают.
    КОРОЧЕ! РЕБЯТА. КТО МОЖЕТ МНЕ ИЗМЕНИТЬ МОДЕЛЬ ПАРАШЮТА?
    У меня есть моделька парашюта. Соответственно есть и плагин к ней.
    Мне лишь надо.
    1. Изменить форму парашюта с окргулой классической формы, на современную прямоугольную
    форму.
    2. Изменить цвет парашюта (если возможно, то вставить туда название моего сервера).
    3. Размер парашюта сделать в 3 раза меньше, чем есть. Этакий фантастический парашютик
    3000 века. Последние достижение науки! О))))) Собственно сделать размер равный наверное чуть больше ширины плеч модели игрока в Conter-Strike 1.6. Это чисто условный размер, который показывает, что игрок
    спускается все же на чем то. А то некоторые уже просто парашют удалили и игроки летают лишь раставивь руки в стороны, типа птиц — бред.
    4. Работа будет ОПЛАЧЕНА — там делов то раз плюнуть. Оплату сделаю либо на Яндекс деньги, На карту сбербанка РФ или на Webmoney.

  2. Нифига оно не работает. Создал qc файл на основе pinkiepie.qc . Запихнул studiomdl.exe в папку с этим qc и Перетащив нужный qc на studiomdl.exe (Открыть в помощью) программа появляется на секнду а mdl файл не создался.

    1. Значит какие-то ошибки всё-таки имеются. Попробуйте в этой папке (в стандартном Проводнике) кликнуть на пустом месте, зажав клавишу Shift. В контекстном меню найдите опцию, которая запускает консоль и введите там:

      studiomdl.exe 'имя_вашего_qc'.qc

      Программа должна показать вам текст ошибки, если что-то пошло не так.

  3. немножко не понял: сделал все как в инструкции, далее же заменил bmp файлы на нужные мне. Смотрю модель, результата нету, Что делать?

    1. BMP файлы должны быть не больше 8 Килобит, Что бы их заменить вам нужно работать либо с Фотошопом, либо использовать Pain.net только они могут сохранять в нужном разрешении и формате!

  4. Такая же проблема, что и ZEkA10000, я не столь продвинутый юзер, я просто поменял текстуру глубина 8 бит, а вот скомпелировать не получается. Кто нибудь знает еще простые способы компеляции?

Добавить комментарий для Егор Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *