Hardware mouse cursor not displaying in fullscreen on DesktopGL 3.7

I’m not sure if anyone else is having this issue or not, but I certainly am and I’ve been trying to find a solution for a long time. My game has a virtual Linux-esque OS inside it and thus requires a mouse cursor otherwise gameplay suffers.

I used to have the game in MonoGame a few years ago but switched to UE4 a while back and I’m porting it back over. One of the issues I am facing is that, no matter what I do, I can’t get the hardware mouse cursor to display in Fullscreen. I had this issue even in the original game on MonoGame 3.6 and it seems isolated to DesktopGL platforms from what I’ve found during research.

I have IsMouseVisible (or whatever it’s called, can’t look at the game’s code right now since I’m at school and have to leave soon) set to true, I’ve tried doing borderless fullscreen by disabling hardware mode switching and setting Window.IsBorderless to true…but it was still doing hardware mode-switching anyway as if my code was telling me to fornicate myself. Argh.

I’ve seen this issue occur in Hacknet as well, which although it isn’t written in MonoGame, FNA and MG are still based on XNA and are still similar. I also notice this issue in other games like Cities XXL, various PopCap games, Minecraft, and others but only if the Windows magnifier is open when the game boots. In my case, it doesn’t matter whether Magnifier is opened or not.

For context, I am using the default Windows cursor scheme but have pointer trails enabled for my vision. I also have my system font size at 150% for similar reasons. I have not tried with pointer trails disabled, but I had the same issue with 3.6 and my older version of my game. The solution to the issue back then was “steal a windows 95 pointer texture and draw that in-game” but that’s both unethical and doesn’t allow pointer trails :slight_smile:

Anyone else having thiss issue in DesktopGL 3.7? Anyone not having the issue or have you fixed it/worked around it somehow? Thanks in advance. :slight_smile:

I had this same question and could not find help for it. I’m using MonoGame 3.8 and got it to work like this:

IsMouseVisible = true;
Mouse.SetCursor( MouseCursor.Arrow );//<--Add this line