misyltoad / d9vk

A Direct3D9 to Vulkan layer using the DXVK backend. [Upstreamed to DXVK]
https://github.com/doitsujin/dxvk
zlib License
839 stars 42 forks source link

World of Warcraft Wrath of The Lich King : No Cursor and Texture Problem #174

Closed XEmpty closed 4 years ago

XEmpty commented 5 years ago

Game have problem with correct load a texture (on spell bars (interface) and on some object i see black ).

And most problem for me it's no cursor in game. If enable / disable hardware cursor ( still don't work ).

I test game with d3d9.dll from dgvoodo and it's works but with less performance.

Software information

World of Warcraft 3.3.5a (Lich King)

System information

Apitrace file(s)

Log files

Edit : Game running great expect this 2 bugs... Even dgvoodo can't make smooth game run like pure d9vk. Will be nice to quick solve this problems. I can testing patches any time.

matsokolowski commented 5 years ago

I have the same problem.

neVERberleRfellerER commented 5 years ago

Is this duplicate of https://github.com/Joshua-Ashton/d9vk/issues/17 (it mentions missing cursor and missing sprites) ?

XEmpty commented 5 years ago

Yea, like on screen. Missing cursor & Sprites.

XEmpty commented 5 years ago

I saw something... when i have enabled hardware cursor then mouse point it's on top left corner and is pin here. When i disable hardware cursor then i can move mouse normal, but it's "invisible" , sprites on spell bars to, and some things like glow on target, minimap, buffs, dbeuffs and maybe many more. Maybe it's only problem with shaders? Software hardware work but isn't visible. Like anything else .

All isn't completed invisible . Some work some don't.

misyltoad commented 5 years ago

Implemented hardware cursor: https://github.com/Joshua-Ashton/d9vk/commit/1e8fdd59d2f3e8266af469319a7543741b035299

XEmpty commented 5 years ago

No sprites but cursor working good. (using last commit)

image

misyltoad commented 5 years ago

Not sure what you mean by no sprites, can you point that out to me?

XEmpty commented 5 years ago

Sure, if u see on above screenshot. Black square on bottom bars and on right side a items with number . Here must be icon. Like on rest of things . But on d9vk they don't display correct. Sometimes some of them looks like empty square, but sometimes it's incorrect icon from different things...

Problem :

Left Side (Spell Book)

D9VK-1 OPENGL-1

Right Top Corner (Spell Buffs)

D9VK-2 OPENGL-2

Cursor on Spell Bar (Bottom)

D9VK-3 OPENGL-3

Aura isn't visible on D9VK (that glow circle on ground)

OPENGL-AURA

This is strange .

WoWScrnShot_070419_161614

And it's more problem with visuals. On some location it's black or different sky. I make for u more ss if u want. I don't know how to help u in best way.

Logs : Wow_d3d9.log Wow_d3d11.log Wow_dxgi.log

XEmpty commented 5 years ago

Icons are showing up after /reload when i put spells on bars. And icons from spell bar showing in spell book... strange.

Anyway this working only if on spell bar (bottom bar) isn't to many spells in. In another way some showing and some not.

It's working like limit of displaying those items.

Edit : Still don't work on last commit / release (d9vk-0.13) . But game work better vs Windows :+1: . But isn't playable in 100% without display icons.

Grixin commented 5 years ago

I can also verify the issue. With 0.13 release hardware cursor is present. However I am also missing spells on bars (not all). Some items in my bags are also black squares or invisible. Otherwise great performance. ~200fps at 1440p

Riesi commented 5 years ago

Here crborga's apitrace from #156, so that it doesn't get lost. It shows the the icon issue when replayed with d9vk: https://mega.nz/#!2h5GyAiA!Ef9C737YEY_XDQtKyAa2YKxubZ3_jfAwkAob9L3_t88

XEmpty commented 5 years ago

This i get after de-trace crborga's .trace (on my D9VK config )

@Joshua-Ashton

Full Log : d3dretrace_d3d9.log

Error in Log :


warn:  D3D9DeviceEx::SetRenderState: Unhandled render state 36
warn:  D3D9DeviceEx::SetLight: Stub
1237036 @0 IDirect3DSurface9::LockRect(this = 0x29725680, pLockedRect = &{Pitch = 4, pBits = 0x29e6db88}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1237036: warning: mismatch in Pitch: expected 4 but got 2
1241214 @0 IDirect3DSurface9::LockRect(this = 0x29725c40, pLockedRect = &{Pitch = 4, pBits = 0x29e98668}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1241214: warning: mismatch in Pitch: expected 4 but got 2
1241680 @0 IDirect3DSurface9::LockRect(this = 0x29726100, pLockedRect = &{Pitch = 4, pBits = 0x29ec3b28}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1241680: warning: mismatch in Pitch: expected 4 but got 2
1241727 @0 IDirect3DSurface9::LockRect(this = 0x29725f40, pLockedRect = &{Pitch = 4, pBits = 0x29eee608}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1241727: warning: mismatch in Pitch: expected 4 but got 2
1247169 @0 IDirect3DSurface9::LockRect(this = 0x297267c0, pLockedRect = &{Pitch = 4, pBits = 0x2a006928}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1247169: warning: mismatch in Pitch: expected 4 but got 2
1247216 @0 IDirect3DSurface9::LockRect(this = 0x29727300, pLockedRect = &{Pitch = 4, pBits = 0x2a031408}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1247216: warning: mismatch in Pitch: expected 4 but got 2
1252823 @0 IDirect3DSurface9::LockRect(this = 0x29727180, pLockedRect = &{Pitch = 4, pBits = 0x2a0bcca8}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1252823: warning: mismatch in Pitch: expected 4 but got 2
1252870 @0 IDirect3DSurface9::LockRect(this = 0x29727dc0, pLockedRect = &{Pitch = 4, pBits = 0x2a0e7788}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1252870: warning: mismatch in Pitch: expected 4 but got 2
1252917 @0 IDirect3DSurface9::LockRect(this = 0x2a12b440, pLockedRect = &{Pitch = 4, pBits = 0x2a112268}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1252917: warning: mismatch in Pitch: expected 4 but got 2
1258864 @0 IDirect3DSurface9::LockRect(this = 0x2a12bfc0, pLockedRect = &{Pitch = 4, pBits = 0x2a1e9b68}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1258864: warning: mismatch in Pitch: expected 4 but got 2
1258911 @0 IDirect3DSurface9::LockRect(this = 0x2a12c1c0, pLockedRect = &{Pitch = 4, pBits = 0x2a1b9c48}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1258911: warning: mismatch in Pitch: expected 4 but got 2
1258958 @0 IDirect3DSurface9::LockRect(this = 0x2a12c840, pLockedRect = &{Pitch = 4, pBits = 0x2a214648}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1258958: warning: mismatch in Pitch: expected 4 but got 2
1259690 @0 IDirect3DSurface9::LockRect(this = 0x2a12ccc0, pLockedRect = &{Pitch = 4, pBits = 0x2a27efc8}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1259690: warning: mismatch in Pitch: expected 4 but got 2
1266045 @0 IDirect3DSurface9::LockRect(this = 0x2a12ce00, pLockedRect = &{Pitch = 4, pBits = 0x2a321ae8}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1266045: warning: mismatch in Pitch: expected 4 but got 2
1272124 @0 IDirect3DSurface9::LockRect(this = 0x2a12d440, pLockedRect = &{Pitch = 4, pBits = 0x2a382ac8}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1272124: warning: mismatch in Pitch: expected 4 but got 2
1278858 @0 IDirect3DSurface9::LockRect(this = 0x2a12e1c0, pLockedRect = &{Pitch = 4, pBits = 0x2a3ce948}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1278858: warning: mismatch in Pitch: expected 4 but got 2
1432439 @0 IDirect3DSurface9::LockRect(this = 0x2a12f100, pLockedRect = &{Pitch = 4, pBits = 0x2a535a88}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1432439: warning: mismatch in Pitch: expected 4 but got 2
1438812 @0 IDirect3DSurface9::LockRect(this = 0x2a12f800, pLockedRect = &{Pitch = 4, pBits = 0x2a58ca68}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1438812: warning: mismatch in Pitch: expected 4 but got 2
1478641 @0 IDirect3DSurface9::LockRect(this = 0x2a12fbc0, pLockedRect = &{Pitch = 4, pBits = 0x2a5c6ce8}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1478641: warning: mismatch in Pitch: expected 4 but got 2
1921049 @0 IDirect3DSurface9::LockRect(this = 0x2a12f800, pLockedRect = &{Pitch = 4, pBits = 0x2a58ca68}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
1921049: warning: mismatch in Pitch: expected 4 but got 2
2107487 @0 IDirect3DSurface9::LockRect(this = 0x2a12c840, pLockedRect = &{Pitch = 4, pBits = 0x2a214648}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
2107487: warning: mismatch in Pitch: expected 4 but got 2
2287291 @0 IDirect3DSurface9::LockRect(this = 0x29726100, pLockedRect = &{Pitch = 4, pBits = 0x29ec3b28}, pRect = &{left = 0, top = 0, right = 1, bottom = 1}, Flags = 0x0) = D3D_OK
2287291: warning: mismatch in Pitch: expected 4 but got 2
Rendered 1747 frames in 20.9353 secs, average of 83.4476 fps
BLaDZer commented 5 years ago

Great news! Most of texture glitches successfully fixed in v0.30 except of minimap issue that still rendering outside the box.

How it looks with d9vk and how should be:

screenshot_2019-11-06_21-16-15 screenshot_2019-11-06_21-19-14

misyltoad commented 4 years ago

This seems to render fine now based on the trace, can people confirm?

BLaDZer commented 4 years ago

I can confirm that everything looks like it should be. Also minimap issue was fixed too (tested with DXVK 1.5).

Thank you very much @Joshua-Ashton !