The clip coordinate system is a homogeneous coordinate system in the graphics pipeline that is used for clipping.[1]
Objects' coordinates are transformed via a projection transformation into clip coordinates, at which point it may be efficiently determined on an object-by-object basis which portions of the objects will be visible to the user. In the context of OpenGL or Vulkan, the result of executing vertex processing shaders is considered to be in clip coordinates.[2] [3] All coordinates may then be divided by the
w
More concretely, a point in clip coordinates is represented with four components,
\begin{pmatrix}xc\\yc\\zc\\wc\end{pmatrix},
and the following equality defines the relationship between the normalized device coordinates
xn
yn
zn
\begin{pmatrix}xn\\yn\\zn\end{pmatrix}=\begin{pmatrix}xc/wc\\yc/wc\\zc/wc\end{pmatrix}.
Clip coordinates are convenient for clipping algorithms as points can be checked if their coordinates are outside of the viewing volume. For example, a coordinate
xc
-wc\leqxc\leqwc