Screen Space Ambient Occulsion demo
This demo supports Desktop Web browsers and Android Chrome. It is based on three.js framework. and the scene assets are downloaded from Crytek Sponza. In order to increase the loading time I suggest to use three.js's binary format that is converted from convert_obj_three tool. In my experience, it could save about 80% loading time, and the file size is just about a half size. In this SSAO demo, it uses two render targets and three passes:
- Depth pass: Storing the log depth and pack it into the RGBA render target texture.
- Diffuse pass: Storing diffuse value which has computed the lighting value into a RGB render target
- Post-Processing pass: Unpacking the log depth value from depth pass texture and linearize it, and then fetching the diffuse value from diffuse render target. Finally, computing the ssao using Spiral sampling approach and multiply with the diffuse value.
Desktop web browser & Android Chrome
Desktop web browser