1

我做了一个圆圈如下:

material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });
arcShape = new THREE.Shape();
arcShape.absarc( 0, 0, 20, 0, -Math.PI*2, true );
geometry = arcShape.makeGeometry();
circle = new THREE.Mesh(geometry, material);
scene.add(circle);

像这样,它是可见的。但是旋转它,它就会消失。

shadow.rotation.x = Math.PI / 2;

我看过其他几篇没有解决这个问题的帖子。(因此,除非有人有解决方案,否则我将改用扁平圆柱体。这只是一个琐碎的问题)。

我设置了mesh.doubleSided= true 和mesh.flipSided = false. 我还尝试了切换渲染器的 depthTest 和材质的 depthWrite 属性的所有 4 种组合。

还有什么我可以尝试的吗?如果不是,我猜代码对我的一些调用的顺序很敏感,在这种情况下,我已经度过了漫长的一天,所以我会坚持使用圆柱体!

4

1 回答 1

9
material.side = THREE.DoubleSide;
于 2013-02-11T19:57:13.000 回答