5
$\begingroup$

I am confused because when it comes to real cameras their sensor sizes are defined by two numbers that represent the x and y dimensions of their orthogonal camera sensor. Why is blender only using one sensor size parameter and not one for the x and one for the y dimension of the camera sensor? What is blender's single sensor size parameter representing physically about the camera sensor? Is it the sensor's diagonal dimension?

$\endgroup$

1 Answer 1

7
$\begingroup$

The render camera in Blender is a virtual camera, so usually it is not related to the sensor size settings. For example, the camera in Blender is a infinitely small single point in the scene, with no dimensions for sensor or the lens etc. - but saying there is no relation between them would be to simple as an answer.

First of all, you can use the Sensor Fit to decide how the rendered image should be placed in a real camera's photo, and you can use the sensor size to recreate something like the crop factor of real cameras for example.

The Focal Length you set in the (virtual) Lens properties is usually calculated upon the assumption that you have a full format camera. Just like in real life, where the focal length of lenses commonly is given in relation to full format sensors.

Which means, if you place the virtual camera in a certain distance to an object, it will appear as large in the rendered image as these things would appear if they were all in real-life dimensions and you would take a picture with a full format camera with a lens of the given focal length. This is based on a theoretical full format sensor size of 36 × 24 mm (real sensors of course might slightly vary in their size).

But instead of a real camera which often has sensor aspect ratios of 3:2 or 4:3, the rendered image only cares for the image size given in the Output Properties, so by default 1920 × 1080 pixels or aspect ratio of 16:9 which means this default full format sensor size is more or less irrelevant for rendering.

Now the Camera setting Sensor Fit at the default Auto with a Size of 36 mm is showing (if you enable Sensor in the Viewport Display options of the camera) a square frame if you look through the camera which is made to fit always the largest dimension of the render border:

sensor fit > auto

I've placed the cubes so that they fill the image from left to right. Using the default Auto and Size_ 36 mm means, the width of the square simulates how much the real full format camera sensor would see (in width) from the cubes with a 50 mm lens at this distance. The aspect ratio of a real sensor is ignored here, therefore the square. The virtual camera's width is the same as the sensor width, but as mentioned before, the aspect ratio 16:9 is determined by the render dimensions only.

What happens now if you switch from Auto to Horizontal is that you can enter values for Width and Height instead of a single value. By default it will be 36 × 24 mm, the standard full format sensor size. This means, the frame displaying the sensor in the viewport is no longer square, but rectangular and has an aspect ratio of 3:2, it still fits the width of the sensor frame to the render border and no matter what Height you set, the width will stay the same in the viewport - horizontally.

As you can see, the frame is still showing the cubes fit from left to right and for the next demonstration I had placed them so that they now fill the sensor frame from top to bottom:

sensor fit > horizontal

But have a look what happens if you switch now Sensor Fit to Vertical. In this case, Blender will fit the height of the sensor frame into the render border, so no matter which width you set, the frame will vertically keep its size. However, it looks as if Blender's virtual camera has zoomed out - which it did. The cubes still fill the sensor frame from left to right and top to bottom, but since the render aspect ratio is 16:9, the camera had to zoom to fit it in vertically:

sensor fit > vertical

So by saying the Sensor Fit should be other than Auto, you can determine how a rendered image should be placed inside the sensor frame: either horizontally, which results in a rendered 16:9 image that is cropped at the top and bottom compared to a real-life photo at 3:2, or you make it fit vertically, which results in a rendered 16:9 image which is expanded to the left and right compared to a real-life photo at 3:2.

sensor fit comparison

Which already brings us close to recreating the crop factor of a not full format camera. Since you asked about sensor fit and real-life dimensions etc. I guess you know what a crop factor is (possibly better than I do), so just in short and simplified: when a camera has a smaller sensor than roundabout 36 × 24 mm, and image covers more of the sensor at the same focal length, which means a photo taken with the smaller sensor appears larger, as if the lens had a greater focal length than the given one. The crop factor is the multiplier how much larger an image appears, so for e.g. a Canon APS-C camera with a sensor size of 22.3 × 14.9 mm the crop factor is 1.61 roundabout.

This means, the 50 mm lens on the APS-C camera takes photos as if they were taken with a full format camera and a 50 mm × 1.61 = 80.5 mm lens (don't lapidate me, this is all very simplified). To simulate this with the default camera settings in Blender like Sensor Fit > Auto and Size 36 mm, you could simply enter 80.5 mm as Focal Length value.

Or you use real-life values - if you know you have a 50 mm lens and know the dimensions of the sensor, you can set Sensor Fit to Horizontal and enter the real Width and Height. The resulting rendered image will be the same size... more or less, since neither 36/22.3 nor 24/14.9 is exactly 1.61 but you get the idea:

compare focal length factor to sensor fit adjustment

$\endgroup$
1
  • 1
    $\begingroup$ Amazing answer! Thank you very much. $\endgroup$
    – Windfish
    Jan 4, 2023 at 6:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .