doitsujin / dxvk Goto Github PK
View Code? Open in Web Editor NEWVulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
License: zlib License
Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
License: zlib License
Hi,
i am creating a script which builds dxvk somehow automatically. I want to install it in a specific directory.
Sadly the following happens, here is the output of the bash script:
The Meson build system
Version: 0.43.0
Source dir: /mnt/SSD-TOSHIBA-TR150/games/winetools/dxvk/sources/20180129/dxvk-master
Build dir: /mnt/SSD-TOSHIBA-TR150/games/winetools/dxvk/sources/20180129/dxvk-master/build.w32
Build type: cross build
Project name: dxvk
Native C compiler: cc (gcc 7.2.1)
Cross C compiler: /usr/bin/i686-w64-mingw32-gcc (gcc 7.2.0)
Native C++ compiler: c++ (gcc 7.2.1)
Cross C++ compiler: /usr/bin/i686-w64-mingw32-g++ (gcc 7.2.0)
Host machine cpu family: x86
Host machine cpu: x86
Target machine cpu family: x86
Target machine cpu: x86
Build machine cpu family: x86_64
Build machine cpu: x86_64
Library vulkan-1 found: YES
Library d3d11 found: YES
Library dxgi found: YES
Library d3dcompiler_47 found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Dependency threads found: YES
Configuring dlls_setup.sh using configuration
Build targets in project: 12
Found ninja-1.8.2 at /usr/bin/ninja
So, beside the fact that a specified the destination directory it still wants to install in /usr/local/bin and therfore fails.
Any ideas ?
Many thx !
Christian
A nice puzzle game with no Linux version available that has rendering problems with wine's d3d11 implementation. Uses multisample textures and alpha-to-coverage.
https://bugs.winehq.org/show_bug.cgi?id=42820
https://bugs.winehq.org/show_bug.cgi?id=42819
log with low settings: http://notaz.gp2x.de/tmp/dxvk/wit_u
log with high settings: http://notaz.gp2x.de/tmp/dxvk/wit_u_hi
I've run d3d11-triangles.exe
on Windows 10 with the validation layers enabled.
Standard output is flooded with the following warning:
MEM(ERROR): object: 0x3 type: 10 location: 2985 msgCode: 400556898:
Invalid usage flag for Buffer 0x3 used by vkCmdBindIndexBuffer().
In this case, Buffer should have VK_BUFFER_USAGE_INDEX_BUFFER_BIT set during creation.
The spec valid usage text states 'buffer must have been created with the VK_BUFFER_USAGE_INDEX_BUFFER_BIT flag'
(https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdBindIndexBuffer-buffer-00433)
Hi,
just some ideas about your project..
note expect #1 other two may be better to investigate once project is more mature..
reusing existing open source projects for DXBC->SPIRV translation..
just a suggestion as you seem to be reimplementing DXBC to SPIRV shader conversion from scratch..
for me seems a waste of your time (please forgive me if mistaken) and would be better to reuse at least one of these two projects:
a) Reuse Wine source code : supports DXBC to GLSL and is someway battle tested on modern D3D11 games
(should then get SPIRV by using Khronos glslang to go GLSL->SPIRV)
notes: still lacks some byte codes related to shader linking feature, fp64 optional ops, but they aren't massively used.
PROs:
*if you end implementing missing opcodes vs Wine then wine can benefit from your work..
CONs:
*GLSL output has to be massaged for Vulkan GLSL specific restrictions?
*Get knowledgeable about Wine code base
*Wine licenses issues?
perhaps personally would choose that..
b) reuse Unity HLSLCC compiler (https://github.com/Unity-Technologies/HLSLcc)
you will also need glslang using this path..
CONS:
*produces "GLSL for Vulkan consumption (as input for Glslang to generate SPIR-V)" so no potential problems like Wine GLSL output from DXBC..
*altough well tested in Unity shader codebase,perhaps not robust as Wine shader translation
PRO:
additionaly supports Metal language output support (supports vert,frg,compute.. Metal tesselation should be coming soon (now that Unity 2018.1 roadmap mentions Metal tesselation support)..
so if someway later this project gets forked onto DXMetal shader conversion should already be solved someway..
Test Macos support using MoltenVK (vulkan to metal translator)..
(note: this is not testable right now..)
Wine staging right now supports Vulkan on Linux and with some patches could support could be brought to Macos by linking to MoltenVK Vulkan library..
then we can see how your project Vulkan code plays with MoltenVK and workaround current MoltenVK limitations and perhaps provide feedback to MoltenVK author from improvements..
I plan on doing my testing on my way as soon as I get patches for Wine Vulkan Macos working..
Windows Visual studio support..
past week, with minor changes I got your project to compile with Visual studio 2017 some days ago..
I generated projects using meson flag: --backend vs2017
then from IDE fixed the issues one by one if I remember the most frequest were missing #include on some files and the hardest one were to modify my Windows SDK d3d11.h and dxgi.h headers to include declspec(exportdll) as needed to match your function implementations of
D3D11CreateDevice,D3D11CreateDeviceAndSwapChain,CreateDXGIFactory1,CreateDXGIFactory..
just my three cents.. :-) keep up your great work ๐
I only see in d3d11.log errors like:
warn: D3D11RasterizerState: Depth clamp not properly supported
err: D3D11RasterizerState: Antialiased lines not supported
warn: D3D11Device::CreateShaderModule: Class linkage not supported
err: DxbcCompiler: Unhandled PS SV input: DxbcSystemValue::SampleIndex
Fallout 4 Lowest settings and all turn off
GPU:R9 390
Driver:Mesa git
Wine version: Wine 2.21 staging
DXVK version: master git
Comming soon
d3d11.log:
Fallout4_d3d11.log
dxgi.log:
Fallout4_dxgi.log
Game just starts and exists and says it cant start 3D accerlation.
Needs dx3d10 support I think.
World of Warctaft 7.3.5
now that DXVK is sane enough to generate both d3d11.dll and dxgi.dll using it on Windows for testing is much easier..
As my previous reports show multiple games work/or at least launch to menu and also ComputeMark..
Nvidia has improved from crashing to working the sample apps included (d3d11-compute & trinagle)
but still some bugs are left as for example ComputeMark2 renders all tests black screen saying failing
err: DxvkComputePipeline: Failed to compile pipeline
Anyway more stange is on Intel iGPUs all basic samples ( dxgi-factory d3d11-triange d3d11-compute) fail
the problem is don't crash.. the executable launched from command line doesn't return.. and worse is that all file logs (like dxgi-factory_dxgi.log) are empty (0bytes) even seeing while executing app or after forced close
of course I have tests Intel Vulkan driver with Windows apps and it works correctly is not a problem of having it installed incorrectly..
also this driver I use 4933 has lots of extensions (https://vulkan.gpuinfo.org/displayreport.php?id=2529#extensions)
so I assume all you need are there..
all fail dxgi-factory d3d11-triange d3d11-compute
I just uploaded a PKGBUILD for dxvk and noticed what the title says.
It's easily fixable from the packaging point of view, but i think I'd be better to just do it upstream, i.e., set the executable bit on the script and rename it to something like "dxvk_dlls_setup.sh", to make it evident that it's a script belonging to dxvk.
What do you think?
If I weren't completely unfamiliar with meson, I'd be submitting a pull request ;)
Diablo 3 starts with dxvk,but it displays a white screen with dots in different colors. Log files attached.
Tested it with maximum settings (1920x1080). The following errors show up in the d3d11 log:
err: D3D11RasterizerState: Antialiased lines not supported
err: D3D11DeferredContext::Map: Not implemented
err: D3D11DeferredContext::FinishCommandList: Not implemented
Full logs are attached. I guess the cpu bound games like d3 and sc2 could really benefit from your vulkan approach.
Diablo 3, latest available patchset at 27.01.2018
d3d11.log:
Diablo III64_d3d11.log.gz
dxgi.log:
Diablo III64_dxgi.log
Hi,
nice project..
just testing and it fails on Ubuntu 17.10..
some notes:
have to change build-win64.txt file to using gcc and g++ posix variants:
c = '/usr/bin/x86_64-w64-mingw32-gcc-posix'
cpp = '/usr/bin/x86_64-w64-mingw32-g++-posix'
if not have issues with std::mutex not defined etc.. seems related to thread support varying between posix and win32 modes..
Ubuntu 17.10 seems it includes mingw g++ version 6.2 so optional header isn't avaiable have to change to:
#include <experimental/optional>
also std::experimental::optional..
you should point to use Wine staging for Vulkan support..
Wine 3.0 doesn't load DXVK, plus it breaks horribly when dxgi and d3d11 are set to native.
(for those curious, in Unigine Valley wine 3.0 range from 6 to 11 fps on my system, DXVK from 40 to 80 fps)
benchmark released today..
of course not works closes on loading benchmark launching 1080p lite graphics from menu..
maybe very interesting as it uses a lot of Gamework tech:
GFSDK_TurfEffects.win64.dll
GFSDK_ShadowLib_DX11.win64.dll
GFSDK_VXGI_x64.dll
NvFlowLibRelease_win64.dll
NvHairWorksDx11.win64.dll
AnselSDK64.dll
altough in principle they work on AMD GPUs so not be using any NVAPI extended D3D11 APIs..
wait.. I see amd_ags_x64.dll may be they use some AMD D3D11 extended features also..
d3d11.log:
ffxv_d3d11.log
dxgi.log:
ffxv_dxgi.log
Hi,
i tried avp dx11 mode. Basically it already works, but it crashes ingame from time to time and perf doesn't look really ok (low gpu usage). dxvk also spits a huge amount of messages on the screen if run in debug mode.
My System: Opensuse, i3570k, 16GB ram, Nvidia gtx 970 390.12 driver
basically the following lines are spit out all the time with changing object numbers:
ptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8450 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8450 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8451 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8451 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8452 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8452 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8453 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8453 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8454 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8454 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b845a type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b845a encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #8 at global descriptor index 8 is being used in draw but has not been updated.
err: D3D11DeviceContext: GetData: Data size mismatch
DS(ERROR): object: 0x3b855a type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b855a encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #3 at global descriptor index 3 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b855b type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b855b encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #3 at global descriptor index 3 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b855c type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b855c encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #3 at global descriptor index 3 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8562 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8562 encountered the following validation error at vkCmdDraw() time: Descriptor in binding #6 at global descriptor index 6 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8563 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8563 encountered the following validation error at vkCmdDraw() time: Descriptor in binding #6 at global descriptor index 6 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8570 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8570 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8571 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8571 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8572 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8572 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8573 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8573 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8574 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8574 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b8575 type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b8575 encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #9 at global descriptor index 9 is being used in draw but has not been updated.
DS(ERROR): object: 0x3b857b type: 23 location: 1200 msgCode: 61: Descriptor set 0x3b857b encountered the following validation error at vkCmdDrawIndexed() time: Descriptor in binding #8 at global descriptor index 8 is being used in draw but has not been updated.
err: D3D11DeviceContext: GetData: Data size mismatch
But basically it runs :D
When enabling the HUD, i only get a black game screen and the following error appears:
info: DxgiPresenter: Recreating swap chain:
Format: VK_FORMAT_B8G8R8A8_SRGB
Present mode: VK_PRESENT_MODE_FIFO_KHR
Buffer size: 1920x1080
IMAGE(ERROR): object: 0x0 type: 0 location: 1521 msgCode: 346031326: vkCreateGraphicsPipelines: pCreateInfo[0].pVertexInputState->vertexAttributeDescriptions[2].format (VK_FORMAT_R8G8B8A8_SRGB) is not a supported vertex buffer format. The spec valid usage text states 'format must be allowed as a vertex buffer format, as specified by the VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT flag in VkFormatProperties::bufferFeatures returned by vkGetPhysicalDeviceFormatProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-format-00623)
err: D3D11DeviceContext: GetData: Data size mismatch
Logs are from working mode.
I think it would useful to get open amdvlk working for comparisons against radv. It currently fails while handling SPIRV while running witness trace:
Error: Attempt to redefine function:
; Function Attrs: nounwind
declare spir_func
%spirv.SampledImage.float_1_0_0_0_1_0_0 addrspace(1)* @_Z12SampledImagePU3AS140__spirv_SampledImage_float_1_0_0_0_1_0_0i(%spirv.SampledImage.float_1_0_0_0_1_0_0 addrspace(1)*, i32) #0
=>
%spirv.SampledImage.float_1_1_0_0_1_0_0 addrspace(1)* (%spirv.SampledImage.float_1_0_0_0_1_0_0 addrspace(1)*, i32)
Here is a snip from amdvlk icd/api/llpc/translator/SPIRVUtil.cpp , it looks like it doesn't like some type mismatch:
FunctionType *FT = FunctionType::get(RetTy, ArgTypes, isVarArg);
Function *F = M->getFunction(MangledName);
if (!takeName && F && F->getFunctionType() != FT && Mangle != nullptr) {
std::string S;
raw_string_ostream SS(S);
SS << "Error: Attempt to redefine function: " << *F << " => " <<
*FT << '\n';
report_fatal_error(SS.str(), false);
}
Heroes of the Storm, lowest settings.
Hi,
i tried to get DXVk running with wine-vulkan instead of wine-staging now and it does not work.
Here are the error messages, i guess it is caused by the fact the wine-vulkan does not expose extensions as it seems ? :
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
008a:fixme:vulkan:wine_vk_instance_convert_create_info Application requested a linked structure of type 47
008a:fixme:vulkan:wine_vk_instance_convert_create_info Application requested a linked structure of type 47
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceDisplayPropertiesKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceDisplayPlanePropertiesKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetDisplayPlaneSupportedDisplaysKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetDisplayModePropertiesKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkCreateDisplayModeKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetDisplayPlaneCapabilitiesKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkCreateDisplayPlaneSurfaceKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkCreateSharedSwapchainsKHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceSurfaceCapabilities2KHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceSurfaceFormats2KHR'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkCreateDebugReportCallbackEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkDestroyDebugReportCallbackEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkDebugReportMessageEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkDebugMarkerSetObjectTagEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkDebugMarkerSetObjectNameEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceExternalImageFormatPropertiesNV'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetDeviceGroupSurfacePresentModesKHX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDevicePresentRectanglesKHX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkEnumeratePhysicalDeviceGroupsKHX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceExternalBufferPropertiesKHX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceExternalSemaphorePropertiesKHX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkReleaseDisplayEXT'
008a:fixme:vulkan:wine_vkGetInstanceProcAddr Unsupported device or instance function: 'vkGetPhysicalDeviceSurfaceCapabilities2EXT'
info: D3D11CreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info: D3D11CreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
err: Required Vulkan extension VK_KHR_maintenance1 not supported
warn: Vulkan extension VK_KHR_maintenance2 not supported
err: Required Vulkan extension VK_KHR_shader_draw_parameters not supported
err: DxvkAdapter: Failed to create device
err: D3D11CreateDevice: Failed to create DXGI device
Any way to solve that ?
Many thanks !
Christian
Hi,
the game starts, but dosesn't display anything. I used wine in virtual desktop mode with 1024x768, same resolution in game. Disabling wine virtual desktop also leeds to the same issue:
System: OpenSuse Tumbleweed, i3570k, 16GB RAm, NVidia Gtx 970, 390.12 driver
d3d11.log
dxgi.log
Debug Log:
ParameterValidation(ERROR): object: 0x0 type: 0 location: 1890 msgCode: 352323990: vkCmdSetViewport 0: width (0.000000) exceeds permitted bounds (0,16384). The spec valid usage text states 'width must be greater than 0.0 and less than or equal to VkPhysicalDeviceLimits::maxViewportDimensions[0]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkViewport-width-01227)
I'm getting immediate crashes with DXVK_HUD=1
in Offworld Trading Company.
The game seems to work pretty well without the HUD enabled, though.
Offworld Trading Company (Unity 5.6.3p1)
Also, fun in dmesg:
[229371.058294] NVRM: Xid (PCI:0000:0b:00): 69, Class Error: ChId 004b, Class 0000b197, Offset 00001168, Data 00000600, ErrorCode 00000005
Build failed for all commis pushed on 30-Jan2018. please see below
Can you please apply this patch? I am not a developer (there is only one line to add)
diff -Napur dxvk/src/d3d11/d3d11_device.cpp dxvk-error-fixed/src/d3d11/d3d11_device.cpp
--- dxvk/src/d3d11/d3d11_device.cpp 2018-01-31 01:25:20.272357811 +0100
+++ dxvk-error-fixed/src/d3d11/d3d11_device.cpp 2018-01-31 01:23:44.479356539 +0100
@@ -1,5 +1,5 @@
#include <cstring>
-
+#include <algorithm>
#include "d3d11_buffer.h"
#include "d3d11_class_linkage.h"
#include "d3d11_context_def.h"
david@amdgaming:~/dxvk/build.w32$ ninja
[6/24] Compiling C++ object 'src/d3d11/d3d11_vk@sha/d3d11_device.cpp.obj'.
FAILED: src/d3d11/d3d11_vk@sha/d3d11_device.cpp.obj
/opt/mingw32/bin/i686-w64-mingw32-g++ -Og -gdwarf-2 -Isrc/d3d11/d3d11_vk@sha -Isrc/d3d11 -I../src/d3d11 -I.././include -Isrc/dxvk -I../src/dxvk -Isrc/dxgi -I../src/dxgi -Isrc/dxbc -I../src/dxbc -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c
1z -O3 -MMD -MQ 'src/d3d11/d3d11_vk@sha/d3d11_device.cpp.obj' -MF 'src/d3d11/d3d11_vk@sha/d3d11_device.cpp.obj.d' -o 'src/d3d11/d3d11_vk@sha/d3d11_device.cpp.obj' -c ../src/d3d11/d3d11_device.cpp
../src/d3d11/d3d11_device.cpp: Dans la fonction membre statique ยซย static D3D_FEATURE_LEVEL dxvk::D3D11Device::GetMaxFeatureLevel()ย ยป:
../src/d3d11/d3d11_device.cpp:2186:18: erreurย : ยซย find_ifย ยป is not a member of ยซย stdย ยป
auto entry = std::find_if(s_featureLevels.begin(), s_featureLevels.end(),
^~~
[11/24] Compiling C++ object 'src/d3d11/d3d11_vk@sha/d3d11_util.cpp.obj'.
ninja: build stopped: subcommand failed
also interesting because tries to requests D3D11.1 context of course fails:
info: D3D11CreateDevice: Probing D3D_FEATURE_LEVEL_11_1
err: D3D11CreateDevice: Requested feature level not supported
This benchmark is interesting because should be a DX11 app using purely compute+UAV features (2D and 3D RWTextures) so could be good getting it right as doesn't use pretty much any other DX11 features..
tested on NV 390.65 and GTX 970
seems there is only missing API function
"err: D3D11Device::GetUnorderedAccessViewDescFromResource: Not implemented"
attaching benchmark here because can be difficult to find..
ComputeMark2.zip
I tried to build dxvk, i have installed all dependencies, during compiling it failes, here is the output:
chriundcla@chriundcla-K53SV:~/Downloads/dxvk/dxvk-master/build.w64$ ninja
[0/1] Regenerating build files.
The Meson build system
Version: 0.42.1
Source dir: /home/chriundcla/Downloads/dxvk/dxvk-master
Build dir: /home/chriundcla/Downloads/dxvk/dxvk-master/build.w64
Build type: cross build
Project name: dxvk
Native C compiler: cc (gcc 7.2.0)
Cross C compiler: /usr/bin/x86_64-w64-mingw32-gcc (gcc 6.3.0)
Native C++ compiler: c++ (gcc 7.2.0)
Cross C++ compiler: /usr/bin/x86_64-w64-mingw32-g++ (gcc 6.3.0)
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Build machine cpu family: x86_64
Build machine cpu: x86_64
Library vulkan-1 found: YES
Library d3d11 found: YES
Library dxgi found: YES
Library d3dcompiler_47 found: YES
Program glslangValidator found: YES (/home/chriundcla/Downloads/glslang/bin/glslangValidator)
Build targets in project: 12
[3/111] Compiling C++ object 'src/util/util@sta/log_log_debug.cpp.obj'.
FAILED: src/util/util@sta/log_log_debug.cpp.obj
/usr/bin/x86_64-w64-mingw32-g++ -Og -gstabs -Isrc/util/util@sta -Isrc/util -I../src/util -I.././include -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++1z -O0 -g -MMD -MQ 'src/util/util@sta/log_log_debug.cpp.obj' -MF 'src/util/util@sta/log_log_debug.cpp.obj.d' -o 'src/util/util@sta/log_log_debug.cpp.obj' -c ../src/util/log/log_debug.cpp
In file included from ../src/util/log/log_debug.h:5:0,
from ../src/util/log/log_debug.cpp:1:
../src/util/log/log.h:43:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
[4/111] Compiling C++ object 'src/util/util@sta/log_log.cpp.obj'.
FAILED: src/util/util@sta/log_log.cpp.obj
/usr/bin/x86_64-w64-mingw32-g++ -Og -gstabs -Isrc/util/util@sta -Isrc/util -I../src/util -I.././include -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++1z -O0 -g -MMD -MQ 'src/util/util@sta/log_log.cpp.obj' -MF 'src/util/util@sta/log_log.cpp.obj.d' -o 'src/util/util@sta/log_log.cpp.obj' -c ../src/util/log/log.cpp
In file included from ../src/util/log/log.cpp:1:0:
../src/util/log/log.h:43:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
../src/util/log/log.cpp: In member function โvoid dxvk::Logger::log(dxvk::LogLevel, const string&)โ:
../src/util/log/log.cpp:42:23: error: โmutexโ is not a member of โstdโ
std::lock_guardstd::mutex lock(m_mutex);
^~~
../src/util/log/log.cpp:42:33: error: template argument 1 is invalid
std::lock_guardstd::mutex lock(m_mutex);
^
../src/util/log/log.cpp:42:40: error: โm_mutexโ was not declared in this scope
std::lock_guardstd::mutex lock(m_mutex);
^~~~~~~
../src/util/log/log.cpp:42:35: warning: unused variable โlockโ [-Wunused-variable]
std::lock_guardstd::mutex lock(m_mutex);
^~~~
[5/111] Compiling C++ object 'src/spirv/spirv@sta/spirv_code_buffer.cpp.obj'.
FAILED: src/spirv/spirv@sta/spirv_code_buffer.cpp.obj
/usr/bin/x86_64-w64-mingw32-g++ -Og -gstabs -Isrc/spirv/spirv@sta -Isrc/spirv -I../src/spirv -I.././include -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++1z -O0 -g -MMD -MQ 'src/spirv/spirv@sta/spirv_code_buffer.cpp.obj' -MF 'src/spirv/spirv@sta/spirv_code_buffer.cpp.obj.d' -o 'src/spirv/spirv@sta/spirv_code_buffer.cpp.obj' -c ../src/spirv/spirv_code_buffer.cpp
In file included from ../src/spirv/spirv_include.h:3:0,
from ../src/spirv/spirv_instruction.h:6,
from ../src/spirv/spirv_code_buffer.h:8,
from ../src/spirv/spirv_code_buffer.cpp:4:
../src/spirv/../util/log/log.h:43:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
[8/111] Compiling C++ object 'src/util/util@sta/com_com_guid.cpp.obj'.
FAILED: src/util/util@sta/com_com_guid.cpp.obj
/usr/bin/x86_64-w64-mingw32-g++ -Og -gstabs -Isrc/util/util@sta -Isrc/util -I../src/util -I.././include -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++1z -O0 -g -MMD -MQ 'src/util/util@sta/com_com_guid.cpp.obj' -MF 'src/util/util@sta/com_com_guid.cpp.obj.d' -o 'src/util/util@sta/com_com_guid.cpp.obj' -c ../src/util/com/com_guid.cpp
In file included from ../src/util/com/../../d3d11/../dxgi/dxgi_include.h:9:0,
from ../src/util/com/../../d3d11/d3d11_include.h:3,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:3,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxgi/../util/log/log.h:43:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_buffer_res.h:4:0,
from ../src/util/com/../../d3d11/../dxvk/dxvk_buffer.h:3,
from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:4,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_memory.h:182:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_framebuffer.h:4:0,
from ../src/util/com/../../d3d11/../dxvk/dxvk_constant_state.h:4,
from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:6,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_renderpass.h:169:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_context_state.h:7:0,
from ../src/util/com/../../d3d11/../dxvk/dxvk_context.h:6,
from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:7,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_graphics.h:147:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:14:0,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_pipemanager.h:103:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:15:0,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_queue.h:42:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
../src/util/com/../../d3d11/../dxvk/dxvk_queue.h:43:10: error: โcondition_variableโ in namespace โstdโ does not name a type
std::condition_variable m_condOnAdd;
^~~~~~~~~~~~~~~~~~
../src/util/com/../../d3d11/../dxvk/dxvk_queue.h:44:10: error: โcondition_variableโ in namespace โstdโ does not name a type
std::condition_variable m_condOnTake;
^~~~~~~~~~~~~~~~~~
../src/util/com/../../d3d11/../dxvk/dxvk_queue.h:46:10: error: โthreadโ in namespace โstdโ does not name a type
std::thread m_thread;
^~~~~~
In file included from ../src/util/com/../../d3d11/../dxvk/dxvk_device.h:16:0,
from ../src/util/com/../../d3d11/d3d11_interfaces.h:7,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:57:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_mutex;
^~~~~
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h: In member function โdxvk::Rc dxvk::DxvkRecycler<T, N>::retrieveObject()โ:
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:32:23: error: โmutexโ is not a member of โstdโ
std::lock_guardstd::mutex lock(m_mutex);
^~~
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:32:33: error: template argument 1 is invalid
std::lock_guardstd::mutex lock(m_mutex);
^
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:32:40: error: โm_mutexโ was not declared in this scope
std::lock_guardstd::mutex lock(m_mutex);
^~~~~~~
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h: In member function โvoid dxvk::DxvkRecycler<T, N>::returnObject(const dxvk::Rc&)โ:
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:49:23: error: โmutexโ is not a member of โstdโ
std::lock_guardstd::mutex lock(m_mutex);
^~~
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:49:33: error: template argument 1 is invalid
std::lock_guardstd::mutex lock(m_mutex);
^
../src/util/com/../../d3d11/../dxvk/dxvk_recycler.h:49:40: error: โm_mutexโ was not declared in this scope
std::lock_guardstd::mutex lock(m_mutex);
^~~~~~~
In file included from ../src/util/com/../../d3d11/d3d11_interfaces.h:7:0,
from ../src/util/com/com_guid.cpp:3:
../src/util/com/../../d3d11/../dxvk/dxvk_device.h: At global scope:
../src/util/com/../../d3d11/../dxvk/dxvk_device.h:336:10: error: โmutexโ in namespace โstdโ does not name a type
std::mutex m_submissionLock;
^~~~~
ninja: build stopped: subcommand failed.
Many thanks !
Christian
The d3d11-triangle sample program crashes with the attached backtrace.
System information:
Wine version: 2.21 (Staging)
GPU: GTX 1050
Driver version: 384.111
Tweaking the vertex shader code in the sample to remove the buffer and fixing the color output runs without errors.
$ WINEDLLOVERRIDES=d3d11,dxgi,d3dcompiler_47=n /opt/wine-staging/bin/winedbg d3d11-triangle.exe
fixme:winediag:start_process Wine Staging 2.21 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
WineDbg starting on pid 002e
0x7b461733: subl $8,%esp
Wine-dbg>c
fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported
Unhandled exception: page fault on read access to 0x00000008 in 32-bit code (0x797d633d).
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
err:dbghelp_stabs:stabs_pts_read_type_def Unknown type ','
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:797d633d ESP:0090d900 EBP:7c7cd0a8 EFLAGS:00010246( R- -- I Z- -P- )
EAX:00000000 EBX:00000000 ECX:00002d3c EDX:7aef1ae0
ESI:0090d910 EDI:00000000
Stack dump:
0x0090d900: 7ad83880 0090d910 00000000 00000000
0x0090d910: 00000000 00002d3c 00000000 00000000
0x0090d920: 00000000 7ad5b338 00000021 00000000
0x0090d930: 00000000 00000548 00000000 00000000
0x0090d940: 00000000 00000000 00000000 00000000
0x0090d950: 00000000 00000000 0090d978 7ad42a99
Backtrace:
=>0 0x797d633d in libnvidia-glcore.so.384.111 (+0x3d733d) (0x7c7cd0a8)
1 0x79889c98 in libnvidia-glcore.so.384.111 (+0x48ac97) (0x7ad42a47)
2 0x7989619a in libnvidia-glcore.so.384.111 (+0x497199) (0x7c6d7d2c)
3 0x79897f8f in libnvidia-glcore.so.384.111 (+0x498f8e) (0x00000000)
4 0x7976753f in libnvidia-glcore.so.384.111 (+0x36853e) (0x00000000)
5 0x79767dee in libnvidia-glcore.so.384.111 (+0x368ded) (0x7c7cd918)
6 0x7a6100ef in libnvidia-glcore.so.384.111 (+0x12110ee) (0x0090dfb8)
7 0x7a621903 in libnvidia-glcore.so.384.111 (+0x1222902) (0x00006100)
8 0x7a623f59 in libnvidia-glcore.so.384.111 (+0x1224f58) (0x7d623338)
9 0x7ac4c286 in libnvidia-glcore.so.384.111 (+0x184d285) (0x7d6210b8)
10 0x7ac4c739 in libnvidia-glcore.so.384.111 (+0x184d738) (0x00168a98)
11 0x7ac51b80 in libnvidia-glcore.so.384.111 (+0x1852b7f) (0x7d6210b8)
12 0x7ac5ac66 in libnvidia-glcore.so.384.111 (+0x185bc65) (0x00000000)
13 0x7ed27fed vkCreateGraphicsPipelines+0x7c() in vulkan (0x0090e948)
14 0x6a5d5c7c _ZNK4dxvk2vk8VulkanFnIPU7stdcallF8VkResultP10VkDevice_TyjPK28VkGraphicsPipelineCreateInfoPK21VkAllocationCallbacksPyEEclES4_yjS7_SA_SB_+0x4b(args#0=0x7dd89ac0, args#1=0x7d822f58, args#2=0x1, args#3=0x90ea28, args#4=(nil), args#5=0x90ea20) [/home/kant/Source/dxvk/build.win32/../src/dxvk/./vulkan/dxvk_vulkan_loader_fn.h:39] in d3d11 (0x0090e998)
15 0x6a56c288 _ZNK4dxvk20DxvkGraphicsPipeline15compilePipelineERKNS_29DxvkGraphicsPipelineStateInfoEy+0x9ef(state=0x926918, baseHandle=0) [/home/kant/Source/dxvk/build.win32/../src/dxvk/dxvk_graphics.cpp:239] in d3d11 (0x0090f4e8)
16 0x6a56b757 _ZN4dxvk20DxvkGraphicsPipeline17getPipelineHandleERKNS_29DxvkGraphicsPipelineStateInfoE+0x156(state=0x926918) [/home/kant/Source/dxvk/build.win32/../src/dxvk/dxvk_graphics.cpp:83] in d3d11 (0x0090fae8)
17 0x6a5645da _ZN4dxvk11DxvkContext27updateGraphicsPipelineStateEv+0x109() [/home/kant/Source/dxvk/build.win32/../src/dxvk/dxvk_context.cpp:1011] in d3d11 (0x0090fb38)
18 0x6a565b85 _ZN4dxvk11DxvkContext19commitGraphicsStateEv+0x4e() [/home/kant/Source/dxvk/build.win32/../src/dxvk/dxvk_context.cpp:1262] in d3d11 (0x0090fb58)
19 0x6a562393 _ZN4dxvk11DxvkContext4drawEjjjj+0x14(vertexCount=0x3, instanceCount=0x1, firstVertex=0, firstInstance=0) [/home/kant/Source/dxvk/build.win32/../src/dxvk/dxvk_context.cpp:464] in d3d11 (0x0090fb88)
20 0x6a54702b _ZN4dxvk18D3D11DeviceContext4DrawEjj@12+0x38(this=0x924d18, VertexCount=0x3, StartVertexLocation=0) [/home/kant/Source/dxvk/build.win32/../src/d3d11/d3d11_context.cpp:759] in d3d11 (0x0090fba8)
21 0x0041e518 _ZN11TriangleApp3runEv+0x2bf() [/home/kant/Source/dxvk/build.win32/../tests/d3d11/test_d3d11_triangle.cpp:281] in d3d11-triangle (0x0090fc18)
22 0x00401731 WinMain@16+0x200(hInstance=0x400000, hPrevInstance=(nil), lpCmdLine="", nCmdShow=0xa) [/home/kant/Source/dxvk/build.win32/../tests/d3d11/test_d3d11_triangle.cpp:407] in d3d11-triangle (0x0090fd48)
23 0x004b839d in d3d11-triangle (+0xb839c) (0x0090fd68)
24 0x004013e3 in d3d11-triangle (+0x13e2) (0x0090fe40)
25 0x7b460519 call_process_entry+0x18() in kernel32 (0x0090fe68)
26 0x7b46173d in kernel32 (+0x4173c) (0x0090feb8)
27 0x7bca5f80 call_thread_func_wrapper+0xb() in ntdll (0x0090fedc)
28 0x7bca9379 in ntdll (+0x69378) (0x0090ffcc)
29 0x7bca5f5e RtlRaiseException+0x49() in ntdll (0x0090ffec)
0x797d633d: movl 0x8(%eax),%eax
this is interesting a Crysis 2 update added D3D11 support and have this installed but even then fails about missing d3d10core.dll, etc.. (of course runs without DXVK on native Windows)
For working with DXVK have to copy d3d11_vk.dll to d3d11.dll,d3d10.dll and d3d10core.dll
even then fails with CryRenderD3D11.dll needing D3D10CreateBlob from d3d10.dll..
with a Hex editor I modified CryrenderD3D11.dll to depend on D3DCreateBlob from D3DCompiler_47.dll but due to not modify file size in hex editor had to copy D3DCompiler_47.dll for example as d3d13.dll and in hex editor say depend on d3dcreateblob from d3d13.dll..
note that, even with that modifications, game works (without DXVK), so I patched correctly to remove depedency on d3d10..
with that game launches ok up to menu but loading a new game fails..
even I see:
err: DxgiAdapter::CheckInterfaceSupport: No D3D10 support
anyway apart from tesselation shaders needed seems to make a lot of calls to:
err: D3D11DeviceContext::CopySubresourceRegion: Buffers not supported
When trying to run EVE, I get that :
fixme:winediag:start_process Wine Staging 2.19 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
fixme:heap:RtlSetHeapInformation 0x490000 0 0x32ed14 4 stub
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
Network layer using: CarbonIO
fixme:heap:RtlSetHeapInformation 0x490000 0 0x328264 4 stub
err:winediag:query_gpu_description Invalid GPU override 1002:6798 specified, ignoring.
err:winediag:query_gpu_description Invalid GPU override 1002:6798 specified, ignoring.
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported
WARNING: radv is not a conformant vulkan implementation, testing use only.
warn: DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
info: D3D11CreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info: D3D11CreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
info: Enabled device extensions:
info: VK_AMD_rasterization_order
info: VK_KHR_maintenance1
info: VK_KHR_maintenance2
info: VK_KHR_shader_draw_parameters
info: VK_KHR_swapchain
mesa: for the -simplifycfg-sink-common option: may only occur zero or one times!
Starting up Trinity through _trinity_dx11_deploy ...
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported
fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported
WARNING: radv is not a conformant vulkan implementation, testing use only.
warn: DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
info: D3D11CreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info: D3D11CreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
info: Enabled device extensions:
info: VK_AMD_rasterization_order
info: VK_KHR_maintenance1
info: VK_KHR_maintenance2
info: VK_KHR_shader_draw_parameters
info: VK_KHR_swapchain
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R1_UNORM
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R8G8_B8G8_UNORM
err: DxgiAdapter: No format mapping for DXGI_FORMAT_G8R8_G8B8_UNORM
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
err: D3D11: Unsupported format: 0
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R1_UNORM
err: D3D11: Unsupported format: 66
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R8G8_B8G8_UNORM
err: D3D11: Unsupported format: 68
err: DxgiAdapter: No format mapping for DXGI_FORMAT_G8R8_G8B8_UNORM
err: D3D11: Unsupported format: 69
err: DxgiAdapter: No format mapping for DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
err: D3D11: Unsupported format: 89
An exception has occurred. It has been logged in the log server as exception #1
It look like it's missing some colours format. And unfortunately I looked in the src and I saw them... in comments... Are these simply not supported by Vulkan and in that case, do some colour conversion will be required and ever be supported?
interesting because I see needs DeferredContext & command lists..
I see lots of:
err: D3D11DeferredContext::FinishCommandList: Not implemented
err: D3D11DeviceContext::CopySubresourceRegion: Buffers not supported
d3d11.log:
Crysis3_d3d11.log
dxgi.log:
Skyrim: Special Edition using the lowest graphics settings with no aa or msaa the game starts perfectly but when you try to continue or create a new game you get a black screen
Distro: Antergos
GPU: R9 390
Driver: Mesa git
Wine version: wine-staging-2.21
From @skry https://mega.nz/#!lUdRGYZL!M9S5PdqZXGYaxuKaBlrwDZDsu26VrG4l1H92pgQ1N90
I just tested compiled binaries from Windows and I'm getting:
err: CreateDXGIFactory: Requested version of IDXGIFactory not supported
on both d3d11-compute and triangle samples and even on dxvk-triagle which seems to use Vulkan directly..
removing dxgi.dll allows dxvk-triagle to work but d3d11 samples fail with missing DXGICreateDevicePrivate entry point missing on d3d11.dll..
shouldn't your wrapper also work on Windows?
Hi, I was testing this out (just got black screens so far except for the triangle test).
I've found another way to have dlls load in wine, it's a little elaborate but guarantees dlls to load w/o copying them in the exec folder.
HKEY_CURRENT_USER\Software\Wine\DllRedirects\
labelled d3d11
with value d3d11_vk.dll
. Likewise for dxgi.d3d11.dll
to d3d11_vk.dll
. Likewise for dxgi.HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment\PATH
. You can add both 64 and 32 bit paths.d3d11.log:
Murdered_d3d11.log
dxgi.log:
Murdered_dxgi.log
Hi there, I could not compile this module (Gentoo have the same problem than Ubuntu, failing to compile because no mutex...) So I did download the release precompiled bin.
I get that message in d3d11.log:
D3D11CreateDevice: Adapter is not a DXVK adapter
Tried with heaven and eve-online. Vulkan is supported (AMDGPU+RadeonSI)
Hi,
Valley crashes here:
System: OpenSuse, i3570k, 16GB Ram, Nvidia GTX 970, 390.12 driver
backtrace and logs attached.
backtrace.txt
d3d11.log
dxgi.log
thx !
Christian
err: DxgiAdapter::CheckInterfaceSupport: No D3D10 support
Is this to be expected?
$ cat dxgi.log
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
warn: DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
err: DxgiAdapter::CheckInterfaceSupport: No D3D10 support
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
warn: DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
err: DxgiAdapter::CheckInterfaceSupport: No D3D10 support
info: Enabled instance layers:
info: Enabled instance extensions:
info: VK_KHR_surface
info: VK_KHR_win32_surface
warn: DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
err: DxgiAdapter::CheckInterfaceSupport: No D3D10 support
The game freezes at "preparing planet generation system" after shader generation completes. This is before the main menu loads.
Elite Dangerous: Horizons
Hi,
as wine-staging is becoming more and more outdated and for me it looks pretty dead atm (no changes since 3 month), i am wondering if dxvk is designed that it also will work with wine-vulkan ?
Many thanks !
Christian
When trying to run any d3d11 software wine complains that the dlls cannot be forwarded because they are the "wrong architecture". This was done with a completely fresh 64 bit wine prefix, using dlls that were compiled from a brand new clone of the repository using the instructions in the read me for a 64bit build
Dark Souls II and the example executables provided in the bin folder for dxvk
DarkSoulsII_d3d11.log
DarkSoulsII_dxgi.log
fixme:winediag:start_process Wine Staging 2.21 is a testing version containing experimental patches. fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. fixme:winediag:start_process Wine Staging 2.21 is a testing version containing experimental patches. fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:module:load_dll Loader redirect from L"d3d11.dll" to L"d3d11_vk.dll" err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:ver:GetCurrentPackageId (0x33e470 (nil)): stub fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported fixme:ntdll:EtwEventRegister ({47a9201e-73b0-42ce-9821-7e134361bc6f}, 0x3f006bd0, 0x3f043cf0, 0x3f043ce8) stub. fixme:ntdll:EtwEventRegister ({58a9201e-73b0-42ce-9821-7e134361bc70}, 0x3f006bd0, 0x3f043d28, 0x3f043d20) stub. fixme:ntdll:EtwEventRegister ({3fa9201e-73b0-43fe-9821-7e145359bc6f}, 0x3f006bd0, 0x3f043dd0, 0x3f043dc8) stub. fixme:ntdll:EtwEventRegister ({1432afee-73b0-42ce-9821-7e134361b433}, 0x3f006bd0, 0x3f043d60, 0x3f043d58) stub. fixme:ntdll:EtwEventRegister ({4372afee-73b0-42ce-9821-7e134361b519}, 0x3f006bd0, 0x3f043d98, 0x3f043d90) stub. fixme:process:SetProcessShutdownParameters (00000100, 00000000): partial stub. fixme:xinput:XInputGetCapabilities (index 3, flags 0x1, capabilities 0x33e75c) Stub! fixme:win:RegisterDeviceNotificationW (hwnd=0x2006e, filter=0x41ce8e8,flags=0x00000000) returns a fake device notification handle! fixme:xinput:XInputSetState (index 0, vibration 0x33e78c) Stub! fixme:xinput:XInputSetState (index 1, vibration 0x33e78c) Stub! fixme:xinput:XInputSetState (index 2, vibration 0x33e78c) Stub! fixme:xinput:XInputSetState (index 3, vibration 0x33e78c) Stub! fixme:imm:ImmGetOpenStatus (0x9e3fb8): semi-stub fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\logs\\cef_log.txt" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\logs\\cef_log.txt" fixme:ver:GetCurrentPackageId (0x33d90c (nil)): stub fixme:dwmapi:DwmSetWindowAttribute (0x100a0, 2, 0x33df20, 4) stub fixme:dwmapi:DwmExtendFrameIntoClientArea (0x100a0, 0x33df0c) stub fixme:module:load_dll Loader redirect from L"d3d11.dll" to L"d3d11_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture err:module:import_dll Library d3d11.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\libcef.dll") not found fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture err:module:import_dll Library dxgi.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\libcef.dll") not found err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe") not found err:module:LdrInitializeThunk Main exe initialization for L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" failed, status c0000135 fixme:advapi:StopTraceA (0, "Steam Event Tracing", 0x33e264) stub fixme:advapi:StartTraceA (0x33e2f0, "Steam Event Tracing", 0x33e264) stub fixme:advapi:OpenTraceA 0x33e0c4: stub fixme:advapi:EnableTrace (1, 0x10, 4, {22fb2cd6-0e7b-422b-a0c7-2fad1fd0e716}, cafe4242): stub fixme:advapi:CloseTrace cafe4242: stub fixme:advapi:ProcessTrace 0x11968a08 1 (nil) (nil): stub err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. fixme:ver:GetCurrentPackageId (0x33cc20 (nil)): stub fixme:win:RegisterDeviceNotificationA (hwnd=0x100ac, filter=0x12dce4ac,flags=0x00000004) returns a fake device notification handle! fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture err:module:import_dll Library dxgi.dll (which is needed by L"C:\\windows\\system32\\wbemprox.dll") not found err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\wbemprox.dll" err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture err:module:import_dll Library dxgi.dll (which is needed by L"C:\\windows\\system32\\wbemprox.dll") not found err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\wbemprox.dll" err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 fixme:iphlpapi:NotifyAddrChange (Handle 0x1ff050c, overlapped 0x1ff0510): stub fixme:dwmapi:DwmExtendFrameIntoClientArea (0x100ae, 0x33e394) stub err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:win:RegisterTouchWindow (0x100c4 00000003): stub fixme:wgl:X11DRV_wglChoosePixelFormatARB unused pfAttribFList err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:win:RegisterTouchWindow (0x300c8 00000003): stub fixme:wgl:X11DRV_wglChoosePixelFormatARB unused pfAttribFList err:ntdll:RtlLeaveCriticalSection section 0x3603b0 is not acquired fixme:dwrite:dwritefactory_CreateMonitorRenderingParams (0x1): monitor setting ignored fixme:ntdll:NtLockFile I/O completion on lock not implemented yet fixme:dwmapi:DwmExtendFrameIntoClientArea (0x300c2, 0x33e0e8) stub fixme:dwmapi:DwmExtendFrameIntoClientArea (0x400cc, 0x33d818) stub fixme:imm:ImmReleaseContext (0x100ae, 0x1044a8f8): stub fixme:win:RegisterDeviceNotificationA (hwnd=0x400cc, filter=0x33dadc,flags=0x00000004) returns a fake device notification handle! fixme:dwmapi:DwmGetWindowAttribute ((nil) 9 0x33da34 16) stub err:ole:CoGetClassObject class {294935ce-f637-4e7c-a41b-ab255460b862} not registered err:ole:CoGetClassObject class {294935ce-f637-4e7c-a41b-ab255460b862} not registered err:ole:create_server class {294935ce-f637-4e7c-a41b-ab255460b862} not registered fixme:ole:CoGetClassObject CLSCTX_REMOTE_SERVER not supported err:ole:CoGetClassObject no class object {294935ce-f637-4e7c-a41b-ab255460b862} could be created for context 0x17 fixme:dwmapi:DwmExtendFrameIntoClientArea (0x3011c, 0x33e1fc) stub fixme:hnetcfg:fw_apps_get__NewEnum 0x10a61c70, 0x14afe490 fixme:hnetcfg:fw_app_put_ProcessImageFileName 0x10a61c70, L"C:\\Program Files (x86)\\Steam\\Steam.exe" fixme:hnetcfg:fw_app_put_Name 0x10a61c70, L"Steam" fixme:hnetcfg:fw_app_put_Enabled 0x10a61c70, -1 fixme:hnetcfg:fw_apps_Add 0x104d32c0, 0x10a61c70 fixme:hnetcfg:netfw_rules_get__NewEnum 0x104d32c0, 0x14afe488 fixme:hnetcfg:fw_apps_get__NewEnum 0x104d32c0, 0x14afe490 fixme:hnetcfg:fw_app_put_ProcessImageFileName 0x104d3298, L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" fixme:hnetcfg:fw_app_put_Name 0x104d3298, L"Steam Web Helper" fixme:hnetcfg:fw_app_put_Enabled 0x104d3298, -1 fixme:hnetcfg:fw_apps_Add 0x104d3238, 0x104d3298 fixme:hnetcfg:netfw_rules_get__NewEnum 0x10a6ce88, 0x14afe488 fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x10286318 (0x14cfe518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x14cfe524): stub fixme:dwmapi:DwmExtendFrameIntoClientArea (0x300b4, 0x33e39c) stub fixme:dwmapi:DwmExtendFrameIntoClientArea (0x10182, 0x33e374) stub fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x10b4ecd8 (0x14dfe518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x14dfe524): stub fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x1047ba68 (0x1542e518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x1542e524): stub fixme:module:load_dll Loader redirect from L"d3d11.dll" to L"d3d11_vk.dll" err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:ntdll:EtwEventRegister ({47a9201e-73b0-42ce-9821-7e134361bc6f}, 0x3602030, 0x36a9d40, 0x36a9d38) stub. fixme:ntdll:EtwEventRegister ({58a9201e-73b0-42ce-9821-7e134361bc70}, 0x3602030, 0x36a9d78, 0x36a9d70) stub. fixme:ntdll:EtwEventRegister ({3fa9201e-73b0-43fe-9821-7e145359bc6f}, 0x3602030, 0x36a9d08, 0x36a9d00) stub. fixme:ntdll:EtwEventRegister ({1432afee-73b0-42ce-9821-7e134361b433}, 0x3602030, 0x36a9db0, 0x36a9da8) stub. fixme:ntdll:EtwEventRegister ({4372afee-73b0-42ce-9821-7e134361b519}, 0x3602030, 0x36a9de8, 0x36a9de0) stub. fixme:imm:ImmGetOpenStatus (0xd17f0): semi-stub fixme:ver:GetCurrentPackageId (0x23ec90 (nil)): stub fixme:module:find_dll_file skipping L"C:\\Program Files (x86)\\Steam\\dbghelp.dll" because of wrong architecture fixme:ntdll:EtwEventRegister ({47a9201e-73b0-42ce-9821-7e134361bc6f}, 0x3f0070a0, 0x3f0524c0, 0x3f0524b8) stub. fixme:ntdll:EtwEventRegister ({58a9201e-73b0-42ce-9821-7e134361bc70}, 0x3f0070a0, 0x3f0524f8, 0x3f0524f0) stub. fixme:ntdll:EtwEventRegister ({3fa9201e-73b0-43fe-9821-7e145359bc6f}, 0x3f0070a0, 0x3f052488, 0x3f052480) stub. fixme:ntdll:EtwEventRegister ({1432afee-73b0-42ce-9821-7e134361b433}, 0x3f0070a0, 0x3f052530, 0x3f052528) stub. fixme:ntdll:EtwEventRegister ({4372afee-73b0-42ce-9821-7e134361b519}, 0x3f0070a0, 0x3f052568, 0x3f052560) stub. err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported fixme:ver:GetCurrentPackageId (0x6d6e510 (nil)): stub fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x10473390 (0x158ce518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x158ce524): stub fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkCreateDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDestroyDebugReportCallbackEXT" not supported fixme:vulkan:vkGetInstanceProcAddr "vkDebugReportMessageEXT" not supported wine: Unhandled page fault on read access to 0x00000000 at address 0x7f7b50522e0f (thread 0068), starting debugger... err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. err:winediag:xrandr12_init_modes Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead. fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x10473390 (0x1542e518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x1542e524): stub fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\logs\\cef_log.txt" fixme:file:GetLongPathNameW UNC pathname L"\\\\?\\C:\\Program Files (x86)\\Steam\\logs\\cef_log.txt" fixme:module:load_dll Loader redirect from L"d3d11.dll" to L"d3d11_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\d3d11_vk.dll" because of wrong architecture err:module:import_dll Library d3d11.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\libcef.dll") not found fixme:module:load_dll Loader redirect from L"dxgi.dll" to L"dxgi_vk.dll" fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture fixme:module:find_dll_file skipping L"Z:\\home\\fisk\\Staging\\dxvk\\bin\\dxgi_vk.dll" because of wrong architecture err:module:import_dll Library dxgi.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\libcef.dll") not found err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe") not found err:module:LdrInitializeThunk Main exe initialization for L"C:\\Program Files (x86)\\Steam\\bin\\cef\\cef.win7\\steamwebhelper.exe" failed, status c0000135 fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000003-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_QueryInterface not implemented for {00000019-0000-0000-c000-000000000046} (unknown) fixme:shell:CustomDestinationList_BeginList 0x10a57f08 (0x158ce518 {92ca9dcd-5622-4bba-a805-5e9f541bd8c9} 0x158ce524): stub
Battlerite, lowest settings
I'm trying to build project w/ wineg++ but it seems only tests/* executables wrapped correctly. Both d3d11.dll.so and dxgi.dll.so are useless and produce errors when I'm trying to replace original libraries :
...
uild.w64_5\tests\dxgi\dxgi-factory.exe.so: malloc.c:2399: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
err:seh:call_stack_handlers invalid frame 7ffea8fc25c0 (0x132000-0x230000)
err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception.
[221151.875587] d3d11-triangle.[6933]: segfault at 366 ip 0000000000000366 sp 00007ffc3ed84bf8 error 14 in bash[55f36b668000+e4000]
So the question is: Is it possible to build WINE's native linux libraries to replace original ones? Or i'm doing this totally wrong and really need to configure crossdev environment w/ mingw32?
Here is the list of changes was made :
build-win64-wine.txt
[binaries]
c = '/usr/bin/winegcc'
cpp = '/usr/bin/wineg++'
ar = '/usr/bin/ar'
strip = '/usr/bin/strip'
exe_wrapper = 'sh'
[properties]
c_args = ['-m64', '-DNOMINMAX', '-DWINEBUILD']
c_link_args = ['-mwindows', '-lpthread']
cpp_args = ['-m64', '-DNOMINMAX', '-DWINEBUILD']
cpp_link_args = ['-mwindows', '-lpthread']
[host_machine]
system = 'linux'
cpu_family = 'x86_64'
cpu = 'x86_64'
endian = 'little'
actually -mwindows required only by tests/* and -lpthread by d3d11.dll.so and dxgi.dll.so
meson.build.wine
project('dxvk', ['c', 'cpp'], default_options : ['cpp_std=gnu++1z'])
cpu_family = target_machine.cpu_family()
dxvk_compiler = meson.get_compiler('cpp')
dxvk_include_path = include_directories('./include')
lib_d3d11 = dxvk_compiler.find_library('d3d11')
lib_dxgi = dxvk_compiler.find_library('dxgi')
lib_d3dcompiler_47 = dxvk_compiler.find_library('d3dcompiler')
lib_vulkan = dxvk_compiler.find_library('vulkan')
glsl_compiler = find_program('glslangValidator')
glsl_generator = generator(glsl_compiler,
output : [ '@[email protected]' ],
arguments : [ '-V', '--vn', '@BASENAME@', '@INPUT@', '-o', '@OUTPUT@' ])
subdir('src')
subdir('tests')
subdir('wine_utils')
Other quick-fixes:
diff --git a/src/d3d11/d3d11_include.h b/src/d3d11/d3d11_include.h
index 54d3a1d..beed12f 100644
--- a/src/d3d11/d3d11_include.h
+++ b/src/d3d11/d3d11_include.h
@@ -24,6 +24,7 @@
// For some strange reason, we cannot use the structures
// directly, although others from the same header work.
// Some structures are missing from the mingw headers.
+#ifndef WINEBUILD
typedef struct D3D11_FEATURE_DATA_THREADING {
BOOL DriverConcurrentCreates;
BOOL DriverCommandLists;
@@ -58,4 +59,9 @@ typedef struct D3D11_QUERY_DATA_PIPELINE_STATISTICS {
UINT64 HSInvocations;
UINT64 DSInvocations;
UINT64 CSInvocations;
-} D3D11_QUERY_DATA_PIPELINE_STATISTICS;
\ No newline at end of file
+} D3D11_QUERY_DATA_PIPELINE_STATISTICS;
+#endif
+
+#ifdef WINEBUILD
+typedef BOOL WINBOOL;
+#endif
diff --git a/src/d3d11/meson.build b/src/d3d11/meson.build
index e96ff92..62ae468 100644
--- a/src/d3d11/meson.build
+++ b/src/d3d11/meson.build
@@ -22,7 +22,7 @@ d3d11_src = [
'd3d11_util.cpp',
]
-d3d11_dll = shared_library('d3d11', d3d11_src,
+d3d11_dll = shared_library('d3d11.dll', d3d11_src,
name_prefix : '',
link_with : [ util_lib ],
dependencies : [ dxvk_dep, dxgi_dep, dxbc_dep ],
diff --git a/src/dxgi/dxgi_include.h b/src/dxgi/dxgi_include.h
index 87fd945..8720c8d 100644
--- a/src/dxgi/dxgi_include.h
+++ b/src/dxgi/dxgi_include.h
@@ -26,4 +26,8 @@
#define DXGI_RESOURCE_PRIORITY_NORMAL (0x78000000)
#define DXGI_RESOURCE_PRIORITY_HIGH (0xa0000000)
#define DXGI_RESOURCE_PRIORITY_MAXIMUM (0xc8000000)
-#endif
\ No newline at end of file
+#endif
+
+#ifdef WINEBUILD
+#define _countof(x) (sizeof(x)/sizeof(x[0]))
+#endif
diff --git a/src/dxgi/dxgi_output.cpp b/src/dxgi/dxgi_output.cpp
index a2a26dc..e96f82a 100644
--- a/src/dxgi/dxgi_output.cpp
+++ b/src/dxgi/dxgi_output.cpp
@@ -58,7 +58,7 @@ namespace dxvk {
::MONITORINFOEX monInfo;
monInfo.cbSize = sizeof(monInfo);
- if (!::GetMonitorInfo(m_monitor, &monInfo)) {
+ if (!::GetMonitorInfo(m_monitor, (MONITORINFO *)&monInfo)) {
Logger::err("DxgiOutput: Failed to query monitor info");
return E_FAIL;
}
@@ -86,7 +86,7 @@ namespace dxvk {
::MONITORINFOEX monInfo;
monInfo.cbSize = sizeof(monInfo);
- if (!::GetMonitorInfo(m_monitor, &monInfo)) {
+ if (!::GetMonitorInfo(m_monitor, (MONITORINFO *)&monInfo)) {
Logger::err("DxgiOutput: Failed to query monitor info");
return E_FAIL;
}
diff --git a/src/dxgi/meson.build b/src/dxgi/meson.build
index f58b132..dc0c2f7 100644
--- a/src/dxgi/meson.build
+++ b/src/dxgi/meson.build
@@ -9,7 +9,7 @@ dxgi_src = [
'dxgi_swapchain.cpp',
]
-dxgi_dll = shared_library('dxgi', dxgi_src,
+dxgi_dll = shared_library('dxgi.dll', dxgi_src,
name_prefix : '',
link_with : [ util_lib ],
dependencies : [ dxvk_dep ],
diff --git a/src/util/com/com_guid.h b/src/util/com/com_guid.h
index 510fd0c..ce80c2e 100644
--- a/src/util/com/com_guid.h
+++ b/src/util/com/com_guid.h
@@ -4,7 +4,12 @@
#include "com_include.h"
+#ifdef WINEBUILD
+#define DXVK_DEFINE_GUID(iface) \
+ template<> inline GUID const& __wine_uuidof<iface> () { return iface::guid; }
+#else
#define DXVK_DEFINE_GUID(iface) \
template<> inline GUID const& __mingw_uuidof<iface> () { return iface::guid; }
+#endif
std::ostream& operator << (std::ostream& os, REFIID guid);
EDIT: typo useful/useless
Pretty much the title. I wasn't able to get hold of a trace yet. With current version it displays a black screen.
The game boots normally, the menus are rendered without issues, however upon loading, only the HUD is rendered correctly, on a black background. (Using latest master)
Saints Row IV (also happens with Saints Row The Third). Confirmed regardless of settings, went from high+4xmsaa to low+noaa, with the same results.
The game opens, sits on a loading screen for a while, and then crashes.
Mad Max, DXVK 05f0008
Wine proper has the same issue for whatever it's worth: https://bugs.winehq.org/show_bug.cgi?id=42695
DXVK 05f0008
https://www.pathofexile.com/
Also available on steam if that's of interest: http://store.steampowered.com/app/238960/Path_of_Exile/
Everything low with:
[DISPLAY]
directx_version=11
The game defaults to dx11 on Windows 7+ afaik.
Running $ apitrace trace -o poe.trace wine /path/to/PathofExile_x64.exe
did not generate a trace.
The low latency requirements of VR and the tight binding around hardware make running a full VR software stack inside Wine infeasible. Thankfully, we have a native, official version of SteamVR.
The problem is connecting an app inside Wine to the native SteamVR. I've tried, and met limited success (with my wrapper lib, OpenGL applications generally work), but hit a brick wall when trying to interface a Direct3D application with a runtime that inherently, due to its native platform, has no concept of Direct3D. I could not think of a solution that did not involve extensive modification of Wine itself, as encapsulation completely prevents access to the underlying OGL resources.
And even if I did manage something, I'd have to do it all over again for DXVK.
(Quickly: OpenVR is the API, and SteamVR is the runtime. Not really sure why there's a distinction but it is what it is.)
So, this is more of an RFC for anything, on how to "jailbreak" submitted eye textures from OpenVR applications so they can be submitted to the native SteamVR. I can think of a few theoretical ways to do it:
Thoughts? Other ideas?
Hi,
Excellent work tho, how do you plan to map the hlsl register into vulkan descriptor set?
Or you plan to have one unique descriptor set for shader?
note other games are working with the same dxvk dxgi dll's so not a problem..
seems wants:
warn: DxbcCompiler: Unhandled instruction: DxbcOpcode::ImmAtomicCmpExch
err: DxbcCompiler: Unhandled PS SV input: DxbcSystemValue::PrimitiveId
d3d11.log:
AI_d3d11.log
dxgi.log:
AI_dxgi.log
seems needs:
warn: D3D11DeviceContext::QueryInterface: Unknown interface query
warn: DxbcCompiler: Unhandled opcode class: DxbcOpcode::CountBits
err: D3D11DeviceContext::ClearUnorderedAccessViewUint: Not implemented
warn: DxbcCompiler: Unhandled instruction: DxbcOpcode::AtomicCmpStore
Hi,
afaik, the script is creating links from d3d11.dll and dxgi.dll in system32 and syswow64 to the correpsonding d3d11_vk.dll and dxgi_vk.dll files.
Sadly this is not enough,
d3d11_vk.dll wants to load dxgi_vk.dll . So if you only have dxgi.dll in system32or syswow64, dxvk will not work and the log will complain about : cannot load d3d11.dll cause dxgi_vk.dll is missing.
As long as d3d11_vk.dll wants to load dxgi_vk.dll a workaround would be to create an extra symlink for dxgi_vk.dll . If there are some cross dependencies, also linking d3d11_vk.dll directly would help.
Btw, i would like to improve your script to have the possibility to rollback the override changes as well but i have no idea how meson works, Would be a diff useful for you ?
Cu,
Christian
Hi,
just wanted to see how far some of first AAA D3D11 games (from 2013 or so) would run with your wrapper..
in the process gathered the logs and I know you doesn't asked for but anyway I'm providing here to keep reference for the future..
Please ask if you need more games logs..
I'm removing printing same entry in log multiple times, and also note I will not repeat previously log entries from a previous game in next game to keep error list smaller..
state seems not bad (I mean it doesn't need more than new 12 DxBC opcodes and below 10 new API functions to implement to most of these errors disappear)..
the logs are until game closes/hangs so maybe they need more to run..
DXVK compiled from master 12 January 2018..
Bioshock Infinite:
DXGI log:
DxgiFactory::MakeWindowAssociation: Ignoring flags
DxgiAdapter: DXGI_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
DxgiSwapChain::SetFullscreenState: Not implemented
D3D log:
D3D11Device: Unsupported query type: 3
D3D11Device: Unsupported query type: 0
DxbcCompiler: Unsupported operand type declaration: DxbcOperandType::OutputDepth
DxbcCompiler: Unhandled operand type: DxbcOperandType::OutputDepth
DxbcCompiler: Unhandled opcode class: DxbcOpcode::Swapc
DxbcCompiler: Unhandled opcode class: DxbcOpcode::DclIndexRange
DxbcCompiler: Unhandled opcode class: DxbcOpcode::Gather4
DxbcCompiler: Unhandled opcode class: DxbcOpcode::Gather4C
DxbcCompiler: Unhandled PS SV input: DxbcSystemValue::IsFrontFace
D3D11Device: No such vertex shader semantic: COLOR0
D3D11Device: No such vertex shader semantic: TEXCOORD0
D3D11Device: No such vertex shader semantic: TEXCOORD1
D3D11Device: No such vertex shader semantic: TEXCOORD2
D3D11Device: No such vertex shader semantic: TEXCOORD3
D3D11RasterizerState: Depth clamp not supported
D3D11: Invalid blend factor: 0
D3D11: Invalid blend op: 0
Tomb 2013
DXGI
DxgiDevice::SetMaximumFrameLatency: Stub
D3D
DxbcCompiler: Unhandled opcode class: DxbcOpcode::LdMs
D3D11Query: Stub
D3D11Device::CreateHullShader: Not implemented
D3D11Device::CreateDomainShader: Not implemented
DxbcCompiler: Unhandled PS SV input: DxbcSystemValue::IsFrontFace
D3D11RasterizerState: Depth clamp not supported
D3D11DeviceContext::IAGetIndexBuffer: Not implemented
D3D11DeviceContext::IAGetVertexBuffers: Not implemented
Meto LL
DXGI
DxgiOutput::FindClosestMatchingMode: Not implemented
D3D
D3D11Device::CreatePredicate: Not implemented
DxbcCompiler: Unhandled opcode class: DxbcOpcode::SampleB
DxbcCompiler: Unhandled VS SV output: DxbcSystemValue::ClipDistance
DxbcCompiler: Unhandled opcode class: DxbcOpcode::DclStream
DxbcCompiler: Unhandled opcode class: DxbcOpcode::EmitStream
DxbcCompiler: Unhandled opcode class: DxbcOpcode::CutStream
DxbcCompiler: Unsupported operand type declaration: DxbcOperandType::OutputDepthGe
DxbcCompiler: Unhandled operand type: DxbcOperandType::OutputDepthGe
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.