package openmods.renderer;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.client.renderer.RenderGlobal;
import net.minecraftforge.client.event.RenderWorldLastEvent;
import net.minecraftforge.common.MinecraftForge;
public abstract class StencilRendererHandler {
public static final StencilRendererHandler DUMMY = new StencilRendererHandler() {
@Override
public void render(RenderGlobal context, float partialTickTime) {}
};
public abstract void render(RenderGlobal context, float partialTickTime);
private boolean renderThisTick;
public StencilRendererHandler() {
MinecraftForge.EVENT_BUS.register(this);
}
public void markForRender() {
renderThisTick = true;
}
@SubscribeEvent
public void drawStenciledBackground(RenderWorldLastEvent evt) {
if (!renderThisTick) return;
renderThisTick = false;
render(evt.context, evt.partialTicks);
}
}