Есть user data, это то, что передаёшь в шейдер (root signature, словами Direct3D — туда же входят и вершинные буферы, input assembler это часть root signature), его в одном контексте можно менять. А есть контекст, это остальные регистры GPU (ну или, по крайней мере, большинство — я так глубоко в этом не разбирался)