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

gl_rasterizer: Minor naming refactor on Pica register naming.

bunnei 10 лет назад
Родитель
Сommit
6878ba7608
2 измененных файлов с 23 добавлено и 20 удалено
  1. 18 15
      src/video_core/pica.h
  2. 5 5
      src/video_core/renderer_opengl/gl_rasterizer.h

+ 18 - 15
src/video_core/pica.h

@@ -715,26 +715,29 @@ struct Regs {
         union {
             BitField< 4, 4, u32> config;
             BitField<27, 1, u32> clamp_highlights;
-        } light_env;
+        };
 
         union {
             // Each bit specifies whether distance attenuation should be applied for the
             // corresponding light
 
-            BitField<24, 1, u32> light_0;
-            BitField<25, 1, u32> light_1;
-            BitField<26, 1, u32> light_2;
-            BitField<27, 1, u32> light_3;
-            BitField<28, 1, u32> light_4;
-            BitField<29, 1, u32> light_5;
-            BitField<30, 1, u32> light_6;
-            BitField<31, 1, u32> light_7;
-
-            bool IsEnabled(unsigned index) const {
-                const unsigned enable[] = { light_0, light_1, light_2, light_3, light_4, light_5, light_6, light_7 };
-                return enable[index] == 0;
-            }
-        } dist_atten_enable;
+            BitField<24, 1, u32> dist_atten_enable_light_0;
+            BitField<25, 1, u32> dist_atten_enable_light_1;
+            BitField<26, 1, u32> dist_atten_enable_light_2;
+            BitField<27, 1, u32> dist_atten_enable_light_3;
+            BitField<28, 1, u32> dist_atten_enable_light_4;
+            BitField<29, 1, u32> dist_atten_enable_light_5;
+            BitField<30, 1, u32> dist_atten_enable_light_6;
+            BitField<31, 1, u32> dist_atten_enable_light_7;
+        };
+
+        bool IsDistAttenEnabled(unsigned index) const {
+            const unsigned enable[] = { dist_atten_enable_light_0, dist_atten_enable_light_1,
+                                        dist_atten_enable_light_2, dist_atten_enable_light_3,
+                                        dist_atten_enable_light_4, dist_atten_enable_light_5,
+                                        dist_atten_enable_light_6, dist_atten_enable_light_7 };
+            return enable[index] == 0;
+        }
 
         union {
             BitField<0, 8, u32> index;      ///< Index at which to set data in the LUT

+ 5 - 5
src/video_core/renderer_opengl/gl_rasterizer.h

@@ -80,16 +80,16 @@ struct PicaShaderConfig {
             unsigned num = regs.lighting.light_enable.GetNum(light_index);
             const auto& light = regs.lighting.light[num];
             res.light_src[light_index].num = num;
-            res.light_src[light_index].directional = light.w;
-            res.light_src[light_index].two_sided_diffuse = light.two_sided_diffuse;
-            res.light_src[light_index].dist_atten_enabled = regs.lighting.dist_atten_enable.IsEnabled(num);
+            res.light_src[light_index].directional = light.w != 0;
+            res.light_src[light_index].two_sided_diffuse = light.two_sided_diffuse != 0;
+            res.light_src[light_index].dist_atten_enabled = regs.lighting.IsDistAttenEnabled(num);
             res.light_src[light_index].dist_atten_bias = Pica::float20::FromRawFloat20(light.dist_atten_bias).ToFloat32();
             res.light_src[light_index].dist_atten_scale = Pica::float20::FromRawFloat20(light.dist_atten_scale).ToFloat32();
         }
 
-        res.lighting_lut.d0_abs = (regs.lighting.abs_lut_input.d0 == 0);
+        res.lighting_lut.d0_abs = regs.lighting.abs_lut_input.d0 == 0;
         res.lighting_lut.d0_type = (Pica::Regs::LightingLutInput)regs.lighting.lut_input.d0.Value();
-        res.clamp_highlights = regs.lighting.light_env.clamp_highlights;
+        res.clamp_highlights = regs.lighting.clamp_highlights != 0;
 
         return res;
     }