Source Filmmaker Guide

Создание VTF текстуры for Source Filmmaker

Создание VTF текстуры

Overview

Привет юзер.Представляю тебе коротенький гайд, по конвертации jpg / jpeg / png / tga / bmp / dds / psd в формат VTF, понятный движку Source Engine (1).

Нужный софт

Нам понадобится:

  • Программная основа VTFEdit / VTFCmd / HLLib
    Скачать[nemesis.thewavelength.net]

Для нытиков про вирусы это официальный сайт автора программ которыми моддерское сообщество пользуется больше 10 лет. [link]

Ниже альтернативные ссылки т.к. официальный сайт похоже умер.
TopHATTwaffle’s[www.tophattwaffle.com]
Valvedev[valvedev.info]
Gamer Lab[gamer-lab.com]
GameBanana[gamebanana.com]

В архиве можно найти последнюю версию VTFEdit (не требует установки) и консольную программу VTFCmd.
VTFEdit – полноценная программа для конвертации форматов в VTF и обатно.
VTFCmd – консольная прога для конвертации форматов через cmd строку Windows. Очень удобна, если надо без лишних телодвижений конвертировать целую папку в VTF.

Папка х64 – для 64 битных систем Windows
Папка x86 – для 32 битных систем Windows

Работа с программой VTFEdit

Основное окно программы.

Для импорта выше указанных форматов:
Жмём File – Import и выбираем нужное изображение

Окно параметров импорта изображения.

General:
Normal Format – формат, в который будет сжиматься текстура
Alpha Format – формат альфа канала tga (png ?)

Texture type:
Animated Texture – анимированная текстура, если вы выбрали более 1 изображения
Environment Texture – текстура-env_map, создание текстуры кастомного отражения.
Volume Texture – обычная текстура

Resize:
Различные варианты способов, по которым будет масштабироваться текстура, если она не кратна 2м. Т.е. 64х128х256х512 итд

Clamp:
Обрезка. Здесь устанавливаются максимальные размеры выходной текстуры. Предположим у вас есть текстура 9999х9999, при импорте она может быть автоматически урезана например до 2048х2048.

Generate MipMaps:
Не советую отключать. MipMaps это мини версии текстуры, которые появляются, когда игрок отдаляется от неё. Что снижает нагрузку и исключает эффект мельтешения.

Дополнительные параметры импорта.

Version:
Версия VTF формата. Советую использовать 7.3. Из большинства движков уже выпилили поддержку версий 7.1 и 7.2. Версии 7.4 и 7.5 встречаются в играх вроде Portal 2 и Left 4 Dead 2.

Выбрав нужные параметры жмём ОК.
В зависимости от жирности входного формата программа может повиснуть на неопределённое время, идёт конвертация в VTF.

После конвертации видим примерно следующее.

Для отображения прозрачности нажмите View – Mask или Ctrl+M (вкл/выкл)

Сжатие DXT и ABGR8888

DXT1-5 сжатие

DXT1-5 сжатие подходит для большинства текстур, которые не требуют максимального качества. Текстура с таким сжатием весит намного меньше чем ABGR8888, но такая текстура имеет низкое качество, особенно это заметно на градиентах или мелких элементах.

ABGR8888 сжатие

ABGR8888 текстура получается практически без сжатия, имеет максимальный вес, даже больше оригинала, т.к. ещё учитываются MipMaps. Желательно использовать для текстур например волос, где требуется максимальное качество альфа канала и прозрачности.
Текстуры где используются градиенты, мелкие детали на normal / bump картах и.т.п.

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

256
512
1024
2048
4096
DXT1
43kb
170kb
683kb
2.6mb
10.6mb
DXT5 alpha
86kb
342kb
1.3mb
5.3mb
21.3mb
ABGR8888 alpha
342kb
1.3mb
5.3mb
21.3mb
85.3mb

Демонстрация сжатия на различных изображенияx.

Оригинал[/img]

Работа с программой VTFCmd

Если на прямую запустить программу, вы увидите все параметры которые она понимает и несколько примеров, как их использовать для конвертации.

Если просто перетащить файл на VTFCmd.exe то программа сконвертирует в VTF со стандартными параметрами. А это DXT1 / 5 и автоматическое растягивание до 2 к 2м.

Основные команды программы.

  • -file <path> – путь к конвертируемому файлу
  • -folder <path> – путь к папке, если конвертировать сразу целую папку
  • -recurse – параметр, заставляющий искать файлы не только в паке указанной в параметре выше, но и в подпапках.
  • -output <path> – выходная папка. Если не указана, то VTF появятся в этой-же папке.
  • -version <string> – версия VTF формата
  • -alphaformat <string> – формат альфа канала.
  • -resize – указать кратно какому числу урезать входное изображение.

Батник для простой конвертации перетаскиванием на него, но с указанными в нём параметрами.
Данный cmd файл работает, если лежит рядом с VTFCmd.exe. Но обращаться к нему можно хоть с ярлыка.

start “” “%~dp0/vtfcmd.exe” -file “%1” -format “dxt1”

Краткое описание:
%~dp0 – авто генерация пути до vtfcmd.exe, во избежании ошибок запуска.
%1 – авто генерация пути и имени файла, который “кидают” на этот батник

Исправление ошибок

Самая распространённая ошибка это проблемы с параллельной конфигурацией. Самая странная и самая частая ошибка при запуске программ использующих Net и C++ пакеты.
Выглядит такая ошибка примерно так.

Ошибка на 100% лечится довольно просто, но очень не быстро. Для этого вам надо скачать пакет называемый microsoft visual c++ hybrid. Обычно их название сокращается до VCR_Hyb_x86_x64_какая_то_дата.exe
Никаких ссылок я пожалуй оставлять не стану, т.к. Microsoft такие пакеты для загрузки не распространяет и заставляет качать сотни отдельных пакетов. Но через google можно быстро найти подобный инстайлер. Выглядит он так и ник иначе ! Ставится всё автоматически и что-то делать во время этой установки крайне не рекомендую. В зависимости он убогости компа установка может длится около 15 минут, но после установки все проблемы с конфигурациями 100% пропадают, проверено и мной и другими людьми.

И это всё ?

Пока всё. Возможно позже добавлю больше информации.

SteamSolo.com