6

three.js で JSON モデルをロードするのに苦労しています。非常に単純なチューブのようなモデルを作成し、ブレンダーでテクスチャリングしました。問題は、json モデルを three.js に読み込もうとすると、頂点が奇妙に見えることです。

さまざまな設定でモデルをエクスポートしようとしましたが、常に同じ問題が発生したため、問題はコード内にあると思います。

編集:ネガティブ。バッファローモデルをロードしたところ、本来の見た目になりました。ブレンダー内で私が間違っていることは何ですか?

<html>
<head>
    <style>
        canvas {
            width: 100%;
            height: 100%;
        }
    </style>
</head>
<body>
    <script src="threejs/three.min.js"></script>
    <script>
        var scene = new THREE.Scene();
        var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);

        var renderer = new THREE.WebGLRenderer();
        renderer.setSize(window.innerWidth, window.innerHeight);
        document.body.appendChild(renderer.domElement);

        var loader = new THREE.JSONLoader();
        loader.load( "models/test.js", modelToScene );


        var ambientLight = new THREE.AmbientLight(0x111111);
        scene.add(ambientLight);

        var light = new THREE.PointLight( 0xFFFFDD );
        light.position.set( -15, 10, 15 );
        scene.add( light );

        function modelToScene( geometry, materials ) {
            var material = new THREE.MeshFaceMaterial( materials );
            obj = new THREE.Mesh( geometry, material );
            obj.scale.set(1,1,1);
            scene.add( obj );

        }

        camera.position.z = 5;
        camera.position.y = 1;

        var render = function () {
            requestAnimationFrame(render);

            obj.rotation.y += 0.01;
            obj.rotation.x += 0.02;

            renderer.render(scene, camera);
        };

        render();
    </script>
</body>

どんな助けでも大歓迎です。

ありがとう、ユッカ・コルホネン

4

1 に答える 1

5

私は JSON モデルのエクスポートでいくつかの致命的な間違いを犯しました。Blender からのエクスポートで問題を抱えているすべての人へ。エクスポート設定を確認することをお勧めします。

私にとっては、次のセットアップで機能しました。

ジオメトリ: 頂点: チェック、面: チェック、法線: チェック、スキニング: チェック

材料:全てチェック

設定: Flip YZ: チェック

アニメーション:モーフアニメーション

およびすべてのメッシュ: チェック

于 2013-06-15T10:13:15.790 に答える