1

I know how to export a json model from blender and load it with THREE.JSONLoader().load. I want to build a model with Threejs in Webgl and create a json file from that model. Anyone know if this is possible?

4

2 に答える 2

0

私はあなたの質問を理解したいと思います。.obj のように、object3D を JSON にバンドルしようとしていますか? それを読んで、別の場所で別の瞬間にジオメトリを構築できますか? 逆パス「blender→json→three.js」を作ろうとしているようですね。

私の意見では、モデルがどのように JSON にコーディングされているかを正確に理解して、ブレンダーのように振る舞えるようにし、正しい情報を JSON にバンドルするシリアライザーのようなものを作成する必要があります。

.obj や .blend 形式の代替のような、カスタム パターン/モデル/標準として機能する JSON を作成したいだけの場合は、デシリアライザーも書き留めておく必要があります。

説明させてください。

ジオメトリには、頂点、面、UV、法線などがあります。正確な順序に従って、シリアライズ中にこれらすべてを指定する必要があり、それで完了です。パラダイムがわかれば、それを読み取って逆シリアル化できます。

何か誤解していたら、教えてください。

バイバイ

于 2013-11-14T14:15:15.800 に答える
0

はい、可能です。Three.js にエクスポートするには、blender にプラグインをインストールする必要があります。

フォーム git をダウンロード: Three.js への Blender エクスポーター

それをダウンロードして、io_three フォルダーを ~/.config/blender/2.69/scripts/addons/ フォルダーの下に置きます。

次に、[ファイル] > [ユーザー設定] を開き、[アドオン] タブに移動します。Three.js を検索し、見つかったプラグインを有効にします。これで、[ファイル] > [エクスポート] > [Three.js] オプションが表示されるはずです。開いたタブで、Face Materials チェックボックスがオンになっていることを確認します。そうしないと、マテリアルがなくなり、Three.js はメッシュのインポートを拒否します。

Three.js での使用

var mesh = null;
function initMesh() {
    var loader = new THREE.JSONLoader();
    loader.load('./marmelab-logo.json', function(geometry) {
        mesh = new THREE.Mesh(geometry);
        scene.add(mesh);
    });
}
于 2016-08-30T17:10:58.383 に答える