VOGONS


First post, by XJDHDR

User metadata
Rank Newbie
Rank
Newbie

Are there any plans to add an option to render games inside a borderless window?

I have tried to have dgVoodoo run the game in windowed mode then use a borderless window script I wrote to remove the border but it doesn't seem to work for long. The script makes the game borderless for maybe 2 seconds or so but then it reverts into a non-borderless window.

My creations and essays:
https://xjdhdr.gitlab.io/

Reply 1 of 10, by ZellSF

User metadata
Rank l33t
Rank
l33t

"Disable Alt-Enter to toggle screen state" needs to be either off or on (forgot which) for dgVoodoo2 to not do that...

I want a borderless fullscreen mode too, I currently use a similar workaround to play Emperor: Battle for Dune (which would have audio stutter when switching to cutscenes because of mode switch) and Outlaws (which just has too long transition time to cutscenes because of mode switch). Though I'm guessing you don't want it for smoother mode switches.

Reply 2 of 10, by Dege

User metadata
Rank l33t
Rank
l33t

Yes, I'd like to add 'Fake fullscreen' as an option. Though the drawback of fake fullscreen is the fact that feature of scaling the output on driver side is lost. Scaling would be done by the wrapper in all cases, meaning possible mouse issues, etc.
On the other hand, as a first step, it'd come handy for games (currently not working through dgVoodoo) that places child windows on top of the rendering window.

Reply 3 of 10, by XJDHDR

User metadata
Rank Newbie
Rank
Newbie
ZellSF wrote:

"Disable Alt-Enter to toggle screen state" needs to be either off or on (forgot which) for dgVoodoo2 to not do that...

If I have that option switched off, dgVoodoo keeps the window border despite my script's best efforts. Turning it on seems to be what I want but in my copy of Need for Speed: Porsche 2000 at least, when the game is not in a race, the game is either in fullscreen mode or a window that has been stretched to fit my screen's dimensions. When I start a race, the game then switches to using a window that is sized to fit the resolution I set in the game's options menu. The window also seems to be borderless despite my script not touching it. I'll have to do some more tests to see what is going on here.

ZellSF wrote:

I want a borderless fullscreen mode too, I currently use a similar workaround to play Emperor: Battle for Dune (which would have audio stutter when switching to cutscenes because of mode switch) and Outlaws (which just has too long transition time to cutscenes because of mode switch). Though I'm guessing you don't want it for smoother mode switches.

That would be an advantage but the two main reasons I prefer borderless window mode in games is to make it easier to Alt-Tab to another window (especially for games that don't like losing focus) and also because I've noticed a few older games that mangle my desktop in some way if they run in fullscreen (for example, Need for Speed: Porsche 2000 resizes all of my open windows to fit in a 640x480 resolution if run in fullscreen).

Dege wrote:

Yes, I'd like to add 'Fake fullscreen' as an option. Though the drawback of fake fullscreen is the fact that feature of scaling the output on driver side is lost. Scaling would be done by the wrapper in all cases, meaning possible mouse issues, etc.
On the other hand, as a first step, it'd come handy for games (currently not working through dgVoodoo) that places child windows on top of the rendering window.

Does this loss of driver based scaling also happen if the game runs in a regular window as you can currently do in dgVoodoo?

My creations and essays:
https://xjdhdr.gitlab.io/

Reply 4 of 10, by Dege

User metadata
Rank l33t
Rank
l33t
XJDHDR wrote:

Does this loss of driver based scaling also happen if the game runs in a regular window as you can currently do in dgVoodoo?

Yes. Driver based scaling can take place only in (true) fullscreen mode. Its advantage is that game window doesn't include the side black bars physically which is workarounded by dgVoodoo otherwise (mouse).
Fake fullscreen is windowed mode where the window is stretched all over the screen, so the same mouse glitches appear as when using a scaling mode with scaling done on the wrapper side.

Reply 5 of 10, by XJDHDR

User metadata
Rank Newbie
Rank
Newbie
Dege wrote:
XJDHDR wrote:

Does this loss of driver based scaling also happen if the game runs in a regular window as you can currently do in dgVoodoo?

Yes. Driver based scaling can take place only in (true) fullscreen mode. Its advantage is that game window doesn't include the side black bars physically which is workarounded by dgVoodoo otherwise (mouse).
Fake fullscreen is windowed mode where the window is stretched all over the screen, so the same mouse glitches appear as when using a scaling mode with scaling done on the wrapper side.

I have a small correction to make here. I am not requesting "fake fullscreen" in dgVoodoo but rather I am asking for Borderless Window support. This would be exactly the same as Windowed mode except with the window decorations removed. I'm not interested in a Borderless Windowed mode that also stretches the window to fill the entire screen; I would much rather use the game's built-in resolution settings to achieve that as opposed to using dgVoodoo's scaling options.

My creations and essays:
https://xjdhdr.gitlab.io/

Reply 7 of 10, by XJDHDR

User metadata
Rank Newbie
Rank
Newbie

As I have already said in the OP:

XJDHDR wrote:

I have tried to have dgVoodoo run the game in windowed mode then use a borderless window script I wrote to remove the border but it doesn't seem to work for long. The script makes the game borderless for maybe 2 seconds or so but then it reverts into a non-borderless window.

Besides, native support is always better than using an external program to hack in that feature.

My creations and essays:
https://xjdhdr.gitlab.io/

Reply 8 of 10, by ZellSF

User metadata
Rank l33t
Rank
l33t
XJDHDR wrote:
ZellSF wrote:

"Disable Alt-Enter to toggle screen state" needs to be either off or on (forgot which) for dgVoodoo2 to not do that...

If I have that option switched off, dgVoodoo keeps the window border despite my script's best efforts. Turning it on seems to be what I want but in my copy of Need for Speed: Porsche 2000 at least, when the game is not in a race, the game is either in fullscreen mode or a window that has been stretched to fit my screen's dimensions. When I start a race, the game then switches to using a window that is sized to fit the resolution I set in the game's options menu. The window also seems to be borderless despite my script not touching it. I'll have to do some more tests to see what is going on here.

With "Application controlled fullscreen/windowed state" set to off and "Disable Alt-Enter to toggle screen state" set to on and this simple test AHK script:

Loop
{
Sleep,1
WinMove,ahk_exe Porsche.exe,,0,0,2560,1440
}

It worked fine for me, so there seems to be something wrong with your borderless window script/utility.

XJDHDR wrote:

I have a small correction to make here. I am not requesting "fake fullscreen" in dgVoodoo but rather I am asking for Borderless Window support. This would be exactly the same as Windowed mode except with the window decorations removed. I'm not interested in a Borderless Windowed mode that also stretches the window to fill the entire screen; I would much rather use the game's built-in resolution settings to achieve that as opposed to using dgVoodoo's scaling options.

If Dege wants to do it properly, he needs to implement aspect correction, which would requiring altering the window dimensions to add in black bars (if it's a 1920x1440 game you would need to draw a 2560x1440 window and use the 320 left and rightmost columns to draw black bars). So it would be aspect ratio correct, but the window (window, not game!) would still be stretched all over the screen.

Reply 9 of 10, by Dege

User metadata
Rank l33t
Rank
l33t
XJDHDR wrote:

I have a small correction to make here. I am not requesting "fake fullscreen" in dgVoodoo but rather I am asking for Borderless Window support. This would be exactly the same as Windowed mode except with the window decorations removed. I'm not interested in a Borderless Windowed mode that also stretches the window to fill the entire screen; I would much rather use the game's built-in resolution settings to achieve that as opposed to using dgVoodoo's scaling options.

I was about to ask why borderless windowed mode makes sense if the window cannot be moved.
But, right, for a case when resolution is set to the desktop res in the game with centered window position it makes sense.
I'll try to add a new option into GeneralExt for that in the next patch version.