├── .gitignore ├── INSTRUCTION.md ├── README.md ├── index.html ├── lib └── minimal-gltf-loader.js ├── models └── sponza │ ├── buffer_0.bin │ ├── color.jpeg │ ├── fragmentShader0.glsl │ ├── normal.png │ ├── sponza.gltf │ └── vertexShader0.glsl ├── package.json ├── readmeImages ├── BlinnPhongShadingExample.png ├── Clustering_depth_Slicing.png ├── LambertianShadingExample.png ├── LambertianShadingWithoutGammaCorrectionExample.png ├── LiveDemoImage.png ├── NumLightsComparison.png ├── NumLights_table.png ├── OptimizationComparison.png ├── OptimizationComparison_table.png ├── PointLightCulling.png ├── VideoLinkImage.png ├── albedo.png ├── arbitrarylightColorPerCluster.png ├── blinnPhongSpecular.png ├── false-positive-diagram.jpg ├── fragmentWorldSpacePositions.png ├── fragmentXcluster.png ├── fragmentYcluster.png ├── fragmentZcluster.png ├── fragment_u.png ├── fragmentdepth.png ├── gammaCorrection.png ├── lightsPerCluster.png ├── nogammaCorrection.png ├── toonShadingExample.png ├── toonshading.png └── worldspacenormals.png ├── src ├── AABB.js ├── init.js ├── main.js ├── renderers │ ├── clustered.js │ ├── clusteredDeferred.js │ ├── clusteredForwardPlus.js │ ├── forward.js │ └── textureBuffer.js ├── scene.js ├── shaders │ ├── clusteredForward.frag.glsl.js │ ├── clusteredForward.vert.glsl │ ├── deferred.frag.glsl.js │ ├── deferredToTexture.frag.glsl │ ├── deferredToTexture.vert.glsl │ ├── forward.frag.glsl.js │ ├── forward.vert.glsl │ └── quad.vert.glsl └── utils.js └── webpack.config.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /INSTRUCTION.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/INSTRUCTION.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/README.md -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/index.html -------------------------------------------------------------------------------- /lib/minimal-gltf-loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/lib/minimal-gltf-loader.js -------------------------------------------------------------------------------- /models/sponza/buffer_0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/buffer_0.bin -------------------------------------------------------------------------------- /models/sponza/color.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/color.jpeg -------------------------------------------------------------------------------- /models/sponza/fragmentShader0.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/fragmentShader0.glsl -------------------------------------------------------------------------------- /models/sponza/normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/normal.png -------------------------------------------------------------------------------- /models/sponza/sponza.gltf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/sponza.gltf -------------------------------------------------------------------------------- /models/sponza/vertexShader0.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/models/sponza/vertexShader0.glsl -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/package.json -------------------------------------------------------------------------------- /readmeImages/BlinnPhongShadingExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/BlinnPhongShadingExample.png -------------------------------------------------------------------------------- /readmeImages/Clustering_depth_Slicing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/Clustering_depth_Slicing.png -------------------------------------------------------------------------------- /readmeImages/LambertianShadingExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/LambertianShadingExample.png -------------------------------------------------------------------------------- /readmeImages/LambertianShadingWithoutGammaCorrectionExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/LambertianShadingWithoutGammaCorrectionExample.png -------------------------------------------------------------------------------- /readmeImages/LiveDemoImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/LiveDemoImage.png -------------------------------------------------------------------------------- /readmeImages/NumLightsComparison.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/NumLightsComparison.png -------------------------------------------------------------------------------- /readmeImages/NumLights_table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/NumLights_table.png -------------------------------------------------------------------------------- /readmeImages/OptimizationComparison.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/OptimizationComparison.png -------------------------------------------------------------------------------- /readmeImages/OptimizationComparison_table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/OptimizationComparison_table.png -------------------------------------------------------------------------------- /readmeImages/PointLightCulling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/PointLightCulling.png -------------------------------------------------------------------------------- /readmeImages/VideoLinkImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/VideoLinkImage.png -------------------------------------------------------------------------------- /readmeImages/albedo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/albedo.png -------------------------------------------------------------------------------- /readmeImages/arbitrarylightColorPerCluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/arbitrarylightColorPerCluster.png -------------------------------------------------------------------------------- /readmeImages/blinnPhongSpecular.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/blinnPhongSpecular.png -------------------------------------------------------------------------------- /readmeImages/false-positive-diagram.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/false-positive-diagram.jpg -------------------------------------------------------------------------------- /readmeImages/fragmentWorldSpacePositions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragmentWorldSpacePositions.png -------------------------------------------------------------------------------- /readmeImages/fragmentXcluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragmentXcluster.png -------------------------------------------------------------------------------- /readmeImages/fragmentYcluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragmentYcluster.png -------------------------------------------------------------------------------- /readmeImages/fragmentZcluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragmentZcluster.png -------------------------------------------------------------------------------- /readmeImages/fragment_u.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragment_u.png -------------------------------------------------------------------------------- /readmeImages/fragmentdepth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/fragmentdepth.png -------------------------------------------------------------------------------- /readmeImages/gammaCorrection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/gammaCorrection.png -------------------------------------------------------------------------------- /readmeImages/lightsPerCluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/lightsPerCluster.png -------------------------------------------------------------------------------- /readmeImages/nogammaCorrection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/nogammaCorrection.png -------------------------------------------------------------------------------- /readmeImages/toonShadingExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/toonShadingExample.png -------------------------------------------------------------------------------- /readmeImages/toonshading.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/toonshading.png -------------------------------------------------------------------------------- /readmeImages/worldspacenormals.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/readmeImages/worldspacenormals.png -------------------------------------------------------------------------------- /src/AABB.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/AABB.js -------------------------------------------------------------------------------- /src/init.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/init.js -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/main.js -------------------------------------------------------------------------------- /src/renderers/clustered.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/renderers/clustered.js -------------------------------------------------------------------------------- /src/renderers/clusteredDeferred.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/renderers/clusteredDeferred.js -------------------------------------------------------------------------------- /src/renderers/clusteredForwardPlus.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/renderers/clusteredForwardPlus.js -------------------------------------------------------------------------------- /src/renderers/forward.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/renderers/forward.js -------------------------------------------------------------------------------- /src/renderers/textureBuffer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/renderers/textureBuffer.js -------------------------------------------------------------------------------- /src/scene.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/scene.js -------------------------------------------------------------------------------- /src/shaders/clusteredForward.frag.glsl.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/clusteredForward.frag.glsl.js -------------------------------------------------------------------------------- /src/shaders/clusteredForward.vert.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/clusteredForward.vert.glsl -------------------------------------------------------------------------------- /src/shaders/deferred.frag.glsl.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/deferred.frag.glsl.js -------------------------------------------------------------------------------- /src/shaders/deferredToTexture.frag.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/deferredToTexture.frag.glsl -------------------------------------------------------------------------------- /src/shaders/deferredToTexture.vert.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/deferredToTexture.vert.glsl -------------------------------------------------------------------------------- /src/shaders/forward.frag.glsl.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/forward.frag.glsl.js -------------------------------------------------------------------------------- /src/shaders/forward.vert.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/forward.vert.glsl -------------------------------------------------------------------------------- /src/shaders/quad.vert.glsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/shaders/quad.vert.glsl -------------------------------------------------------------------------------- /src/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/src/utils.js -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AmanSachan1/WebGL-Clustered-Deferred-Forward-Plus/HEAD/webpack.config.js --------------------------------------------------------------------------------