3

Three jsの1つのオブジェクトでdat.guiを使用して色を設定する方法

この例では、ボックス 3のようなダイアログで色を選択したい

これを作る方法は?

4

5 に答える 5

4

次の関数を作成して、色を選択して色を変更します

function cambiarColor( obj )
{
    var gui = new dat.GUI();


    var Configuracion=function(){
            this.color = "#ffae23";
    }
    var conf = new Configuracion();

    var controlador = gui.addColor( conf, 'color');
    controlador.onChange( function( colorValue  )
    {
      //the return value by the chooser is like as: #ffff so
      //remove the # and replace by 0x
      colorValue=colorValue.replace( '#','0x' );
      //create a Color
      var colorObject = new THREE.Color( colorValue ) ;
      //set the color in the object
      obj.material.color = colorObject;
    });
}
于 2013-02-02T21:32:12.957 に答える
3

Three.jsの色または均一な色をdat.guiに実装する簡単な方法:

dat.GUI.prototype.addThreeColor=function(obj,varName){
    // threejs & dat.gui have color incompatible formats so we use a dummy data as target :
    var dummy={};
    // set dummy initial value :
    dummy[varName]=obj[varName].getStyle(); 
    return this.addColor(dummy,varName)
        .onChange(function( colorValue  ){
            //set color from result :
            obj[varName].setStyle(colorValue);
        });
};
dat.GUI.prototype.addThreeUniformColor=function(material,uniformName,label){
    return this.addThreeColor(material.uniforms[uniformName],"value").name(label||uniformName);
};
于 2015-10-25T01:55:04.330 に答える
0

この例http://jaanga.github.com/blode/#jaanga.github.com/Blode/DAT.GUI-User-Controlsは十分ではありませんか?

于 2013-02-02T21:02:04.823 に答える