flowchart LR
d["draw with
stream output"] --> plan["plan kernel (1 thread):
count records, walk strip cuts,
fit whole primitives, advance filled sizes"]
plan --> expand["expand kernel:
gather vertex bytes and IDs
in D3D12's order"]
expand --> so["SO draw: second vertex function
writes outputs to the buffers"]
so --> norm["normal draw, unless
rasterization is off"]