Ru/VMT: Difference between revisions
Churkinator (talk | contribs) No edit summary |
No edit summary |
||
Line 9: | Line 9: | ||
# Имена {{L|Texture|текстур}} | # Имена {{L|Texture|текстур}} | ||
# {{L|$surfaceprop| | # {{L|Material surface properties|Физические cвойства}} {{L|$surfaceprop|поверхности материала}} | ||
# {{LCategory| | # {{LCategory|Shader parameters|Параметры}} {{LCategory|Shaders|оттенений}} | ||
# {{L|Material | # {{L|Material map compile flags|Признаки материалов для компиляции карт}} | ||
# {{L|Material optimization|Fallbacks}} | # {{L|Material optimization|Fallbacks}} | ||
# {{L|Material Proxy| | # {{L|Material Proxy|Подмены в материалах}} | ||
== Простой пример == | == Простой пример == | ||
Line 31: | Line 31: | ||
Важно помнить, что данный материал может быть использован только на брашах. Если необходимо использовать его, например, на {{L|Model|моделях}}, другая копия материала должна быть создана с использованием {{Shader Name|VertexLitGeneric}} шейдера. | Важно помнить, что данный материал может быть использован только на брашах. Если необходимо использовать его, например, на {{L|Model|моделях}}, другая копия материала должна быть создана с использованием {{Shader Name|VertexLitGeneric}} шейдера. | ||
По большому счету, замена материалов также проста, как изменение первой строки в файле материала, так как большая часть параметров является общей для всех. Некоторые параметры работают только с определенными шейдерами, например, {{L| | По большому счету, замена материалов также проста, как изменение первой строки в файле материала, так как большая часть параметров является общей для всех. Некоторые параметры работают только с определенными шейдерами, например, {{L|$phong|затенение по методу Фонга}}, которые доступны только с {{Shader Name|VertexLitGeneric}} шейдером, но к счастью у вас не будет никаких критических ошибок - если шейдер не понял параметр, просто не будет никакого эффекта. | ||
{{Tip|Если вам понадобится использовать пробел или символ табуляции в значении параметра, вы должны заключить все значение в "кавычки". Вы часто будете видеть абсолютно все в кавычках - это позволяет сохранить пару нажатий на клавиши.}} | {{Tip|Если вам понадобится использовать пробел или символ табуляции в значении параметра, вы должны заключить все значение в "кавычки". Вы часто будете видеть абсолютно все в кавычках - это позволяет сохранить пару нажатий на клавиши.}} | ||
== | == Размещение материалов == | ||
=== SteamPipe === | === SteamPipe === | ||
Line 52: | Line 52: | ||
* {{L|Creating a Material|Создание материала}} | * {{L|Creating a Material|Создание материала}} | ||
* {{L|Notepad++ VDF languages|Notepad++ | * {{L|Notepad++ VDF languages|Подсветка синстаксиса в редакторе Notepad++}} | ||
* {{L|Valve Texture Format}} | * {{L|Valve Texture Format|Формат текстур Valve}} | ||
* {{L|Shader}} | * {{L|Shader|Оттенение}} | ||
* {{LCategory| | * {{LCategory|Shaders|Список оттенений}} | ||
* {{LCategory| | * {{LCategory|Shader parameters|Список параметров оттенений}} | ||
* {{L|Source VMT Editor}} | * {{L|Source VMT Editor|Редактор Source VMT}} | ||
* [https://github.com/Xyphos/VMTGen VMTGen] | * [https://github.com/Xyphos/VMTGen VMTGen] | ||
Latest revision as of 07:41, 25 May 2025
Материал представлен в игре в формате .vmt ("Valve Material"). Это текстовый файл, который определяет основные свойства поверхности. Он включает в себя все необходимые данные для движка Source, чтобы правильно отображать, "озвучивать" поверхность, а так же для правильной работы физики.
Если материал отсутствует, то тогда отобразится печально известный чёрно-розовый клетчатый узор. Белый каркас означает не отсутствующий материал, а отсутствующее оттенение .
Материал может содержать в себе следующие категории:
- Имена текстур
- Физические cвойства поверхности материала
- Параметры оттенений
- Признаки материалов для компиляции карт
- Fallbacks
- Подмены в материалах
Простой пример
Это самый базовый shingle beach материал.
- Использован
LightmappedGeneric
шейдер, что означает, что данный материал используется на поверхностях с lightmap s (Например, браши ). - Символ { означает, что дальше идёт набор определённых параметров.
$basetexture
параметр со значениемcoast\shingle_01
, означает расположение текстуры. Это то, что будет нарисовано на экране.$surfaceprop
этот параметр дает материалу физические свойства гравия.- Символ } означает закрытие набора параметров
Важно помнить, что данный материал может быть использован только на брашах. Если необходимо использовать его, например, на моделях , другая копия материала должна быть создана с использованием
VertexLitGeneric
шейдера.
По большому счету, замена материалов также проста, как изменение первой строки в файле материала, так как большая часть параметров является общей для всех. Некоторые параметры работают только с определенными шейдерами, например, затенение по методу Фонга , которые доступны только с
VertexLitGeneric
шейдером, но к счастью у вас не будет никаких критических ошибок - если шейдер не понял параметр, просто не будет никакого эффекта.

Размещение материалов
SteamPipe
Когда Valve обновила некоторые игры на SteamPipe , материалы были перемещены из GCF в VPK файлы. VPK файлы работают с
GCFScape и
VPKEdit.
Больше информации о SteamPipe здесь
Не-SteamPipe игры
Материалы расположены в директории materials\
вашей игры или мода. Лучший способ просматривать их - это использовать окно выбора текстур редактора Hammer.
Если вы хотите отредактировать или просмотреть код материалов Valve для начала вам нужно распаковать их из GCF архива с помощью GCFScape. Они, как правило, располагаются в GCF с припиской 'materials' в конце их имени.