diff options
author | bunnei <bunneidev@gmail.com> | 2015-11-26 02:25:02 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2016-02-05 23:20:16 +0100 |
commit | 348c9c9ff32a493a005da72dba1832da118e4b0b (patch) | |
tree | a1f26e3dc7623a750f448aae6704bb449882879d /src/video_core/pica.h | |
parent | gl_shader_gen: View should be normalized. (diff) | |
download | yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar.gz yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar.bz2 yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar.lz yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar.xz yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.tar.zst yuzu-348c9c9ff32a493a005da72dba1832da118e4b0b.zip |
Diffstat (limited to 'src/video_core/pica.h')
-rw-r--r-- | src/video_core/pica.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/video_core/pica.h b/src/video_core/pica.h index 76db51038..267070e45 100644 --- a/src/video_core/pica.h +++ b/src/video_core/pica.h @@ -650,9 +650,9 @@ struct Regs { Distribution0 = 0, Distribution1 = 1, Fresnel = 3, - Blue = 4, - Green = 5, - Red = 6, + ReflectBlue = 4, + ReflectGreen = 5, + ReflectRed = 6, SpotlightAttenuation = 8, DistanceAttenuation = 16, }; @@ -718,10 +718,19 @@ struct Regs { switch (sampler) { case LightingSampler::Distribution0: return (config != LightingConfig::Config1); + case LightingSampler::Distribution1: return (config != LightingConfig::Config0) && (config != LightingConfig::Config1) && (config != LightingConfig::Config5); + case LightingSampler::Fresnel: return (config != LightingConfig::Config0) && (config != LightingConfig::Config2) && (config != LightingConfig::Config4); + + case LightingSampler::ReflectRed: + return (config != LightingConfig::Config3); + + case LightingSampler::ReflectGreen: + case LightingSampler::ReflectBlue: + return (config == LightingConfig::Config4) || (config == LightingConfig::Config5) || (config == LightingConfig::Config7); } return false; } @@ -773,6 +782,9 @@ struct Regs { BitField<16, 1, u32> lut_enable_d0; // 0: GL_TRUE, 1: GL_FALSE BitField<17, 1, u32> lut_enable_d1; // 0: GL_TRUE, 1: GL_FALSE BitField<19, 1, u32> lut_enable_fr; // 0: GL_TRUE, 1: GL_FALSE + BitField<20, 1, u32> lut_enable_rr; // 0: GL_TRUE, 1: GL_FALSE + BitField<21, 1, u32> lut_enable_rg; // 0: GL_TRUE, 1: GL_FALSE + BitField<22, 1, u32> lut_enable_rb; // 0: GL_TRUE, 1: GL_FALSE // Each bit specifies whether distance attenuation should be applied for the // corresponding light |