Spaces:
Build error
Build error
package com.mojang.blaze3d.vertex; | |
import com.mojang.blaze3d.systems.RenderSystem; | |
import javax.annotation.Nullable; | |
import net.minecraftforge.api.distmarker.Dist; | |
import net.minecraftforge.api.distmarker.OnlyIn; | |
public class BufferUploader { | |
private static VertexBuffer lastImmediateBuffer; | |
public static void reset() { | |
if (lastImmediateBuffer != null) { | |
invalidate(); | |
VertexBuffer.unbind(); | |
} | |
} | |
public static void invalidate() { | |
lastImmediateBuffer = null; | |
} | |
public static void drawWithShader(MeshData p_344650_) { | |
RenderSystem.assertOnRenderThread(); | |
VertexBuffer vertexbuffer = upload(p_344650_); | |
vertexbuffer.drawWithShader(RenderSystem.getModelViewMatrix(), RenderSystem.getProjectionMatrix(), RenderSystem.getShader()); | |
} | |
public static void draw(MeshData p_342146_) { | |
RenderSystem.assertOnRenderThread(); | |
VertexBuffer vertexbuffer = upload(p_342146_); | |
vertexbuffer.draw(); | |
} | |
private static VertexBuffer upload(MeshData p_342083_) { | |
VertexBuffer vertexbuffer = bindImmediateBuffer(p_342083_.drawState().format()); | |
vertexbuffer.upload(p_342083_); | |
return vertexbuffer; | |
} | |
private static VertexBuffer bindImmediateBuffer(VertexFormat p_231207_) { | |
VertexBuffer vertexbuffer = p_231207_.getImmediateDrawVertexBuffer(); | |
bindImmediateBuffer(vertexbuffer); | |
return vertexbuffer; | |
} | |
private static void bindImmediateBuffer(VertexBuffer p_231205_) { | |
if (p_231205_ != lastImmediateBuffer) { | |
p_231205_.bind(); | |
lastImmediateBuffer = p_231205_; | |
} | |
} | |
} |