Can I change the shape of an orthogonal 3D camera?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By Ev1lbl0w

I’m developing an art style that blends 2D with 3D. For that purpose my camera is tilted at a 45° angle and set to orthogonal mode, to achieve this effect. The thing is, because the camera’s shape is a square, it distorts my 2D plane, making it shrink in the Y-axis.

What I need is, if possible, to change the camera’s “shape” into a rectangle, while still being in orthogonal mode. Is it possible to do this in Godot?

EDIT: Here’s more info and screenshots to show what I’m trying to achieve:

The objective is to mix 2D with 3D. The game, at first, looks like a 2D game, but the user can change the view angle at any time, revealing a 3D game, but still feeling 2D.

This is my main scene:

mainScene

And from the camera’s perspective, it looks like this:

orthoPerspective

The “squared” area appears thinner due to the camera’s shape: being it a square. I managed to do a trick involving viewports and shaders to stretch this to become a perfect square.

However this feels like too much hassle for something I think is as simple as being able to manipulate the camera’s shape. So, is it possible?

I’m not sure if this is what you’re after but try perspective with low field of view. Orthogonal is basically no depth perception so everything will appear like it’s at the same distance.

Magso | 2019-04-17 20:16

Yeah, but I still can’t modify the camera’s shape in perspective mode to my exact needs.

Ev1lbl0w | 2019-04-18 10:28

Are there any games that look like what you’re after? Cameras only have orthogonal or perspective views.

change the camera’s “shape” into a rectangle

This wouldn’t make a difference, it would still be orthogonal.

Magso | 2019-04-18 13:30

This wouldn’t make a difference, it would still be orthogonal.
My objective is not to create perspective, is to stretch the visible area. I’ve updated the post to explain it more clearly.

Also, I have yet to see a game that is exactly my art style, but imagine Octopath Traveller: the world is 3D but all the objects are draw in pixel art. Now imagine that game but on a traditional top-down view, common in all RPG’s. And being able to rotate the view to see a 3D effect.

Ev1lbl0w | 2019-04-18 17:50

The trick with viewports and shaders is probably the easiest way of doing it up to now, have you seen this page? https://github.com/godotengine/godot/issues/7499

Magso | 2019-04-18 19:28

Seems like it then. I managed to clean-up my code so at least now it doesn’t feel like a hack around the engine. Thanks for the help!

Ev1lbl0w | 2019-04-20 21:04