https://bugs.winehq.org/show_bug.cgi?id=38621
Bug ID: 38621 Summary: D3DXCompileShader errors Product: Wine Version: 1.7.42 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3dx9 Assignee: wine-bugs@winehq.org Reporter: isakov-sl@bk.ru Distribution: ---
This is again my game HeroesVI. I reverted back all dll to builtin and set trace+d3dx ---- trace:d3dx:D3DXCompileShader data "matrix mc0 : register( c0 );\nmatrix mc1 : register( c4 );\nmatrix mc2 : register( c8 );\nstruct VSData\n{\n float4 pos : POSITION;\n float3 nrm : NORMAL; \n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n float4 imm;\n imm = mul( input.pos, (float4x4)mc0 );\n "..., length 721, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d464, error_msgs 0x0, constant_table 0x0. err:d3dcompiler:compile_shader HLSL shader parsing failed. trace:d3dx:D3DXCompileShader data "struct VSData\n{\n float4 pos : POSITION;\n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n output.pos = input.pos;\n output.txc = input.txc;\n return output;\n};\n", length 190, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d464, error_msgs 0x0, constant_table 0x0. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:hlsl_parser:hlsl_parse Check for valued return on void function. fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. err:d3dcompiler:compile_shader HLSL shader parsing failed. ----- And so on Is there significant information?
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #1 from Sergey Isakov isakov-sl@bk.ru --- Created attachment 51523 --> https://bugs.winehq.org/attachment.cgi?id=51523 the game looking with builtin dll
paladin looks without textures. While with native d3dx9_36 it looks good.
https://bugs.winehq.org/show_bug.cgi?id=38621
Sergey Isakov isakov-sl@bk.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- OS|Linux |Mac OS X
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #2 from Sergey Isakov isakov-sl@bk.ru --- Just additional observation. The game uses d3dx9_36 and d3dx9_40.dll This log made with all libraries builtin. If I enable using volume DXTn then the game came into main menu. If I set d3dx9_40.dll to native then the game crashes immediately as I reported before. Works with Stefan's hack. I means bug 38178
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #3 from Sergey Isakov isakov-sl@bk.ru --- Using native d3dcompiler_43.dll cleanup the error.
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #4 from Sergey Isakov isakov-sl@bk.ru --- Related message in the log ~~~ fixme:d3dx:D3DXGetShaderConstantTableEx Flags (0x20000) are not handled, yet! ~~~ This is D3DXCONSTTABLE_LARGEADDRESSAWARE
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #5 from Sergey Isakov isakov-sl@bk.ru --- Tested on wine-1.8-rc3 ~~~ trace:d3dx:D3DXCreateFontIndirectW (0x207560, 0x32ce08, 0xc97cd9f4) trace:d3dx:D3DXCompileShader data "matrix mc0 : register( c0 );\nmatrix mc1 : register( c4 );\nmatrix mc2 : register( c8 );\nstruct VSData\n{\n float4 pos : POSITION;\n float3 nrm : NORMAL; \n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n float4 imm;\n imm = mul( input.pos, (float4x4)mc0 );\n "..., length 721, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d474, error_msgs 0x0, constant_table 0x0. err:d3dcompiler:compile_shader HLSL shader parsing failed. trace:d3dx:D3DXCompileShader data "struct VSData\n{\n float4 pos : POSITION;\n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n output.pos = input.pos;\n output.txc = input.txc;\n return output;\n};\n", length 190, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d474, error_msgs 0x0, constant_table 0x0. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:hlsl_parser:hlsl_parse Check for valued return on void function. fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. err:d3dcompiler:compile_shader HLSL shader parsing failed. trace:d3dx:D3DXCompileShader data "#include "Utilities.hlsl"\r\n#line 3 "DebugLine.hlsl"\r\n\r\n////////////////////////////////////////////////////////////////\r\n// Valid options are:\r\n// - VERTEX_COLOR -> Use perv vertex color\r\n// - LINE2D -> Use pretransformed vertices\r\n// - DEBUG_TEXTURE -> Draw s"..., length 2283, defines 0xc5c88b1c, include 0x2231d6c, function "main_PS", profile "ps_3_0", flags 0, shader 0xc4ffa134, error_msgs 0x32ce78, constant_table 0x0. ~~~ The bug seems to be double of bug 39546. Sorry, I forgot about this one.
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #6 from Sergey Isakov isakov-sl@bk.ru --- trace+d3dx,+hlsl_parser ~~~ trace:d3dx:D3DXCreateFontIndirectW (0x2075b0, 0x32ce08, 0xc5d648f0) trace:d3dx:D3DXCompileShader data "matrix mc0 : register( c0 );\nmatrix mc1 : register( c4 );\nmatrix mc2 : register( c8 );\nstruct VSData\n{\n float4 pos : POSITION;\n float3 nrm : NORMAL; \n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n float4 imm;\n imm = mul( input.pos, (float4x4)mc0 );\n "..., length 721, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d474, error_msgs 0x0, constant_table 0x0. trace:hlsl_parser:hlsl_lex Preprocessor line info. trace:hlsl_parser:hlsl_parse Updating line information to file "", line 1 trace:hlsl_parser:parse_hlsl IR dump. trace:hlsl_parser:parse_hlsl Compilation status = 2 trace:hlsl_parser:parse_hlsl Freeing functions IR. trace:hlsl_parser:parse_hlsl Freeing variables. trace:hlsl_parser:parse_hlsl Freeing types. err:d3dcompiler:compile_shader HLSL shader parsing failed.
trace:d3dx:D3DXCompileShader data "struct VSData\n{\n float4 pos : POSITION;\n float2 txc : TEXCOORD;\n};\nVSData vsMain( VSData input )\n{\n VSData output;\n output.pos = input.pos;\n output.txc = input.txc;\n return output;\n};\n", length 190, defines 0x0, include 0x0, function "vsMain", profile "vs_3_0", flags 0, shader 0x32d474, error_msgs 0x0, constant_table 0x0. trace:hlsl_parser:hlsl_lex Preprocessor line info. trace:hlsl_parser:hlsl_parse Updating line information to file "", line 1 trace:hlsl_parser:debug_dump_decl Line 3: "float4" pos; trace:hlsl_parser:debug_dump_decl Line 4: "float2" txc; trace:hlsl_parser:hlsl_parse Structure "VSData" declaration. trace:hlsl_parser:hlsl_parse Declaration statement parsed. trace:hlsl_parser:debug_dump_decl Line 8: "VSData" output; trace:hlsl_parser:declare_variable Declaring variable output. trace:hlsl_parser:declare_vars Declared variable output. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:d3dcompiler:make_assignment Check for casts in the lhs. fixme:hlsl_parser:hlsl_parse Check for valued return on void function. fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. trace:hlsl_parser:hlsl_parse Function vsMain parsed. trace:hlsl_parser:hlsl_parse Adding function 'vsMain' to the function list. trace:hlsl_parser:hlsl_parse Skipping stray semicolon. trace:hlsl_parser:parse_hlsl IR dump. trace:hlsl_parser:parse_hlsl Compilation status = 0 trace:hlsl_parser:parse_hlsl Freeing functions IR. trace:hlsl_parser:parse_hlsl Freeing variables. trace:hlsl_parser:parse_hlsl Freeing types. err:d3dcompiler:compile_shader HLSL shader parsing failed.
Full log attached
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #7 from Sergey Isakov isakov-sl@bk.ru --- Created attachment 53009 --> https://bugs.winehq.org/attachment.cgi?id=53009 Log with trace+d3dx, +hlsl_parser
Unpacked size 47.8Mb
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #8 from Sergey Isakov isakov-sl@bk.ru --- *** Bug 39546 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=38621
Thomas Kowaliczek linuxdonald@posteo.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |linuxdonald@posteo.de
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #9 from Sergey Isakov isakov-sl@bk.ru --- Strange. I set +loaddll d see no d3dcompiler_xxx.dll is loaded. Why? The bug with textures depends only on d3dx9_36.dll builtin. If native the texturing is OK.
https://bugs.winehq.org/show_bug.cgi?id=38621
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|D3DXCompileShader errors |Might & Magic: Heroes VI - | |character in the main menu | |misrendered, | |D3DXCompileShader errors
https://bugs.winehq.org/show_bug.cgi?id=38621
--- Comment #10 from Nikolay Sivov bunglehead@gmail.com --- According to the Steam game page https://store.steampowered.com/app/48220/Might__Magic_Heroes_VI/, online functionality was shut down end of January 2024, which in turn crippled some of the single player functionality as well.
If this is still testable, please try with the latest wine, if not, we can close this as abandoned.
https://bugs.winehq.org/show_bug.cgi?id=38621
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Abandoned?
https://bugs.winehq.org/show_bug.cgi?id=38621
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|d3d-util |hlsl Product|Wine |vkd3d Version|1.7.42 |1.10
https://bugs.winehq.org/show_bug.cgi?id=38621
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEEDINFO