Разработчик
Скриптер
Участник
Пользователь
Garey
ninjaCow
- Сообщения
- 417
- Реакции
- 1,055
- Помог
- 10 раз(а)
Автор статьи: Garey
Привет! в данной статье я расскажу как переделать модельку игрока так что-бы клиент (либо сервер) мог задавать цвет модельки с помощью команд
Для этого нам надо будет переименовать текстурку игрока названием
0. Рекомендуемые программы:
Насчет первых трех более менее понятно, что за программы, а вот последняя это редактор спрайтов, но там очень хороший редактор цветовых палит который мы и будем использовать.
Я буду использовать свобоный редактор GIMP и если вы пользуетесь Photoshop'ом то там должен быть похожий функционал, если его нет то можно скачать программу с официального сайта: https://www.gimp.org
Milkshape 3d Используется для перераспределения текстур если в вашей моделе используется больше одной - из нескольких в одну.
XnView используется для того чтобы преобразовать из любого цветного в цветное 256 цветов ( Можете использовать любую другую )
Компилятор, декомпилятор и ASeprite я запаковал в архив и вы можете скачать их в конце поста
1. Декомпиляция модели:
Данный шаг можно пропустить если у вас модель уже имеется в формате SMD либо если вы уже умеете декомпилировать модели
Моделька должна сдекомпилироваться, 1-ый этап закончен
2. Объединение и перераспределение текстур в модели
Если текстур в модельке использовано более одной и эти текстуры должны участвовать в перераспределении цветов - объединяем эти текстуры в одну, для этого с начало открываем любой редактор изображений (можно даже Paint) и размещаем текстуры из каждого файла в один файл и переименовываем готовый файл в имя: DM_Base.bmp
Пример до и после:
2.1 Далее надо будет перераспределить текстуру в Milkshape 3D:
3. Ограничиваем количество цветов:
4. Переиндексация цветов в ASeprite
Для этого можно сначало выделить все цвета и рассортировать их по нужному параметру например по освещености для этого выделяем все цвета и нажимамем на маленькую стрелочку и выбираем Sort by Luminance на картинке все цвета поплывут для того чтобы все цвета перераспределились - нажимаем Remap
- Если цвет который вы хотите поменять белый или черный то нужно будет его немного раскрасить (если его не раскрасить в какой либо цвет - в игре просто не будет меняться цвет или будет но очень не заметно) для выделяем нужные цвета и нажимаем на кнопку слева от стрелочки которую мы нажимали ранее
- Перетащите цвета в начала диапазнов для bottom и topcolor(160 и 192), рассортируйте по яркости и неиспользуемые цвета преобразуйте в градиент от вашего цвета до черного для этого выделите последний используемый цвет и растяните выделение дл 191 или 223 и нажмите на стрелочку -> Gradient
Результат должен выглядеть примерно так:
5. Компилируем модельку обратно в MDL
Смотрим результат в игре:
Привет! в данной статье я расскажу как переделать модельку игрока так что-бы клиент (либо сервер) мог задавать цвет модельки с помощью команд
bottomcolor
/topcolor
аналогично мультиплеерным моделям из Half-LifeДля этого нам надо будет переименовать текстурку игрока названием
DM_Base.bmp
и переставить индексы цветов которые должны заменяться в определенную зону в файле.0. Рекомендуемые программы:
- Компилятор studiomdl.exe и декомпилятор MDL by Kratisto (Если будет использоваться уже готовая моделька)
- GIMP (или Photoshop)
- Milkshape 3D
- ASeprite
* XnView
Насчет первых трех более менее понятно, что за программы, а вот последняя это редактор спрайтов, но там очень хороший редактор цветовых палит который мы и будем использовать.
Я буду использовать свобоный редактор GIMP и если вы пользуетесь Photoshop'ом то там должен быть похожий функционал, если его нет то можно скачать программу с официального сайта: https://www.gimp.org
Milkshape 3d Используется для перераспределения текстур если в вашей моделе используется больше одной - из нескольких в одну.
XnView используется для того чтобы преобразовать из любого цветного в цветное 256 цветов ( Можете использовать любую другую )
Компилятор, декомпилятор и ASeprite я запаковал в архив и вы можете скачать их в конце поста
1. Декомпиляция модели:
Данный шаг можно пропустить если у вас модель уже имеется в формате SMD либо если вы уже умеете декомпилировать модели
1.1 Создаем папку где будет декомпилярованные ресурсы модельки и копируем туда .mdl модельку
1.2 Открываем decompiler.bat и перетаскиваем mdl из новой папки в окно и жмем Enter
1.3 На вопрос какой тип модельки - выбираем Reference (1) и жмем Enter и ждем пока моделька декомпилится
1.2 Открываем decompiler.bat и перетаскиваем mdl из новой папки в окно и жмем Enter
1.3 На вопрос какой тип модельки - выбираем Reference (1) и жмем Enter и ждем пока моделька декомпилится
Моделька должна сдекомпилироваться, 1-ый этап закончен
2. Объединение и перераспределение текстур в модели
Если текстур в модельке использовано более одной и эти текстуры должны участвовать в перераспределении цветов - объединяем эти текстуры в одну, для этого с начало открываем любой редактор изображений (можно даже Paint) и размещаем текстуры из каждого файла в один файл и переименовываем готовый файл в имя: DM_Base.bmp
Пример до и после:
2.1 Далее надо будет перераспределить текстуру в Milkshape 3D:
- Импортируем smd файл или файлы(если модель разбита на несколько групп)
- Нажимаем справа на вкладку Materials и вместо родных текстур меняем все на DM_Base.bmp созданный ранее:
- Теперь наносим текстуру на модель - Выделяем нужную группу (если их несколько) и Жмем Ctrl+T, масштабируем и двигаем ее на нужную область текстуры как все закончено, закрываем окошко.
- Все тоже самое проделать для каждой группы - каждой модельки.
3. Ограничиваем количество цветов:
- С начало открываем GIMP (либо Photoshop хотя не уверен есть ли там такая функция)
- Открываем ранее созданый DM_Base.bmp
- Переведите изображение в режим RGB (Изображение->Режим->RGB)
- Далее опять переведите в режим Индексированный (Изображение->Режим->Индексированный)
- Выбираем создать оптимальную палитру и выбираем Максимальное число цветов - 128 (неуверен есть ли такая функция в Photoshop)
- Сохраняем (Экспортируем в BMP)
4. Переиндексация цветов в ASeprite
- Открываем DM_Base.bmp
*Если будет ругаться и не сможет откройте например в XnView и преобразуйте в цветное 256 цветов - Теперь видна палитра изображения и непосредственно само изображение
- Теперь с помощью левого окошка (где палитра) перераспределите нужные цвета в Индексы 160-191( bottomcolor ), 192-223(topcolor)
Для этого можно сначало выделить все цвета и рассортировать их по нужному параметру например по освещености для этого выделяем все цвета и нажимамем на маленькую стрелочку и выбираем Sort by Luminance на картинке все цвета поплывут для того чтобы все цвета перераспределились - нажимаем Remap
- Если цвет который вы хотите поменять белый или черный то нужно будет его немного раскрасить (если его не раскрасить в какой либо цвет - в игре просто не будет меняться цвет или будет но очень не заметно) для выделяем нужные цвета и нажимаем на кнопку слева от стрелочки которую мы нажимали ранее
- Перетащите цвета в начала диапазнов для bottom и topcolor(160 и 192), рассортируйте по яркости и неиспользуемые цвета преобразуйте в градиент от вашего цвета до черного для этого выделите последний используемый цвет и растяните выделение дл 191 или 223 и нажмите на стрелочку -> Gradient
Результат должен выглядеть примерно так:
5. Компилируем модельку обратно в MDL
- Открываем Compiler.bat
- Открываем папку куда мы декомпилировали и перетаскиваем файл *.qc в окошко
Смотрим результат в игре:
Download all Attachments
-
2.9 MB Просмотры: 113