Update 1.14.4 yarn
This commit is contained in:
@@ -6,7 +6,7 @@ import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.Getter;
|
||||
import net.minecraft.client.resource.language.I18n;
|
||||
import net.minecraft.util.SystemUtil;
|
||||
import net.minecraft.util.Util;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Arrays;
|
||||
@@ -173,7 +173,7 @@ public class RenderSettings {
|
||||
}
|
||||
|
||||
private static String findFFmpeg() {
|
||||
switch (SystemUtil.getOperatingSystem()) {
|
||||
switch (Util.getOperatingSystem()) {
|
||||
case WINDOWS:
|
||||
// Allow windows users to unpack the ffmpeg archive into a sub-folder of their .minecraft folder
|
||||
File inDotMinecraft = new File(MCVer.getMinecraft().runDirectory, "ffmpeg/bin/ffmpeg.exe");
|
||||
|
||||
@@ -110,7 +110,7 @@ public class BlendMeshBuilder
|
||||
throw new IllegalStateException("Not building!");
|
||||
} else {
|
||||
if (!wellBehaved) {
|
||||
Tessellator.getInstance().getBufferBuilder().end();
|
||||
Tessellator.getInstance().getBuffer().end();
|
||||
}
|
||||
|
||||
//#if MC<10809
|
||||
@@ -168,7 +168,7 @@ public class BlendMeshBuilder
|
||||
int posOffset = -1, colorOffset = -1, uvOffset = -1;
|
||||
int index = 0;
|
||||
//#if MC>=11500
|
||||
int elementOffset = 0;
|
||||
//$$ int elementOffset = 0;
|
||||
//#endif
|
||||
for (VertexFormatElement element : getElements(vertexFormat)) {
|
||||
//#if MC>=11500
|
||||
|
||||
@@ -18,13 +18,13 @@ import com.mojang.blaze3d.platform.GLX;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderData;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderer;
|
||||
import net.minecraft.client.render.VertexFormats;
|
||||
import net.minecraft.client.gl.GlBuffer;
|
||||
import net.minecraft.client.gl.VertexBuffer;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL15;
|
||||
|
||||
//#if MC>=10904
|
||||
import net.minecraft.block.BlockRenderLayer;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
//#else
|
||||
//$$ import net.minecraft.util.BlockPos;
|
||||
@@ -42,8 +42,8 @@ import java.util.Map;
|
||||
public class ChunkExporter implements Exporter {
|
||||
private final Map<BlockPos, DObject> chunkObjects = new HashMap<>();
|
||||
//#if MC>=10904
|
||||
private final Map<BlockPos, Map<BlockRenderLayer, DObject>> chunkLayerObjects = new HashMap<>();
|
||||
private final List<Pair<ChunkRenderer, BlockRenderLayer>> chunks = new ArrayList<>();
|
||||
private final Map<BlockPos, Map<RenderLayer, DObject>> chunkLayerObjects = new HashMap<>();
|
||||
private final List<Pair<ChunkRenderer, RenderLayer>> chunks = new ArrayList<>();
|
||||
//#else
|
||||
//$$ private final Map<BlockPos, Map<EnumWorldBlockLayer, DObject>> chunkLayerObjects = new HashMap<>();
|
||||
//$$ private final List<Pair<RenderChunk, EnumWorldBlockLayer>> chunks = new ArrayList<>();
|
||||
@@ -53,7 +53,7 @@ public class ChunkExporter implements Exporter {
|
||||
|
||||
public void addChunkUpdate(ChunkRenderer chunk, ChunkRenderData compiledChunk) {
|
||||
//#if MC>=10904
|
||||
for (BlockRenderLayer layer : BlockRenderLayer.values()) {
|
||||
for (RenderLayer layer : RenderLayer.values()) {
|
||||
//#else
|
||||
//$$ for (EnumWorldBlockLayer layer : EnumWorldBlockLayer.values()) {
|
||||
//#endif
|
||||
@@ -98,8 +98,8 @@ public class ChunkExporter implements Exporter {
|
||||
@Override
|
||||
public void postFrame(int frame) throws IOException {
|
||||
//#if MC>=10904
|
||||
for (Pair<ChunkRenderer, BlockRenderLayer> pair : chunks) {
|
||||
BlockRenderLayer layer = pair.getRight();
|
||||
for (Pair<ChunkRenderer, RenderLayer> pair : chunks) {
|
||||
RenderLayer layer = pair.getRight();
|
||||
//#else
|
||||
//$$ for (Pair<RenderChunk, EnumWorldBlockLayer> pair : chunks) {
|
||||
//$$ EnumWorldBlockLayer layer = pair.getRight();
|
||||
@@ -114,7 +114,7 @@ public class ChunkExporter implements Exporter {
|
||||
DObject layerObject = buildChunkLayerObject(chunkObject, chunk, layer);
|
||||
if (layerObject == null) continue;
|
||||
//#if MC>=10904
|
||||
Map<BlockRenderLayer, DObject> layerObjects
|
||||
Map<RenderLayer, DObject> layerObjects
|
||||
//#else
|
||||
//$$ Map<EnumWorldBlockLayer, DObject> layerObjects
|
||||
//#endif
|
||||
@@ -145,11 +145,11 @@ public class ChunkExporter implements Exporter {
|
||||
|
||||
private DObject buildChunkLayerObject(DObject chunkObject, ChunkRenderer renderChunk,
|
||||
//#if MC>=10904
|
||||
BlockRenderLayer layer) {
|
||||
RenderLayer layer) {
|
||||
//#else
|
||||
//$$ EnumWorldBlockLayer layer) {
|
||||
//#endif
|
||||
GlBuffer vertexBuffer = renderChunk.getGlBuffer(layer.ordinal());
|
||||
VertexBuffer vertexBuffer = renderChunk.getGlBuffer(layer.ordinal());
|
||||
if (vertexBuffer == null) return null;
|
||||
|
||||
DObject layerObject = new DObject(buildChunkLayerMesh(vertexBuffer));
|
||||
@@ -158,7 +158,7 @@ public class ChunkExporter implements Exporter {
|
||||
return layerObject;
|
||||
}
|
||||
|
||||
private DMesh buildChunkLayerMesh(GlBuffer vertexBuffer) {
|
||||
private DMesh buildChunkLayerMesh(VertexBuffer vertexBuffer) {
|
||||
vertexBuffer.bind();
|
||||
int size = GL15.glGetBufferParameteri(GLX.GL_ARRAY_BUFFER, GL15.GL_BUFFER_SIZE);
|
||||
ByteBuffer byteBuffer = GlAllocationUtils.allocateByteBuffer(size);
|
||||
|
||||
@@ -86,7 +86,7 @@ public class ItemExporter implements Exporter {
|
||||
BlendMeshBuilder builder = new BlendMeshBuilder(mesh);
|
||||
builder.setWellBehaved(true);
|
||||
//#if MC>=10809
|
||||
builder.begin(GL11.GL_QUADS, VertexFormats.POSITION_COLOR_UV_NORMAL);
|
||||
builder.begin(GL11.GL_QUADS, VertexFormats.POSITION_COLOR_TEXTURE_LIGHT_NORMAL);
|
||||
//#else
|
||||
//$$ builder.startDrawingQuads();
|
||||
//$$ builder.setVertexFormat(DefaultVertexFormats.ITEM);
|
||||
|
||||
@@ -9,7 +9,7 @@ import org.lwjgl.opengl.GL11;
|
||||
|
||||
//#if MC>=11400
|
||||
import net.minecraft.client.model.Box;
|
||||
import net.minecraft.client.model.Cuboid;
|
||||
import net.minecraft.client.model.ModelPart;
|
||||
//#else
|
||||
//$$ import net.minecraft.client.model.ModelBox;
|
||||
//$$ import net.minecraft.client.model.ModelRenderer;
|
||||
@@ -31,7 +31,7 @@ public class ModelRendererExporter implements Exporter {
|
||||
public void setup() throws IOException {
|
||||
}
|
||||
|
||||
public void preRenderModel(Cuboid model, float scale) {
|
||||
public void preRenderModel(ModelPart model, float scale) {
|
||||
DObject object = getObjectForModel(model, scale);
|
||||
renderState.pushObject(object);
|
||||
renderState.pushModelView();
|
||||
@@ -53,7 +53,7 @@ public class ModelRendererExporter implements Exporter {
|
||||
renderState.pop();
|
||||
}
|
||||
|
||||
private DObject getObjectForModel(Cuboid model, float scale) {
|
||||
private DObject getObjectForModel(ModelPart model, float scale) {
|
||||
int frame = renderState.getFrame();
|
||||
DObject parent = renderState.peekObject();
|
||||
DObject object = null;
|
||||
@@ -78,7 +78,7 @@ public class ModelRendererExporter implements Exporter {
|
||||
return object;
|
||||
}
|
||||
|
||||
private static DMesh generateMesh(Cuboid model, float scale) {
|
||||
private static DMesh generateMesh(ModelPart model, float scale) {
|
||||
DMesh mesh = new DMesh();
|
||||
BlendMeshBuilder builder = new BlendMeshBuilder(mesh);
|
||||
for (Box box : cubeList(model)) {
|
||||
@@ -93,17 +93,17 @@ public class ModelRendererExporter implements Exporter {
|
||||
}
|
||||
|
||||
private static class ModelBasedDObject extends DObject {
|
||||
private final Cuboid model;
|
||||
private final ModelPart model;
|
||||
private final float scale;
|
||||
private boolean valid;
|
||||
|
||||
public ModelBasedDObject(Cuboid model, float scale) {
|
||||
public ModelBasedDObject(ModelPart model, float scale) {
|
||||
super(generateMesh(model, scale));
|
||||
this.model = model;
|
||||
this.scale = scale;
|
||||
}
|
||||
|
||||
public boolean isBasedOn(Cuboid model, float scale) {
|
||||
public boolean isBasedOn(ModelPart model, float scale) {
|
||||
return this.model == model && Math.abs(this.scale - scale) < 1e-4;
|
||||
}
|
||||
|
||||
|
||||
@@ -169,7 +169,7 @@ public class ParticlesExporter implements Exporter {
|
||||
builder.setReverseOffset(offset);
|
||||
builder.setWellBehaved(true);
|
||||
//#if MC>=10809
|
||||
builder.begin(7, VertexFormats.POSITION_UV_COLOR_LMAP);
|
||||
builder.begin(7, VertexFormats.POSITION_TEXTURE_COLOR_LIGHT);
|
||||
//#else
|
||||
//$$ builder.startDrawingQuads();
|
||||
//#endif
|
||||
|
||||
@@ -5,15 +5,7 @@ import net.minecraft.client.render.chunk.ChunkRenderer;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.gen.Accessor;
|
||||
|
||||
//#if MC>=11400
|
||||
@Mixin(targets = "net.minecraft.client.render.WorldRenderer$ChunkInfo")
|
||||
//#else
|
||||
//#if MC>=11400
|
||||
//$$ @Mixin(targets = "net/minecraft/client/renderer/WorldRenderer$ContainerLocalRenderInformation")
|
||||
//#else
|
||||
//$$ @Mixin(targets = "net/minecraft/client/renderer/RenderGlobal$ContainerLocalRenderInformation")
|
||||
//#endif
|
||||
//#endif
|
||||
public interface ContainerLocalRenderInformationAccessor {
|
||||
//#if MC>=11500
|
||||
//$$ @Accessor("chunk")
|
||||
|
||||
@@ -10,18 +10,18 @@ import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
//#if MC>=11400
|
||||
import net.minecraft.client.model.Cuboid;
|
||||
import net.minecraft.client.model.ModelPart;
|
||||
//#else
|
||||
//$$ import net.minecraft.client.model.ModelRenderer;
|
||||
//#endif
|
||||
|
||||
@Mixin(Cuboid.class)
|
||||
@Mixin(ModelPart.class)
|
||||
public abstract class MixinModelRenderer {
|
||||
@Inject(method = "render", at = @At("HEAD"))
|
||||
public void preRender(float scale, CallbackInfo ci) {
|
||||
BlendState blendState = BlendState.getState();
|
||||
if (blendState != null) {
|
||||
blendState.get(ModelRendererExporter.class).preRenderModel((Cuboid)(Object)this, scale);
|
||||
blendState.get(ModelRendererExporter.class).preRenderModel((ModelPart)(Object)this, scale);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public abstract class MixinModelRenderer {
|
||||
public void preRenderWithRotation(float scale, CallbackInfo ci) {
|
||||
BlendState blendState = BlendState.getState();
|
||||
if (blendState != null) {
|
||||
blendState.get(ModelRendererExporter.class).preRenderModel((Cuboid)(Object)this, scale);
|
||||
blendState.get(ModelRendererExporter.class).preRenderModel((ModelPart)(Object)this, scale);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,10 +21,14 @@ import net.minecraft.client.render.entity.LivingEntityRenderer;
|
||||
//$$ @Mixin(RendererLivingEntity.class)
|
||||
//#endif
|
||||
public abstract class MixinRenderLivingBase {
|
||||
//#if MC>=11500
|
||||
//$$ @Inject(method = "render(Lnet/minecraft/entity/LivingEntity;FFLnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;I)V", at = @At(
|
||||
//#else
|
||||
//#if FABRIC>=1
|
||||
@Inject(method = "method_4054", at = @At(
|
||||
@Inject(method = "render(Lnet/minecraft/entity/LivingEntity;DDDFF)V", at = @At(
|
||||
//#else
|
||||
//$$ @Inject(method = "doRender(Lnet/minecraft/entity/LivingEntity;DDDFF)V", at = @At(
|
||||
//#endif
|
||||
//#endif
|
||||
value = "INVOKE",
|
||||
//#if MC>=10904
|
||||
@@ -34,7 +38,7 @@ public abstract class MixinRenderLivingBase {
|
||||
//#endif
|
||||
shift = At.Shift.AFTER
|
||||
))
|
||||
private void recordModelMatrix(LivingEntity entity, double x, double y, double z, float entityYaw, float partialTicks, CallbackInfo ci) {
|
||||
private void recordModelMatrix(CallbackInfo ci) {
|
||||
BlendState blendState = BlendState.getState();
|
||||
if (blendState != null) {
|
||||
blendState.get(EntityExporter.class).postEntityLivingSetup();
|
||||
|
||||
@@ -9,7 +9,7 @@ import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.WritableDimension;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.gl.GlFramebuffer;
|
||||
import net.minecraft.client.gl.Framebuffer;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
import org.lwjgl.opengl.GL12;
|
||||
|
||||
@@ -34,7 +34,7 @@ public abstract class OpenGlFrameCapturer<F extends Frame, D extends CaptureData
|
||||
protected final WorldRenderer worldRenderer;
|
||||
protected final RenderInfo renderInfo;
|
||||
protected int framesDone;
|
||||
private GlFramebuffer frameBuffer;
|
||||
private Framebuffer frameBuffer;
|
||||
|
||||
private final MinecraftClient mc = MCVer.getMinecraft();
|
||||
|
||||
@@ -68,7 +68,7 @@ public abstract class OpenGlFrameCapturer<F extends Frame, D extends CaptureData
|
||||
return renderInfo.getFrameSize().getHeight();
|
||||
}
|
||||
|
||||
protected GlFramebuffer frameBuffer() {
|
||||
protected Framebuffer frameBuffer() {
|
||||
if (frameBuffer == null) {
|
||||
frameBuffer = mc.getFramebuffer();
|
||||
}
|
||||
@@ -117,8 +117,8 @@ public abstract class OpenGlFrameCapturer<F extends Frame, D extends CaptureData
|
||||
|
||||
protected void resize(int width, int height) {
|
||||
//#if MC>=11400
|
||||
GlFramebuffer fb = mc.getFramebuffer();
|
||||
if (fb.viewWidth != width || fb.viewHeight != height) {
|
||||
Framebuffer fb = mc.getFramebuffer();
|
||||
if (fb.viewportWidth != width || fb.viewportHeight != height) {
|
||||
fb.resize(width, height
|
||||
//#if MC>=11400
|
||||
, false
|
||||
|
||||
@@ -289,7 +289,7 @@ public class GuiVideoRenderer extends GuiScreen implements Tickable {
|
||||
buffer.get(); // alpha
|
||||
//#if MC>=11400
|
||||
int value = 0xff << 24 | b << 16 | g << 8 | r;
|
||||
data.setPixelRGBA(x, y, value); // actually takes ABGR, not RGBA
|
||||
data.setPixelRgba(x, y, value); // actually takes ABGR, not RGBA
|
||||
//#else
|
||||
//$$ int value = 0xff << 24 | r << 16 | g << 8 | b;
|
||||
//$$ data[y * width + x] = value;
|
||||
|
||||
@@ -5,9 +5,9 @@ package com.replaymod.render.hooks;
|
||||
import com.replaymod.render.mixin.ChunkRenderDispatcherAccessor;
|
||||
import com.replaymod.render.mixin.WorldRendererAccessor;
|
||||
import com.replaymod.render.utils.JailingQueue;
|
||||
import net.minecraft.client.render.chunk.BlockLayeredBufferBuilder;
|
||||
import net.minecraft.client.render.chunk.BlockBufferBuilderStorage;
|
||||
import net.minecraft.client.render.WorldRenderer;
|
||||
import net.minecraft.client.render.chunk.ChunkBatcher;
|
||||
import net.minecraft.client.render.chunk.ChunkBuilder;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderTask;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderWorker;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderer;
|
||||
@@ -30,7 +30,7 @@ public class ChunkLoadingRenderGlobal {
|
||||
//#else
|
||||
//$$ private final RenderGlobal hooked;
|
||||
//#endif
|
||||
private ChunkBatcher renderDispatcher;
|
||||
private ChunkBuilder renderDispatcher;
|
||||
//#if MC>=11400
|
||||
private JailingQueue<ChunkRenderTask> workerJailingQueue;
|
||||
//#else
|
||||
@@ -52,7 +52,7 @@ public class ChunkLoadingRenderGlobal {
|
||||
setup(((WorldRendererAccessor) renderGlobal).getRenderDispatcher());
|
||||
}
|
||||
|
||||
public void updateRenderDispatcher(ChunkBatcher renderDispatcher) {
|
||||
public void updateRenderDispatcher(ChunkBuilder renderDispatcher) {
|
||||
if (this.renderDispatcher != null) {
|
||||
workerJailingQueue.freeAll();
|
||||
this.renderDispatcher = null;
|
||||
@@ -62,9 +62,9 @@ public class ChunkLoadingRenderGlobal {
|
||||
}
|
||||
}
|
||||
|
||||
private void setup(ChunkBatcher renderDispatcher) {
|
||||
private void setup(ChunkBuilder renderDispatcher) {
|
||||
this.renderDispatcher = renderDispatcher;
|
||||
this.renderWorker = (ChunkRenderWorkerAccessor) new ChunkRenderWorker(renderDispatcher, new BlockLayeredBufferBuilder());
|
||||
this.renderWorker = (ChunkRenderWorkerAccessor) new ChunkRenderWorker(renderDispatcher, new BlockBufferBuilderStorage());
|
||||
ChunkRenderDispatcherAccessor renderDispatcherAcc = (ChunkRenderDispatcherAccessor) renderDispatcher;
|
||||
|
||||
int workerThreads = renderDispatcherAcc.getListThreadedWorkers().size();
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//#if MC>=10800 && MC<11500
|
||||
package com.replaymod.render.mixin;
|
||||
|
||||
import net.minecraft.client.render.chunk.ChunkBatcher;
|
||||
import net.minecraft.client.render.chunk.ChunkBuilder;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderTask;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderWorker;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
@@ -14,7 +14,7 @@ import java.util.concurrent.PriorityBlockingQueue;
|
||||
//$$ import java.util.concurrent.BlockingQueue;
|
||||
//#endif
|
||||
|
||||
@Mixin(ChunkBatcher.class)
|
||||
@Mixin(ChunkBuilder.class)
|
||||
public interface ChunkRenderDispatcherAccessor {
|
||||
@Accessor("workers")
|
||||
List<ChunkRenderWorker> getListThreadedWorkers();
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
package com.replaymod.render.mixin;
|
||||
|
||||
import com.replaymod.render.hooks.ChunkLoadingRenderGlobal;
|
||||
import net.minecraft.client.render.chunk.ChunkBatcher;
|
||||
import net.minecraft.client.render.chunk.ChunkBuilder;
|
||||
import net.minecraft.client.render.VisibleRegion;
|
||||
import net.minecraft.entity.Entity;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
@@ -37,10 +37,10 @@ public abstract class MixinRenderGlobal {
|
||||
private boolean replayModRender_passThroughSetupTerrain;
|
||||
|
||||
@Shadow
|
||||
public boolean terrainUpdateNecessary;
|
||||
public boolean needsTerrainUpdate;
|
||||
|
||||
@Shadow
|
||||
public ChunkBatcher chunkBatcher;
|
||||
public ChunkBuilder chunkBuilder;
|
||||
|
||||
@Shadow
|
||||
public abstract void setUpTerrain(
|
||||
@@ -90,9 +90,9 @@ public abstract class MixinRenderGlobal {
|
||||
playerSpectator
|
||||
);
|
||||
replayModRender_hook.updateChunks();
|
||||
} while (this.terrainUpdateNecessary);
|
||||
} while (this.needsTerrainUpdate);
|
||||
|
||||
this.terrainUpdateNecessary = true;
|
||||
this.needsTerrainUpdate = true;
|
||||
|
||||
replayModRender_passThroughSetupTerrain = false;
|
||||
ci.cancel();
|
||||
@@ -118,7 +118,7 @@ public abstract class MixinRenderGlobal {
|
||||
|
||||
// Prior to 1.9.4, MC always uses the same ChunkRenderDispatcher instance
|
||||
//#if MC>=10904
|
||||
@Inject(method = "setWorld", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/render/chunk/ChunkBatcher;stop()V"))
|
||||
@Inject(method = "setWorld", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/render/chunk/ChunkBuilder;stop()V"))
|
||||
private void stopWorkerThreadsAndChunkLoadingRenderGlobal(CallbackInfo ci) {
|
||||
if (replayModRender_hook != null) {
|
||||
replayModRender_hook.updateRenderDispatcher(null);
|
||||
@@ -129,7 +129,7 @@ public abstract class MixinRenderGlobal {
|
||||
@Inject(method = "reload", at = @At(value = "RETURN"))
|
||||
private void setupChunkLoadingRenderGlobal(CallbackInfo ci) {
|
||||
if (replayModRender_hook != null) {
|
||||
replayModRender_hook.updateRenderDispatcher(this.chunkBatcher);
|
||||
replayModRender_hook.updateRenderDispatcher(this.chunkBuilder);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.gen.Accessor;
|
||||
import java.util.Set;
|
||||
|
||||
//#if MC>=10800
|
||||
import net.minecraft.client.render.chunk.ChunkBatcher;
|
||||
import net.minecraft.client.render.chunk.ChunkBuilder;
|
||||
import net.minecraft.client.render.chunk.ChunkRenderer;
|
||||
//#endif
|
||||
|
||||
@@ -18,13 +18,13 @@ public interface WorldRendererAccessor {
|
||||
void setRenderEntitiesStartupCounter(int value);
|
||||
|
||||
//#if MC>=10800
|
||||
@Accessor("chunkBatcher")
|
||||
ChunkBatcher getRenderDispatcher();
|
||||
@Accessor("chunkBuilder")
|
||||
ChunkBuilder getRenderDispatcher();
|
||||
|
||||
@Accessor("terrainUpdateNecessary")
|
||||
@Accessor("needsTerrainUpdate")
|
||||
void setDisplayListEntitiesDirty(boolean value);
|
||||
|
||||
@Accessor("chunkRenderers")
|
||||
@Accessor("chunksToRebuild")
|
||||
Set<ChunkRenderer> getChunksToUpdate();
|
||||
//#endif
|
||||
//#endif
|
||||
|
||||
@@ -27,7 +27,7 @@ import de.johni0702.minecraft.gui.utils.lwjgl.Dimension;
|
||||
import de.johni0702.minecraft.gui.utils.lwjgl.ReadableDimension;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import com.mojang.blaze3d.platform.GLX;
|
||||
import net.minecraft.client.gl.GlFramebuffer;
|
||||
import net.minecraft.client.gl.Framebuffer;
|
||||
import net.minecraft.util.crash.CrashException;
|
||||
import net.minecraft.sound.SoundCategory;
|
||||
import net.minecraft.client.render.RenderTickCounter;
|
||||
@@ -103,7 +103,7 @@ public class VideoRenderer implements RenderInfo {
|
||||
private boolean cancelled;
|
||||
private volatile Throwable failureCause;
|
||||
|
||||
private GlFramebuffer guiFramebuffer;
|
||||
private Framebuffer guiFramebuffer;
|
||||
private int displayWidth, displayHeight;
|
||||
|
||||
public VideoRenderer(RenderSettings settings, ReplayHandler replayHandler, Timeline timeline) throws IOException {
|
||||
@@ -319,7 +319,7 @@ public class VideoRenderer implements RenderInfo {
|
||||
//#endif
|
||||
|
||||
// Set up our own framebuffer to render the GUI to
|
||||
guiFramebuffer = new GlFramebuffer(displayWidth, displayHeight, true
|
||||
guiFramebuffer = new Framebuffer(displayWidth, displayHeight, true
|
||||
//#if MC>=11400
|
||||
, false
|
||||
//#endif
|
||||
|
||||
Reference in New Issue
Block a user