Jump to content

  • Log In with Google      Sign In   
  • Create Account

We're offering banner ads on our site from just $5!

1. Details HERE. 2. GDNet+ Subscriptions HERE. 3. Ad upload HERE.


Fake fullscreen


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
6 replies to this topic

#1 Tape_Worm   Crossbones+   -  Reputation: 1800

Like
0Likes
Like

Posted 01 December 2011 - 01:26 PM

I had the idea to use the fake fullscreen mode (that is, a window with no window border, topmost and maximized) last night after my graphics library decided to start being a huge jerk when switching between windowed and fullscreen mode. However, I'm undecided when it comes to whether I should implement it.


Most people have displays with a fixed resolution, so I don't see the advantage to having a full on video mode transition for these devices. However, what kind of a performance hit would people get? Let's say I've got a 1920x1200 display. If I go to the full fake screen, is the fillrate going to cause a massive hit on lower end cards? Is this hit only applicable to drawing to backbuffer that is sized 1920x1200? Or if I had a 640x480 backbuffer and had the API stretch it to fit the "fullscreen" display, would it be an equal performance penalty?

FYI, I'm using Direct3D 11 for the back end API, but I figured this is broader than the API. But, to get on the topic of D3D 10/11, there's an AllowModeSwitch flag for the swap chain. When you set this flag, it keeps the video mode, but will resize the back buffer to what I've requested. Wouldn't this be a similar thing to the fake fullscreen mode?

Lower than native resolution is going to be ugly no matter how you slice it. So how it looks is not an issue for me.

Anyone want to share thoughts on this?

Sponsor:

#2 Erik Rufelt   Crossbones+   -  Reputation: 3538

Like
1Likes
Like

Posted 01 December 2011 - 02:19 PM

I like fake fullscreen as an option. Sometimes VSync is not perfect in window mode, so a true fullscreen option is also good to have.
Stretching a smaller backbuffer to fit a larger screen is usually pretty much free, so I wouldn't worry about that. Actually switching monitor resolutions should always be optional in my opinion, as it can mess with multiple monitors and sometimes causes background windows to resize.

#3 Tape_Worm   Crossbones+   -  Reputation: 1800

Like
0Likes
Like

Posted 01 December 2011 - 03:14 PM

Yeah, I hadn't considered vsync in windowed mode.

The issue I ran into with my library was when switching from full screen back to windowed. The damn thing refused to actually revert back to the original video mode until I forced it back myself. This was code that had been working for some time and just decided to not work, so I started wondering if true fullscreen mode was worth the hassle.

I am however concerned about how the library will work with multiple monitor setups in fullscreen. I had a lot of trouble getting that working like I wanted, and given that the previous fullscreen state switch code decided to break, I have my concerns that the multimon stuff will break too (unfortunately I can't test this right now, as I don't have a multiple monitor setup to test with).

#4 Hodgman   Moderators   -  Reputation: 31210

Like
0Likes
Like

Posted 01 December 2011 - 04:11 PM

As of Win7/Vista, the performance of Windowed 3D apps has improved considerably (compared to windowed vs fullscreen apps on XP).

In Starcraft 2, the graphics options gives you the choice of Windowed, Fullscreen and Fullscreen (windowed). I've not really noticed any difference between fullscreen and the "fake" version, except the (lack of) video mode switching.

#5 swiftcoder   Senior Moderators   -  Reputation: 10242

Like
1Likes
Like

Posted 01 December 2011 - 04:18 PM

I've not really noticed any difference between fullscreen and the "fake" version, except the (lack of) video mode switching.

There is also the fringe benefit that you can alt-tab much faster in the 'fake' version. And you can float your AIM/gchat/skype over the 'fake' version - in general these two features are well worth any performance hit I might experience.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#6 Radikalizm   Crossbones+   -  Reputation: 2943

Like
1Likes
Like

Posted 01 December 2011 - 06:52 PM

Keep in mind though that people with SLI or Crossfire setups will only be able to use a single card when running in windowed mode since there's no support for windowed applications for neither of these technologies as far as I know

I gets all your texture budgets!


#7 Tape_Worm   Crossbones+   -  Reputation: 1800

Like
0Likes
Like

Posted 02 December 2011 - 06:41 AM

Keep in mind though that people with SLI or Crossfire setups will only be able to use a single card when running in windowed mode since there's no support for windowed applications for neither of these technologies as far as I know


Ah, well now, that makes a big difference. I don't have a crossfire/sli setup to test on so I definitely wouldn't have known this. Thanks.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS