Skip to content

Commit

Permalink
added editor gamma options #2 (mrdoob#9231)
Browse files Browse the repository at this point in the history
* Update index.html

* Revert "Update index.html"

This reverts commit 76f4786.

* added options for gammaInput and gammaOutput

* added storage for gammaInput and gammaOutput

* added gammaInOut values to json export

* further adds

added gammaInOutput options to the app and fixed them not loading on
page reload

* dang that was wrong
  • Loading branch information
thmasn authored and mrdoob committed Jun 28, 2016
1 parent bb98531 commit aa078fa
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 7 deletions.
3 changes: 3 additions & 0 deletions editor/js/Config.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ var Config = function ( name ) {
'project/renderer': 'WebGLRenderer',
'project/renderer/antialias': true,
'project/renderer/shadows': true,
'project/renderer/softShadows': false,
'project/renderer/gammaInput': false,
'project/renderer/gammaOutput': false,
'project/editable': false,
'project/vr': false,

Expand Down
2 changes: 2 additions & 0 deletions editor/js/Editor.js
Original file line number Diff line number Diff line change
Expand Up @@ -486,6 +486,8 @@ Editor.prototype = {
project: {
shadows: this.config.getKey( 'project/renderer/shadows' ),
editable: this.config.getKey( 'project/editable' ),
gammaInput: this.config.getKey( 'project/renderer/gammaInput' ),
gammaOutput: this.config.getKey( 'project/renderer/gammaOutput' ),
vr: this.config.getKey( 'project/vr' )
},
camera: this.camera.toJSON(),
Expand Down
33 changes: 27 additions & 6 deletions editor/js/Sidebar.Project.js
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Sidebar.Project = function ( editor ) {

} );
rendererPropertiesRow.add( rendererAntialias );

// shadow

var rendererShadows = new UI.THREE.Boolean( config.getKey( 'project/renderer/shadows' ), 'shadows' ).onChange( function () {
Expand All @@ -80,6 +80,26 @@ Sidebar.Project = function ( editor ) {

container.add( rendererPropertiesRow );

//gamma input

var rendererGammaInput = new UI.THREE.Boolean( config.getKey( 'project/renderer/gammaInput' ), 'gammaInput' ).onChange( function () {

config.setKey( 'project/renderer/gammaInput', this.getValue() );
updateRenderer();

} );
rendererPropertiesRow.add( rendererGammaInput );

//gamma output

var rendererGammaOutput = new UI.THREE.Boolean( config.getKey( 'project/renderer/gammaOutput' ), 'gammaOutput' ).onChange( function () {

config.setKey( 'project/renderer/gammaOutput', this.getValue() );
updateRenderer();

} );
rendererPropertiesRow.add( rendererGammaOutput );

// Editable

var editableRow = new UI.Row();
Expand Down Expand Up @@ -113,11 +133,11 @@ Sidebar.Project = function ( editor ) {

function updateRenderer() {

createRenderer( rendererType.getValue(), rendererAntialias.getValue(), rendererShadows.getValue() );
createRenderer( rendererType.getValue(), rendererAntialias.getValue(), rendererShadows.getValue(), rendererGammaInput.getValue(), rendererGammaOutput.getValue() );

}

function createRenderer( type, antialias, shadows ) {
function createRenderer( type, antialias, shadows, gammaIn, gammaOut ) {

if ( type === 'WebGLRenderer' && System.support.webgl === false ) {

Expand All @@ -127,8 +147,9 @@ Sidebar.Project = function ( editor ) {

rendererPropertiesRow.setDisplay( type === 'WebGLRenderer' ? '' : 'none' );

var renderer = new rendererTypes[ type ]( { antialias: antialias } );

var renderer = new rendererTypes[ type ]( { antialias: antialias} );
renderer.gammaInput = gammaIn;
renderer.gammaOutput = gammaOut;
if ( shadows && renderer.shadowMap ) {

renderer.shadowMap.enabled = true;
Expand All @@ -140,7 +161,7 @@ Sidebar.Project = function ( editor ) {

}

createRenderer( config.getKey( 'project/renderer' ), config.getKey( 'project/renderer/antialias' ), config.getKey( 'project/renderer/shadows' ) );
createRenderer( config.getKey( 'project/renderer' ), config.getKey( 'project/renderer/antialias' ), config.getKey( 'project/renderer/shadows' ), config.getKey( 'project/renderer/gammaInput' ), config.getKey( 'project/renderer/gammaOutput' ) );

return container;

Expand Down
3 changes: 2 additions & 1 deletion editor/js/libs/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,11 @@ var APP = {
this.load = function ( json ) {

vr = json.project.vr;

renderer = new THREE.WebGLRenderer( { antialias: true } );
renderer.setClearColor( 0x000000 );
renderer.setPixelRatio( window.devicePixelRatio );
renderer.gammaInput = json.project.gammaInput;
renderer.gammaOutput = json.project.gammaOutput;

if ( json.project.shadows ) {

Expand Down

0 comments on commit aa078fa

Please sign in to comment.