14
$\begingroup$

How can I get a camera to render with a cabinet projection?

I know it is possible to get a gaming isometric projection, but that's not really what I want.

I've tried positioning an orthographic camera in almost all possible ways but still can't get one. Actually an orthographic camera wouldn't work because as soon as you get the world x-axis parallel to the viewport x-axis, the world y-axis is always parallel to the viewport y-axis.

I think it is something like shearing, but I am not so sure.

Cabinet projection:

A table from Wikipedia
Image from Wikipedia

$\endgroup$
  • $\begingroup$ Shearing can be accomplished using the Shift camera setting. $\endgroup$ – Aldrik Jul 18 '13 at 15:47
  • $\begingroup$ @Aldrik, that works with perspective, but doesn't affect anything in orthographic. $\endgroup$ – CharlesL Jul 18 '13 at 16:02
  • 1
    $\begingroup$ You may use a FOV value below 1 degree, put the cam very far away (to the proper distance), and shivt the camera (with a value around the cams distance). Such low FOV will result a render that looks like isometric. (Actually nearing 0 with FOV will LIM the image to the isometric.) $\endgroup$ – Róbert László Páli Jul 23 '13 at 10:47
  • $\begingroup$ @RóbertLászlóPáli yes but that introduces problems of its own: you'll need a huge range of camera depth, for one thing, which could lose precision as well as causing unnecessary BVH calculations. When Cycles gets volumetric rendering, that could result in an undesirable increase thereof (because you're going through a ton of fog just to get to those objects). It also might mess with emission, but I'm not sure. $\endgroup$ – wchargin Oct 22 '13 at 3:21
12
$\begingroup$

Demonstrating in 2D what is going on:

Demonstration

Mathematically it should be correct to render with a orthographic camera and later transform the image. I think this is the easiest method when you have multiple objects (so you do not have to add modifiers to each). First you should shear in 2D (skewing) the rendered image then (if needed) stretch to get the correct aspect.

Original:

Original

Sheared:

Sheared

Streched:

Streched

Most raster graphics editors have the tools to preform the above transformations. This can also be done in the compositor using a Blend texture and the Displace node.

$\endgroup$
  • $\begingroup$ On the sheared image you can actually see some strange anti-aliasing effect, not perfect, unfortunately. Also, scaling will result in a lower quality. Though this is definitely a possible way... $\endgroup$ – Alvin Wong Jul 19 '13 at 14:59
  • 1
    $\begingroup$ Yes, quality gets worse sadly, but you could render the image twice as big (for example) and then scale it down, this will smooth out the quality loss, but costs render time. $\endgroup$ – Róbert László Páli Jul 23 '13 at 10:36
  • $\begingroup$ Thanks a lot Róbert for your response, it's been really helpful. I just wanted to complete it with an example of doing the shearing using blender compositor for those like me that are not that familiar with composition nodes: screenshot Grab it from here Again, thanks, wonderful answer. $\endgroup$ – user3249 Apr 23 '14 at 23:49
7
$\begingroup$

Could just deform the model

  1. Point your orthographic camera down the Y-axis.
  2. Create a lattice Shift+AL with the following number of points: U: 1, V: 2 W: 1
  3. Enter Edit Mode Tab, select all points A and perform the following rotations:
    • RZ-45Enter
    • RX45Enter
  4. Finally add a Lattice modifier to you model(s) with the Object set to our previously created lattice. 3D View with a cube with cabinet projection deformation.
$\endgroup$
  • $\begingroup$ Hmm… I tried your solution, but still getting isometric render $\endgroup$ – Geradlus_RU Mar 10 '16 at 0:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.