protonscr

[d3d9] Black ground textures in some zones in Everquest

dxvkclosed d3d9
doitsujin/dxvk#1825 · opened 2020-11-20 by jporterf · updated 2022-01-06 · 10 comments · github
Jjporterf 2020-11-20 github

The main game, some areas (newly texture starting zones and so on) have black textures with green lines at the seams for the textures

Software information

Everquest Live from Daybreak Games

System information

-GPU: Nvidia Geforce 1650 Super
-Driver: 455.26.01
-Wine version: wine-5.19-88-gf4a66ad257d (Staging)
-DXVK version: dxvk-mingw-git 1.7.2.r7.g6a10c81d-1
-Kernel version 5.9.0-1-tkg-cfs### Apitrace file(s)

ApiTrace

https://drive.google.com/file/d/1We7EJfDzm3tXxCbCtSxJLFL3CunaudDi/view?usp=sharing

Log files

https://drive.google.com/file/d/1L0oUhRWoHGlOpIoxSb7o-I2AvmkWMH49/view?usp=sharing

HHK47196 2020-12-23 github

It's caused by not supporting R8G8B8, this fixes it for me anyways, no idea if it's right or not:

diff --git a/src/d3d9/d3d9_format.cpp b/src/d3d9/d3d9_format.cpp
index a51faba7..965953b1 100644
--- a/src/d3d9/d3d9_format.cpp
+++ b/src/d3d9/d3d9_format.cpp
@@ -7,7 +7,11 @@ namespace dxvk {
     switch (Format) {
       case D3D9Format::Unknown: return {};
 
-      case D3D9Format::R8G8B8: return {}; // Unsupported
+      case D3D9Format::R8G8B8: return {
+        VK_FORMAT_R8G8B8_UNORM,
+        VK_FORMAT_R8G8B8_SRGB,
+        VK_IMAGE_ASPECT_COLOR_BIT
+      };
 
       case D3D9Format::A8R8G8B8: return {
         VK_FORMAT_B8G8R8A8_UNORM,
@@ -554,4 +558,4 @@ namespace dxvk {
         || (supported.optimalTilingFeatures & Features) == Features;
   }
 
-}
\ No newline at end of file
+}

@Joshua-Ashton
Is there a reason it's marked "unsupported" in the code?

KK0bin maintainer 2020-12-23 github

A lot of GPUs don't support that format properly. As far as I remember, even Nvidia and AMD Windows D3D9 drivers don't support it either.

Mmisyltoad 2020-12-23 github

I wonder if it uses it as a scratch buffer or systemmem. I'll take a look later.

Ssaren42 2021-10-21 github

I wonder if it uses it as a scratch buffer or systemmem. I'll take a look later.

Have you had a chance to take a look at this? I'm having that black texture issue as well.

DDadSchoorse 2021-10-22 github

Did you retest with 1.9.2? https://github.com/doitsujin/dxvk/pull/2258 has fixed some R8G8B8 issues.

Ssaren42 2021-10-22 github

I will try that again, I may of mixed up the files, so I'll re-DL 1.9.2 again to test it specifically, thanks.

Ssaren42 2021-10-25 github

Ok, looks like I did mix up the D3D9.dll files, and downloading a fresh 1.9.2 and copying the dll over, did fix the problem, fantastic!

Bboludoz 2022-01-06 github

I found some problems, first I thank you for your work and second, there are some problems with this game, when I try to fight the game just crashes.

Bboludoz 2022-01-06 github
Ssaren42 2022-01-06 github

That is not related to this problem, open a new issue, since it's not even the same game, let alone the same issue.

Upstream links

DLLs