The relationship between 3D world space and 2D camera space is key to creating 2D renders. To solve how objects in the world should appear through the lens of a virtual camera, we need to define mathematically how objects in the 3D world should appear when cast on the image plane of our 2D camera. We first start by defining a set of coordinate spaces. What are these coordinate spaces, and how do they relate to one another?

We will discuss four coordinate spaces:

  • World coordinates

  • Camera coordinates

  • Screen coordinates

  • Normalized device coordinates (NDC)

These four are heavily utilized in PyTorch3D and are important to understand before moving forward.

World coordinates

Put simply, world coordinates describe how objects are arranged in the 3D space of our scene. This uses the typical Cartesian coordinate space system in which we have three orthogonal axes, typically called xx, yy, and zz. Absolute positions of objects are described by (x,y,z)(x, y, z) triplets that describe their distance from the origin point (0,0,0)(0, 0, 0) along each axis.

Get hands-on with 1200+ tech skills courses.