Add projection matrix to RenderWorldLastEvent (#6536)
This commit is contained in:
parent
58e5f33fad
commit
202ae50820
|
@ -40,7 +40,7 @@
|
||||||
p_228378_4_.func_227863_a_(Vector3f.field_229181_d_.func_229187_a_(activerenderinfo.func_216778_f() + 180.0F));
|
p_228378_4_.func_227863_a_(Vector3f.field_229181_d_.func_229187_a_(activerenderinfo.func_216778_f() + 180.0F));
|
||||||
this.field_78531_r.field_71438_f.func_228426_a_(p_228378_4_, p_228378_1_, p_228378_2_, flag, activerenderinfo, this, this.field_78513_d, matrix4f);
|
this.field_78531_r.field_71438_f.func_228426_a_(p_228378_4_, p_228378_1_, p_228378_2_, flag, activerenderinfo, this, this.field_78513_d, matrix4f);
|
||||||
+ this.field_78531_r.func_213239_aq().func_219895_b("forge_render_last");
|
+ this.field_78531_r.func_213239_aq().func_219895_b("forge_render_last");
|
||||||
+ net.minecraftforge.client.ForgeHooksClient.dispatchRenderLast(this.field_78531_r.field_71438_f, p_228378_4_, p_228378_2_);
|
+ net.minecraftforge.client.ForgeHooksClient.dispatchRenderLast(this.field_78531_r.field_71438_f, p_228378_4_, p_228378_1_, matrix4f, p_228378_2_);
|
||||||
this.field_78531_r.func_213239_aq().func_219895_b("hand");
|
this.field_78531_r.func_213239_aq().func_219895_b("hand");
|
||||||
if (this.field_175074_C) {
|
if (this.field_175074_C) {
|
||||||
RenderSystem.clear(256, Minecraft.field_142025_a);
|
RenderSystem.clear(256, Minecraft.field_142025_a);
|
||||||
|
|
|
@ -172,11 +172,17 @@ public class ForgeHooksClient
|
||||||
return MinecraftForge.EVENT_BUS.post(new DrawHighlightEvent(context, info, target, partialTicks, matrix, buffers));
|
return MinecraftForge.EVENT_BUS.post(new DrawHighlightEvent(context, info, target, partialTicks, matrix, buffers));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Deprecated // TODO: Remove in 1.16
|
||||||
public static void dispatchRenderLast(WorldRenderer context, MatrixStack mat, float partialTicks)
|
public static void dispatchRenderLast(WorldRenderer context, MatrixStack mat, float partialTicks)
|
||||||
{
|
{
|
||||||
MinecraftForge.EVENT_BUS.post(new RenderWorldLastEvent(context, mat, partialTicks));
|
MinecraftForge.EVENT_BUS.post(new RenderWorldLastEvent(context, mat, partialTicks));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void dispatchRenderLast(WorldRenderer context, MatrixStack mat, float partialTicks, Matrix4f projectionMatrix, long finishTimeNano)
|
||||||
|
{
|
||||||
|
MinecraftForge.EVENT_BUS.post(new RenderWorldLastEvent(context, mat, partialTicks, projectionMatrix, finishTimeNano));
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean renderSpecificFirstPersonHand(Hand hand, MatrixStack mat, IRenderTypeBuffer buffers, int light, float partialTicks, float interpPitch, float swingProgress, float equipProgress, ItemStack stack)
|
public static boolean renderSpecificFirstPersonHand(Hand hand, MatrixStack mat, IRenderTypeBuffer buffers, int light, float partialTicks, float interpPitch, float swingProgress, float equipProgress, ItemStack stack)
|
||||||
{
|
{
|
||||||
return MinecraftForge.EVENT_BUS.post(new RenderHandEvent(hand, mat, buffers, light, partialTicks, interpPitch, swingProgress, equipProgress, stack));
|
return MinecraftForge.EVENT_BUS.post(new RenderHandEvent(hand, mat, buffers, light, partialTicks, interpPitch, swingProgress, equipProgress, stack));
|
||||||
|
|
|
@ -21,6 +21,7 @@ package net.minecraftforge.client.event;
|
||||||
|
|
||||||
import com.mojang.blaze3d.matrix.MatrixStack;
|
import com.mojang.blaze3d.matrix.MatrixStack;
|
||||||
|
|
||||||
|
import net.minecraft.client.renderer.Matrix4f;
|
||||||
import net.minecraft.client.renderer.WorldRenderer;
|
import net.minecraft.client.renderer.WorldRenderer;
|
||||||
|
|
||||||
public class RenderWorldLastEvent extends net.minecraftforge.eventbus.api.Event
|
public class RenderWorldLastEvent extends net.minecraftforge.eventbus.api.Event
|
||||||
|
@ -28,11 +29,26 @@ public class RenderWorldLastEvent extends net.minecraftforge.eventbus.api.Event
|
||||||
private final WorldRenderer context;
|
private final WorldRenderer context;
|
||||||
private final MatrixStack mat;
|
private final MatrixStack mat;
|
||||||
private final float partialTicks;
|
private final float partialTicks;
|
||||||
|
private final Matrix4f projectionMatrix;
|
||||||
|
private final long finishTimeNano;
|
||||||
|
|
||||||
|
@Deprecated // TODO: Remove in 1.16
|
||||||
public RenderWorldLastEvent(WorldRenderer context, MatrixStack mat, float partialTicks)
|
public RenderWorldLastEvent(WorldRenderer context, MatrixStack mat, float partialTicks)
|
||||||
{
|
{
|
||||||
this.context = context;
|
this.context = context;
|
||||||
this.mat = mat;
|
this.mat = mat;
|
||||||
this.partialTicks = partialTicks;
|
this.partialTicks = partialTicks;
|
||||||
|
this.projectionMatrix = null;
|
||||||
|
this.finishTimeNano = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public RenderWorldLastEvent(WorldRenderer context, MatrixStack mat, float partialTicks, Matrix4f projectionMatrix, long finishTimeNano)
|
||||||
|
{
|
||||||
|
this.context = context;
|
||||||
|
this.mat = mat;
|
||||||
|
this.partialTicks = partialTicks;
|
||||||
|
this.projectionMatrix = projectionMatrix;
|
||||||
|
this.finishTimeNano = finishTimeNano;
|
||||||
}
|
}
|
||||||
|
|
||||||
public WorldRenderer getContext()
|
public WorldRenderer getContext()
|
||||||
|
@ -49,4 +65,14 @@ public class RenderWorldLastEvent extends net.minecraftforge.eventbus.api.Event
|
||||||
{
|
{
|
||||||
return partialTicks;
|
return partialTicks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Matrix4f getProjectionMatrix()
|
||||||
|
{
|
||||||
|
return projectionMatrix;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getFinishTimeNano()
|
||||||
|
{
|
||||||
|
return finishTimeNano;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue