Sure, I can fill in explicit values in hexadecimal here and elsewhere. What about ones that are defined with bitshifts, e.g. `D3D12_GRAPHICS_STATE_IA_INDEX_BUFFER = (1 << 1),`, is that ok or do you want that as hex as well? (That'd be more tricky to try to get right without typoing things.)
I'd prefer those as hexadecimal as well, yeah.
For the couple where I changed existing values from hexadecimal to decimal, I did that with the intent to make some values more obvious, like `FOO_1_0 = 10` and `FOO_1_1 = 11` instead of `0xa` and `0xb`, but I guess that's kinda obvious anyway. I can revert those to keeping hexadecimal and adding the new values in that form as well.
For patch 3/3 - I can try to split it by structs needed by incrementing versions of `ID3D12Device<N>` at least - I guess that should make things more palatable.
For what it's worth, what I had in mind was something along the lines of commit e9b13936664aeb771a453d8bb8f5013ad2055be6 or commit 799434fc8f33a2804488eda938edcf8cf1bc53a0. I.e., adding interfaces together with the structures and enumerations they depend on. And in principle that would be one interface per commit, but e.g. ID3D12PipelineLibrary and ID3D12PipelineLibrary1 are trivial enough that it would be fine to group them together. That does probably leave a few enumerations and structures that aren't directly puled in by an interface. E.g. the D3D12_FEATURE_DATA_* structures belong to the corresponding D3D12_FEATURE_* enumeration values. At first sight those are probably small enough to go in together in a single commit, but you could also split them per D3D12_FEATURE_DATA_* structure.