@takram/three-geospatial-effects 0.0.1-alpha.0 → 0.0.1-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/build/index.cjs +1 -0
- package/build/index.cjs.map +1 -0
- package/build/index.js +1 -0
- package/build/index.js.map +1 -0
- package/build/r3f.cjs +1 -0
- package/build/r3f.cjs.map +1 -0
- package/build/r3f.js +1 -0
- package/build/r3f.js.map +1 -0
- package/build/shared.cjs +1 -0
- package/build/shared.cjs.map +1 -0
- package/build/shared.js +1 -0
- package/build/shared.js.map +1 -0
- package/package.json +1 -1
- package/src/shaders/ssr.frag +0 -381
- package/src/shaders/ssr.vert +0 -6
- package/src/shaders/ssrEffect.frag +0 -6
package/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# @takram/three-geospatial-effects
|
2
2
|
|
3
|
+
[](https://www.npmjs.com/package/@takram/three-geospatial-effects) [](https://takram-design-engineering.github.io/three-geospatial/?path=/story/atmosphere-atmosphere--basic)
|
4
|
+
|
3
5
|
A collection of post-processing effects.
|
4
6
|
|
5
7
|
This library is currently under active development, and its API may change without maintaining backward compatibility.
|
@@ -13,3 +15,7 @@ npm install @takram/three-geospatial-effects
|
|
13
15
|
pnpm add @takram/three-geospatial-effects
|
14
16
|
yarn add @takram/three-geospatial-effects
|
15
17
|
```
|
18
|
+
|
19
|
+
## License
|
20
|
+
|
21
|
+
[MIT](LICENSE)
|
package/build/index.cjs
CHANGED
@@ -1 +1,2 @@
|
|
1
1
|
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("postprocessing"),e=require("./shared.cjs");function i(t){const{image:o}=t,{width:s,height:r}=o;if(s!==r)throw new Error("Hald CLUT image must be square.");const f=Math.cbrt(s*r);if(f%1!==0)throw new Error("Hald CLUT image must be cubic.");const{data:c}=n.RawImageData.from(o),a=new n.LookupTexture(c,f);return a.name=t.name,a.type=t.type,t.colorSpace=a.colorSpace,a}exports.DepthEffect=e.DepthEffect;exports.DitheringEffect=e.DitheringEffect;exports.GeometryPass=e.GeometryPass;exports.LensFlareEffect=e.LensFlareEffect;exports.NormalEffect=e.NormalEffect;exports.depthEffectOptionsDefaults=e.depthEffectOptionsDefaults;exports.ditheringOptionsDefaults=e.ditheringOptionsDefaults;exports.lensFlareEffectOptionsDefaults=e.lensFlareEffectOptionsDefaults;exports.normalEffectOptionsDefaults=e.normalEffectOptionsDefaults;exports.setupMaterialsForGeometryPass=e.setupMaterialsForGeometryPass;exports.createHaldLookupTexture=i;
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/createHaldLookupTexture.ts"],"sourcesContent":null,"names":["createHaldLookupTexture","texture","image","width","height","size","data","RawImageData","lut","LookupTexture"],"mappings":"4IAGO,SAASA,EAAwBC,EAAiC,CACjE,KAAA,CAAE,MAAAC,GAAUD,EACZ,CAAE,MAAAE,EAAO,OAAAC,CAAA,EAAWF,EAC1B,GAAIC,IAAUC,EACN,MAAA,IAAI,MAAM,iCAAiC,EAEnD,MAAMC,EAAO,KAAK,KAAKF,EAAQC,CAAM,EACjC,GAAAC,EAAO,IAAM,EACT,MAAA,IAAI,MAAM,gCAAgC,EAElD,KAAM,CAAE,KAAAC,CAAS,EAAAC,eAAa,KAAKL,CAAK,EAClCM,EAAM,IAAIC,gBAAcH,EAAMD,CAAI,EACxC,OAAAG,EAAI,KAAOP,EAAQ,KACnBO,EAAI,KAAOP,EAAQ,KACnBA,EAAQ,WAAaO,EAAI,WAClBA,CACT"}
|
package/build/index.js
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/createHaldLookupTexture.ts"],"sourcesContent":null,"names":["createHaldLookupTexture","texture","image","width","height","size","data","RawImageData","lut","LookupTexture"],"mappings":";;AAGO,SAASA,EAAwBC,GAAiC;AACjE,QAAA,EAAE,OAAAC,MAAUD,GACZ,EAAE,OAAAE,GAAO,QAAAC,EAAA,IAAWF;AAC1B,MAAIC,MAAUC;AACN,UAAA,IAAI,MAAM,iCAAiC;AAEnD,QAAMC,IAAO,KAAK,KAAKF,IAAQC,CAAM;AACjC,MAAAC,IAAO,MAAM;AACT,UAAA,IAAI,MAAM,gCAAgC;AAElD,QAAM,EAAE,MAAAC,EAAS,IAAAC,EAAa,KAAKL,CAAK,GAClCM,IAAM,IAAIC,EAAcH,GAAMD,CAAI;AACxC,SAAAG,EAAI,OAAOP,EAAQ,MACnBO,EAAI,OAAOP,EAAQ,MACnBA,EAAQ,aAAaO,EAAI,YAClBA;AACT;"}
|
package/build/r3f.cjs
CHANGED
@@ -746,3 +746,4 @@ void main() {
|
|
746
746
|
`+a.fragmentShader),r&&(a.fragmentShader=`#define ORTHO
|
747
747
|
`+a.fragmentShader),this.configuration.halfRes&&this.configuration.depthAwareUpsampling&&(a.fragmentShader=`#define HALFRES
|
748
748
|
`+a.fragmentShader),this.effectCompositerQuad?(this.effectCompositerQuad.material.dispose(),this.effectCompositerQuad.material=new t.ShaderMaterial(a)):this.effectCompositerQuad=new S(new t.ShaderMaterial(a))}generateHemisphereSamples(e){const r=[];for(let a=0;a<e;a++){const l=2.399963*a,o=Math.sqrt(a+.5)/Math.sqrt(e),s=o*Math.cos(l),i=o*Math.sin(l),n=Math.sqrt(1-(s*s+i*i));r.push(new t.Vector3(s,i,n))}return r}generateDenoiseSamples(e,r){const a=2*Math.PI*r/e,l=1/e,o=l,s=[];let i=l,n=0;for(let v=0;v<e;v++)s.push(new t.Vector2(Math.cos(n),Math.sin(n)).multiplyScalar(Math.pow(i,.75))),i+=o,n+=a;return s}setSize(e,r){this.firstFrame(),this.width=e,this.height=r;const a=this.configuration.halfRes?.5:1;this.writeTargetInternal.setSize(e*a,r*a),this.readTargetInternal.setSize(e*a,r*a),this.accumulationRenderTarget.setSize(e*a,r*a),this.configuration.halfRes&&this.depthDownsampleTarget.setSize(e*a,r*a),this.configuration.transparencyAware&&(this.transparencyRenderTargetDWFalse.setSize(e,r),this.transparencyRenderTargetDWTrue.setSize(e,r)),this.outputTargetInternal.setSize(e,r)}setDepthTexture(e){this.depthTexture=e}firstFrame(){this.needsFrame=!0}render(e,r,a){const l=e.xr.enabled;e.xr.enabled=!1,e.capabilities.logarithmicDepthBuffer!==this.configuration.logarithmicDepthBuffer&&(this.configuration.logarithmicDepthBuffer=e.capabilities.logarithmicDepthBuffer,this.configureAOPass(this.configuration.logarithmicDepthBuffer,this.camera.isOrthographicCamera),this.configureDenoisePass(this.configuration.logarithmicDepthBuffer,this.camera.isOrthographicCamera),this.configureEffectCompositer(this.configuration.logarithmicDepthBuffer,this.camera.isOrthographicCamera)),this.detectTransparency(),(r.texture.type!==this.outputTargetInternal.texture.type||r.texture.format!==this.outputTargetInternal.texture.format)&&(this.outputTargetInternal.texture.type=r.texture.type,this.outputTargetInternal.texture.format=r.texture.format,this.outputTargetInternal.texture.needsUpdate=!0),this.camera.updateMatrixWorld(),this.lastViewMatrix.equals(this.camera.matrixWorldInverse)&&this.lastProjectionMatrix.equals(this.camera.projectionMatrix)&&this.configuration.accumulate&&!this.needsFrame?this.frame++:(this.configuration.accumulate&&(e.setRenderTarget(this.accumulationRenderTarget),e.clear(!0,!0,!0)),this.frame=0,this.needsFrame=!1),this.lastViewMatrix.copy(this.camera.matrixWorldInverse),this.lastProjectionMatrix.copy(this.camera.projectionMatrix);let o,s,i;this.debugMode&&(o=e.getContext(),s=o.getExtension("EXT_disjoint_timer_query_webgl2"),s===null&&(console.error("EXT_disjoint_timer_query_webgl2 not available, disabling debug mode."),this.debugMode=!1)),this.debugMode&&(i=o.createQuery(),o.beginQuery(s.TIME_ELAPSED_EXT,i)),this.configuration.transparencyAware&&this.renderTransparency(e),this._r.set(this.width,this.height);let n=this.configuration.aoRadius;if(this.configuration.halfRes&&this.configuration.screenSpaceRadius&&(n*=.5),this.frame<1024/this.configuration.aoSamples){this.configuration.halfRes&&(e.setRenderTarget(this.depthDownsampleTarget),this.depthDownsampleQuad.material.uniforms.sceneDepth.value=this.depthTexture,this.depthDownsampleQuad.material.uniforms.resolution.value=this._r,this.depthDownsampleQuad.material.uniforms.near.value=this.camera.near,this.depthDownsampleQuad.material.uniforms.far.value=this.camera.far,this.depthDownsampleQuad.material.uniforms.projectionMatrixInv.value=this.camera.projectionMatrixInverse,this.depthDownsampleQuad.material.uniforms.viewMatrixInv.value=this.camera.matrixWorld,this.depthDownsampleQuad.material.uniforms.logDepth.value=this.configuration.logarithmicDepthBuffer,this.depthDownsampleQuad.material.uniforms.ortho.value=this.camera.isOrthographicCamera,this.depthDownsampleQuad.render(e)),this.effectShaderQuad.material.uniforms.sceneDiffuse.value=r.texture,this.effectShaderQuad.material.uniforms.sceneDepth.value=this.configuration.halfRes?this.depthDownsampleTarget.textures[0]:this.depthTexture,this.effectShaderQuad.material.uniforms.sceneNormal.value=this.configuration.halfRes?this.depthDownsampleTarget.textures[1]:null,this.effectShaderQuad.material.uniforms.projMat.value=this.camera.projectionMatrix,this.effectShaderQuad.material.uniforms.viewMat.value=this.camera.matrixWorldInverse,this.effectShaderQuad.material.uniforms.projViewMat.value=this.camera.projectionMatrix.clone().multiply(this.camera.matrixWorldInverse.clone()),this.effectShaderQuad.material.uniforms.projectionMatrixInv.value=this.camera.projectionMatrixInverse,this.effectShaderQuad.material.uniforms.viewMatrixInv.value=this.camera.matrixWorld,this.effectShaderQuad.material.uniforms.cameraPos.value=this.camera.getWorldPosition(new t.Vector3),this.effectShaderQuad.material.uniforms.biasAdjustment.value=new t.Vector2(this.configuration.biasOffset,this.configuration.biasMultiplier),this.effectShaderQuad.material.uniforms.resolution.value=this.configuration.halfRes?this._r.clone().multiplyScalar(.5).floor():this._r,this.effectShaderQuad.material.uniforms.time.value=performance.now()/1e3,this.effectShaderQuad.material.uniforms.samples.value=this.samples,this.effectShaderQuad.material.uniforms.bluenoise.value=this.bluenoise,this.effectShaderQuad.material.uniforms.radius.value=n,this.effectShaderQuad.material.uniforms.distanceFalloff.value=this.configuration.distanceFalloff,this.effectShaderQuad.material.uniforms.near.value=this.camera.near,this.effectShaderQuad.material.uniforms.far.value=this.camera.far,this.effectShaderQuad.material.uniforms.logDepth.value=e.capabilities.logarithmicDepthBuffer,this.effectShaderQuad.material.uniforms.ortho.value=this.camera.isOrthographicCamera,this.effectShaderQuad.material.uniforms.screenSpaceRadius.value=this.configuration.screenSpaceRadius,this.effectShaderQuad.material.uniforms.frame.value=this.frame,e.setRenderTarget(this.writeTargetInternal),this.effectShaderQuad.render(e);for(let x=0;x<this.configuration.denoiseIterations;x++)[this.writeTargetInternal,this.readTargetInternal]=[this.readTargetInternal,this.writeTargetInternal],this.poissonBlurQuad.material.uniforms.tDiffuse.value=this.readTargetInternal.texture,this.poissonBlurQuad.material.uniforms.sceneDepth.value=this.configuration.halfRes?this.depthDownsampleTarget.textures[0]:this.depthTexture,this.poissonBlurQuad.material.uniforms.projMat.value=this.camera.projectionMatrix,this.poissonBlurQuad.material.uniforms.viewMat.value=this.camera.matrixWorldInverse,this.poissonBlurQuad.material.uniforms.projectionMatrixInv.value=this.camera.projectionMatrixInverse,this.poissonBlurQuad.material.uniforms.viewMatrixInv.value=this.camera.matrixWorld,this.poissonBlurQuad.material.uniforms.cameraPos.value=this.camera.getWorldPosition(new t.Vector3),this.poissonBlurQuad.material.uniforms.resolution.value=this.configuration.halfRes?this._r.clone().multiplyScalar(.5).floor():this._r,this.poissonBlurQuad.material.uniforms.time.value=performance.now()/1e3,this.poissonBlurQuad.material.uniforms.blueNoise.value=this.bluenoise,this.poissonBlurQuad.material.uniforms.radius.value=this.configuration.denoiseRadius*(this.configuration.halfRes?.5:1),this.poissonBlurQuad.material.uniforms.worldRadius.value=n,this.poissonBlurQuad.material.uniforms.distanceFalloff.value=this.configuration.distanceFalloff,this.poissonBlurQuad.material.uniforms.index.value=x,this.poissonBlurQuad.material.uniforms.poissonDisk.value=this.samplesDenoise,this.poissonBlurQuad.material.uniforms.near.value=this.camera.near,this.poissonBlurQuad.material.uniforms.far.value=this.camera.far,this.poissonBlurQuad.material.uniforms.logDepth.value=e.capabilities.logarithmicDepthBuffer,this.poissonBlurQuad.material.uniforms.screenSpaceRadius.value=this.configuration.screenSpaceRadius,e.setRenderTarget(this.writeTargetInternal),this.poissonBlurQuad.render(e);e.setRenderTarget(this.accumulationRenderTarget);const v=e.autoClear;e.autoClear=!1,this.accumulationQuad.material.uniforms.tDiffuse.value=this.writeTargetInternal.texture,this.accumulationQuad.material.uniforms.frame.value=this.frame,this.accumulationQuad.render(e),e.autoClear=v}this.configuration.transparencyAware&&(this.effectCompositerQuad.material.uniforms.transparencyDWFalse.value=this.transparencyRenderTargetDWFalse.texture,this.effectCompositerQuad.material.uniforms.transparencyDWTrue.value=this.transparencyRenderTargetDWTrue.texture,this.effectCompositerQuad.material.uniforms.transparencyDWTrueDepth.value=this.transparencyRenderTargetDWTrue.depthTexture,this.effectCompositerQuad.material.uniforms.transparencyAware.value=!0),this.effectCompositerQuad.material.uniforms.sceneDiffuse.value=r.texture,this.effectCompositerQuad.material.uniforms.sceneDepth.value=this.depthTexture,this.effectCompositerQuad.material.uniforms.aoTones.value=this.configuration.aoTones,this.effectCompositerQuad.material.uniforms.near.value=this.camera.near,this.effectCompositerQuad.material.uniforms.far.value=this.camera.far,this.effectCompositerQuad.material.uniforms.projectionMatrixInv.value=this.camera.projectionMatrixInverse,this.effectCompositerQuad.material.uniforms.viewMatrixInv.value=this.camera.matrixWorld,this.effectCompositerQuad.material.uniforms.logDepth.value=e.capabilities.logarithmicDepthBuffer,this.effectCompositerQuad.material.uniforms.ortho.value=this.camera.isOrthographicCamera,this.effectCompositerQuad.material.uniforms.downsampledDepth.value=this.configuration.halfRes?this.depthDownsampleTarget.textures[0]:this.depthTexture,this.effectCompositerQuad.material.uniforms.resolution.value=this._r,this.effectCompositerQuad.material.uniforms.blueNoise.value=this.bluenoise,this.effectCompositerQuad.material.uniforms.intensity.value=this.configuration.intensity,this.effectCompositerQuad.material.uniforms.renderMode.value=this.configuration.renderMode,this.effectCompositerQuad.material.uniforms.screenSpaceRadius.value=this.configuration.screenSpaceRadius,this.effectCompositerQuad.material.uniforms.radius.value=n,this.effectCompositerQuad.material.uniforms.distanceFalloff.value=this.configuration.distanceFalloff,this.effectCompositerQuad.material.uniforms.gammaCorrection.value=this.autosetGamma?this.renderToScreen:this.configuration.gammaCorrection,this.effectCompositerQuad.material.uniforms.tDiffuse.value=this.accumulationRenderTarget.texture,this.effectCompositerQuad.material.uniforms.color.value=this._c.copy(this.configuration.color).convertSRGBToLinear(),this.effectCompositerQuad.material.uniforms.colorMultiply.value=this.configuration.colorMultiply,this.effectCompositerQuad.material.uniforms.cameraPos.value=this.camera.getWorldPosition(new t.Vector3),this.effectCompositerQuad.material.uniforms.fog.value=!!this.scene.fog,this.scene.fog&&(this.scene.fog.isFog?(this.effectCompositerQuad.material.uniforms.fogExp.value=!1,this.effectCompositerQuad.material.uniforms.fogNear.value=this.scene.fog.near,this.effectCompositerQuad.material.uniforms.fogFar.value=this.scene.fog.far):this.scene.fog.isFogExp2?(this.effectCompositerQuad.material.uniforms.fogExp.value=!0,this.effectCompositerQuad.material.uniforms.fogDensity.value=this.scene.fog.density):console.error(`Unsupported fog type ${this.scene.fog.constructor.name} in SSAOPass.`)),e.setRenderTarget(this.outputTargetInternal),this.effectCompositerQuad.render(e),e.setRenderTarget(this.renderToScreen?null:a),this.copyQuad.material.uniforms.tDiffuse.value=this.outputTargetInternal.texture,this.copyQuad.render(e),this.debugMode&&(o.endQuery(s.TIME_ELAPSED_EXT),O(i,o,this)),e.xr.enabled=l}enableDebugMode(){this.debugMode=!0}disableDebugMode(){this.debugMode=!1}setDisplayMode(e){this.configuration.renderMode=["Combined","AO","No AO","Split","Split AO"].indexOf(e)}setQualityMode(e){e==="Performance"?(this.configuration.aoSamples=8,this.configuration.denoiseSamples=4,this.configuration.denoiseRadius=12):e==="Low"?(this.configuration.aoSamples=16,this.configuration.denoiseSamples=4,this.configuration.denoiseRadius=12):e==="Medium"?(this.configuration.aoSamples=16,this.configuration.denoiseSamples=8,this.configuration.denoiseRadius=12):e==="High"?(this.configuration.aoSamples=64,this.configuration.denoiseSamples=8,this.configuration.denoiseRadius=6):e==="Ultra"&&(this.configuration.aoSamples=64,this.configuration.denoiseSamples=16,this.configuration.denoiseRadius=6)}}Uint8Array.from(atob(A),h=>h.charCodeAt(0));const se=u.forwardRef(function({aoSamples:e=16,aoRadius:r=5,aoTones:a=0,denoiseSamples:l=8,denoiseRadius:o=12,distanceFalloff:s=1,intensity:i=1,denoiseIterations:n=2,renderMode:v=0,biasOffset:x=0,biasMultiplier:b=0,color:I=new t.Color(0,0,0),gammaCorrection:d=!1,logarithmicDepthBuffer:Q=!1,screenSpaceRadius:E=!1,halfRes:w=!1,depthAwareUpsampling:D=!0,colorMultiply:c=!0,transparencyAware:P=!1,accumulate:F=!1},C){const{camera:L,scene:U,size:f}=y.useThree(),p=u.useMemo(()=>new oe(U,L,f.width,f.height),[]),m=u.useRef(p);return m.current=p,u.useLayoutEffect(()=>{m.current.setSize(f.width,f.height)},[f.width,f.height]),u.useLayoutEffect(()=>{y.applyProps(m.current.configuration,{aoSamples:e,aoRadius:r,aoTones:a,denoiseSamples:l,denoiseRadius:o,distanceFalloff:s,intensity:i,denoiseIterations:n,renderMode:v,biasOffset:x,biasMultiplier:b,color:I,gammaCorrection:d,logarithmicDepthBuffer:Q,screenSpaceRadius:E,halfRes:w,depthAwareUpsampling:D,colorMultiply:c,transparencyAware:P,accumulate:F})},[e,r,a,l,o,s,i,n,v,x,b,I,d,Q,E,w,D,c,P,F]),u.useEffect(()=>()=>{p.dispose()},[p]),M.jsx("primitive",{ref:C,object:p})});exports.Depth=K;exports.Dithering=Y;exports.EffectComposer=q;exports.Geometry=X;exports.LensFlare=J;exports.Normal=_;exports.SSAO=se;
|
749
|
+
//# sourceMappingURL=r3f.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"r3f.cjs","sources":["../src/r3f/Depth.tsx","../src/r3f/Dithering.tsx","../src/r3f/EffectComposer.tsx","../src/shaders/geometryEffect.frag","../src/GeometryEffect.ts","../src/r3f/Geometry.tsx","../src/r3f/LensFlare.tsx","../src/r3f/Normal.tsx","../node_modules/.pnpm/n8ao@1.9.3_postprocessing@6.36.4_three@0.170.0__three@0.170.0/node_modules/n8ao/dist/N8AO.js","../src/r3f/SSAO.tsx"],"sourcesContent":null,"names":["Depth","wrapEffect","DepthEffect","Dithering","DitheringEffect","isConvolution","effect","EffectAttribute","EffectComposer","forwardRef","children","cameraProp","sceneProp","enabled","renderPriority","autoClear","resolutionScale","depthBuffer","stencilBuffer","multisampling","frameBufferType","HalfFloatType","forwardedRef","gl","useThree","defaultScene","scene","defaultCamera","camera","composer","geometryPass","useMemo","EffectComposerImpl","GeometryPass","size","useEffect","useFrame","state","delta","currentAutoClear","group","useRef","instance","useInstanceHandle","useLayoutEffect","passes","i","child","Effect","effects","next","pass","EffectPass","Pass","currentToneMapping","NoToneMapping","context","useImperativeHandle","jsx","EffectComposerContext","geometryEffect_default","geometryEffectOptionsDefaults","BlendFunction","GeometryEffect","options","blendFunction","geometryBuffer","output","packingShader","fragmentShader","Uniform","value","Geometry","props","others","useContext","LensFlare","lensFlareEffectOptionsDefaults","LensFlareEffect","Normal","normalEffectOptionsDefaults","normalPass","NormalEffect","$e4ca8dcb0218f846$var$_geometry","$5Whe3$BufferGeometry","$5Whe3$BufferAttribute","$5Whe3$Sphere","$e4ca8dcb0218f846$var$_camera","$5Whe3$OrthographicCamera","$e4ca8dcb0218f846$export$dcd670d73db751f5","material","$5Whe3$Mesh","renderer","$1ed45968c1160c3c$export$c9b263b9a17dffd7","$5Whe3$Matrix4","$5Whe3$Vector3","$5Whe3$Vector2","$12b21d24d1192a04$export$a815acccbd2c9a49","$e52378cd0f5a973d$export$57856b59f317262e","$26aca173e0984d99$export$1efdf491687cd442","$06269ad78f3c5fdf$export$2e2bcd8739ae039","$87431ee93b037844$var$bluenoiseBits","c","$87431ee93b037844$var$checkTimerQuery","timerQuery","elapsedTimeInMs","$87431ee93b037844$export$2489f9981ab0fa82","$5Whe3$Pass1","width","height","$5Whe3$Color","target","propName","oldProp","$5Whe3$ShaderMaterial","$5Whe3$WebGLRenderTarget","$5Whe3$LinearFilter","$5Whe3$RGBAFormat","$5Whe3$HalfFloatType","$5Whe3$DataTexture","$5Whe3$NoColorSpace","$5Whe3$RepeatWrapping","$5Whe3$NearestFilter","$5Whe3$REVISION","$5Whe3$WebGLMultipleRenderTargets","$5Whe3$RedFormat","$5Whe3$FloatType","isTransparency","obj","$5Whe3$DepthTexture","$5Whe3$UnsignedIntType","oldBackground","oldClearColor","oldClearAlpha","oldVisibility","oldAutoClearDepth","logarithmicDepthBuffer","ortho","e","p","n","points","k","theta","r","x","y","z","numSamples","numRings","angleStep","invNumSamples","radiusStep","samples","radius","angle","depthTexture","inputBuffer","outputBuffer","xrEnabled","ext","trueRadius","oldAutoClear","mode","SSAO","aoSamples","aoRadius","aoTones","denoiseSamples","denoiseRadius","distanceFalloff","intensity","denoiseIterations","renderMode","biasOffset","biasMultiplier","color","Color","gammaCorrection","screenSpaceRadius","halfRes","depthAwareUpsampling","colorMultiply","transparencyAware","accumulate","N8AOPostPass","effectRef","applyProps"],"mappings":"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","x_google_ignoreList":[8]}
|
package/build/r3f.js
CHANGED
package/build/r3f.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"r3f.js","sources":["../src/r3f/Depth.tsx","../src/r3f/Dithering.tsx","../src/r3f/EffectComposer.tsx","../src/shaders/geometryEffect.frag","../src/GeometryEffect.ts","../src/r3f/Geometry.tsx","../src/r3f/LensFlare.tsx","../src/r3f/Normal.tsx","../node_modules/.pnpm/n8ao@1.9.3_postprocessing@6.36.4_three@0.170.0__three@0.170.0/node_modules/n8ao/dist/N8AO.js","../src/r3f/SSAO.tsx"],"sourcesContent":null,"names":["Depth","wrapEffect","DepthEffect","Dithering","DitheringEffect","isConvolution","effect","EffectAttribute","EffectComposer","forwardRef","children","cameraProp","sceneProp","enabled","renderPriority","autoClear","resolutionScale","depthBuffer","stencilBuffer","multisampling","frameBufferType","HalfFloatType","forwardedRef","gl","useThree","defaultScene","scene","defaultCamera","camera","composer","geometryPass","useMemo","EffectComposerImpl","GeometryPass","size","useEffect","useFrame","state","delta","currentAutoClear","group","useRef","instance","useInstanceHandle","useLayoutEffect","passes","i","child","Effect","effects","next","pass","EffectPass","Pass","currentToneMapping","NoToneMapping","context","useImperativeHandle","jsx","EffectComposerContext","geometryEffect_default","geometryEffectOptionsDefaults","BlendFunction","GeometryEffect","options","blendFunction","geometryBuffer","output","packingShader","fragmentShader","Uniform","value","Geometry","props","others","useContext","LensFlare","lensFlareEffectOptionsDefaults","LensFlareEffect","Normal","normalEffectOptionsDefaults","normalPass","NormalEffect","$e4ca8dcb0218f846$var$_geometry","$5Whe3$BufferGeometry","$5Whe3$BufferAttribute","$5Whe3$Sphere","$e4ca8dcb0218f846$var$_camera","$5Whe3$OrthographicCamera","$e4ca8dcb0218f846$export$dcd670d73db751f5","material","$5Whe3$Mesh","renderer","$1ed45968c1160c3c$export$c9b263b9a17dffd7","$5Whe3$Matrix4","$5Whe3$Vector3","$5Whe3$Vector2","$12b21d24d1192a04$export$a815acccbd2c9a49","$e52378cd0f5a973d$export$57856b59f317262e","$26aca173e0984d99$export$1efdf491687cd442","$06269ad78f3c5fdf$export$2e2bcd8739ae039","$87431ee93b037844$var$bluenoiseBits","c","$87431ee93b037844$var$checkTimerQuery","timerQuery","elapsedTimeInMs","$87431ee93b037844$export$2489f9981ab0fa82","$5Whe3$Pass1","width","height","$5Whe3$Color","target","propName","oldProp","$5Whe3$ShaderMaterial","$5Whe3$WebGLRenderTarget","$5Whe3$LinearFilter","$5Whe3$RGBAFormat","$5Whe3$HalfFloatType","$5Whe3$DataTexture","$5Whe3$NoColorSpace","$5Whe3$RepeatWrapping","$5Whe3$NearestFilter","$5Whe3$REVISION","$5Whe3$WebGLMultipleRenderTargets","$5Whe3$RedFormat","$5Whe3$FloatType","isTransparency","obj","$5Whe3$DepthTexture","$5Whe3$UnsignedIntType","oldBackground","oldClearColor","oldClearAlpha","oldVisibility","oldAutoClearDepth","logarithmicDepthBuffer","ortho","e","p","n","points","k","theta","x","y","z","numSamples","numRings","angleStep","invNumSamples","radiusStep","samples","radius","angle","depthTexture","inputBuffer","outputBuffer","xrEnabled","ext","trueRadius","oldAutoClear","mode","SSAO","aoSamples","aoRadius","aoTones","denoiseSamples","denoiseRadius","distanceFalloff","intensity","denoiseIterations","renderMode","biasOffset","biasMultiplier","color","Color","gammaCorrection","screenSpaceRadius","halfRes","depthAwareUpsampling","colorMultiply","transparencyAware","accumulate","N8AOPostPass","effectRef","applyProps"],"mappings":"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","x_google_ignoreList":[8]}
|
package/build/shared.cjs
CHANGED
@@ -313,3 +313,4 @@ void mainImage(const vec4 inputColor, const vec2 uv, out vec4 outputColor) {
|
|
313
313
|
${f.transformShader}
|
314
314
|
${G}
|
315
315
|
`,{blendFunction:o,attributes:s.EffectAttribute.DEPTH,uniforms:new Map([["normalBuffer",new r.Uniform(n)],["projectionMatrix",new r.Uniform(new r.Matrix4)],["inverseProjectionMatrix",new r.Uniform(new r.Matrix4)]])}),this.camera=e,e!=null&&(this.mainCamera=e),this.octEncoded=a,this.reconstructFromDepth=u}get mainCamera(){return this.camera}set mainCamera(e){this.camera=e}update(e,t,o){const n=this.uniforms,a=n.get("projectionMatrix"),u=n.get("inverseProjectionMatrix"),c=this.camera;c!=null&&(a.value.copy(c.projectionMatrix),u.value.copy(c.projectionMatrixInverse))}get normalBuffer(){return this.uniforms.get("normalBuffer").value}set normalBuffer(e){this.uniforms.get("normalBuffer").value=e}get octEncoded(){return this.defines.has("OCT_ENCODED")}set octEncoded(e){e!==this.octEncoded&&(e?this.defines.set("OCT_ENCODED","1"):this.defines.delete("OCT_ENCODED"),this.setChanged())}get reconstructFromDepth(){return this.defines.has("RECONSTRUCT_FROM_DEPTH")}set reconstructFromDepth(e){e!==this.reconstructFromDepth&&(e?this.defines.set("RECONSTRUCT_FROM_DEPTH","1"):this.defines.delete("RECONSTRUCT_FROM_DEPTH"),this.setChanged())}}exports.DepthEffect=b;exports.DitheringEffect=D;exports.GeometryPass=C;exports.LensFlareEffect=O;exports.NormalEffect=H;exports.depthEffectOptionsDefaults=d;exports.ditheringOptionsDefaults=m;exports.lensFlareEffectOptionsDefaults=g;exports.normalEffectOptionsDefaults=x;exports.setupMaterialsForGeometryPass=p;
|
316
|
+
//# sourceMappingURL=shared.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"shared.cjs","sources":["../src/shaders/depthEffect.frag","../src/DepthEffect.ts","../src/shaders/ditheringEffect.frag","../src/DitheringEffect.ts","../src/setupMaterialsForGeometryPass.ts","../src/GeometryPass.ts","../src/shaders/downsampleThreshold.frag","../src/shaders/downsampleThreshold.vert","../src/DownsampleThresholdMaterial.ts","../src/shaders/lensFlareFeatures.frag","../src/shaders/lensFlareFeatures.vert","../src/LensFlareFeaturesMaterial.ts","../src/shaders/lensFlareEffect.frag","../src/LensFlareEffect.ts","../src/shaders/normalEffect.frag","../src/NormalEffect.ts"],"sourcesContent":null,"names":["depthEffect_default","depthEffectOptionsDefaults","BlendFunction","DepthEffect","Effect","options","blendFunction","useTurbo","near","far","depthShader","fragmentShader","EffectAttribute","Uniform","value","ditheringEffect_default","ditheringOptionsDefaults","DitheringEffect","SETUP","injectNormal","shader","vertexShader","injectGBuffer","type","outputBuffer1","packingShader","setupMaterialsForGeometryPass","ShaderLib","GeometryPass","RenderPass","inputBuffer","scene","camera","overrideMaterial","__publicField","HalfFloatType","renderer","outputBuffer","deltaTime","stencilTest","width","height","downsampleThreshold_default","downsampleThresholdMaterialParametersDefaults","DownsampleThresholdMaterial","ShaderMaterial","params","thresholdLevel","thresholdRange","others","Vector2","NoBlending","lensFlareFeatures_default","lensFlareFeaturesMaterialParametersDefaults","LensFlareFeaturesMaterial","ghostAmount","haloAmount","chromaticAberration","texelSize","lensFlareEffect_default","lensFlareEffectOptionsDefaults","Resolution","LensFlareEffect","resolutionScale","resolutionX","resolutionY","intensity","WebGLRenderTarget","ShaderPass","MipmapBlurPass","KawaseBlurPass","KernelSize","alpha","frameBufferType","resolution","normalEffect_default","normalEffectOptionsDefaults","NormalEffect","normalBuffer","octEncoded","reconstructFromDepth","transformShader","Matrix4","uniforms","projectionMatrix","inverseProjectionMatrix"],"mappings":"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"}
|
package/build/shared.js
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"shared.js","sources":["../src/shaders/depthEffect.frag","../src/DepthEffect.ts","../src/shaders/ditheringEffect.frag","../src/DitheringEffect.ts","../src/setupMaterialsForGeometryPass.ts","../src/GeometryPass.ts","../src/shaders/downsampleThreshold.frag","../src/shaders/downsampleThreshold.vert","../src/DownsampleThresholdMaterial.ts","../src/shaders/lensFlareFeatures.frag","../src/shaders/lensFlareFeatures.vert","../src/LensFlareFeaturesMaterial.ts","../src/shaders/lensFlareEffect.frag","../src/LensFlareEffect.ts","../src/shaders/normalEffect.frag","../src/NormalEffect.ts"],"sourcesContent":null,"names":["depthEffect_default","depthEffectOptionsDefaults","BlendFunction","DepthEffect","Effect","options","blendFunction","useTurbo","near","far","depthShader","fragmentShader","EffectAttribute","Uniform","value","ditheringEffect_default","ditheringOptionsDefaults","DitheringEffect","SETUP","injectNormal","shader","vertexShader","injectGBuffer","type","outputBuffer1","packingShader","setupMaterialsForGeometryPass","ShaderLib","GeometryPass","RenderPass","inputBuffer","scene","camera","overrideMaterial","__publicField","HalfFloatType","renderer","outputBuffer","deltaTime","stencilTest","width","height","downsampleThreshold_default","downsampleThresholdMaterialParametersDefaults","DownsampleThresholdMaterial","ShaderMaterial","params","thresholdLevel","thresholdRange","others","Vector2","NoBlending","lensFlareFeatures_default","lensFlareFeaturesMaterialParametersDefaults","LensFlareFeaturesMaterial","ghostAmount","haloAmount","chromaticAberration","texelSize","lensFlareEffect_default","lensFlareEffectOptionsDefaults","Resolution","LensFlareEffect","resolutionScale","resolutionX","resolutionY","intensity","WebGLRenderTarget","ShaderPass","MipmapBlurPass","KawaseBlurPass","KernelSize","alpha","frameBufferType","resolution","normalEffect_default","normalEffectOptionsDefaults","NormalEffect","normalBuffer","octEncoded","reconstructFromDepth","transformShader","Matrix4","uniforms","projectionMatrix","inverseProjectionMatrix"],"mappings":"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"}
|
package/package.json
CHANGED
package/src/shaders/ssr.frag
DELETED
@@ -1,381 +0,0 @@
|
|
1
|
-
// Based on the following work and adapted to Three.js.
|
2
|
-
// https://github.com/kode80/kode80SSR/blob/master/Assets/Resources/Shaders/SSR.shader
|
3
|
-
//
|
4
|
-
// Copyright (c) 2015, Ben Hopkins (kode80)
|
5
|
-
// All rights reserved.
|
6
|
-
//
|
7
|
-
// Redistribution and use in source and binary forms, with or without modification,
|
8
|
-
// are permitted provided that the following conditions are met:
|
9
|
-
//
|
10
|
-
// 1. Redistributions of source code must retain the above copyright notice,
|
11
|
-
// this list of conditions and the following disclaimer.
|
12
|
-
//
|
13
|
-
// 2. Redistributions in binary form must reproduce the above copyright notice,
|
14
|
-
// this list of conditions and the following disclaimer in the documentation
|
15
|
-
// and/or other materials provided with the distribution.
|
16
|
-
//
|
17
|
-
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
18
|
-
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
19
|
-
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
20
|
-
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
21
|
-
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
22
|
-
// OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
23
|
-
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
24
|
-
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
25
|
-
// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
26
|
-
|
27
|
-
#include <common>
|
28
|
-
#include <packing>
|
29
|
-
|
30
|
-
uniform sampler2D inputBuffer;
|
31
|
-
uniform sampler2D geometryBuffer;
|
32
|
-
uniform sampler2D depthBuffer;
|
33
|
-
|
34
|
-
uniform vec2 resolution;
|
35
|
-
uniform vec2 texelSize;
|
36
|
-
uniform float cameraNear;
|
37
|
-
uniform float cameraFar;
|
38
|
-
uniform mat4 projectionMatrix;
|
39
|
-
uniform mat4 inverseProjectionMatrix;
|
40
|
-
|
41
|
-
uniform float iterations;
|
42
|
-
uniform float binarySearchIterations;
|
43
|
-
uniform float pixelZSize;
|
44
|
-
uniform float pixelStride;
|
45
|
-
uniform float pixelStrideZCutoff;
|
46
|
-
uniform float maxRayDistance;
|
47
|
-
uniform float screenEdgeFadeStart;
|
48
|
-
uniform float eyeFadeStart;
|
49
|
-
uniform float eyeFadeEnd;
|
50
|
-
uniform float jitter;
|
51
|
-
uniform float roughness;
|
52
|
-
|
53
|
-
in vec2 vUv;
|
54
|
-
|
55
|
-
float readDepth(const vec2 uv) {
|
56
|
-
#if DEPTH_PACKING == 3201
|
57
|
-
return unpackRGBAToDepth(texture2D(depthBuffer, uv));
|
58
|
-
#else
|
59
|
-
return texture2D(depthBuffer, uv).r;
|
60
|
-
#endif // DEPTH_PACKING == 3201
|
61
|
-
}
|
62
|
-
|
63
|
-
float getLinearDepth(vec2 screenPosition) {
|
64
|
-
float fragCoordZ = texture2D(depthBuffer, screenPosition).x;
|
65
|
-
float nz = cameraNear * fragCoordZ;
|
66
|
-
return -nz / (cameraFar * (fragCoordZ - 1.0) - nz);
|
67
|
-
}
|
68
|
-
|
69
|
-
float getViewZ(const float depth) {
|
70
|
-
#ifdef PERSPECTIVE_CAMERA
|
71
|
-
return perspectiveDepthToViewZ(depth, cameraNear, cameraFar);
|
72
|
-
#else
|
73
|
-
return orthographicDepthToViewZ(depth, cameraNear, cameraFar);
|
74
|
-
#endif
|
75
|
-
}
|
76
|
-
|
77
|
-
vec3 readNormal(const vec2 uv) {
|
78
|
-
return unpackVec2ToNormal(texture2D(geometryBuffer, uv).xy);
|
79
|
-
}
|
80
|
-
|
81
|
-
void swapIfBigger(inout float aa, inout float bb) {
|
82
|
-
if (aa > bb) {
|
83
|
-
float tmp = aa;
|
84
|
-
aa = bb;
|
85
|
-
bb = tmp;
|
86
|
-
}
|
87
|
-
}
|
88
|
-
|
89
|
-
float distanceSquared(vec2 a, vec2 b) {
|
90
|
-
a -= b;
|
91
|
-
return dot(a, a);
|
92
|
-
}
|
93
|
-
|
94
|
-
bool rayIntersectsDepth(float zA, float zB, vec2 uv) {
|
95
|
-
float sceneZMax = getViewZ(
|
96
|
-
reverseLogDepth(readDepth(uv), cameraNear, cameraFar)
|
97
|
-
);
|
98
|
-
float sceneZMin = sceneZMax - pixelZSize;
|
99
|
-
return zB >= sceneZMin && zA <= sceneZMax;
|
100
|
-
}
|
101
|
-
|
102
|
-
// Trace a ray in screenspace from rayOrg (in camera space) pointing in
|
103
|
-
// rayDirection (in camera space) using jitter to offset the ray based on
|
104
|
-
// (jitter * pixelStride).
|
105
|
-
// Returns true if the ray hits a pixel in the depth buffer and outputs the
|
106
|
-
// hitPixel (in UV space), the hitPoint (in camera space) and the number of
|
107
|
-
// iterations it took to get there.
|
108
|
-
//
|
109
|
-
// Based on Morgan McGuire & Mike's GLSL implementation:
|
110
|
-
// http://casual-effects.blogspot.com/2014/08/screen-space-ray-tracing.html
|
111
|
-
bool traceScreenSpaceRay(
|
112
|
-
vec3 rayOrigin,
|
113
|
-
vec3 rayDirection,
|
114
|
-
float jitter,
|
115
|
-
out vec2 hitPixel,
|
116
|
-
out vec3 hitPoint,
|
117
|
-
out float iterationCount
|
118
|
-
) {
|
119
|
-
// Clip to the near plane
|
120
|
-
float rayLength =
|
121
|
-
rayOrigin.z + rayDirection.z * maxRayDistance > -cameraNear
|
122
|
-
? (-cameraNear - rayOrigin.z) / rayDirection.z
|
123
|
-
: maxRayDistance;
|
124
|
-
vec3 rayEnd = rayOrigin + rayDirection * rayLength;
|
125
|
-
|
126
|
-
// Project into homogeneous clip space
|
127
|
-
vec4 H0 = projectionMatrix * vec4(rayOrigin, 1.0);
|
128
|
-
vec4 H1 = projectionMatrix * vec4(rayEnd, 1.0);
|
129
|
-
float k0 = 1.0 / H0.w;
|
130
|
-
float k1 = 1.0 / H1.w;
|
131
|
-
|
132
|
-
// The interpolated homogeneous version of the camera-space points
|
133
|
-
vec3 Q0 = rayOrigin * k0;
|
134
|
-
vec3 Q1 = rayEnd * k1;
|
135
|
-
|
136
|
-
// Screen-space endpoints
|
137
|
-
vec2 P0 = H0.xy * k0;
|
138
|
-
vec2 P1 = H1.xy * k1;
|
139
|
-
P0 = (P0 * 0.5 + 0.5) * resolution;
|
140
|
-
P1 = (P1 * 0.5 + 0.5) * resolution;
|
141
|
-
|
142
|
-
// If the line is degenerate, make it cover at least one pixel to avoid
|
143
|
-
// handling zero-pixel extent as a special case later.
|
144
|
-
P1 += distanceSquared(P0, P1) < 0.0001 ? 0.01 : 0.0;
|
145
|
-
vec2 delta = P1 - P0;
|
146
|
-
|
147
|
-
// Permute so that the primary iteration is in x to collapse all quadrant-
|
148
|
-
// specific DDA class later.
|
149
|
-
bool permute = false;
|
150
|
-
if (abs(delta.x) < abs(delta.y)) {
|
151
|
-
// This is a more-vertical line
|
152
|
-
permute = true;
|
153
|
-
delta = delta.yx;
|
154
|
-
P0 = P0.yx;
|
155
|
-
P1 = P1.yx;
|
156
|
-
}
|
157
|
-
|
158
|
-
float stepDirection = sign(delta.x);
|
159
|
-
float invdx = stepDirection / delta.x;
|
160
|
-
|
161
|
-
// Track the derivatives of Q and K
|
162
|
-
vec3 dQ = (Q1 - Q0) * invdx;
|
163
|
-
float dk = (k1 - k0) * invdx;
|
164
|
-
vec2 dP = vec2(stepDirection, delta.y * invdx);
|
165
|
-
|
166
|
-
// Calculate pixel stride based on distance of ray origin from camera.
|
167
|
-
// Since perspective means distant objects will be smaller in screen space,
|
168
|
-
// we can use this to have higher quality reflections for far away objects
|
169
|
-
// while still using a large pixel stride for near objects (and increase
|
170
|
-
// performance). This also helps mitigate artifacts on distance reflections
|
171
|
-
// when we use a large pixel stride.
|
172
|
-
float strideScaler = 1.0 - min(1.0, -rayOrigin.z / pixelStrideZCutoff);
|
173
|
-
float pixelStride = 1.0 + strideScaler * pixelStride;
|
174
|
-
|
175
|
-
// Scale derivatives by the desired pixel stride and then offset the starting
|
176
|
-
// values by the jitter fraction.
|
177
|
-
dP *= pixelStride;
|
178
|
-
dQ *= pixelStride;
|
179
|
-
dk *= pixelStride;
|
180
|
-
P0 += dP * jitter;
|
181
|
-
Q0 += dQ * jitter;
|
182
|
-
k0 += dk * jitter;
|
183
|
-
|
184
|
-
float zA = 0.0;
|
185
|
-
float zB = 0.0;
|
186
|
-
|
187
|
-
// Track ray step and derivatives in a vec4 to parallelize.
|
188
|
-
vec4 PQK = vec4(P0, Q0.z, k0);
|
189
|
-
vec4 dPQK = vec4(dP, dQ.z, dk);
|
190
|
-
bool intersect = false;
|
191
|
-
|
192
|
-
float count = 0.0;
|
193
|
-
for (int i = 0; i < MAX_ITERATIONS; ++i) {
|
194
|
-
if (float(i) >= iterations) {
|
195
|
-
break;
|
196
|
-
}
|
197
|
-
if (intersect) {
|
198
|
-
break;
|
199
|
-
}
|
200
|
-
|
201
|
-
PQK += dPQK;
|
202
|
-
zA = zB;
|
203
|
-
zB = (dPQK.z * 0.5 + PQK.z) / (dPQK.w * 0.5 + PQK.w);
|
204
|
-
swapIfBigger(zB, zA);
|
205
|
-
|
206
|
-
hitPixel = permute ? PQK.yx : PQK.xy;
|
207
|
-
hitPixel *= texelSize;
|
208
|
-
intersect = rayIntersectsDepth(zA, zB, hitPixel);
|
209
|
-
|
210
|
-
count = float(i);
|
211
|
-
}
|
212
|
-
|
213
|
-
// Binary search refinement
|
214
|
-
if (pixelStride > 1.0 && intersect) {
|
215
|
-
float originalStride = pixelStride * 0.5;
|
216
|
-
float stride = originalStride;
|
217
|
-
|
218
|
-
PQK -= dPQK;
|
219
|
-
dPQK /= pixelStride;
|
220
|
-
zA = PQK.z / PQK.w;
|
221
|
-
zB = zA;
|
222
|
-
|
223
|
-
for (int i = 0; i < MAX_BINARY_SEARCH_ITERATIONS; ++i) {
|
224
|
-
if (float(i) >= binarySearchIterations) {
|
225
|
-
break;
|
226
|
-
}
|
227
|
-
|
228
|
-
PQK += dPQK * stride;
|
229
|
-
zA = zB;
|
230
|
-
zB = (dPQK.z * -0.5 + PQK.z) / (dPQK.w * -0.5 + PQK.w);
|
231
|
-
swapIfBigger(zB, zA);
|
232
|
-
|
233
|
-
hitPixel = permute ? PQK.yx : PQK.xy;
|
234
|
-
hitPixel *= texelSize;
|
235
|
-
|
236
|
-
originalStride *= 0.5;
|
237
|
-
stride = rayIntersectsDepth(zA, zB, hitPixel)
|
238
|
-
? -originalStride
|
239
|
-
: originalStride;
|
240
|
-
}
|
241
|
-
}
|
242
|
-
|
243
|
-
Q0.xy += dQ.xy * count;
|
244
|
-
Q0.z = PQK.z;
|
245
|
-
hitPoint = Q0 / PQK.w;
|
246
|
-
iterationCount = count;
|
247
|
-
|
248
|
-
return intersect;
|
249
|
-
}
|
250
|
-
|
251
|
-
// https://github.com/kode80/kode80SSR
|
252
|
-
float calculateAlphaForIntersection(
|
253
|
-
bool intersect,
|
254
|
-
float iterationCount,
|
255
|
-
float specularStrength,
|
256
|
-
vec2 hitPixel,
|
257
|
-
vec3 hitPoint,
|
258
|
-
vec3 rayOrigin,
|
259
|
-
vec3 rayDirection
|
260
|
-
) {
|
261
|
-
float alpha = 1.0;
|
262
|
-
// float alpha = min(1.0, specularStrength);
|
263
|
-
|
264
|
-
// Fade ray hits test approach the maximum iterations.
|
265
|
-
alpha *= 1.0 - iterationCount / iterations;
|
266
|
-
|
267
|
-
// Fade ray hits that approach the screen edge.
|
268
|
-
float screenFade = screenEdgeFadeStart;
|
269
|
-
vec2 hitPixelNDC = hitPixel * 2.0 - 1.0;
|
270
|
-
float maxDistance = min(1.0, max(abs(hitPixelNDC.x), abs(hitPixelNDC.y)));
|
271
|
-
alpha *= 1.0 - max(0.0, maxDistance - screenFade) / (1.0 - screenFade);
|
272
|
-
|
273
|
-
// Fade ray hits base on how much they face the camera.
|
274
|
-
float eyeFadeStart = eyeFadeStart;
|
275
|
-
float eyeFadeEnd = eyeFadeEnd;
|
276
|
-
swapIfBigger(eyeFadeStart, eyeFadeEnd);
|
277
|
-
float eyeDirection = clamp(rayDirection.z, eyeFadeStart, eyeFadeEnd);
|
278
|
-
alpha *= 1.0 - (eyeDirection - eyeFadeStart) / (eyeFadeEnd - eyeFadeStart);
|
279
|
-
|
280
|
-
// Fade ray hits based on distance from ray origin.
|
281
|
-
float rayDistance = distance(rayOrigin, hitPoint);
|
282
|
-
alpha *= 1.0 - clamp(rayDistance / maxRayDistance, 0.0, 1.0);
|
283
|
-
|
284
|
-
alpha *= intersect ? 1.0 : 0.0;
|
285
|
-
|
286
|
-
return alpha;
|
287
|
-
}
|
288
|
-
|
289
|
-
// TODO: Use blue noise.
|
290
|
-
vec2 whiteNoise(vec3 v) {
|
291
|
-
v = fract(v * vec3(443.897, 441.423, 0.0973));
|
292
|
-
v += dot(v, v.yzx + 19.19);
|
293
|
-
return fract((v.xx + v.yz) * v.zy);
|
294
|
-
}
|
295
|
-
|
296
|
-
// Source: https://github.com/tuxalin/vulkanri/blob/master/examples/pbr_ibl/shaders/importanceSampleGGX.glsl
|
297
|
-
vec3 sampleGGX(const vec3 n, const vec2 u, float roughness) {
|
298
|
-
float alpha = roughness * roughness;
|
299
|
-
float alpha2 = alpha * alpha;
|
300
|
-
|
301
|
-
float phi = 2.0 * PI * u.x;
|
302
|
-
float cosTheta = sqrt((1.0 - u.y) / (1.0 + (alpha2 - 1.0) * u.y));
|
303
|
-
float sinTheta = sqrt(1.0 - cosTheta * cosTheta);
|
304
|
-
|
305
|
-
vec3 H;
|
306
|
-
H.x = cos(phi) * sinTheta;
|
307
|
-
H.y = sin(phi) * sinTheta;
|
308
|
-
H.z = cosTheta;
|
309
|
-
|
310
|
-
vec3 up = abs(n.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0);
|
311
|
-
vec3 tangent = normalize(cross(up, n));
|
312
|
-
vec3 bitangent = cross(n, tangent);
|
313
|
-
|
314
|
-
vec3 sampleVec = tangent * H.x + bitangent * H.y + n * H.z;
|
315
|
-
return normalize(sampleVec);
|
316
|
-
}
|
317
|
-
|
318
|
-
void main() {
|
319
|
-
vec4 geometry = texture2D(geometryBuffer, vUv);
|
320
|
-
float metalness = geometry.z;
|
321
|
-
if (metalness < 0.01) {
|
322
|
-
return;
|
323
|
-
}
|
324
|
-
|
325
|
-
float depth = readDepth(vUv);
|
326
|
-
if (depth > 0.9999) {
|
327
|
-
return;
|
328
|
-
}
|
329
|
-
depth = reverseLogDepth(depth, cameraNear, cameraFar);
|
330
|
-
float viewZ = getViewZ(depth);
|
331
|
-
|
332
|
-
vec3 viewPosition = screenToView(
|
333
|
-
vUv,
|
334
|
-
depth,
|
335
|
-
viewZ,
|
336
|
-
projectionMatrix,
|
337
|
-
inverseProjectionMatrix
|
338
|
-
);
|
339
|
-
vec3 viewNormal = readNormal(vUv);
|
340
|
-
|
341
|
-
vec3 rayOrigin = viewPosition;
|
342
|
-
vec3 rayDirection = reflect(normalize(rayOrigin), viewNormal);
|
343
|
-
float scaledRoughness = geometry.w * roughness;
|
344
|
-
if (scaledRoughness > 0.0001) {
|
345
|
-
rayDirection = sampleGGX(
|
346
|
-
rayDirection,
|
347
|
-
whiteNoise(vec3(vUv, 0.0)),
|
348
|
-
scaledRoughness
|
349
|
-
);
|
350
|
-
}
|
351
|
-
|
352
|
-
vec2 uv2 = vUv * resolution;
|
353
|
-
float c = (uv2.x + uv2.y) * 0.25;
|
354
|
-
float jitter = mod(c, 1.0) * jitter;
|
355
|
-
|
356
|
-
vec2 hitPixel;
|
357
|
-
vec3 hitPoint;
|
358
|
-
float iterationCount;
|
359
|
-
|
360
|
-
bool intersect = traceScreenSpaceRay(
|
361
|
-
rayOrigin,
|
362
|
-
rayDirection,
|
363
|
-
jitter,
|
364
|
-
hitPixel,
|
365
|
-
hitPoint,
|
366
|
-
iterationCount
|
367
|
-
);
|
368
|
-
|
369
|
-
float alpha = calculateAlphaForIntersection(
|
370
|
-
intersect,
|
371
|
-
iterationCount,
|
372
|
-
1.0,
|
373
|
-
hitPixel,
|
374
|
-
hitPoint,
|
375
|
-
rayOrigin,
|
376
|
-
rayDirection
|
377
|
-
);
|
378
|
-
|
379
|
-
vec3 color = texture2D(inputBuffer, hitPixel).rgb;
|
380
|
-
gl_FragColor = vec4(color, alpha);
|
381
|
-
}
|
package/src/shaders/ssr.vert
DELETED