@vci/quick-three
Version:
quick three
24 lines (20 loc) • 852 B
JavaScript
import { QtPlugin } from "./QtPlugin";
import { EffectComposer, OutputPass, RenderPass, SMAAPass } from "three/addons";
class PluginEffectComposerOrigin extends QtPlugin {
static namespace = "effect";
init() {
super.init();
const { qt } = this;
const { renderer, scene, camera } = qt;
const composer = this.composer = new EffectComposer(renderer);
composer.addPass(this.passRender = new RenderPass(scene, camera));
composer.addPass(this.passSMAA = new SMAAPass());
composer.addPass(this.passOutput = new OutputPass());
this.addEventListener(QtPlugin.Events.Render, e => {
this.composer.render(e.detail.delta);
qt.renderer.info.reset();
});
this.addEventListener(QtPlugin.Events.Resize, e => this.composer.setSize(e.detail.width, e.detail.height));
}
}
export { PluginEffectComposerOrigin };