On Tue Oct 31 11:30:08 2023 +0000, Giovanni Mascellani wrote:
The part that keeps me a bit hesitant is that the generated `VKD3DSPR_CONSTBUFFER` register is being different than TPF, while I would strive for VSIR to be as uniform as possible across different backends and frontends. In my understanding, for TPF the two registers are the constant buffer descriptor id and the index inside the constant buffer itself. What does the additional index in DXIL mean?
In TPF a `VKD3DSPR_CONSTBUFFER` source register has range id, descriptor index, and buffer offset. DXIL has no registers, so this info is split in two. CreateHandle supplies the range id and descriptor index, while CBufferLoadLegacy supplies the offset. So we build the register in two separate steps.