まあ、私は(あなたが任意のコードを持っていない)かむよ -
// - - - - points
geometry = new THREE.Geometry();
material = new THREE.PointsMaterial({ size:.1 });
for (i1=1; i1<=10; i1+=1) {
var x1 = Math.random()*2-1;
var y1 = Math.random()*2-1;
var z1 = Math.random()*2-1;
geometry.vertices.push(new THREE.Vector3(x1,y1,z1));
}
object3d = new THREE.Points(geometry, material);
scene.add(object3d);
// - - - - line
geometry = new THREE.Geometry();
geometry.vertices = [ new THREE.Vector3(-1,1,0), new THREE.Vector3(0,-1,0), new THREE.Vector3(1,1,0) ];
material = new THREE.LineBasicMaterial({ color:0xffffff });
object3d = new THREE.Line(geometry, material);
scene.add(object3d);
// - - - - sphere
geometry = new THREE.SphereGeometry(.5);
material = new THREE.MeshPhongMaterial({color:0xffffff});
mesh = new THREE.Mesh(geometry, material);
mesh.scale.x = 2;
mesh.position.set(0, 1, 0);
scene.add(mesh);
と間違って何それだけで私に来ました!あなたのポイントとラインはメッシュの後ろにあります! – dcromley
@dcromley:下のコードは完璧に動作します。ありがとうございます。しかし、あなたがコメントで想定しているように、私のポイントはdepthTestでフィルタリングされています。私はピッキング・レイでメッシュ・サーフェス上にポイントを正確に配置します。これは古いバージョン(r63)とProjector.pickingRayでうまくいきました。おそらく、新しいレンダラーがrenderingOrderを変更しました。自分のポイントに負のrenderOrderプロパティを与えて、最初にレンダリングされるようにして問題を解決できます。 – mcauer
フィードバックをお寄せいただきありがとうございます。この問題を避けるために、たとえば、「顔」の少し前に「唇」を置いています。 – dcromley