|
@@ -264,13 +264,11 @@ var Viewport = function ( editor ) {
|
|
|
|
|
|
} );
|
|
|
|
|
|
- signals.rendererChanged.add( function ( type ) {
|
|
|
+ signals.rendererChanged.add( function ( type, antialias ) {
|
|
|
|
|
|
container.dom.removeChild( renderer.domElement );
|
|
|
|
|
|
- renderer = new THREE[ type ]( { antialias: true } );
|
|
|
- renderer.autoClear = false;
|
|
|
- renderer.autoUpdateScene = false;
|
|
|
+ renderer = createRenderer( type, antialias );
|
|
|
renderer.setClearColor( clearColor );
|
|
|
renderer.setSize( container.dom.offsetWidth, container.dom.offsetHeight );
|
|
|
|
|
@@ -508,28 +506,24 @@ var Viewport = function ( editor ) {
|
|
|
|
|
|
//
|
|
|
|
|
|
- var clearColor, renderer;
|
|
|
-
|
|
|
- if ( editor.config.getKey( 'renderer' ) !== undefined ) {
|
|
|
+ var createRenderer = function ( type, antialias ) {
|
|
|
|
|
|
- renderer = new THREE[ editor.config.getKey( 'renderer' ) ]( { antialias: true } );
|
|
|
+ if ( type === 'WebGLRenderer' && System.support.webgl === false ) {
|
|
|
|
|
|
- } else {
|
|
|
+ type = 'CanvasRenderer';
|
|
|
|
|
|
- if ( System.support.webgl === true ) {
|
|
|
-
|
|
|
- renderer = new THREE.WebGLRenderer( { antialias: true } );
|
|
|
-
|
|
|
- } else {
|
|
|
+ }
|
|
|
|
|
|
- renderer = new THREE.CanvasRenderer();
|
|
|
+ var renderer = new THREE[ type ]( { antialias: antialias } );
|
|
|
+ renderer.autoClear = false;
|
|
|
+ renderer.autoUpdateScene = false;
|
|
|
|
|
|
- }
|
|
|
+ return renderer;
|
|
|
|
|
|
- }
|
|
|
+ };
|
|
|
|
|
|
- renderer.autoClear = false;
|
|
|
- renderer.autoUpdateScene = false;
|
|
|
+ var clearColor;
|
|
|
+ var renderer = createRenderer( editor.config.getKey( 'renderer' ), editor.config.getKey( 'renderer/antialias' ) );
|
|
|
container.dom.appendChild( renderer.domElement );
|
|
|
|
|
|
animate();
|