https://bugs.winehq.org/show_bug.cgi?id=39578 Bug ID: 39578 Summary: hlsl float constant translate error if constant name like 'c873' Product: Wine Version: 1.7.54 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3dx9 Assignee: wine-bugs(a)winehq.org Reporter: gamiljydcome(a)gmail.com Distribution: --- I use WINEDEBUG=+d3d_shader trace an broken 3d model game, i notice something wrong like follow: trace:d3d_shader:shader_trace_init def c783 = 1.000000, 3.000000, 0.000000, 0.000000 warn:d3d_shader:shader_record_register_usage Shader using float constant 783 which is not supported. But followed hlsl fragment can be translated correctly: (hlsl)d3d_shader:shader_trace_init def c0 = -100.000000, 0.000000, 1.000000, 0.000000 ------------------------------------------ (glsl)d3d_shader:d3d_compiler const vec4 ps_lc0 = vec4(-1.00000000e+02, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00); The point is the diffrence between names: c783 c0. If hlsl fragment define variables names like c783 c771 c831 etc, then tanslate must be wrong. I think 'def c783' is just a variables name, Right? If so it should be translate to 'const vec4 ps_lc783 = vec4...' although i don't know what's that really means. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.