Threejs 光照渲染

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

1、绘制的对象黑不溜秋

首先了解一下,渲染的原理和机制

法向量问题

  法线是垂直于我们想要照亮的物体表面的向量。法线代表表面的方向因此他们为光源和物体的交互建模中具有决定性作用。每一个顶点都有一个关联的法向量。

Threejs 光照渲染_第1张图片

  如果一个顶点被多个三角形共享,共享顶点的法向量等于共享顶点在不同的三角形中的法向量的和。N=N1+N2;

Threejs 光照渲染_第2张图片

  所以如果不做任何处理,直接将3维物体的点传递给BufferGeometry,那么由于法向量被合成,经过片元着色器插值后,就会得到这个黑不溜秋的效果

解决办法:

geometry.computeFaceNormals();

转载于:https://my.oschina.net/u/615762/blog/1808436

你可能感兴趣的:(Threejs 光照渲染)