2016-05-05 14 views
1

javascriptベースのモバイルアプリケーションでthree.jsを使用しています。 3Dモデルに.fbxファイルを使用しています。しかし、FBXLoaderでバイナリ形式をサポートしていません。私は3Dモデルとフォーマットについてあまり知らない。どんな助けもありがとう。Three.js FBXバイナリ形式はサポートされていません

コンソールのエラー: FBXLoader:!!! FBXバイナリ形式はサポートされていません!ここ

は私のロードFBXコードです:

var loader = new THREE.FBXLoader(manager); 
    // alert(loader); 
    loader.load('img/watcher.FBX', function(object) { 
alert(object); 
     object.traverse(function(child) { 

     if (child instanceof THREE.Mesh) { 

      // pass 

     } 

     if (child instanceof THREE.SkinnedMesh) { 

      if (child.geometry.animations !== undefined ||  child.geometry.morphAnimations !== undefined) { 

      child.mixer = new THREE.AnimationMixer(child); 
      mixers.push(child.mixer); 

      var action = child.mixer.clipAction(child.geometry.animations[ 0 ]); 
      action.play(); 

      } 

     } 

     }); 

     scene.add(object); 


    }, onProgress, onError); 

答えて

1

あなたがheader of the javascript fileまたはhttps://github.com/yamahigashi/FBXLoaderJS' github repoを見れば、あなたはそれを見ることができると言う:ASCIIおよびバージョン7のフォーマット

/** 
    * @author yamahigashi https://github.com/yamahigashi 
    * 
    * This loader loads FBX file in *ASCII and version 7 format*. 
    * 
    * Support 
    * - mesh 
    * - skinning 
    * - normal/uv 
    * 
    * Not Support 
    * - material 
    * - texture 
    * - morph 
*/ 

選択肢がありますglTFとFBX converter to glTFを使用し、glTF loaderを使用します。

バイナリFBXファイルには別の問題があり、問題が発生することがあります。 2016.0では、大きなファイル(> 2Gb)をサポートするように変更されました。この変更は、バイナリFBXファイル形式にのみ影響します。ファイルポインターのサイズが同じでないため、古いリーダーでは読み取ることができません。しかし、残りの部分は、ファイルはかなり互換性があります。 FBX SDKを使用している人には言及しているので、ここではJavaScriptのローダーには影響しませんが、言及する価値はあります。

関連する問題