use of net.minecraft.client.render.Shader in project BleachHack by BleachDrinker420.
the class ShaderEffectWrapper method drawFramebufferToMain.
public void drawFramebufferToMain(String framebuffer) {
Framebuffer buffer = getFramebuffer(framebuffer);
Shader blitshader = mc.gameRenderer.blitScreenShader;
blitshader.addSampler("DiffuseSampler", buffer.getColorAttachment());
double w = mc.getWindow().getFramebufferWidth();
double h = mc.getWindow().getFramebufferHeight();
float ws = (float) buffer.viewportWidth / (float) buffer.textureWidth;
float hs = (float) buffer.viewportHeight / (float) buffer.textureHeight;
RenderSystem.enableBlend();
RenderSystem.blendFuncSeparate(GlStateManager.SrcFactor.SRC_ALPHA, GlStateManager.DstFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SrcFactor.ZERO, GlStateManager.DstFactor.ONE);
GlStateManager._colorMask(true, true, true, false);
GlStateManager._disableDepthTest();
GlStateManager._depthMask(false);
GlStateManager._viewport(0, 0, (int) w, (int) h);
blitshader.bind();
Tessellator tessellator = RenderSystem.renderThreadTesselator();
BufferBuilder bufferBuilder = tessellator.getBuffer();
bufferBuilder.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_TEXTURE_COLOR);
bufferBuilder.vertex(0, h, 0).texture(0f, 0f).color(255, 255, 255, 255).next();
bufferBuilder.vertex(w, h, 0).texture(ws, 0f).color(255, 255, 255, 255).next();
bufferBuilder.vertex(w, 0, 0).texture(ws, hs).color(255, 255, 255, 255).next();
bufferBuilder.vertex(0, 0, 0).texture(0f, hs).color(255, 255, 255, 255).next();
bufferBuilder.end();
BufferRenderer.postDraw(bufferBuilder);
blitshader.unbind();
GlStateManager._depthMask(true);
GlStateManager._colorMask(true, true, true, true);
RenderSystem.disableBlend();
}
use of net.minecraft.client.render.Shader in project KiwiClient by TangyKiwi.
the class ShaderEffectWrapper method drawFramebufferToMain.
public void drawFramebufferToMain(String framebuffer) {
Framebuffer buffer = getFramebuffer(framebuffer);
Shader blitshader = mc.gameRenderer.blitScreenShader;
blitshader.addSampler("DiffuseSampler", buffer.getColorAttachment());
double w = mc.getWindow().getFramebufferWidth();
double h = mc.getWindow().getFramebufferHeight();
float ws = (float) buffer.viewportWidth / (float) buffer.textureWidth;
float hs = (float) buffer.viewportHeight / (float) buffer.textureHeight;
RenderSystem.enableBlend();
RenderSystem.blendFuncSeparate(GlStateManager.SrcFactor.SRC_ALPHA, GlStateManager.DstFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SrcFactor.ZERO, GlStateManager.DstFactor.ONE);
GlStateManager._colorMask(true, true, true, false);
GlStateManager._disableDepthTest();
GlStateManager._depthMask(false);
GlStateManager._viewport(0, 0, (int) w, (int) h);
blitshader.bind();
Tessellator tessellator = RenderSystem.renderThreadTesselator();
BufferBuilder bufferBuilder = tessellator.getBuffer();
bufferBuilder.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_TEXTURE_COLOR);
bufferBuilder.vertex(0, h, 0).texture(0f, 0f).color(255, 255, 255, 255).next();
bufferBuilder.vertex(w, h, 0).texture(ws, 0f).color(255, 255, 255, 255).next();
bufferBuilder.vertex(w, 0, 0).texture(ws, hs).color(255, 255, 255, 255).next();
bufferBuilder.vertex(0, 0, 0).texture(0f, hs).color(255, 255, 255, 255).next();
bufferBuilder.end();
BufferRenderer.postDraw(bufferBuilder);
blitshader.unbind();
GlStateManager._depthMask(true);
GlStateManager._colorMask(true, true, true, true);
RenderSystem.disableBlend();
}
Aggregations