http://bugs.winehq.org/show_bug.cgi?id=60189 --- Comment #4 from Francisco Casas <fcasas@codeweavers.com> --- I realized that this is not a regression. The error indeed was introduced once we started preferring native d3dx9.dll over built-in d3dx9.dll but I hadn't realize that I had a native d3dx9.dll in my prefix because of another game. The game is using the native compiler through this dll, which contains the legacy D3DXCompileShader() function. Still, we have to fix it. After digging into it, I concluded that we need to generate the same instructions as fxc does for the mul() intrinsic, which can either be dp4/add/mul/mads depending on whether the arguments are row_major or column_major. This is because the game renders the objects twice with several variants of the same big shader and expects to get exactly the same depth results for all of them. I introduced some relevant tests in the first patch of: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/2211 While this MR introduces dot product vectorization, this is not enough to fix the bug, since we also need to implement different mul() specializations and somehow the ability to propagate the majority of matrix arguments into function calls. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.