https://bugs.winehq.org/show_bug.cgi?id=39578
--- Comment #4 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to gamiljydcome from comment #3)
Hi, Matteo Bruni.
I make some time googled about wine shader model3.0 constant register limit and traced dlls/wined3d/shader.c. It seem like wine forece limit sm3.0 max number of float constant registers to be 256, my video card(Mobile Intel GM45 support dx10/sm4.0) does have 4096 registers detected by gl_info->limits.glsl_ps_float_constants.
Yes, your GPU supports more uniforms than required by SM3, but that's unrelated. D3D9 doesn't accept hardware vertex shaders using more than 256 float constants, we have a test confirming that. It's a different story for vs_2_sw and vs_3_sw shaders, as I already mentioned. Wined3d currently lacks support for them.