A collection of HLSL functions one can include to use spherical harmonics in shaders. This repository can be simply be used as a submodule.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 1021a86 Oct 29, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Initial commit Oct 27, 2018
README.md Updated readme Oct 27, 2018
SphericalHarmonics.hlsl Another comment detail. Oct 29, 2018
sh2.nb Added first version of all the files. Oct 27, 2018
sh2.pdf Added first version of all the files. Oct 27, 2018

README.md

HLSL-Spherical-Harmonics

Description

A collection of HLSL functions one can include to use spherical harmonics in shaders. This is practical when generating and consuming SH on the GPU.

Using Git, this repository can be integrated in your project as a submodule.

Files description:

  • SphericalHarmonics.hlsl: the HLSL file containing all the SH functions.
  • sh2.nb : A Mathematica notebook to verify and visualize SH functions correctness.
  • sh2.pdf: A compiled pdf to simply read sh2.nb.

Examples

Precomputed occlusion as SH for cloud ambient lighting. Result as video and as images (1st image: directional occlusion as SH, 2nd image: final cloud render):

cloud

cloud

Future

  • As of today, only 2nd order SH functions are provided. 3rd order SH could be added.
  • Do not hesitate to send suggestions or improvements.