https://bugs.winehq.org/show_bug.cgi?id=46720
Bug ID: 46720 Summary: Assassins Creed III / IV startup with builtin d3dcompiler_43 only show up a black window Product: Wine Version: 4.0 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: gamiljydcome@gmail.com Distribution: ---
wine4.0 + dxvk + native d3dcompiler_43 works very well, just a little renderring problem in a few scenes. with builtin d3dcompiler_43 only starup a black window, i cut some output info as below:
0009:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts. 0009:fixme:d3d11:d3d11_device_CheckFeatureSupport Returning fake threading support data. 0009:fixme:d3d11:d3d11_device_CreateDeferredContext iface 0x72e57bc, flags 0, context 0xa7bef48 stub! 002e:fixme:d3dcompiler:make_assignment Check for casts in the lhs. 002e:fixme:hlsl_parser:hlsl_parse Check for valued return on void function. 002e:fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. 002e:err:d3dcompiler:compile_shader HLSL shader parsing failed. 002e:fixme:d3dcompiler:make_assignment Check for casts in the lhs. 002e:fixme:hlsl_parser:hlsl_parse Check for valued return on void function. 002e:fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 4. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 5. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 6. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 7. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 4. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 5. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 6. 002e:fixme:d3d11:d3d_blend_state_create Color mask 0x7 not supported for render target 7. 002e:fixme:d3d_shader:shader_sm4_read_instruction_modifier Unhandled modifier 0x80000202. 002e:fixme:d3d_shader:shader_glsl_sprintf_cast Unhandled cast from 0x1 to 0x5. 0009:fixme:dxgi:wined3d_bind_flags_from_dxgi_usage Unhandled DXGI usage 0x40. 0009:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0xd9d5970, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0, mode_count 0x32faac, desc (nil) partial stub! 0009:fixme:d3dcompiler:make_assignment Check for casts in the lhs. 0009:fixme:hlsl_parser:hlsl_parse Check for valued return on void function. 0009:fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. 002e:fixme:hlsl_parser:hlsl_parse Check for valued return on void function. 002e:fixme:hlsl_parser:hlsl_parse Implicit conversion to the return type if needed, error out if conversion not possible. 002e:err:d3dcompiler:compile_shader HLSL shader parsing failed. 002e:fixme:d3d11:d3d_blend_state_create Per-rendertarget blend not implemented. 003d:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0xdc8d360, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0x1, mode_count 0x134afc04, desc (nil) partial stub! 003d:fixme:dxgi:dxgi_output_GetDisplayModeList iface 0xdc8d360, format DXGI_FORMAT_R8G8B8A8_UNORM, flags 0x1, mode_count 0x134afc04, desc 0xf287d60 partial stub!
it seems d3dcompiler hlsl error is common for some dx11/dx9 games from wine bugzilla, for Assassins Creed III / IV must switch to native d3dcompiler_43 to avoid startup black window and must work with dxvk to avoid startup crash.
dxvk work almost perfect for most games i tested, with buildin dx11 implementation i always meet crashing or very low fps.
so if wined3d implementation port to vulkan driver including dx9~12 will natural avoid many crashing, unimplementation, is it?
regards.