https://bugs.winehq.org/show_bug.cgi?id=39057
--- Comment #93 from Paul Gofman gofmanp@gmail.com --- Created attachment 62605 --> https://bugs.winehq.org/attachment.cgi?id=62605 Patchset for supporting SW shaders and indexed vertex blending (through glsl)
(In reply to Alexandr Oleynikov from comment #92)
Seems like newer drivers for both NVidia (396 and higher) and AMD (AMDGPU) don't like registers that are this high: https://devtalk.nvidia.com/default/topic/1036629/linux/-quot-nvidia-396- gl_invalid_operation-error-generated-quot-when-compiling-1024-vertex-shaders/
I am attaching a rebased draft patch set from what I was testing a while ago, which includes the following: - Support for UBO instead of uniforms for shader constants; - Support for software vertex shaders (through glsl backend); - Support for indexed vertex blending (through glsl backend).
It should probably work with newer NVIDIA drivers (as it minds GL capabilties for uniform arrays' sizes). I didn't test with the newest drivers though, some bugs are possible. If it is still does not work as is for some reason, setting HKEY_CURRENT_USER/Software/Wine/Direct3D/consts_ubo (DWORD value) to 1 in registry might help.