aboutsummaryrefslogtreecommitdiff
path: root/docs/tomes
diff options
context:
space:
mode:
Diffstat (limited to 'docs/tomes')
-rw-r--r--docs/tomes/05-render.md9
1 files changed, 6 insertions, 3 deletions
diff --git a/docs/tomes/05-render.md b/docs/tomes/05-render.md
index 6c0524d..50fe0e4 100644
--- a/docs/tomes/05-render.md
+++ b/docs/tomes/05-render.md
@@ -849,9 +849,12 @@ swapchain resources, создаёт один `vk::Pipeline` на уникаль
кэше. При создании swapchain resources renderer выбирает capability-approved
depth/stencil format, выделяет device-local attachment, очищает его в render
pass и прикрепляет к каждому framebuffer. `TestWrite` включает depth test и
-write; `TestReadOnly` включает test без write. Alpha-test пока завершается
-явной ошибкой: shader variant ещё не существует, поэтому renderer не должен
-молча подменять state. Также не установлен источник значений для Batch20/MAT0: их
+write; `TestReadOnly` включает test без write. Alpha test выполняется во
+fragment shader: перед каждым draw renderer передаёт через push constant
+`alpha_test_reference / 255`, а shader отбрасывает fragment с меньшей alpha.
+При выключенном `alpha_test` cutoff принудительно равен нулю; reference остаётся
+dynamic material data и не входит в `PipelineKey`. Также не установлен источник
+значений для Batch20/MAT0: их
поля нельзя объявлять blend/depth/cull mapping без dynamic capture или
дополнительного дизассемблирования. Это частично реализованная compatibility
boundary, а не заявление о готовой parity fixed-function state.