提交 8c5f2d32 编写于 作者: A alteredq

WebGLDeferredRenderer: added antialias constructor parameter.

This mirrors WebGLRenderer: when "antialias = true" FXAA is enabled, by default it's disabled.

Unlike WebGLRenderer though antialiasing can be enabled / disabled in runtime:

renderer.setAntialias( true );
renderer.setAntialias( false );
上级 7cdc9c57
......@@ -16,11 +16,13 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
var brightness = parameters.brightness;
var antialias = parameters.antialias !== undefined ? parameters.antialias : false;
this.renderer = parameters.renderer;
if ( this.renderer === undefined ) {
this.renderer = new THREE.WebGLRenderer( { alpha: false } );
this.renderer = new THREE.WebGLRenderer( { alpha: false, antialias: false } );
this.renderer.setSize( width, height );
this.renderer.setClearColorHex( 0x000000, 0 );
......@@ -459,7 +461,30 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
};
//
// external API
this.setAntialias = function ( enabled ) {
antialias = enabled;
if ( antialias ) {
effectFXAA.enabled = true;
compositePass.renderToScreen = false;
} else {
effectFXAA.enabled = false;
compositePass.renderToScreen = true;
}
};
this.getAntialias = function () {
return antialias;
};
this.setSize = function ( width, height ) {
......@@ -619,6 +644,8 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
};
//
var createRenderTargets = function ( ) {
var rtParamsFloatLinear = { minFilter: THREE.NearestFilter, magFilter: THREE.LinearFilter, stencilBuffer: true,
......@@ -694,6 +721,17 @@ THREE.WebGLDeferredRenderer = function ( parameters ) {
compFinal.addPass( compositePass );
compFinal.addPass( effectFXAA );
if ( antialias ) {
effectFXAA.enabled = true;
compositePass.renderToScreen = false;
} else {
effectFXAA.enabled = false;
compositePass.renderToScreen = true;
}
};
// init
......
......@@ -115,7 +115,7 @@
// renderer
renderer = new THREE.WebGLDeferredRenderer( { width: WIDTH, height: HEIGHT, scale: SCALE, brightness: 2 } );
renderer = new THREE.WebGLDeferredRenderer( { width: WIDTH, height: HEIGHT, scale: SCALE, brightness: 2, antialias: true } );
renderer.domElement.style.position = "absolute";
renderer.domElement.style.top = MARGIN + "px";
......
......@@ -111,7 +111,7 @@
// renderer
renderer = new THREE.WebGLDeferredRenderer( { width: WIDTH, height: HEIGHT, scale: SCALE, brightness: 2 } );
renderer = new THREE.WebGLDeferredRenderer( { width: WIDTH, height: HEIGHT, scale: SCALE, brightness: 2, antialias: true } );
renderer.domElement.style.position = "absolute";
renderer.domElement.style.top = MARGIN + "px";
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册