Fixed diffuse lighting not being applied if forge lighting pipeline is disabled, closes #2651

This commit is contained in:
RainWarrior 2016-03-26 09:28:57 +03:00
parent c6ce6a00a2
commit 6385d7cc9f
1 changed files with 45 additions and 0 deletions

View File

@ -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);
}