平面阴影的三个Phong材质呈现大量噪点

时间:2018-12-05 00:16:14

标签: javascript three.js

在用平坦的阴影材质渲染极其陡峭的面孔并以陡峭的角度观看时,我遇到了三个问题。这是我的机器上的样子:

enter image description here

此处的示例场景(https://codepen.io/anon/pen/dQEzmG?editors=1010)演示了此问题。它由经过修改的平面组成,因此具有从z = 0z = -100000的坡度,该坡度是用平面阴影的phong材质渲染的。

var geometry = new THREE.PlaneBufferGeometry(10, 10, 10, 10);
var material = new THREE.MeshPhongMaterial({ side: THREE.DoubleSide, color: "#ffffff", flatShading: true });
var plane = new THREE.Mesh( geometry, material );
plane.rotation.set(Math.PI/2, 0, 0);

var posArr = geometry.attributes.position.array;
for (var i = 0; i < posArr.length / 2 - 3 * 6; i += 3) {
    posArr[i + 2] = 100000;
}
geometry.computeVertexNormals();

我只能在Macbook Pro笔记本电脑上看到它:

  • Chrome 70.0.3538.1210 64位
  • OSX 10.13.6
  • 英特尔酷睿i7
  • Radeon Pro 560 4096 MB

我知道THREE中的三个底纹使用OES_standard_derivatives扩展名,因此我不确定它是否与扩展名中的限制有关。这是一个已知的问题?三个有问题吗?还是平台有问题?

谢谢!

0 个答案:

没有答案