From 6385d7cc9fa2fdfdc2da33cb29a087d19976a23f Mon Sep 17 00:00:00 2001 From: RainWarrior Date: Sat, 26 Mar 2016 09:28:57 +0300 Subject: [PATCH] Fixed diffuse lighting not being applied if forge lighting pipeline is disabled, closes #2651 --- .../renderer/BlockModelRenderer.java.patch | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 patches/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java.patch diff --git a/patches/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java.patch b/patches/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java.patch new file mode 100644 index 000000000..be9bcb78f --- /dev/null +++ b/patches/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java.patch @@ -0,0 +1,45 @@ +--- ../src-base/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java ++++ ../src-work/minecraft/net/minecraft/client/renderer/BlockModelRenderer.java +@@ -140,7 +140,14 @@ + p_187492_8_.func_187491_a(p_187492_1_, p_187492_2_, p_187492_3_, bakedquad.func_178210_d(), p_187492_6_, p_187492_7_); + p_187492_4_.func_178981_a(bakedquad.func_178209_a()); + p_187492_4_.func_178962_a(p_187492_8_.field_178207_c[0], p_187492_8_.field_178207_c[1], p_187492_8_.field_178207_c[2], p_187492_8_.field_178207_c[3]); +- ++ if(bakedquad.shouldApplyDiffuseLighting()) ++ { ++ float diffuse = net.minecraftforge.client.model.pipeline.LightUtil.diffuseLight(bakedquad.func_178210_d()); ++ p_187492_8_.field_178206_b[0] *= diffuse; ++ p_187492_8_.field_178206_b[1] *= diffuse; ++ p_187492_8_.field_178206_b[2] *= diffuse; ++ p_187492_8_.field_178206_b[3] *= diffuse; ++ } + if (bakedquad.func_178212_b()) + { + int k = this.field_187499_a.func_186724_a(p_187492_2_, p_187492_1_, p_187492_3_, bakedquad.func_178211_c()); +@@ -289,11 +296,26 @@ + float f = (float)(l >> 16 & 255) / 255.0F; + float f1 = (float)(l >> 8 & 255) / 255.0F; + float f2 = (float)(l & 255) / 255.0F; ++ if(bakedquad.shouldApplyDiffuseLighting()) ++ { ++ float diffuse = net.minecraftforge.client.model.pipeline.LightUtil.diffuseLight(bakedquad.func_178210_d()); ++ f *= diffuse; ++ f1 *= diffuse; ++ f2 *= diffuse; ++ } + p_187496_6_.func_178978_a(f, f1, f2, 4); + p_187496_6_.func_178978_a(f, f1, f2, 3); + p_187496_6_.func_178978_a(f, f1, f2, 2); + p_187496_6_.func_178978_a(f, f1, f2, 1); + } ++ else if(bakedquad.shouldApplyDiffuseLighting()) ++ { ++ float diffuse = net.minecraftforge.client.model.pipeline.LightUtil.diffuseLight(bakedquad.func_178210_d()); ++ p_187496_6_.func_178978_a(diffuse, diffuse, diffuse, 4); ++ p_187496_6_.func_178978_a(diffuse, diffuse, diffuse, 3); ++ p_187496_6_.func_178978_a(diffuse, diffuse, diffuse, 2); ++ p_187496_6_.func_178978_a(diffuse, diffuse, diffuse, 1); ++ } + + p_187496_6_.func_178987_a(d0, d1, d2); + }