×
Menu

Alpha Testing

 
Alpha Testing - ON.
Включает улучшенный контроль над контуром альфа канала текстуры.
Работает в связке с ниже следующим параметром -Test ref.
 
К примеру, см. ванильные модели растений, там хорошо видно как прозрачность прорезает модель с определенных ракурсов.
Установка флага ON исправляет это безобразие.
Тип тестирования — Превосходный. Greater.
 
Test ref — задает кол-во пикселей которые будут срезаны с края текстуры.
Избавляет от мыла, т.е. позволяет управлять резкостью границы прозрачности.
 
Т.е. Делает край более резким.
Можно получить ряд интересных эффектов.
Но слишком большие значение могут сделать модель совершенно прозрачной! Как бы, «съев» альфаканал.
Что оказывается, также бывает полезно!
 
Эффективно для текстур с размытом краем альфа канала, если текстура 1-бит альфы, или грань ровная - эффект Тресхолда будет не столь очевиден.
 
Testing Mode - указывает методы вычитания, при каких условия какие пиксели будут рендериться, а какие нет.
 
Возможные значения:
ALWAYS, LESS, EQUAL, LESSEQUAL, GREATER, NOTEQUAL, GREATEREQUAL, NEVER
 
GREATER дает наиболее качественный и правильный результат, для стандартных типов поведения альфа канала.
Все прочие, следует применять по ситуации, как правило, для получения каких либо особых эффектов.
 
NEVER - лучше избегать, см. модели растительности МВ...
237 флаг альфы, самый не удачный.
 
NoSorter - отрезает рендеринг объектов находящихся ЗА объектом.
Может как повысить фпс, так и создать странные эффекты.
См. того калеку корпруса, который делает дыры на фоне лендскейпа.
 
Примечание.
В 3д МАХ можно создавать материалы:
Transparecy AUTO
Test mode OFF
- имеющие только режим смешивания.
Transparecy AUTO
Test mode ON
- имеющие и смешивание и тестирование.
Transparecy NONE
Test mode ON
- имеющие только тестирование.
Т.е. все типы работы альфы можно создавать непосредственно в 3д МАХ.

 Выдержка из оригинальной справки. (NDL Gamebryo 1.1)
Alpha Testing Sub-Panel
 
Alpha testing is a method for controlling which pixels are drawn and which are not. Alpha testing uses the alpha channel of the texture to determine whether or not to draw a pixel. The alpha value of each pixel is compared to a reference value defined by you. If the pixel passes the test it is drawn (possibly alpha blended) into the scene. If it does not pass then it is simply not drawn. Full back-to-front sorting may be required for objects with semi-transparent, alpha blended regions. However, in general, alpha testing's characteristics only require that everything opaque be drawn before anything transparent. This sort is much quicker than the full back-to-front sort required by alpha blending. As a final note, both the function that compares the pixel's alpha value to the reference value and the reference value itself are adjustable by you. By default, pixels are drawn into the back buffer if their alpha values are greater than the reference value.
Use Alpha Testing
Use this check box to turn on and off alpha testing.
 
No Sorter
Objects with the "no sorter" setting will not be sorted during rendering. The sorting of objects insures proper drawing of alpha blended objects, but costs time to sort the objects.
 
The "NoSorter" checkbox forces the alpha sorting system to ignore objects shaded by this material. This behavior is useful if, due to the structure of the scene, you know objects with this material do not need to be sorted to have their transparency look correct. An example of this idea is a partially transparent sky dome. It can always be drawn first and does not need to be sorted. Another example would be an object that has no semi-transparent regions, only opaque and completely transparent regions. This object needs to be drawn after all the opaque objects, but does not need full-sorting, so selecting "NoSorter" in this case is appropriate.
 
Test Ref(erence)
If alpha testing is enabled, this value will be compared with the source alpha value to determine whether the pixel is drawn or not.
 
Testing Mode
This function determines how the reference value is compared to the source alpha value to determine whether or not to rasterize the pixel. For example, if the "Testing Reference" was 128 and the "Testing Mode" was Greater, then every pixel whose alpha value was greater then 128 would be drawn. In other words, any part of an object that was less than half transparent wouldn't be drawn at all. This can speed up the process of sorting transparent objects.
 
The Alpha Testing sub-panel allows the user to set the alpha testing parameters. The "On" checkbox turns alpha testing on. The "Test Ref" parameter sets the threshold while the "Test Mode" sets the comparison that is used between each pixel and the threshold value. The "Test Ref" value ranges from 0 (completely transparent) to 255 (completely opaque).
 
The "Test Mode" can be one of: ALWAYS, LESS, EQUAL, LESSEQUAL, GREATER, NOTEQUAL, GREATEREQUAL, or NEVER. In ALWAYS mode every pixel is alpha blended into the framebuffer while in NEVER mode no pixels are ever written. In LESS and LESSEQUAL modes the pixels are blended if their alpha value is less than or less-than-or-equal-to the threshold value. GREATER and GREATEREQUAL are the modes you typically use and blend the pixels into the framebuffer if their alpha value is greater than or greater-than-or-equal-to the threshold value. Finally, EQUAL and NOTEQUAL blend the pixel into the framebuffer if the alpha value is equal or not equal to the threshold value, respectively.

- дерево с высоким значением Тестирования, край резкий и четкий. (флаг альфы 4844)
 
- дерево без флага Тестирования.
Край замыленый. (флаг альфы 237)
*при это видно наложение полигонов!
Это как-раз любимый баг ванильного МВ.
Alpha Testing vs. Alpha Blending example:
Notice the hard edges associated the tree on the left.
This is a trade off quality for speed, since alpha testing is faster to render then alpha blending.
Creates new Alpha properties for objects with this material. 
The Default setting will use the alpha model currently used by the parent. 
There is an overhead cost associated with changing alpha properties during rendering, so it is best to use "Default" unless necessary.
 
Use Alpha Blending
Use this check box to turn on and off alpha blending.
 
Source & Destination
These two values are used to determine how blending is accomplished between the background pixel and the objects pixel.  Classic alpha blending uses the default values of  "Source Alpha" and "Inverse Source Alpha"
 
Помимо изменения значения Тестирования, для улучшения изображения можно менять его фон.
В данном случае, видно как влияет фон заливки текстуры на контур альфы.