1. 06 Feb, 2021 1 commit
    • Nikhila Ravi's avatar
      Utils for clipping mesh faces partially behind the image plane · 23279c5f
      Nikhila Ravi authored
      Summary:
      Instead of culling faces behind the camera, partially clip them if they intersect with the image plane.
      
      This diff implements the utils functions for clipping.
      
      There are 4 cases for the mesh faces which are all handled:
      
      ```
      Case 1: the triangle is completely in front of the clipping plane (it is left
              unchanged)
      Case 2: the triangle is completely behind the clipping plane (it is culled)
      Case 3: the triangle has exactly two vertices behind the clipping plane (it is
              clipped into a smaller triangle)
      Case 4: the triangle has exactly one vertex behind the clipping plane (it is clipped
              into a smaller quadrilateral and divided into two triangular faces)
      ```
      
      Reviewed By: jcjohnson
      
      Differential Revision: D23108673
      
      fbshipit-source-id: 550a8b6a982d06065dff10aba10d47e8b144ae52
      23279c5f