我目前正在学习OpenGL中的照明,在阅读learnopengl.com时,我注意到他们通过将光的位置减去片段位置来计算光的方向(漫反射光):vec3 lightDir = normalize(lightPos - FragPos); (我附加了一张图像来展示这是什么样子) Direction Vector Image
为什么他们要得到一个从碎片位置指向灯光位置的向量?如果他们想要得到光的方向,我们难道不想得到一个从光位置到片段位置的向量:vec3 lightDir = normalize(FragPos - lightPos);
发布于 2021-11-17 19:33:54
漫反射光由法线向量和从曲面到光源的向量的Dot product计算得出。请参阅How does the calculation of the light model work in a shader program?
https://stackoverflow.com/questions/69966823
复制相似问题