HLFX.Ru Forum Страницы (2): [1] 2 »
Показать все 29 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Уроки VolatileRadiant (https://hlfx.ru/forum/forumdisplay.php?forumid=28)
-- Урок 10. Использование собственных текстур (https://hlfx.ru/forum/showthread.php?threadid=2593)


Отправлено XaeroX 05-02-2011 в 15:43:

Урок 10. Использование собственных текстур

Урок 10. Использование собственных текстур

Пришло время разнообразить уровень собственными текстурами. Движок понимает только внутренний формат VTX (Volatile Texture), однако есть инструмент, позволяющий легко конвертировать в него обычные TGA-текстуры, PNG-текстуры, JPG-текстуры и BMP-текстуры.
Стандартный материал в игре обычно состоит из трех различных текстур: diffuse, normal и gloss. Первая текстура – это обычная текстура, задающая основную фактуру. Вторая – карта нормалей, позволяющая задавать попиксельный микрорельеф при динамическом освещении. И, наконец, третья попиксельно регулирует уровень блеска материала при динамическом освещении.
Diffuse-текстуру вы можете создать в любом графическом редакторе (например, Photoshop) или позаимствовать из другой игры (учтите, что заимствованные текстуры вы можете использовать только для собственных нужд; распространять их незаконно). Дайте ей какое-либо имя (например, mytexture) и сохраните в формате TGA. Получится файл mytexture.tga.
Normal-текстуру вы можете также откуда-либо взять или сгенерировать на основе heightmap, используя NVidia Photoshop Plugin. Если вы хотите использовать параллакс-маппинг для материала, создайте в normal-текстуре альфа-канал, в который сохраните height map. Сохраните текстуру как 24-битный (или 32-битный, если использовался альфа-канал) TGA-файл, добавив к имени текстуры окончание «_n»; например, mytexture_n.tga.
Gloss-текстуру имеет смысл делать черно-белой и сохранять как 8-битный (grayscale) TGA с добавлением окончания «_g»; например, mytexture_g.tga. Черный цвет текстуры соответствует отсутствию блеска, белый – максимальному блеску. Если программа редактирования изображений не позволяет сохранить её в таком формате, сохраняйте в обычном, но в этом случае нужно будет указать параметр утилиты makevtx «-g» или «-ag» (см. ниже).
На все текстуры действует ограничение по размеру: он не должен превышать 2048 x 2048 пикселей.

Теперь текстуры надо перевести в формат VTX. Для этого служит утилита makevtx. Вызывать ее нужно через командную строку со следующими аргументами:
makevtx [options] texturename.tga
Утилита преобразует выбранную TGA-текстуру в VTX-текстуру.
Опции командной строки таковы:


Для создания анимированной текстуры или кубической карты нужно указать маску имени текстуры. В маске подстрока %d будет подменена на порядковый номер текстуры, начиная с 1. Если вы используете bat-файл, нужно указывать не %d, а %%d.
Внимание: makevtx поддерживает разнообразные форматы TGA: 8-битные Grayscale, индексированные, полноцветные RGB и RGBA, с RLE-сжатием и без него. Кроме того, поддерживаются различные форматы PNG-файлов. Однако при сохранении PNG нужно быть внимательным: текстура может быть создана с альфа-каналом («белым») там, где это не было нужно. Во избежание проблем сохраняйте PNG-файлы, не содержащие альфы, только после склеивания слоёв (например, в Photoshop – Layer > Flatten Image). Последние версии makevtx поддерживают, кроме того, JPG и BMP форматы.

Для того, чтобы массово сконвертировать вышеописанные текстуры, создайте bat-файл следующего содержания:

code:
@ECHO OFF for %%i in (*.tga) do @C:\OptionImplicitDemo\system\makevtx.exe -an -ag %%i pause


Вместо «C:\OptionImplicitDemo\system\makevtx.exe» укажите ваш путь к утилите makevtx. После запуска вы получите три текстуры: mytexture.vtx, mytexture_n.vtx и mytexture_g.vtx. Обратите внимание на опции «-an» и «-ag»: они позволяет распознавать карты нормалей, блеска и отражения при массовом создании текстур.

Вы можете разместить полученные текстуры в нужной папке в подпапке textures и использовать текстуру mytexture в редакторе. Карта нормалей и карта блеска будут загружены автоматически.
Кроме того, вы можете создавать сложные многослойные текстуры с различными эффектами, создавая соответствующие шейдерные скрипты. Подробнее об этом смотрите файл «Volatile3D II Shading Manual.doc» в папке sdk.

__________________

xaerox on Vivino


Отправлено PunkPaToB 11-02-2011 в 16:19:

Скажите пожалуста опции командных строк, оптимальных для каждой из 3 текстур.(я так понимаю их для каждой несколько)
З Ы Глосс текстуру делать с серыми оттенками? (от 0 до 255).Или просто черный и белый цвет?(0 до 1).
И Paint.net дает сохранить только в 32 или 24 битном изображении.
Посоветуйте прогу (не фотошоп) которая может более опционально сохранять.


Отправлено XaeroX 11-02-2011 в 17:53:

Цитата:
PunkPaToB писал:
я так понимаю их для каждой несколько

Где в туторе написано, что для каждой из 3 текстур надо использовать разные опции? Ну покажи.
Цитата:
PunkPaToB писал:
Глосс текстуру делать с серыми оттенками? (от 0 до 255).Или просто черный и белый цвет?(0 до 1).

От 0 до 255, в Фотошопе - Image > Mode > Grayscale.
Цитата:
PunkPaToB писал:
Посоветуйте прогу (не фотошоп) которая может более опционально сохранять.

Я таких не знаю.

__________________

xaerox on Vivino


Отправлено PunkPaToB 11-02-2011 в 18:04:

XaeroX
Заметил такую неприятность, вот ты апгрейднул Радиант на пути с пробелами.А батник отказывается что либо делать из за них. Ну я текстурку скомпилил. Но Gloss текстура 24 бита.Такая может идти?


Отправлено Дядя Миша 11-02-2011 в 18:41:

Цитата:
PunkPaToB писал:
Но Gloss текстура 24 бита.Такая может идти?

старый ксаш ужимал в видеопамяти такие текстурки до полагающихся им 8-бит. Думаю что и Волатила делает так же.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 11-02-2011 в 20:05:

Цитата:
PunkPaToB писал:
А батник отказывается что либо делать из за них.

Ну так попробуй его убедить.
Чудес не бывает, если редактор запускает компилятор с путями, где есть пробелы, то и батник запустит.
Цитата:
PunkPaToB писал:
Но Gloss текстура 24 бита.Такая может идти?

Нет.
Цитата:
Дядя Миша писал:
Думаю что и Волатила делает так же.

Неа, не делает. Но надо будет прикрутить.
Я просто подумал, зачем тратить время на это? Один фиг, если глоссмапа не 8-битная, то она на диске кучу лишнего места занимает, а это уже баг.

__________________

xaerox on Vivino


Отправлено Дядя Миша 11-02-2011 в 20:19:

Цитата:
XaeroX писал:
Я просто подумал, зачем тратить время на это?

одна из важнейших составляющих идеологии ксаша: пытаться исправить косяки девелопера. Хотя бы наполовину.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 11-02-2011 в 20:43:

Дядя Миша
Я ещё не вышел на уровень готовности движка, чтобы заняться исправлением косяков девелоперов модов и карт. Мне бы косяки девелопера самого движка исправить для начала.

__________________

xaerox on Vivino


Отправлено PunkPaToB 12-02-2011 в 07:56:

XaeroX
если указать makevtx с папкой где есть пробел ничего не получается.
мне все нужные файлы пришлось в отдельной папке держать.

ЗЫ В будующем Имхо былобы прикольно запихнуть кучу текстур в rar архив (все 3 вида у каждой) и всю кучу скомпилить.


Отправлено PunkPaToB 12-02-2011 в 07:59:

Вот нормальный компил без пробелов.


Отправлено Skaarj 12-02-2011 в 08:17:

PunkPaToB
Добавь волшебных "
"C:\чтото с пробелами\OptionImplicitDemo\system\makevtx.exe"


Отправлено PunkPaToB 12-02-2011 в 08:26:

Skaarj
Вот это работает.
Xaerox поправь тутор)


Отправлено Skaarj 12-02-2011 в 08:35:

Ага, а ещё добавсь как создавать/редактировать сам БАТник и ещё докучи как включать компутер.


Отправлено PunkPaToB 12-02-2011 в 08:44:

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


Отправлено XaeroX 12-02-2011 в 12:37:

Цитата:
PunkPaToB писал:
Не все же знают как работать с батниками.

А гугл на что?

__________________

xaerox on Vivino


Временная зона GMT. Текущее время 16:01. Страницы (2): [1] 2 »
Показать все 29 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024