enh(viz): improve flat shading by using fragment shader computed normals
Description
Flat shading may often be broken if point normals are shared between faces. To overcome this, we chose to compute normals in the fragment shader using eye position derivatives. Doing so, the outdated and never used Gouraud shading mode was removed. This removes a shader combination which makes maintenance easier.
Closes #766 #652 (closed)
How to test it?
- Run SightViewer, load the .ply file from #766 and play with the shading modes
- Observe the flat rendering no longer suffer from lighting weirdness, as shown below.
Some results
Additional tests/tasks to run
Test with other meshes!