【发布时间】:2018-06-15 03:50:50
【问题描述】:
我创建了一个codepen showing the issue。问题是:渲染的是黑屏而不是旋转的立方体。
我在三个.js 之上使用https://github.com/vanruesc/postprocessing。
核心后处理代码如下:
const composer = new POSTPROCESSING.EffectComposer(renderer)
const renderPass = new POSTPROCESSING.RenderPass(scene, camera)
renderPass.renderToScreen = false
composer.addPass(renderPass)
const renderTargetParameters = { format: THREE.RGBAFormat, stencilBuffer: true }
const renderTarget2 = new THREE.WebGLRenderTarget(window.innerWidth, window.innerHeight, renderTargetParameters)
const effectSaveTarget = new POSTPROCESSING.SavePass(renderTarget2)
effectSaveTarget.clear = false
// motion blur
const effectBlend = new POSTPROCESSING.ShaderPass(THREE.BlendShader, 'tDiffuse1')
effectBlend.material.uniforms[ 'tDiffuse2' ].value = effectSaveTarget.renderTarget
effectBlend.material.uniforms[ 'mixRatio' ].value = 0.0
effectBlend.material.needsUpdate = true
effectSaveTarget.renderToScreen = false
effectBlend.renderToScreen = true
console.log(effectBlend)
composer.addPass(effectBlend)
composer.addPass(effectSaveTarget)
然后在主渲染循环中我只输入composer.render(delta)
【问题讨论】:
标签: javascript three.js 3d