Skip to content

Conversation

@pzychotic
Copy link

Fixed NVAPI_D3D11_CREATEVERTEXSHADEREX_VER_3 and NVAPI_D3D11_CREATEHULLSHADEREX_VER_2 using old structs in MAKE_NVAPI_VERSION calls.

If you try to use the current versions of these structs like so:

NvAPI_D3D11_CREATE_VERTEX_SHADER_EX nvCreateVS = {0};
nvCreateVS.version = NVAPI_D3D11_CREATEVERTEXSHADEREX_VERSION;
...

You'll end up with the latest version of the struct: NvAPI_D3D11_CREATE_VERTEX_SHADER_EX_V3
But the version member encodes the size of the V2 struct because of the wrong argument to MAKE_NVAPI_VERSION.
I assume you'll use the encoded size to memcpy the struct internally, which would miss the new member BOOL UseSpecificShaderExt added to V3.

Same thing for NvAPI_D3D11_CREATE_HULL_SHADER_EX.

@pzychotic
Copy link
Author

@sujatas-NV @planke-NV @arunimam-NV
Any thoughts on this?

…EHULLSHADEREX_VER_2` using old structs in `MAKE_NVAPI_VERSION` calls.
@pzychotic pzychotic force-pushed the fix-version-defines branch from 5167505 to 33d410b Compare December 2, 2025 16:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant