Просмотр исходного кода

gl_rasterizer/lighting: more accurate CP formula

wwylele 9 лет назад
Родитель
Сommit
17c6104d2a
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      src/video_core/renderer_opengl/gl_shader_gen.cpp

+ 2 - 2
src/video_core/renderer_opengl/gl_shader_gen.cpp

@@ -594,8 +594,8 @@ static void WriteLighting(std::string& out, const PicaShaderConfig& config) {
                 // Note: even if the normal vector is modified by normal map, which is not the
                 // normal of the tangent plane anymore, the half angle vector is still projected
                 // using the modified normal vector.
-                std::string half_angle_proj = "normalize(half_vector) - normal / dot(normal, "
-                                              "normal) * dot(normal, normalize(half_vector))";
+                std::string half_angle_proj =
+                    "normalize(half_vector) - normal * dot(normal, normalize(half_vector))";
                 // Note: the half angle vector projection is confirmed not normalized before the dot
                 // product. The result is in fact not cos(phi) as the name suggested.
                 index = "dot(" + half_angle_proj + ", tangent)";