如何使用JavaScript生成lowpoly风格图像
1个回答
2016-05-02
展开全部
着色的话其实so easy啦,你可以这样,将三角形网格放在三维空间,这里规定右手坐标系,z轴竖直向上,xoy面描述三角形网格面,你可以将每个定点的z坐标设置为随机值。然后计算每个三角形面的法向量,然后法向量归一化记为n,之后计算三角形重心指向光源的向量,归一化记为l,那么n点乘l就是二者的夹角余弦值,余弦值越大,说明光照漫反射强度越大,原理图自行脑补。。这样就可以用一个颜色值乘上这个点积对此三角形着色了,,3d效果很棒的有木有。另外,求法向量,三角形AB叉乘AC,注意法向量的方向,因为会牵扯后面余弦值的正负
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询