How could I transform the vertices of my mesh to appear in Perspective view, as it does in Orthographic view? I have a model that appears to have fake depth, where objects in the geometry are smaller rather than further away. That said, the model looks fine in orthographic view (if you position the camera correctly) and appears there as it actually should appear in perspective view.



In perspective view, of course, the objects that are "further" away are smaller than they are supposed to be when you get close to them.

How could I transform the vertices of my mesh to appear in Perspective view, as it does in Orthographic view? As far as I know, it would involve:
1) translating each vert along the x and z world planes as they appear on the perspective screen coordinates to line up with the same vert on the orthographic screen coordinates.
2) scaling the mesh along the world y, eyeballing it until everything starts to look correct.

The first step is where I find myself rather stuck. Anyone got a way to tackle it?
This sounds like a job for math, python, and bmesh.  You'll have to have an understanding of the mathematics behind orthographic and perspective projections so that you can compute replacement coordinates for the vertices.

Once you have the formula, you can write python which iterates through the vertices of the mesh and rewrites their coordinates.  Something like this:

obj = bpy.context.active_object
for v in obj.data.vertices:
    v.co = funkify(v.co)