public static void AdjustColors(Chunk chunk, Color32[] data, BlockLightData light) { if (!chunk.world.config.addAOToMesh) { return; } AdjustColorsAO(data, light, chunk.world.config.ambientOcclusionStrength); }
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); }
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); } }