What am I trying to achieve: A perspective with two vanishing points like this http://insidetheoutline.com/wp-content/uploads/2019/07/2_Point_Perspective_Cityscape.jpg
Why I am there: I'm really bad at 3D (obviously) so I'm trying to replace the character models with 2D sprites like in Populous 3, or the quest "The Game" in Fable 3. I also want to have a top view down as in isometric games. Alas, the distortion in perspective completely kills the effect, giving sprites an asymmetrical appearance whenever they are off center.
What am I doing right now:
gluPerspective(FOV, wndWidth / wndHeight, zNear, zFar);
// Googling lead me to this MV matrix, alas it's not working for me
// 1, 0, 0, 0,
// 0, 1, 0, 0,
// 0, -camY/camZ, -camZ, 0,
// 0, 0, 0, 1
// camX = camY = camZ = 50
camX, camY, camZ,
0, 0, 0,
0, 0, 1
// then I draw a uniform grid -5..5 by -5..5
// and slightly off-center wireframe box to test if they are drawn correctly
Does it work? No no.
What else I managed to google: Not much, really. I found an example that looks a bit like something I want to achieve, but they place the camera at ground level with a zero delta Z, effectively eliminating the third vanishing point. In another example, they just reduced the field of vision to an absurdly low value, making it look like a two-point perspective to some extent.
I'm afraid of missing or misunderstanding something. I also don't know if the desired output will actually look like what I want, and I won't reject it if it doesn't.