[quote="Madster":1vpaz2nt]If you start with a small layout and then you try to enlarge it, you'll find out that Construct doesn't draw outside the layout even though it's zoomed, which makes sense (this could be useful for the Black Bars thing).
So you'll have to also enlarge your layout. But since your layout is larger now, you'll also have to scroll it. I'm still working on the math for that, it goes all weird tho, there's some bugs around. So far, scrolling to the center of the original layout size works for me, but you gotta set scrolling to unbounded (BUG?), and if I set the scroll from the same function object event I use to change the resolution, it won't scroll.
I shall post a .cap with all of this. Soon.[/quote:1vpaz2nt]
It's not a bug, the actual rendered viewport is scaled up. Under normal circumstances this means your player can be off the screen and because of bounded scrolling you won't be able to actually get all the way to the edge. You need a method to keep move past the edge of the screen but visually stop short of the layout boundary.
The trick to fixing scrolling when you zoom the screen is to set the layout to Unbounded Scrolling, but use clamp() to create your own bounds.
I have an example here:http://dl.dropbox.com/u/529356/zoomAndScroll.cap
Press F when running for fullscreen, press W for window. Notice that when it is zoomed (at fullscreen, it is zoomed 200%) the scrolling works normally. This is handled in the bookmarked event of the Display sheet.
The screen zooms 2x, and the regular display size is 512x384, so the scrolling limits for clamp() are half that in each direction for the fake bounding. If you were to scale the screen at a different ratio, you would have to adjust those bounds accordingly. At 4x zoom you would have to quarter the base resoution, etc.