Delay renderer screen startup
This commit is contained in:
+9
-4
@@ -36,6 +36,7 @@ public final class RenderCatalogClient implements ClientModInitializer {
|
|||||||
private Path outputDir;
|
private Path outputDir;
|
||||||
private int currentJobIndex;
|
private int currentJobIndex;
|
||||||
private RenderScreen renderScreen;
|
private RenderScreen renderScreen;
|
||||||
|
private int renderScreenDelayTicks = 60;
|
||||||
private boolean renderStarted;
|
private boolean renderStarted;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -61,12 +62,16 @@ public final class RenderCatalogClient implements ClientModInitializer {
|
|||||||
System.out.println("[renderer] queued " + jobs.size() + " render jobs");
|
System.out.println("[renderer] queued " + jobs.size() + " render jobs");
|
||||||
Minecraft client = Minecraft.getInstance();
|
Minecraft client = Minecraft.getInstance();
|
||||||
renderScreen = new RenderScreen();
|
renderScreen = new RenderScreen();
|
||||||
client.execute(() -> {
|
|
||||||
System.out.println("[renderer] opening render screen");
|
|
||||||
client.setScreenAndShow(renderScreen);
|
|
||||||
});
|
|
||||||
|
|
||||||
ClientTickEvents.END_CLIENT_TICK.register(tickedClient -> {
|
ClientTickEvents.END_CLIENT_TICK.register(tickedClient -> {
|
||||||
|
if (renderScreenDelayTicks > 0) {
|
||||||
|
renderScreenDelayTicks--;
|
||||||
|
if (renderScreenDelayTicks == 0) {
|
||||||
|
System.out.println("[renderer] opening render screen");
|
||||||
|
tickedClient.setScreenAndShow(renderScreen);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!renderStarted && tickedClient.screen == renderScreen) {
|
if (!renderStarted && tickedClient.screen == renderScreen) {
|
||||||
renderStarted = true;
|
renderStarted = true;
|
||||||
System.out.println("[renderer] starting render loop from client tick");
|
System.out.println("[renderer] starting render loop from client tick");
|
||||||
|
|||||||
Reference in New Issue
Block a user