Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dungeon Siege 2 invisible mouse cursor #3020

Closed
Blisto91 opened this issue Oct 31, 2022 · 10 comments · Fixed by #4302 or #4670
Closed

Dungeon Siege 2 invisible mouse cursor #3020

Blisto91 opened this issue Oct 31, 2022 · 10 comments · Fixed by #4302 or #4670
Labels

Comments

@Blisto91
Copy link
Contributor

Blisto91 commented Oct 31, 2022

In Dungeon Siege 2 the mouse cursor is invisible with dxvk. Work with wined3d.
Haven't found a config option yet that affects it.

Software information

Dungeon Siege 2

System information

  • GPU: R9 380
  • Driver: days old mesa-git
  • Wine version: Wine-GE 7-32
  • DXVK version: master, 1.10.3 & 1.5

Apitrace file(s)

https://mega.nz/file/5wwW0BRK#zpXHk6UPV-wQJKSa6zAg6yjGVgsNJxZwkHUxJaclMjM
Reproduces in the trace

Log files

DungeonSiege2_d3d9.log

@K0bin K0bin added the d3d9 label Oct 31, 2022
@Blisto91
Copy link
Contributor Author

Blisto91 commented Oct 31, 2022

As @DadSchoorse pointed out this is probably the line of interest 😁

warn:  D3D9DeviceEx::SetCursorProperties: Software cursor not implemented.

@WinterSnowfall
Copy link
Contributor

Apparently this is a problem on more recent versions of Windows as well. Have you tried this fix? Alternatively, I see people have also got it working using fullscreen=false + setting their fullscreen rez as launch parameters (aka poor man's borderless fullscreen).

@Blisto91
Copy link
Contributor Author

Blisto91 commented Nov 1, 2022

I have not tried that 😱

@Blisto91
Copy link
Contributor Author

Blisto91 commented Nov 1, 2022

Apparently this is a problem on more recent versions of Windows as well. Have you tried this fix? Alternatively, I see people have also got it working using fullscreen=false + setting their fullscreen rez as launch parameters (aka poor man's borderless fullscreen).

Didn't help when launching the one called DungeonSiege2_steam.exe provided with the fix (which was same size as gog exe and only one that could launch game)
But yes cursor appears when not in fullscreen

@WinterSnowfall
Copy link
Contributor

But yes cursor appears when not in fullscreen

Software cursor in fullscreen memes probably... saw the same kind of behavior with Age of Mythology & dxvk, but luckily there's a built-in config hack (in the game's own config files) to enable hardware cursor on Nvidia. It just doesn't apply it automatically to anything newer than a GeForce 3 (lol)... but it can be enabled manually.

@Blisto91
Copy link
Contributor Author

Blisto91 commented Jul 7, 2024

See AlpyneDreams#202 for another game that needs software cursor. Don't think there is a need for a separate issue.

@GenesisFR
Copy link

So I tried to use dxvk on Windows to fix the missing mouse cursor issue out of curiosity (I already know other ways to make it visible), however the cursor shows up for a split second at times and I can't for the life of me figure out why my game is zoomed in on the main menu no matter which resolution I use.

I even tried to lower my desktop resolution to 1024x768 as the game's main menu uses that as a fixed resolution but the cursor is still barely showing up, therefore the game is unplayable.

Has anyone ever managed to make it run on Windows?

As I said, it's just out of curiousity therefore not something important. For now I advise people to use wineD3D or hex-edited executables.

@WinterSnowfall
Copy link
Contributor

WinterSnowfall commented Feb 4, 2025

Has anyone ever managed to make it run on Windows?

I don't recall if @Blisto91 tested it on Windows, but since the software cursor implementation is very much OS agnostic, I'd expect it to work just as well as it does on Linux.

DS2

That being said, perhaps dxvk.allowFse = True is something to try.

P.S.: There's no specific config required to enable it, dxvk will simply use the software cursor path when the cursor bitmap size exceeds 32x32 (as set by the calling application).

I even tried to lower my desktop resolution to 1024x768 as the game's main menu uses that as a fixed resolution

Pretty sure the game actually uses 800x600 in the main menu.

@GenesisFR
Copy link

I tried dxvk.allowFse = True but that didn't make a difference. After closer inspection, the cursor actually stays locked in the top left corner, regardless of everything I try.

@WinterSnowfall
Copy link
Contributor

WinterSnowfall commented Feb 4, 2025

I tried dxvk.allowFse = True but that didn't make a difference. After closer inspection, the cursor actually stays locked in the top left corner, regardless of everything I try.

@Blisto91 has graciously helped to reproduce what you are seeing on Windows and I think I know what the problem is. At least I have come up with a rather crude fix that seems to make the cursor work just fine. I'll have to think about how it can be fixed more elegantly, and we should have something functional even on Windows for the next release. Thanks for bringing it up!

P.S.: Regarding the screen size issues, those are less actionable as they're most likely due to native (Vulkan) drivers. Blisto didn't get a zoomed in menu on normal fullscreen startup, however he did get it if alt+tab-ing out and back in. Needless to say, this doesn't happen on Linux - however alt+tab-ing just crashes the game 😅.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
4 participants