私は入力ファイルを介して複数の.OBJファイル(3Dモデル)をThree.jsシーンに追加していますが、それらを同じサイズにしたいと思います。3Dモデル同じスケールで3つのJS
問題は、この3Dモデルのサイズがそれぞれ異なり、そのうちいくつかは巨大で、他のものは非常に小さいことです。
誰もが、すべての3Dモデルを同じサイズにする方法を知っていますか?
ありがとうございました!
私は入力ファイルを介して複数の.OBJファイル(3Dモデル)をThree.jsシーンに追加していますが、それらを同じサイズにしたいと思います。3Dモデル同じスケールで3つのJS
問題は、この3Dモデルのサイズがそれぞれ異なり、そのうちいくつかは巨大で、他のものは非常に小さいことです。
誰もが、すべての3Dモデルを同じサイズにする方法を知っていますか?
ありがとうございました!
Object3Dスケールプロパティを変更する必要があります。
yorDownloadedObject.scale = new THREE.Vector3(0.5, 0.5, 0.5);
かのようにそのサイズを2倍:
yorDownloadedObject.scale = new THREE.Vector3(2, 2, 2);
しかし、もしあなたがこのようにこのスケールを設定し、そのサイズの半分にそれらを設定することができますので、あなたは、独立してX、YとZを拡張することができますサイズは、スケーリングの前に、彼らのbounding boxはcomputeBoundingBox(またはcomputeBoundingSphere)という名前Object3D.Geometryプロパティメソッドを使用して取得し、元のサイズを知るために...
あなたはスケールアップまたはダウン彼らの実際のサイズに依存する場合があり、あまりにも異なっています。
その後、Cross-multiplicationを使用してGeometry.boundingBoxプロパティに応じて、希望のサイズにスケールアップまたはスケールダウンします。
もう1つの推奨は、モデルのサイズを変更して何かに触れさせないことです。
これは完璧に動作します、ありがとうございます!!!! –