Fadeout effect when switching modes in fullscreen on OSX

First of all, has anyone seen this effect before? It occurs in
fullscreen mode in OSX, when one does a mode change. Instead of the
quick change that occurs in Linux and Windows, the whole screen fades
out, and then back in again. I assume it’s an OSX/SDL thing, since the
same code doesn’t do that anywhere else.

What is this effect, and is it possible to disable it? Or do the users
have to live with it? I ask, since the project I’m working on (an
emulator) has a built-in debugger, and switching from emulation mode to
debugger is slower than necessary, especially when one is developing a
game.

Thanks for any info,
Steve

Hello Stephen,

Monday, December 11, 2006, 8:56:13 PM, you wrote:

First of all, has anyone seen this effect before? It occurs in
fullscreen mode in OSX, when one does a mode change. Instead of the
quick change that occurs in Linux and Windows, the whole screen fades
out, and then back in again. I assume it’s an OSX/SDL thing, since the
same code doesn’t do that anywhere else.

It’s an OS X thing. All OS X stuff that goes fullscreen does this.

What is this effect, and is it possible to disable it? Or do the users
have to live with it?

As far as I can tell, you have to live with it.–
Best regards,
Peter mailto:@Peter_Mulholland

Stephen Anthony wrote:

Instead of the quick change that occurs in Linux and Windows, the
whole screen fades out, and then back in again.

What is this effect, and is it possible to disable it?

The black screen is there to hide the flickering that the resolution
switch would otherwise cause, and the fading to and from it is there to
make it easier on the eyes.

There’s no way for a library user to disable this (I guess it didn’t
occur to anyone that anyone would want to do this), but you can of
course modify SDL to get rid of it. The code is in
src/video/quartz/SDL_QuartzVideo.m (search case-insensitively for "fade"
to catch all places, or have a look at how the current code was
introduced:
http://libsdl.org/cgi/viewvc.cgi/trunk/SDL/src/video/quartz/SDL_QuartzVideo.m?r1=1885&r2=1884&pathrev=1885&diff_format=l).

See also the discussion that led to the current implementation:
http://thread.gmane.org/gmane.comp.lib.sdl/25530/.

-Christian