Debug text

This commit is contained in:
JozsefA 2021-06-01 13:47:38 -07:00
parent 59dd21b85a
commit d7ed765dde
3 changed files with 47 additions and 11 deletions

View File

@ -74,7 +74,7 @@ public class Backend {
}); });
private static Matrix4f projectionMatrix = new Matrix4f(); private static Matrix4f projectionMatrix = new Matrix4f();
private static boolean instancingAvailable; private static boolean instancedArrays;
private static boolean enabled; private static boolean enabled;
static final Map<ResourceLocation, MaterialSpec<?>> materialRegistry = new HashMap<>(); static final Map<ResourceLocation, MaterialSpec<?>> materialRegistry = new HashMap<>();
@ -108,6 +108,18 @@ public class Backend {
throw new IllegalStateException(); throw new IllegalStateException();
} }
public static String getBackendDescriptor() {
if (canUseInstancing()) {
return "GL33 Instanced Arrays";
}
if (canUseVBOs()) {
return "VBOs";
}
return "Disabled";
}
/** /**
* Register a shader program. * Register a shader program.
*/ */
@ -156,7 +168,7 @@ public class Backend {
} }
public static boolean canUseInstancing() { public static boolean canUseInstancing() {
return enabled && instancingAvailable; return enabled && instancedArrays;
} }
public static boolean canUseVBOs() { public static boolean canUseVBOs() {
@ -189,7 +201,7 @@ public class Backend {
compat = new GlCompat(capabilities); compat = new GlCompat(capabilities);
instancingAvailable = compat.vertexArrayObjectsSupported() && instancedArrays = compat.vertexArrayObjectsSupported() &&
compat.drawInstancedSupported() && compat.drawInstancedSupported() &&
compat.instancedArraysSupported(); compat.instancedArraysSupported();

View File

@ -47,14 +47,6 @@ public class BufferedModel {
return vertexCount; return vertexCount;
} }
public void bindBuffer() {
vbo.bind();
}
public void unbindBuffer() {
vbo.unbind();
}
public boolean valid() { public boolean valid() {
return vertexCount > 0 && !deleted; return vertexCount > 0 && !deleted;
} }

View File

@ -0,0 +1,32 @@
package com.jozufozu.flywheel.event;
import java.util.ArrayList;
import com.jozufozu.flywheel.backend.Backend;
import net.minecraft.client.Minecraft;
import net.minecraftforge.client.event.RenderGameOverlayEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
@Mod.EventBusSubscriber
public class ForgeEvents {
@SubscribeEvent
public static void addToDebugScreen(RenderGameOverlayEvent.Text event) {
if (Minecraft.getInstance().gameSettings.showDebugInfo) {
ArrayList<String> right = event.getRight();
String text = "Flywheel: " + Backend.getBackendDescriptor();
if (right.size() < 10) {
right.add("");
right.add(text);
} else {
right.add(9, "");
right.add(10, text);
}
}
}
}