我有一些关于计算机图形学的问题:
如何在 Java 中使用多个光源计算漫反射着色?
如何在 Java 中使用多个光源计算环境着色?
最佳答案
与光源数量无关,光照计算如下:
ambient = material.ambient * light.ambient
diffuse = material.diffuse * light.diffuse * dot(normal, direction_to_light)
方向 vector 和法 vector 必须标准化。此外,如果 dot()
小于零,则生成的漫反射颜色仅为黑色。
如果有多个灯光,每个灯光都会添加到结果中。所以例如
result = ambient_light1 + diffuse_light1 + ambient_light2 + diffuse_light2 ...
关于java - 漫反射着色和环境着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13045152/