Depth of field

From Second Life Wiki
Revision as of 11:36, 29 June 2011 by Torley Linden (talk | contribs)
Jump to navigation Jump to search

What is "depth of field"?

Depth of field ("DOF" for short) is a graphics feature introduced to the experimental Second Life "Mesh Import Project" Viewer in late November 2010, then supported in the main SL Viewer in June 2011. This page aims to explain what the effect does, how it might change in the future, and what debug settings control it and what they mean.

DOF simulates the real-world optical effect with the same name, a photographic effect caused by a lens focusing on a particular subject. There are two planes to consider — a near focal plane and a far focal plane. When an object is between the far focal plane and near focal plane, it is considered to be in-focus. The human eye is subject to depth of field, but because the field of view of Second Life is more similar to a camera, the in-world depth of field effect is modeled after a 35mm camera with a focal length of 50mm.

DOF can be used to creatively draw attention to a scene's focal area, and is already used in many popular games. DOF's creative possibilities are appealing to artists like photographers and machinimatographers.

Here are some example videos from Residents:

<videoflash type="youtube">Y-AK3t_sqe4|640|385</videoflash>
<videoflash type="youtube">41zDmAZxlZU|640|385</videoflash>
<videoflash type="youtube">hsFLVBG3ykE|640|385</videoflash>
<videoflash type="youtube">PKz81Q7mRGw|640|385</videoflash>
<videoflash type="youtube">C139ZBcKMQc|640|385</videoflash>

How can I see the depth of field effect?

DOF and the other graphical effects that must be enabled to see it are collectively taxing, and are best enjoyed with a graphics card and computer system that significantly exceeds the System Recommendations.

In the main SL Viewer in Advanced mode:

  1. Select Me menu > Preferences.
  2. In the Preferences window, click Graphics tab.
  3. Set the Quality and speed slider to Ultra.

Or, if you want to be more selective:

  1. While you're still in the Graphics tab, click Advanced button.
  2. Check Lighting and Shadows, which is a prerequisite.
  3. You can now check Depth of Field.
KBwarning.png Warning: DOF is still a new-ish feature, and like other advanced graphics features, are subject to change. Furthermore, their rendered appearance may differ and hopefully improve from version to version.

This video tutorial has older steps that are no longer relevant, but the principles are still the same:

<videoflash type="youtube">OOHFNywu22I|640|385</videoflash>

How do I customize my DOF settings?

  1. Enable Advanced menu.
  2. Choose Advanced > Show Debug Settings.
  3. Enter a DOF setting (it autocompletes) and change its value.

The settings are:

  • CameraAspectRatio - "Camera aspect ratio for DoF effect" -- Set this to the aspect ratio of the camera you're modelling. For example, a 35mm camera has an aspect ratio of 3:2 (1.5). Second Life will use this as a frame of reference for how field of view and focal length must be adjusted depending on window size.
  • CameraFieldOfView - "Vertical camera field of view for DoF effect (in degrees)" -- The default FoV for the camera you're trying to simulate. Second Life will use this as a frame of reference for adjusting focal length as the in-world field of view changes.
  • CameraFNumber - "Camera f-number value for DoF effect" This is a simulated f-stop as you'd see on a camera with and adjustable aperture. A typical 35mm lens might have a range of f/2 to f/22. The smaller the number, the wider the aperture. In general, a smaller f-number will result in a narrower depth of field. When trying to tune depth of field for a particular image, this is the number to modify.
  • CameraFocalLength - "Camera focal length for DoF effect (in millimeters)" Different cameras have different focal lengths (the distance from the outer camera lens to the film). In general, a shorter focal length will result in a closer hyperfocal plane — that is, the subject distance at which the far focal plane approaches infinity. You should choose what kind of camera you're modeling and set CameraFocalLength to the focal length of that camera and leave it. Adjusting field of view will lengthen or shorten the simulated focal length appropriately to simulate the use of a zoom lens. Learn more about hyperfocal distance.
  • CameraFocusTransitionTime - How many seconds it takes the camera to transition between focal distances.

For example:

  1. Set CameraFocalLength to 200.000.
  2. Alt-click on your avatar to center that point and give it focus, and observe distant objects.

How do I get tilt-shift effects?

Tilt-shift photography is popularly used for simulating miniature scenes. Try these settings:

  • CameraAspectRatio = 1.500
  • CameraFieldOfView = 60.000
  • CameraFNumber = 2.000
  • CameraFocalLength = 1000.000

Want a more drastic effect? Raise CameraFieldOfView to something like 120.000.

Defocused area too blurry? Raise CameraFNumber.

UPDATE - As of late June 2011, Torley usually keeps the Debug Settings window open while adjusting CameraFNumber as needed, depending on distance to subject.

And remember to Alt-click to focus. It helps to use the keyboard camera shortcuts if you want the focused area to be non-centered. (Otherwise, crop the image in post-processing.) Your end result can be awesome like this (whee! Look at the little doll people):

5880959179 19a0ba0610 o.jpg

See also