Skip to content

Instantly share code, notes, and snippets.

@milcktoast
Last active May 29, 2019 20:36
Show Gist options
  • Save milcktoast/1e3fef16fec1379e21b17cb66f909eeb to your computer and use it in GitHub Desktop.
Save milcktoast/1e3fef16fec1379e21b17cb66f909eeb to your computer and use it in GitHub Desktop.
let main = new RenderPass(scene.root, camera)
let mainSave = new SaveSwapPass()
let mainRead = new TextureEffect({
blendFunction: BlendFunction.NORMAL,
texture: mainSave.renderTarget.texture
})
let composite = new EffectPass(camera,
mainRead,
// other inputs ...
// other effects ...
vignette)
let mainComposer = new EffectComposer(renderer)
let compositeComposer = new EffectComposer(renderer)
mainComposer.addPass(main)
mainComposer.addPass(mainSave)
compositeComposer.addPass(composite)
import { SavePass } from 'postprocessing'
export class SaveSwapPass extends SavePass {
render (renderer, inputBuffer, outputBuffer, deltaTime, stencilTest, composer) {
let currentRenderTarget = this.renderTarget
let composerRenderTargetName = inputBuffer === composer.inputBuffer
? 'inputBuffer'
: 'outputBuffer'
this.renderTarget = composer[composerRenderTargetName]
composer[composerRenderTargetName] = currentRenderTarget
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment