To change the game window’s size, just do a right click on the project (left window) and select properties, there is an option to change the window’s size.
You can do it through events too, I don’t remember where the action is, maybe under the “Game” or “Game’s window” section
Here are three topics with something about window size and cameras:
Project window size
Cameras 1
Cameras 2
The camera take some place in the game (in function of it’s position and size) and then render the “screenshot” in the screen (in function of the window size and the camera’s render zone), then the objects can be stretched in many ways because different ratios between [ (camera size) vs (window size * camera render zone)]
I don’t know…
Of course, if you change the window aspect ratio, but not the camera proportions, the scene will be stretched. About toggle fullscreen, I think there is an option to stretch, but maybe it’s because the window size and your monitor has different proportions [I think it’s impossible (in every possible way) to draw a 4:3 window in a 16:9 monitor in fullscreen without stretching the scene or changing the camera size]
I haven’t GD here now, but I think you can’t “toggle” cameras. Maybe you could save different “cameras” in structure variables, like:
Cameras
....0
........SizeX
........SizeY
........RenderZoneX1
........(...)
........Angle
........Zoom
....1
........SizeX
........(...)
(...)
.
Then you could create a new camera with these parameters or change the actual camera (i = camera index):
Button is pressed: Do Cameras[ToString(Button.Variable(i))].SizeX to the Size X of the camera
(Hope I’m writing the right syntax )