2016-10-11 10 views
0

OBJファイルを読み込んでMTLをテクスチャにすることができました。しかし、私はどのようなテクスチャをコードから直接モデルに関連づけたいのか分からないようですが、テクスチャがMTLファイルに記述されている場合にのみモデルに表示されます。MTLではなくコードからテクスチャをロード

私は文書を見て、例を見て、何度もGoogleで検索しましたが、テクスチャをどのように適用するか分かりません。

これは、モデルと材料のファイルをロードするために私の現在のコードです

 var mtlLoader = new THREE.MTLLoader(); 
     mtlLoader.setPath('/3Dproject/models/'); 
     mtlLoader.load('tshirt.mtl', function(materials) { 

      materials.preload(); 

      var objLoader = new THREE.OBJLoader(); 
      objLoader.setMaterials(materials); 
      objLoader.setPath('models/'); 
      objLoader.load('tshirt.obj', function (object) { 

       object.position.x = 0; 
       object.position.y = -50; 
       object.scale.x = 2; 
       object.scale.y = 2; 
       object.scale.z = 2; 
       scene.add(object); 

      }, onProgress, onError); 

     }); 

私はこの

 var texloader = new THREE.TextureLoader(); 
     var skinTexture = texloader.load('/3Dproject/models/texture.jpg', function (tex) { 
      skinTexture = tex; 
     }); 
のようにJavaScriptで私のテクスチャをロードするとこれは私の素材ファイル

# MTL written from \3Dproject\models\tshirt.obj 
newmtl texture 
Kd 0.48 0.48 0.48 
Ns 256 
d 1 
illum 2 
Ka 0 0 0 
Ks 0.04 0.04 0.04 
map_Kd \texture.jpg 

です

それを私のモデルにどのように適用できますか? http://creativiii.com/3Dproject/old-index.html

+0

あなたのオブジェクトはTHREE.Sceneにあり、その材料を書き直すことができます。 – mlkn

答えて

0

の作業の例では、通常、テクスチャはmaterial.mapプロパティによって割り当てられます。

object.material.map = skinTexture; 
関連する問題