[Bug 39578] New: hlsl float constant translate error if constant name like 'c873'

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Nov 12 07:08:44 CST 2015


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 at winehq.org
          Reporter: gamiljydcome at 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.



More information about the wine-bugs mailing list