You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My DX12 game fails to run due to E_INVALIDARG being thrown by CreateRootSignature() when it's run via Reshape. Without Reshape, the function succeeds. E_INVALIDARG indicates that the blob that pBlobWithRootSignature points to is invalid, however I'm not getting any errors from D3D12SerializeVersionedRootSignature().
I'm using Agility SDK 614, Windows 11 23H2 (OS Build 22631.4317).
I suspect it's due to Reshape requiring a certain amount of root constants for itself. IIRC my tests indicated that it will consume around 7 32-bit DWORDS' worth, so if one has a shader that needs more than 57 DWORDs, the root signature will end up being too large which is probably the cause of the error. But this is just a hunch and I'm not sure if it was 7 DWORDs, 8 or some other amount.
Yeah that's what's happening. I want to get rid of all injected root constants, because it's very easy to run into limits like that.
I basically have some internal programs that unfortunately add "global" root constants, but they really dont need to be. There's a larger refactor needed to decouple that stuff out. I'll use this ticket to keep track of that.
My DX12 game fails to run due to
E_INVALIDARG
being thrown byCreateRootSignature()
when it's run via Reshape. Without Reshape, the function succeeds.E_INVALIDARG
indicates that the blob that pBlobWithRootSignature points to is invalid, however I'm not getting any errors fromD3D12SerializeVersionedRootSignature()
.I'm using Agility SDK 614, Windows 11 23H2 (OS Build 22631.4317).
Here's how the root signature is created:
The text was updated successfully, but these errors were encountered: