# Where should I project a polygon corner when it is behind me?

I am creating a simple 3D engine as a learning project to get the hang on spherical trigonometry. I am using the following approach. 1. A model consists of a lot of triangular faces. 2. Each triangle is rendered through finding where the vectors pointing to the corners of it intersect a plane. This creates a flat projection I draw to the screen.

I have already implemented this, and it works great, except when some of the corners of a triangle are located behind me.

It is quite obvious what the problem is: The vector pointing to the corner is never intersecting the plane. But I need a point to render the projection, as a part of the triangle is visible. That causes trouble. I can not place the third corner anywhere on my projection plane, as the edges of the projected triangle are diverging when they escape the field of view.

Logically, the edges of the projected triangle are thus pointing towards two different points on the plane outside the frame (or on the frame border, depending on taste and size of data types).

Suddenly having to deal with rendering a four-sided polygon instead of a triangle is no problem, my rasterization algorithms are flexible. I can however not figure out how to calculate the locations of the new "off-screen" points. How can I find them?

• You don't project it. You clip the polygon it against a front clipping plane (or more generally against the view frustum) and then project those results. I had a quick search to try to find a good page explaining the details but nothing really gave a simple/clear explanation. I could suggest a textbook if that'd help. Sep 5 '16 at 12:18
• @SimonF I would appreciate a textbook suggestion. Is the 'clip' approach then suitable for rendering? Moving around in a model a made, it does not look unnatural. Sep 5 '16 at 12:25
• Actually it is possible to avoid near clipping by using homogeneous rendering but that has some other drawbacks. Possible texts include Watt & Watt's "Advanced Animation and Rendering Techniques" Foley, Van Dam et al's "Computer Graphics: Principles and Practice" - It's old but clipping hasn't changed. I'm surprised nothing simple/clear shows up in my web searches (for example, Wikipedia's entry doesn't seem to contain much), but you could try searching for Weiler-Atherton or Cohen–Sutherland. Sep 5 '16 at 12:41