flowchart TD
D["D3D12 B4G4R4A4_UNORM, one 16-bit texel
bits 0-3 B, 4-7 G, 8-11 R, 12-15 A"] --> M
M["Metal ABGR4Unorm reads the same bits as
A from 0-3, B from 4-7, G from 8-11, R from 12-15"] --> S
S["view swizzle (G, B, A, R):
red from Metal's G, green from B,
blue from A, alpha from R"] --> O
O["the shader sees the D3D12 channels
(composed over the SRV's own mapping)"]
M -.-> N["render targets, UAVs, typed buffers, MSAA:
refused, as Metal can't swizzle writes"]