60 lines
1.2 KiB
Plaintext
60 lines
1.2 KiB
Plaintext
digraph G {
|
|
|
|
vertex_shader [label="(from the vertex shader)"]
|
|
|
|
subgraph cluster_clipping {
|
|
label = "clipping"
|
|
DX_CLIP_SPACE_DEF [label="DX_CLIP_SPACE_DEF
|
|
possibly clip the polygon"]
|
|
}
|
|
|
|
subgraph cluster_perspective {
|
|
label = "perspective division"
|
|
|
|
VTX_Z_FMT [nojustify=true label="VTX_Z_FMT
|
|
(if enabled) divide Z by W"]
|
|
}
|
|
|
|
subgraph cluster_viewport_transformation {
|
|
label = "viewport transformation"
|
|
|
|
VPORT_Z_SCALE
|
|
VPORT_Z_OFFSET
|
|
}
|
|
|
|
subgraph cluster_geometry_assembly {
|
|
}
|
|
|
|
subgraph cluster_setup_unit {
|
|
label = "setup unit"
|
|
|
|
SU_DEPTH_SCALE
|
|
SU_DEPTH_OFFSET
|
|
}
|
|
|
|
subgraph cluster_zfunc {
|
|
label = "ZFUNC"
|
|
{ rank=same
|
|
depth_test [shape=box label="depth test"]
|
|
depth_pass [shape=box label="depth pass"]
|
|
}
|
|
depth_test -> depth_pass
|
|
}
|
|
|
|
Z_BUFFER [shape=invhouse label="(write the new Z
|
|
value to the Z-buffer)"]
|
|
|
|
fragment_shader [label="(to the fragment shader)"]
|
|
|
|
vertex_shader -> DX_CLIP_SPACE_DEF
|
|
DX_CLIP_SPACE_DEF -> VTX_Z_FMT
|
|
VTX_Z_FMT -> VPORT_Z_SCALE
|
|
VPORT_Z_SCALE -> VPORT_Z_OFFSET
|
|
VPORT_Z_OFFSET -> SU_DEPTH_SCALE
|
|
SU_DEPTH_SCALE -> SU_DEPTH_OFFSET
|
|
SU_DEPTH_OFFSET -> depth_test
|
|
depth_test -> Z_BUFFER
|
|
|
|
VPORT_Z_OFFSET -> depth_pass
|
|
depth_pass -> fragment_shader
|
|
} |