Getting a orientation map for non-photorealistic rendering

So my end solution was found in this paper, which incidentally was implamented in threejs. The solution is literally just to project the fragment’s normal onto the view plane, and take the x and y coordinates of it. End result looks okay.

Could be better, it currently runs at like 30-40fps on my laptop and I think the edges are too hard, and it also looks a bit too blurry in the back. It also has a shower door effect everyone tries to avoid as the strokes are stuck to the camera instead of the objects.


Nice work! Looks good – I’m interested to see what you wind up producing with this.

1 Like