Skip to content

Commit 9a78d6e

Browse files
committed
Stage changes for update / render / draw separations.
1 parent c3d25ba commit 9a78d6e

File tree

3 files changed

+28
-16
lines changed

3 files changed

+28
-16
lines changed

src/main/java/fi/dy/masa/minihud/renderer/IOverlayRenderer.java

+7-1
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,15 @@ public interface IOverlayRenderer
5252
boolean hasData();
5353

5454
/**
55-
* Render contents to screen
55+
* Render contents to Buffers
5656
*/
5757
void render(Camera camera, Matrix4f matrix4f, Matrix4f projMatrix, MinecraftClient mc, Profiler profiler);
58+
//void render(Camera camera, MinecraftClient mc, Profiler profiler);
59+
60+
/**
61+
* Draw Render buffers to Screen
62+
*/
63+
void draw(Camera camera, Matrix4f matrix4f, Matrix4f projMatrix, MinecraftClient mc, Profiler profiler);
5864

5965
/**
6066
* Reset renderer's internal data

src/main/java/fi/dy/masa/minihud/renderer/OverlayRendererBase.java

+9-13
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,20 @@
22

33
import javax.annotation.Nullable;
44
import com.google.gson.JsonObject;
5+
import org.joml.Matrix4f;
56

67
import com.mojang.blaze3d.systems.RenderSystem;
8+
import net.minecraft.client.MinecraftClient;
9+
import net.minecraft.client.render.Camera;
710
import net.minecraft.util.math.BlockPos;
811
import net.minecraft.util.math.Vec3d;
12+
import net.minecraft.util.profiler.Profiler;
913

1014
import fi.dy.masa.malilib.render.RenderUtils;
1115

1216
public abstract class OverlayRendererBase implements IOverlayRenderer
1317
{
18+
// TODO -- ADD GPU BUFFERS HERE
1419
protected boolean renderThrough;
1520
protected boolean useCulling;
1621
protected float glLineWidth;
@@ -68,19 +73,10 @@ public void reset()
6873
this.updateCameraPos = Vec3d.ZERO;
6974
}
7075

71-
// @Override
72-
// public void draw(Matrix4f matrix4f, Matrix4f projMatrix)
73-
// {
74-
// this.preRender();
75-
//
76-
// for (RenderObjectBase obj : this.renderObjects)
77-
// {
78-
// obj.draw(matrix4f, projMatrix);
79-
// }
80-
//
81-
// this.postRender();
82-
// }
83-
//
76+
@Override
77+
public void draw(Camera camera, Matrix4f posMatrix, Matrix4f projMatrix, MinecraftClient mc, Profiler profiler)
78+
{
79+
}
8480

8581
public void setRenderThrough(boolean renderThrough)
8682
{

src/main/java/fi/dy/masa/minihud/renderer/RenderContainer.java

+12-2
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ protected void updateIfNeeded(Vec3d cameraPos, Entity entity, MinecraftClient mc
8080
}
8181
}
8282

83+
// FIXME
8384
protected void render(Camera camera, Matrix4f posMatrix, Matrix4f projMatrix, MinecraftClient mc, Profiler profiler)
8485
{
8586
profiler.swap("render");
@@ -102,11 +103,12 @@ protected void render(Camera camera, Matrix4f posMatrix, Matrix4f projMatrix, Mi
102103
}
103104
}
104105

105-
protected void reset()
106+
// FIXME
107+
protected void draw(Camera camera, Matrix4f posMatrix, Matrix4f projMatrix, MinecraftClient mc, Profiler profiler)
106108
{
107109
for (OverlayRendererBase renderer : this.renderers)
108110
{
109-
renderer.reset();
111+
renderer.draw(camera, posMatrix, projMatrix, mc, profiler);
110112
}
111113
}
112114

@@ -161,6 +163,14 @@ protected void reset()
161163
// }
162164
// }
163165

166+
protected void reset()
167+
{
168+
for (OverlayRendererBase renderer : this.renderers)
169+
{
170+
renderer.reset();
171+
}
172+
}
173+
164174
public JsonObject toJson()
165175
{
166176
JsonObject obj = new JsonObject();

0 commit comments

Comments
 (0)