Example #1
0
        public static void AdjustColors(Chunk chunk, Color32[] data, BlockLightData light)
        {
            if (!chunk.world.config.addAOToMesh)
            {
                return;
            }

            AdjustColorsAO(data, light, chunk.world.config.ambientOcclusionStrength);
        }
Example #2
0
        private static void AdjustColorsAO(Color32[] data, BlockLightData light, float strength)
        {
            // 0.33f for there are 3 degrees of AO darkening (0.33f * 3 =~ 1f)
            float ne = 1f - light.neAO * 0.33f * strength;
            float se = 1f - light.seAO * 0.33f * strength;
            float sw = 1f - light.swAO * 0.33f * strength;
            float nw = 1f - light.nwAO * 0.33f * strength;

            AdjustColors(data, sw, nw, ne, se, light.FaceRotationNecessary);
        }
Example #3
0
 public static void PrepareColors(Chunk chunk, Color32[] data, ref BlockLightData light)
 {
     if (chunk.world.config.addAOToMesh)
     {
         SetColorsAO(data, light, chunk.world.config.ambientOcclusionStrength);
     }
     else
     {
         SetColors(data, 1f, 1f, 1f, 1f, false);
     }
 }