three-viewer icon indicating copy to clipboard operation
three-viewer copied to clipboard

PBR rendering equation playground and feature experiment, based on Threejs and Envtools

three-viewer

PBR rendering experiment of a single model, convenient comparison of rendering equations, based on Threejs and Envtools

Online Demo

image

image

Feature

  • [x] Select rendering equation(reload shader)

  • [x] Envtools-based IBL (Spherical Harmonics Lighting/Blur Background/Cube Envmap/Sunlight)

  • [x] Environment Rotation

  • [x] Direction light And shadow

  • [x] Camera/ShadowCamera Adaptation Model

Usage

  1. Install the necessary node modules.
npm i
  1. Run the npm script dev to start development.
npm run dev
  1. When finishing development, run the npm script build to make the compressed files.
npm run build

Source

Todo

  • [x] Specular Glossiness Material

  • [x] Panorama EnvMap(For the devices that dont support lod)

  • [x] Fix energy loss in specular reflectance

  • [x] Anisotropy(GGX)

  • [x] Clearcoat

  • [ ] Sheen

  • [ ] Spot/Point Light and Shadow

  • [ ] Post-processing(WIP)

  • [ ] Ground Shadow

  • [ ] Shadow Jitter