json ファイルを使用して非常に複雑なモデルをレンダリングしようとしています。json ファイルのサイズは 40MB と巨大なデータです。モデルをキャンバスにレンダリングできます。
ここでの問題は、レンダリングが非常に遅く行われることです。モデルを回転させたりズームインしようとすると、ブラウザ全体がハングアップし、とても遅くなります。
webgl を初めて使用するので、この問題の原因がわかりません。周りを見回しても何も見つかりませんでした。
レンダリングに影響を与えているのはjsonファイルのサイズですか? どうすればパフォーマンスを向上させることができますか? これはグラフィック カードの問題ではありません。ボディブラウザなどは非常に高速です。
このメソッドに three.js jason loader を使用しています
loader = new THREE.JSONLoader();
loader.load( 'file.js', function ( geometry ) {
geometry.computeVertexNormals();
mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( ) );
scene.add( mesh );
} );
レンダリングのために、私はinit内でこれを行っています
renderer = new THREE.CanvasRenderer();
renderer.setSize( window.innerWidth, window.innerHeight );
container.appendChild( renderer.domElement );
Render 関数は animate() で呼び出されます
function animate() {
requestAnimationFrame( animate );
render();
stats.update();
}
そしてレンダリング機能では、このようにメッシュを回転させます
function render() {
mesh.rotation.x += ( targetXRotation - mesh.rotation.x ) * 0.05;
mesh.rotation.y += ( targetYRotation - mesh.rotation.y ) * 0.05;
renderer.render( scene, camera );
}