Эта статья документации для всего, что использует платформу Source. Нажмите для получения дополнительной информации.

Ru/$alphatest: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
m (WisdomBot moved page $alphatest:ru to $alphatest/ru: Moved to {{Multipage}} compliant page name. This action was perfomed by a bot under supervision.)
m (Multipage removal)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{langsp|title=$alphatest}}
{{LanguageBar|title=$alphatest}}
{{Code|$alphatest}} — это параметр [[Shader|шейдера]] [[Material|материала]], доступного во всех играх на движке {{Source|4}}. Он определяет маску, используемую для определения непрозрачности двоичного файла. Белый представляет собой полностью непрозрачный, а чёрный — полностью прозрачный. Любые промежуточные значения округляются до 0 или 1. Этот эффект похож на <code>[[$translucent]]</code>, за исключением того, что он не может быть полупрозрачным, его рендеринг выполняется намного быстрее, и движок может правильно сортировать его при наложении слоёв.
 
{{this is a|shader parameter|name=$alphatest}} Он определяет маску, используемую для определения непрозрачности двоичного файла. Белый представляет собой полностью непрозрачный, а чёрный — полностью прозрачный. Любые промежуточные значения округляются до 0 или 1. Этот эффект похож на <code>{{L|$translucent}}</code>, за исключением того, что он не может быть полупрозрачным, его рендеринг выполняется намного быстрее, и движок может правильно сортировать его при наложении слоёв.


== Синтаксис ==
== Синтаксис ==
  '''$alphatest <[[Boolean|bool]]>'''
  '''$alphatest <{{L|Boolean|bool}}>'''


== VMT пример ==
== VMT пример ==
  [[LightmappedGeneric]]
  {{L|LightmappedGeneric}}
  {
  {
  [[$basetexture]] "glass\window001a"
  {{L|$basetexture}} "glass\window001a"
   
   
  '''$alphatest 1'''
  '''$alphatest 1'''
Line 18: Line 19:


== Доп. параметры ==
== Доп. параметры ==
'''<code>$alphatestreference <[[float]]></code>'''
'''<code>$alphatestreference <{{L|float}}></code>'''
: Задаёт минимальное значение цвета альфа-канала, в котором эффект округляется до 255. Значение «.3» создаст более толстую форму, а значение «.7» создаст более тонкую форму.
: Задаёт минимальное значение цвета альфа-канала, в котором эффект округляется до 255. Значение «.3» создаст более толстую форму, а значение «.7» создаст более тонкую форму.
: {{Bug|<code>$alphatestreference</code> не может обновляться в реальном времени с помощью [[Material proxies|прокси]].}}
: {{Bug|<code>$alphatestreference</code> не может обновляться в реальном времени с помощью {{L|Material proxies|прокси}}.}}
:: {{Tip|Это ограничение можно обойти, используя <code>«$alphatestreference 1»</code>, и изменив значение <code>[[$alpha]]</code> (требуется, чтобы значение <code>$alpha</code> было выше 1, но это может вызвать проблемы с сортировкой).}}
:: {{Tip|Это ограничение можно обойти, используя <code>«$alphatestreference 1»</code>, и изменив значение <code>{{L|$alpha}}</code> (требуется, чтобы значение <code>$alpha</code> было выше 1, но это может вызвать проблемы с сортировкой).}}
'''<code>$allowalphatocoverage <[[boolean]]></code>'''
'''<code>$allowalphatocoverage <{{L|boolean}}></code>'''
: Создаёт прозрачные шаги на основе альфа-значений. Может использоваться для получения более мягких краёв. Этот параметр несовместим с <code>$alphatestreference</code>.
: Создаёт прозрачные шаги на основе альфа-значений. Может использоваться для получения более мягких краёв. Этот параметр несовместим с <code>$alphatestreference</code>.
: {{Note|Для работы этого параметра необходимо включить MSAA.}}
: {{Note|Для работы этого параметра необходимо включить MSAA.}}
Line 37: Line 38:


==См. также==
==См. также==
*<code>[[$alpha]]</code>
*<code>{{L|$alpha}}</code>
*<code>[[$distancealpha]]</code>
*<code>{{L|$distancealpha}}</code>
*<code>[[$vertexalpha]]</code>
*<code>{{L|$vertexalpha}}</code>
 
{{ACategory|Shader parameters|alphatest}}

Latest revision as of 02:30, 12 July 2024

English (en)Español (es)Русский (ru)中文 (zh)Translate (Translate)

$alphatest - это материальный(en) параметр шейдера(en), доступно для всех игр на движке Source Source. Он определяет маску, используемую для определения непрозрачности двоичного файла. Белый представляет собой полностью непрозрачный, а чёрный — полностью прозрачный. Любые промежуточные значения округляются до 0 или 1. Этот эффект похож на $translucent(en), за исключением того, что он не может быть полупрозрачным, его рендеринг выполняется намного быстрее, и движок может правильно сортировать его при наложении слоёв.

Синтаксис

$alphatest	<bool(en)>

VMT пример

LightmappedGeneric(en)
{
	$basetexture(en)		"glass\window001a"

	$alphatest		1

	$alphatestreference	.5

	$allowalphatocoverage	1
}

Доп. параметры

$alphatestreference <float(en)>

Задаёт минимальное значение цвета альфа-канала, в котором эффект округляется до 255. Значение «.3» создаст более толстую форму, а значение «.7» создаст более тонкую форму.
Icon-Bug.pngБаг:$alphatestreference не может обновляться в реальном времени с помощью прокси(en).  [нужно проверить в ?]
Tip.pngСовет:Это ограничение можно обойти, используя «$alphatestreference 1», и изменив значение $alpha(en) (требуется, чтобы значение $alpha было выше 1, но это может вызвать проблемы с сортировкой).

$allowalphatocoverage <boolean(en)>

Создаёт прозрачные шаги на основе альфа-значений. Может использоваться для получения более мягких краёв. Этот параметр несовместим с $alphatestreference.
Note.pngПримечание:Для работы этого параметра необходимо включить MSAA.

Сравнение

$translucent $alphatest
Оригинальное изображение, обработанное с помощью $translucent
Анимированные превью того же изображения, но с $alphatest. Первый кадр показывает эффект «$allowalphatocoverage 1». Остальные показывают $alphatest с $alphatestreference в диапазоне от 0.1 до 0.9

Обратите внимание, как правый круг у $alphatest почти не меняется.

См. также