0

押し出しスプラインの例とマウス ツールチップの例の要素を使用したページがあります。先に進む前に、このプロジェクトの開始要素をデバッグしようとしています。マウス ツールチップは、押し出されたスプライン以外のさまざまなオブジェクトで機能します。

それが重要な場合は、webGL レンダラーを使用します。

スプライン作成のコード (Vector3 ラインまたは円形押し出しは含まない):

function addGeometry( geometry, color, x, y, z, rx, ry, rz, s, name ) {
    var mesh = THREE.SceneUtils.createMultiMaterialObject( geometry, [
        new THREE.MeshLambertMaterial( { color: color } )
    ] );
    mesh.position.set( x, y, z );
    mesh.scale.set( s, s, s );
    mesh.name = name;
    scene.add( mesh );
}

update() の intersect/Three.Ray コードは、上記のリンクの例と同じです。また、スプラインを親に追加しようとしましたが、onMouseOver に変更はありません。今週後半には、ThreeX DOM イベントと Tween に移行するかもしれません:D

別の質問になる可能性のある小さな問題:

  • 平面上でレイにリンクされた OnMouseOver イベントの不正確さを目の当たりにしました。また、私が長い距離を使用しているという事実もありますか? 平面は 1000x1000 で、カメラは 2000px 離れています。私はそれがばかげていることを知っており、私もそれを修正している最中です.

聞いてくれてありがとう!

4

1 に答える 1

0

コード スニペットしか提供していないので、推測は次のとおりです。マルチマテリアル オブジェクトは階層的であるray.intersectObjects()ため、次のように再帰フラグを trueに設定する必要があります。

var intersects = ray.intersectObjects( scene.children, true );
于 2012-10-01T22:11:56.297 に答える