2

序文: Three-CSGを使用して、Three.js でジオメトリをマージしようとしています。

Uncaught ThreeBSP: Given geometry is unsupportedTHREE.Mesh のインスタンスをライブラリのメソッドに渡すと、エラーがスローされますThreeBSP

このエラーが発生する理由はありますか? 以下にコードのスニペットを示します。ライブラリ メソッドに渡すオブジェクトは、js ファイル内trueの from として評価されるinstanceof THREE.Meshため、コードがエラーをスローする理由がわかりません。どんな助けでも大歓迎です!

import THREE from 'three';
import CSG from 'three-csg';

[...]

export const meshFactory = () => {
  const cone = {};
  cone.geometry = new THREE.CylinderGeometry(5, 100, 100, 32);
  cone.mesh = new THREE.Mesh(cone.geometry);

  console.log(cone.mesh instanceof THREE.Mesh); // prints true

  const coneBSP = new CSG(cone.mesh); // error thrown here as it doesn't appear to be an instance of THREE.Mesh or other valid cases

[...]
};

コンソール エラーへのリンク

ありがとう、ジェームズ。

4

1 に答える 1

0

問題の根本的な原因については完全にはわかりませんが、とにかくこのバグを修正すると、主に使用されている古いバージョン間の特異性が原因で、無数の他のエラーが発生しました.

これを ES2015 モジュールで使用しようとしている他の人のために、three-js-csgの NPM パッケージと、これらのバグを解決する両方の最新バージョンをここにまとめました。

https://github.com/James-Oldfield/three-js-csg

どちらが機能しますか!

于 2015-12-15T16:17:14.423 に答える