I have a non AA, non cubic, box living happily in 3D.

I have a frustuum defined by 2 squares. one square is the square defined by [-1, 1]^2 and the other square can have any size, there is also a distance between the two faces that is specified by $l$.

We identify 2 opposite faces on the box. We want to map the box onto our frustum such that one of the 2 selected faces maps to the [-1, 1] face and the other to the other face.

To try to elaborate on what I am doing, I am trying to define a reverse perspective matrix. Something that produces something akin to this:

[![enter image description here][1]][1]

But I am using it for texture mapping not for rendering directly. What I am looking for is the property that objects closer to the furthest face will be larger and objects closest to the front face will be smaller after the projection.

I am having a hard time finding theory resources that explain how to build the camera.



 [1]: https://i.sstatic.net/5xknx.png