实验 2.2 软光栅化渲染器渲染结果问题

如题,渲染结果出现以下问题:


翻看以前帖子,有过类似问题,但我没有得到有用的回复,所以想再开一个帖子请教一下。


diffuse 和 specular 如上,可以看到都有黑色三角未填充,感觉像是要用到的 world_normal 有问题?


这是我对 normal 的操作,先变换到世界坐标系,然后再插值。
其中 z1,z2,z3 为顶点乘完 MVP 矩阵后的第四维。
zone 是 alpha beta gamma 的元组
请大佬们看一看到底是哪出了问题 :sob:

我注意到你渲染的模型身上有一些小竖线,这可能是在三角形光栅化时忽略了边界,应该要把边界也考虑进去。

补充一下:


这个是环境光把参数拉高了一点得到的,是没有黑三角的,而只有漫反射和高光渲染时出现了问题,所以我猜测整体上应该是没什么问题,问题出在漫反射,高光特有的一些参数上(比如法线)?

如果只在漫反射或者高光上出现问题,那应该就是用到的法线向量或是点光源发射的光线向量出现了问题,你可以输出一下他们的值看看是否存在异常