Show HN: Reverse perspective camera for OpenGL (Three.js)

(github.com)

2 points | by bntr 7 hours ago ago

1 comments

  • bntr 7 hours ago

    I've extended the standard OpenGL camera to allow smooth transition between normal perspective, orthographic, and reverse perspective projection. To demonstrate the effect, I built a demo using Three.js.

    Reverse perspective can feel a bit disorienting at first, but this demo is meant to highlight a few of its interesting advantages:

    1. An extended Dolly zoom effect. https://en.wikipedia.org/wiki/Dolly_zoom

    You can think of it as an extrapolation of the classic Dolly zoom into negative space. It produces a cinematic sense of vertigo or sudden insight, and also lets you pull the camera back from an object without distracting the viewer with surrounding geometry.

    2. A wider and more complete spatial view.

    Near objects no longer obscure distant ones; the viewer can see both the façade of a building and what’s happening on its roof, or even behind it.

    Code and details: https://github.com/bntre/reverse-perspective-threejs