All of that would be true, if I hadn't mentioned changing the resolution via DirectDraw.
When you change the resolution via DirectDraw, the actual screen resolution doesn't change, so it doesn't screw up desktop icons or your original settings. The only exception to this is with some dual screen setups. My dual-screen setup doesn't recover properly when returning from a changed resolution, whether it be DirectDraw or a temporary setting (other functionality available from SWF Studio that doesn't mess with desktop icons). But I'm used to that with any software that changes my resolution, like games. As for the jagged display, yes flat panels like to display at certain resolutions and get "fuzzy" at others. It's a give and take for this scenario, since you would get better performance but a fuzzyier image. And yes you do get better performance when you lower the screen res because the Flash Player, and the client system, has fewer pixels to push around. There's a reason why games change your screen resolution on you, and they do change it, via DirectDraw typically. Some games will let you set the screen resolution, and if you've got a kick-ass system you can play the game at very high res for even clearer display, but it does degrade performance. And when I mention games I don't mean Flash games, I mean PC games. As for the change res failing, when you attempt a res change in SWF Studio, via DirectDraw, and it fails, nothing happens, as in the call fails and the user's system doesn't change. DirectDraw doesn't change the refresh rate so cannot place the monitor in some messed up state. "Lucky for you, Flash can stretch to fill the screen. You just need to design for that by using vector art for the UI, although raster images look fine up to a point. Stretching Flash may cause a slight performance hit, but you can also code your application to dynamically resize itself based on the user's current resolution, which takes more finesse and planning." That's the point in changing the res - performance and keeping your SWF playing at the size you want while making it fullscreen. "Many users have flatscreen displays nowadays, which you can't or don't want to change resolutions on anyway." Really? I have not yet seen a flat panel display that won't let you change the resolution. While I don't claim to have seen all flat panels out there, I would bet this isn't true of most displays. "On others, it simply puts deadspace around the sides whilst making the visual area smaller" "800x600 is only 224x168 smaller than the average resolution these days. Try a nice border around the edge, black or a dark grey usually works best and after a few minutes most users won't even notice it anymore (much like the black bars at the top and bottom of widescreen movies)." That's rather contradictory. Yes, there is a setting for some screens (like laptops) that causes a res change to shrink the visual area, actually using the specified number of pixels rather than blowing up the image to fit the screen. What does that do? It's actually a great effect! It means you are playing your SWF at the smaller res, which means better performance, and the screen doesn't get fuzzy, and you get black borders for free! I don't see a downside here ... As Robin mentioned it's not a wise thing to do this for every project. It's only needed when you are looking for best performance in a project that demands it. And with proper planning you actually can account for special circumstances like screens that are not the typical 4:3 or dual displays. I don't think a blanket "don't do it" is particularly useful. Derek Vadneau -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Steven Sacks Sent: Friday, May 19, 2006 1:11 AM To: 'Flashcoders mailing list' Subject: RE: [Flashcoders] CD ROM dimensions? As a former Director programmer and desktop application developer, with 10 years experience in the industry, I have one thing to say to Flash developers who have little to no experience developing desktop applications. Changing a user's resolution without asking them first is a HUGE no-no. Don't do it. "Why shouldn't I change their resolution automatically?" I hear from the desktop application development neophytes. Such sweet innocence. Your incredulous cries shall be answered forthwith. First, many displays, laptop displays (read: flatscreens) in particular, only like to display at a specific resolution. Changing the resolution on these displays can result in unintended side effects. On some, everything gets extremely jagged, pixelated, blocky (i.e. crappy). On others, it simply puts deadspace around the sides whilst making the visual area smaller (oh the irony). Either way, your goal of making things look bigger and better for the user just got Punk'd ("Punk'd" used with express permission from Ashton Kutcher and MTV/Viacom, all rights reserved). Second, if the display in question (laptops and desktops) cannot display at the resolution you switch it to, a possible side effect is no display whatsoever. And since it wasn't done by the resolution control panel in Windows, there is no 15 second timeout if you can't see it anymore. This might not be an issue on braille monitors, but those account for 0% of your target audience (ed: and they don't exist). "Your application just broke my computer!" exclaims Irate User. Which segues nicely to the next point. Third, when you decrease a monitor's resolution, you completely screw up any icon arrangement on the desktop. If you're looking to completely irritate your userbase, congratulations you win! You've just caused the user to associate negative emotions to whatever you were trying to convey. Fourth, don't poop where you eat. People have their computers set up the way they like them. They like their resolution just how it is, thank you. Many users have flatscreen displays nowadays, which you can't or don't want to change resolutions on anyway. Fifth, even if you ask permission, many users don't know that any of the things I've mentioned will befall them should they agree to your request, and some users automatically click No to such things anyway. Lucky for you, Flash can stretch to fill the screen. You just need to design for that by using vector art for the UI, although raster images look fine up to a point. Stretching Flash may cause a slight performance hit, but you can also code your application to dynamically resize itself based on the user's current resolution, which takes more finesse and planning. The only time you should change the resolution without asking is in a kiosk enviroment where you control the machine and you're not going to piss anyone off or break something by doing so. 800x600 is only 224x168 smaller than the average resolution these days. Try a nice border around the edge, black or a dark grey usually works best and after a few minutes most users won't even notice it anymore (much like the black bars at the top and bottom of widescreen movies). Make a friend of your users, not an enemy. Just say no to resolution changes. This message paid for by the Special Treatment For Users group. ;) _______________________________________________ [email protected] To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com

