Is it possible to update the DOF to function correctly?

Hi!

I like some parts of the Bokeh depth of field but it’s very unintuitive. There seems to be a lot of movement forward in UE4 for physically correct, but the Bokeh DOF is very lacking in this. Not sure if anyone at Epic is a photographer but I am sure there is someone there who could help in this department a bit.

I think it would be easier to use if it actually came from the basis of a real camera.

So my suggestion would be for control is this:

  • METHOD: BokehDOF
  • FOCUS DISTANCE: 250 Centimeters
  • LENS MM: 85 (or use game camera)
  • FSTOP: 1.4 (ranged from 1.0 to 22)
  • SCENE SCALE: 1

The big determining factor of DOF is the LENS size and Fstop. For this to work correctly though you need a scene scale to follow correctly. All of my scene assets are modeled to centimeters so every unit is 1 cm. The Scene Scale option would allow people working in meters, or some random scale to adjust to taste. The Fstop is the big determining factoring for amount of DOF and those values would be adjusted with size of the FOV being used.

So I would set my realtime camera view to 50mm. Then I would go 5.6 for my stop and set my distance. That’s it. I would have an accurate looking DOF without the need of 15 other options.

A great example of offline rendering control for Physical DOF would be V-Ray for Maya. V-Ray for Maya expects centimeters as your main working unit of scale. You can set your focus distance and Fstop. It works just like a real camera and gives perfect results on this.

Thanks!

Hey Metzger -

I will pass your request along to our engineers for their consideration. However, there is not a one to one correlation with some of the settings in the engine in relation to a real world camera. As DoF is actually simulated based on one of a series of pixel shader’s gathering operation and texture sampling in real time rendering engines. There are more variables necessary to develop the effect than just the simple Lens and Aperture mechanics of a camera.

Thank you for your request -

Eric Ketchum

Thanks Eric. I appreciate that. If the controls were designed around the function of a camera it would help a lot. I love the look but have a hard time with it currently and think it could be a lot easier to use than its current state. Greatly appreciated.

I’ve developing a game at the moment where the operations of a camera are pretty closely simulated. You’d need more than the variables mentioned to actually properly describe the functionality of DOF physically. Check out Depth of field and diffraction for more information, but to summarize the actual variables are more like:

  • Current lens focal length (computable from FOV if you also have the sensor or film size)
  • Lens-to-target focal distance
  • Lens-to-film plane distance
  • Aperture diameter or F-stop number (one or the other)
  • Acceptable Circle of Confusion (typically 0.03mm or so)

And of course the scale and method you mentioned. However if you really want to get real with the camera, you’d also want to have the following:

  • Film flatness (because film cameras don’t have flat film)
  • Diffraction limiting

And I’m still trying to figure out how to properly compute values for the near and far transition regions, or the DOF scale: camera people don’t typically think about those either.

In all, I think that it’d be good for the engine to develop this kind of input, but it’s not super-simple and it’s too easy to get trapped into the shortcuts that are used in photography when almost everyone is using 35mm film/sensors - or values that have been made “35mm equivalent”!