Cameras

You must set the Viewport3D's Camera property to one of the three available camera types: PerspectiveCamera, OrthographicCamera, or MatrixCamera. The type of camera determines how the 3D model will be turned into a 2D image on-screen.

The PerspectiveCamera is often the most natural choice. With this camera, the farther away objects are, the smaller they appear. Because that's how things look in real life, this produces a reasonably natural-looking image.

The OrthographicCamera uses a more simplistic approach. A 3D object of a particular size will always be rendered at exactly the same size, regardless of how far away it is. This tends to produce rather unnatural-looking images, but it can occasionally be useful—sometimes consistency is more important than a natural appearance. If you are rendering 3D models representing the design of something physical, such as a planned piece of woodwork or the layout of a room, you might want objects of the same size in the model to appear the same size on-screen. Likewise, if you are producing a 3D graph, consistency of size might be more important than realism. An OrthographicCamera can guarantee this, whereas a PerspectiveCamera can, by design, show equal-size objects as different sizes on-screen. Figure 17-1 shows an example—on the left is a series of identical columns rendered with a PerspectiveCamera, and on the right is the same model as shown by an OrthographicCamera.

Figure 17-1. PerspectiveCamera and OrthographicCamera

If you are ...

Get Programming WPF, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.