List of usage examples for org.lwjgl.opengl GL20 glUseProgram
public static void glUseProgram(@NativeType("GLuint") int program)
From source file:cn.academy.support.nei.FusorRecipeHandler.java
License:GNU General Public License
@Override public void drawExtras(int recipe) { if (tick >= 50) tick = 0;// ww w. j a va 2 s . co m GL11.glEnable(GL11.GL_BLEND); Resources.font().draw(String.valueOf(((IFCachedRecipe) arecipes.get(recipe)).liquid), 75, 11.5f, new FontOption(13, new Color(0xFF373737))); ShaderMono.instance().useProgram(); GL11.glColor4f(55f / 151, 55f / 151, 55f / 151, 1); RenderUtils.loadTexture(new ResourceLocation("academy:textures/guis/progress/progress_fusor.png")); HudUtils.rect(62, 40.5f, 0, 0, 40d * (tick / 50d), 10, 126 * (tick / 50d), 30); GL20.glUseProgram(0); }
From source file:cn.academy.support.nei.MetalFormerRecipeHandler.java
License:GNU General Public License
@Override public void drawBackground(int recipe) { ShaderMono.instance().useProgram();// w w w. ja va2s.c om RenderUtils.loadTexture(new ResourceLocation(getGuiTexture())); HudUtils.rect(35, 0, 0, 0, 94, 57, 94, 57); GL20.glUseProgram(0); }
From source file:cn.academy.support.nei.MetalFormerRecipeHandler.java
License:GNU General Public License
@Override public void drawExtras(int recipe) { if (tick >= 50) tick = 0;/*w ww . j a va 2 s. co m*/ ShaderMono.instance().useProgram(); GL11.glEnable(GL11.GL_BLEND); GL11.glColor4f(55f / 151, 55f / 151, 55f / 151, 1); RenderUtils.loadTexture(((MFCachedRecipe) arecipes.get(recipe)).mode.texture); HudUtils.rect(73, 23, 0, 0, 18, 18, 48, 48); RenderUtils.loadTexture(new ResourceLocation("academy:textures/guis/progress/progress_metalformer.png")); HudUtils.rect(57, 41, 0, 0, 50d * (tick / 50d), 13, 114d * (tick / 50d), 30); GL20.glUseProgram(0); }
From source file:cn.academy.vanilla.electromaster.client.effect.RailgunHandEffect.java
License:GNU General Public License
@Override public void renderHand(boolean firstPerson) { if (RenderUtils.isInShadowPass()) return;/* w w w . j av a 2 s . com*/ long dt = getDeltaTime(); if (dt >= PER_FRAME * COUNT) { dispose(); return; } int frame = (int) (dt / PER_FRAME); glEnable(GL_ALPHA_TEST); glAlphaFunc(GL_GREATER, 0.0f); glDisable(GL_CULL_FACE); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); ShaderSimple.instance().useProgram(); glPushMatrix(); if (firstPerson) { glTranslated(.26, -.12, -.24); glScalef(.4f, .4f, 1f); } else { EntityPlayer player = Minecraft.getMinecraft().thePlayer; glTranslated(0, 0.2, -1); glRotated(-player.rotationPitch, 1, 0, 0); } RenderUtils.loadTexture(textures[frame]); mesh.draw(ShaderSimple.instance()); glPopMatrix(); GL20.glUseProgram(0); glAlphaFunc(GL_GEQUAL, 0.1f); glEnable(GL_CULL_FACE); }
From source file:cn.academy.vanilla.meltdowner.client.render.RenderMdShield.java
License:GNU General Public License
@Override public void doRender(Entity _entity, double x, double y, double z, float a, float b) { if (RenderUtils.isInShadowPass()) { return;//from w ww . j av a 2s. com } long time = GameTimer.getTime(); EntityMdShield entity = (EntityMdShield) _entity; // Calculate rotation long dt; if (entity.lastRender == 0) dt = 0; else dt = time - entity.lastRender; float rotationSpeed = MathUtils.lerpf(0.8f, 2f, Math.min(entity.ticksExisted / 30.0f, 1f)); entity.rotation += rotationSpeed * dt; if (entity.rotation >= 360f) entity.rotation -= 360f; ShaderSimple.instance().useProgram(); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glAlphaFunc(GL11.GL_GREATER, 0.05f); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glPushMatrix(); GL11.glTranslated(x, y, z); GL11.glRotatef(-entity.rotationYaw, 0, 1, 0); GL11.glRotatef(entity.rotationPitch, 1, 0, 0); GL11.glRotatef(entity.rotation, 0, 0, 1); float size = EntityMdShield.SIZE * MathUtils.lerpf(0.2f, 1f, Math.min(entity.ticksExisted / 15.0f, 1f)); float alpha = Math.min(entity.ticksExisted / 6.0f, 1.0f); GL11.glScalef(size, size, 1); RenderUtils.loadTexture(texture); mesh.draw(ShaderSimple.instance()); GL11.glPopMatrix(); GL11.glEnable(GL11.GL_CULL_FACE); GL11.glAlphaFunc(GL11.GL_GEQUAL, 0.1f); GL20.glUseProgram(0); entity.lastRender = time; }
From source file:cn.academy.vanilla.teleporter.client.MarkRender.java
License:GNU General Public License
@Override public void doRender(Entity ent, double x, double y, double z, float var8, float var9) { if (RenderUtils.isInShadowPass()) return;//from w w w . j ava2 s.co m EntityTPMarking mark = (EntityTPMarking) ent; if (!mark.firstUpdated()) return; int texID = (int) ((mark.ticksExisted / 2.5) % tex.length); GL11.glEnable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glPushMatrix(); { GL11.glTranslated(x, y, z); GL11.glRotated(-mark.rotationYaw, 0, 1, 0); GL11.glScaled(-1, -1, 1); ShaderSimple.instance().useProgram(); RenderUtils.loadTexture(tex[texID]); if (!mark.available) { GL11.glColor4d(1, 0.2, 0.2, 1); } else { GL11.glColor4d(1, 1, 1, 1); } model.draw(); GL20.glUseProgram(0); } GL11.glPopMatrix(); GL11.glEnable(GL11.GL_DEPTH_TEST); GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_CULL_FACE); }
From source file:cn.academy.vanilla.teleporter.client.RenderMarker.java
License:GNU General Public License
@Override public void doRender(Entity ent, double x, double y, double z, float a, float b) { EntityMarker marker = (EntityMarker) ent; if (!marker.firstUpdated()) return;//w w w .j a v a2s . c om Entity targ = marker.target; float width, height; if (targ != null) { width = targ.width; height = targ.height; } else { width = marker.width; height = marker.height; } ShaderNotex.instance().useProgram(); GL11.glDisable(GL11.GL_TEXTURE_2D); if (marker.ignoreDepth) GL11.glDisable(GL11.GL_DEPTH_TEST); GL11.glPushMatrix(); GL11.glTranslated(x - width / 2, y + 0.05 * Math.sin(GameTimer.getAbsTime() / 400.0), z - width / 2); marker.color.bind(); renderMark(width, height); GL11.glPopMatrix(); GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_DEPTH_TEST); GL20.glUseProgram(0); }
From source file:cn.lambdalib.particle.Sprite.java
License:MIT License
public void draw() { glEnable(GL_BLEND);// w w w. j a va 2 s . c om glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); if (texture != null) { RenderUtils.loadTexture(texture); } else { glDisable(GL_TEXTURE_2D); } if (!cullFace) { glDisable(GL_CULL_FACE); } color.bind(); Tessellator t = Tessellator.instance; float hw = width / 2, hh = height / 2; if (hasLight) { t.startDrawingQuads(); t.setNormal(0, 0, -1); t.addVertexWithUV(-hw, hh, 0, 0, 0); t.addVertexWithUV(-hw, -hh, 0, 0, 1); t.addVertexWithUV(hw, -hh, 0, 1, 1); t.addVertexWithUV(hw, hh, 0, 1, 0); t.draw(); } else { // Use legacy routine to avoid ShaderMod to ruin the render ShaderSimple.instance().useProgram(); glBegin(GL_QUADS); glTexCoord2f(0, 0); glVertex3f(-hw, hh, 0); glTexCoord2f(0, 1); glVertex3f(-hw, -hh, 0); glTexCoord2f(1, 1); glVertex3f(hw, -hh, 0); glTexCoord2f(1, 0); glVertex3f(hw, hh, 0); glEnd(); GL20.glUseProgram(0); } glEnable(GL_CULL_FACE); glEnable(GL_TEXTURE_2D); }
From source file:cn.lambdalib.util.client.shader.ShaderMono.java
License:MIT License
private ShaderMono() { this.linkShader(getShader("simple.vert"), GL20.GL_VERTEX_SHADER); this.linkShader(getShader("mono.frag"), GL20.GL_FRAGMENT_SHADER); this.compile(); this.useProgram(); GL20.glUniform1i(GL20.glGetUniformLocation(this.getProgramID(), "sampler"), 0); GL20.glUseProgram(0); }
From source file:cn.lambdalib.util.client.shader.ShaderSimple.java
License:MIT License
private ShaderSimple() { this.linkShader(getShader("simple.vert"), GL20.GL_VERTEX_SHADER); this.linkShader(getShader("simple.frag"), GL20.GL_FRAGMENT_SHADER); this.compile(); this.useProgram(); GL20.glUniform1i(GL20.glGetUniformLocation(this.getProgramID(), "sampler"), 0); GL20.glUseProgram(0); }