12-习题
习题
7.1 (项目)修改程序7.1以使光能随鼠标而移动。在实现这个功能之后,四处移动鼠标,并记录下镜面高光的移动以及Gouraud着色伪影的出现。你可能会需要在光源处渲染一个点(或者小物体)以便完成该项目。
7.2 在程序7.2中重复练习7.1的内容。这里应该只需要将Phong着色的着色器放入练习7.1的解决方案中。从Gouraud着色到Phong着色的进步在光四处移动时应当更明显。
7.3 (项目)修改程序7.2以使其包括两个位于不同位置的位置光。片段着色器需要混合每个光的漫反射和镜面反射分量。尝试使用与7.6节所示相似的加权求和方法。你可以尝试简单地将它们加起来并限制结果不超出光照值的上限。
7.4 (研究和项目)将程序7.2中的位置光替换为7.2节中所描述的探照灯。尝试设置不同的遮光角、衰减指数并观察其效果。