29

Blender からエクスポートされた .js ファイルがいくつかあり、それらをロードしますTHREE.JSONLoader();

私のコールバック:

var callback   = function( geometry ) { createMesh(geometry);

私の読み込み:

loader.load( "Models/sculp.js", callback );

私の作成方法:

function createMesh(geometry){

    inArr[id] = new THREE.Mesh( geometry, new THREE.MeshLambertMaterial( { color: 0xbbbbbb} ) );
    inArr[id].scale.set( 100, 100, 100 );
    scene.add( inArr[id] );
    id++;
}

ここで、キーボードを使用して実行時にマテリアルを変更したいと考えています (色と不透明度を変更します)。

どうやってやるの?

4

1 に答える 1

48

メッシュごとに新しいマテリアルを作成するとき、inArr配列内のすべてではなく、1 つのメッシュの色のみを変更したいと思います。そのためには、おそらく何らかの選択が必要です。ただし、マテリアルの色だけを変更するのは非常に簡単です。

var onKeyDown = function(event) {
  if (event.keyCode == 67) { // when 'c' is pressed
    object.material.color.setHex(0xff0000); // there is also setHSV and setRGB
  }
};
document.addEventListener('keydown', onKeyDown, false);

object変更するメッシュです。キーコードはここにあります: http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes

于 2012-09-24T13:39:38.760 に答える