bakoe / datacanvas

A proof-of-concept, open-source, MIT-licensed web application for visual, interactive creation and editing of 2D, 2.5D and 3D data visualizations.
https://datacanvas.dev
MIT License
2 stars 0 forks source link

Decide on and potentially implement: Switch to proper outline rendering #18

Open bakoe opened 2 years ago

bakoe commented 2 years ago

Currently, a very naiive implementation of fake outlines is used for the cuboids in the WebGL scene, only based on individual faces' UV coordinates. This leads to visible artefacts in the rendering, including:

(a) Non-consistent line widths on non-uniformly sized objects (b) A lack of outlines when objects intersect

image

If we decide to stick to NPR (non-photorealistic rendering), implement proper outlines, e.g., based on normal and depth G-Buffers and their respective querying in a lightweight post-processing pass.

bakoe commented 2 years ago

Possible inspiration: https://gkjohnson.github.io/threejs-sandbox/conditional-lines/