Skip to content

Commit

Permalink
add testing event dispatch to GL33
Browse files Browse the repository at this point in the history
  • Loading branch information
RogueLogix committed Feb 29, 2024
1 parent 105dba0 commit f3124be
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
import net.minecraft.client.renderer.RenderType;
import net.roguelogix.phosphophyllite.util.NonnullDefault;
import net.roguelogix.quartz.DrawBatch;
import net.roguelogix.quartz.Quartz;
import net.roguelogix.quartz.QuartzEvent;
import net.roguelogix.quartz.internal.Buffer;
import net.roguelogix.quartz.internal.IrisDetection;
import net.roguelogix.quartz.internal.QuartzCore;
Expand Down Expand Up @@ -131,6 +133,8 @@ public void frameStart(PoseStack pMatrixStack, float pPartialTicks, long pFinish
drawInfo.deltaNano = deltaNano;
drawInfo.partialTicks = pPartialTicks;

Quartz.EVENT_BUS.post(new QuartzEvent.FrameStart());

GL33FeedbackDrawing.beginFrame();

meshManager.vertexBuffer.as(GL33Buffer.class).flush();
Expand Down Expand Up @@ -203,7 +207,7 @@ public void endOpaque() {

@Override
public void endTranslucent() {

Quartz.EVENT_BUS.post(new QuartzEvent.FrameEnd());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,17 @@
import com.mojang.blaze3d.systems.RenderSystem;
import it.unimi.dsi.fastutil.objects.*;
import net.minecraft.client.renderer.RenderType;
import net.roguelogix.phosphophyllite.util.Pair;
import net.roguelogix.quartz.DrawBatch;
import net.roguelogix.quartz.Quartz;
import net.roguelogix.quartz.internal.Buffer;
import net.roguelogix.quartz.internal.IrisDetection;
import net.roguelogix.quartz.internal.QuartzCore;
import net.roguelogix.quartz.internal.QuartzInternalEvent;
import net.roguelogix.quartz.internal.common.B3DStateHelper;
import net.roguelogix.quartz.internal.gl33.batching.GL33DrawBatch;
import net.roguelogix.quartz.internal.gl46.GL46FeedbackDrawing;
import net.roguelogix.quartz.internal.util.PointerWrapper;
import net.roguelogix.quartz.internal.util.VertexFormatOutput;
import org.joml.Matrix4f;

Expand Down Expand Up @@ -258,6 +262,14 @@ public static void collectAllFeedback(boolean shadowsEnabled) {
RenderSystem.bindTexture(0);
}
B3DStateHelper.bindVertexArray(0);

if(QuartzCore.TESTING_ALLOWED && QuartzCore.isTestingRunning()){
var buffers = new Object2ObjectOpenHashMap<RenderType, Pair<PointerWrapper, Integer>>();
for (RenderType renderType : inUseRenderTypes) {
buffers.put(renderType, new Pair<>(null, 0));
}
Quartz.EVENT_BUS.post(new QuartzInternalEvent.FeedbackCollected(inUseRenderTypes, buffers));
}
}

private static Matrix4f projection;
Expand Down

0 comments on commit f3124be

Please sign in to comment.