Imagine you have a strategy game, and it's rendered in openGL, in 3D. You have an overview of the map and the camera is currently looking at the direction of the ground at some angle (but is not limited to this angle). Like the standard view in the CIV games.
You now do one of the two actions:
A) You move the camera along its line of sight towards the ground (forward). B) You scale the whole scene by a factor >1.
If I understand these actions correctly, both situations should have exactly the same visual result, zooming in. The player shouldn't really be able to tell which of the two has happened.
My questions is, firstly, am I right to assume this?
If no, what is the observable difference? If yes, which mechanic should be used?
Note that I am thinking about this in regards of use in a level editor.
Thinking about it a little further, the difference should become visible if player moves the camera after the action - the camera in the scaled version would move at an apparently slower speed, right?
Would there be any other side effects? Which behavior would be expected by the player/user?
If you assume an FPS fly camera (one that yaws and tilts, but does not roll), is there any scenario where the scaling method would be preferred?