This article's documentation is for anything that uses the Strata engine. Click here for more information.

PBR (Strata шейдер)

From Valve Developer Community
< Ru
Jump to navigation Jump to search
English (en)Русский (ru)Translate (Translate)
Эта статья(раздел) является наброском(en). Вы можете помочь, дополнив её.

PBR - это пиксельный шейдер(en), доступно для Strata Source Strata Source. Он использует множество различных текстурных карт для создания более точной симуляции света.

Note.pngПримечание: Подобные несвязанные шейдеры на основе PBR также используются в Titanfall branch Titanfall branch и Source 2 Source 2.
Note.pngПримечание: Alien Swarm: Reactive Drop Alien Swarm: Reactive Drop с разрешения Strata Source Strata Source, портировали шейдер. ( Commit link )

Поддерживаемые параметры

Основы

$basetexture(en) <texture(en)>
Текстура со встроенным освещением.
$basetexture2(en) <texture(en)>
Текстура для использования со смещениями


Внешний вид

$basetexturetransform(en) <matrix(en)>
Преобразует текстуру перед использованием. Это не меняет lightmaps(en) на поверхности.
$color(en) <color(en)>
Настраивает цвет текстуры
$color2(en) <color(en)>
Настраивает цвет текстуры (2)
$frame(en) <целое число(en)>
Устанавливает, какой кадр использовать, если $basetexture анимирован
$frame2(en) <целое число(en)>
Устанавливает, какой кадр использовать, если $basetexture2 анимирован
$srgbtint(en) <color(en)>
Значение оттенка, применяемое при работе с srgb


Свет

$flashlighttexture(en) <texture(en)>
Текстура прожектора (по умолчанию — effects/flashlight001)
$flashlighttextureframe(en) <целое число(en)>
Кадр для использования, если $flashlighttexture анимирован


PBR

$mraotexture(en) <texture(en)>
Определяет используемую карту MRAO. Требуется, чтобы текстура действительно использовала функции PBR. Металличность — на красном, шероховатость — на зеленом, а окружающее затенение — на синем каналах.
$mraoframe(en) <целое число(en)>
Кадр для использования, если $maraotexture анимирован
$mraotexture2(en) <texture(en)>
Определяет карту MRAO для использования в смешанной текстуре. Требуется, чтобы текстура действительно использовала функции PBR. Металличность — на красном, шероховатость — на зеленом, а окружающее затенение — на синем каналах.
$mraoframe2(en) <целое число(en)>
Кадр для использования, если $maraotexture2 анимирован
$parallax(en) <булева переменная(en)>
Включает наложение параллакса на материал.
$mraoscale(en) <color(en)>
Определяет силу Metalness(R), Roughness(G) и Ambient Occlusion(B) для $mraotexture
$mraoscale2(en) <color(en)>
Определяет силу Metalness(R), Roughness(G) и Ambient Occlusion(B) для $mraotexture2
$parallaxdepth(en) <число с плавающей запятой(en)>
Определяет глубину карты параллакса
$parallaxcenter(en) <число с плавающей запятой(en)>
Определяет центр карты параллакса. 0.5 — хорошее значение начала
$blendtintbymraoalpha(en) <булева переменная(en)>
Смешивание оттенка по альфа-каналу в текстуре MRAO. Аналогично $blendtintbybasealpha для VLG(en)


Portal 2: Community EditionКраска

$paintsplatnormalmap(en) <texture(en)>
Карта нормалей пятна краски для использования
$paintsplatbubblelayout(en) <texture(en)>
Текстура макета, определяющая распределение пузырьков в краске
$paintsplatbubble(en) <texture(en)>
Текстура с картой нормалей пузыря
$paintenvmap(en) <texture(en)>
Envmap, согласованный для всех окрашенных поверхностей


Освещение

$bumpmap(en) <texture(en)>
Устанавливает карту нормалей (новый способ установки карты нормалей)
$bumbframe(en) <целое число(en)>
Кадр для использования, если $bumpmap анимирован.
$bumpmap2(en) <texture(en)>
Устанавливает карту нормалей для смешивания (новый способ установки карты нормалей)
$bumpframe2(en) <целое число(en)>
Кадр для использования, если $bumpmap2 анимирован.
$normaltexture(en) <texture(en)>
Текстура карты нормалей (устарело, используйте $bumpmap)
$emissiontexture(en) <texture(en)>
Позволяет установить текстуру излучения. Включена самоподсветка.
$emissionframe(en) <целое число(en)>
Кадр для использования, если $emissiontexture анимирован.
$emissiontexture2(en) <texture(en)>
Позволяет установить текстуру излучения (для режима смешивания). Включена самоподсветка.
$emissionframe2(en) <целое число(en)>
Кадр для использования, если $emissiontexture2 анимирован.
$emissionscale(en) <color(en)>
Цвет, на который умножается $emissiontexture
$emissionscale2(en) <color(en)>
Цвет, на который умножается $emissiontexture2
$hsv(en) <color(en)>
цвет HSV для преобразования текстуры $basetexture
$hsv_blend(en) <булева переменная(en)>
Смешивание непреобразованного/преобразованного цветов HSV


Отражение

$envmap(en) <cubemap(en)>
Зеркальные отражения
$envmapparallax(en) <matrix(en)>
Нужно сделать: Что это такое?
Должен быть в следующем формате: [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
$envmapframe(en) <целое число(en)>
Кадр для использования, если материал, указанный в $envmap, анимирован
$envmaporigin(en) <вектор данных3(en)>
Исправление положения env_cubemap
$bdrf_integration(en) <texture(en)>
Текстура для двунаправленного распределения отражения


Прозрачность

$alpha(en) <число с плавающей запятой(en)>
Масштабирует прозрачность материала.
$alphatestreference(en) <число с плавающей запятой(en)>
Указывает минимальное значение для цвета альфа-канала.

%keywords — список ключевых слов, разделенных запятыми. Примеры ключевых слов: architectural, brown, gray, grime, hanger, industrial, metal, modern, shed, urban, wall, floor.


См. также