@Override public void applyParameters(ShaderProgram program) { super.applyParameters(program); DefaultRenderingProcess.FBO sceneOpaque = DefaultRenderingProcess.getInstance().getFBO("sceneOpaque"); int texId = 0; GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneOpaque.bindTexture(); program.setInt("texSceneOpaque", texId++); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneOpaque.bindDepthTexture(); program.setInt("texSceneOpaqueDepth", texId++); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneOpaque.bindNormalsTexture(); program.setInt("texSceneOpaqueNormals", texId++); DefaultRenderingProcess.FBO sceneTransparent = DefaultRenderingProcess.getInstance().getFBO("sceneTransparent"); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneTransparent.bindTexture(); program.setInt("texSceneTransparent", texId++); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneTransparent.bindDepthTexture(); program.setInt("texSceneTransparentDepth", texId++); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sceneTransparent.bindNormalsTexture(); program.setInt("texSceneTransparentNormals", texId++); if (CoreRegistry.get(Config.class).getRendering().isSsao()) { DefaultRenderingProcess.FBO ssao = DefaultRenderingProcess.getInstance().getFBO("ssaoBlurred1"); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); ssao.bindTexture(); program.setInt("texSsao", texId++); } if (CoreRegistry.get(Config.class).getRendering().isOutline()) { DefaultRenderingProcess.FBO sobel = DefaultRenderingProcess.getInstance().getFBO("sobel"); GL13.glActiveTexture(GL13.GL_TEXTURE0 + texId); sobel.bindTexture(); program.setInt("texEdges", texId++); program.setFloat("outlineDepthThreshold", (Float) outlineDepthThreshold.getValue()); program.setFloat("outlineThickness", (Float) outlineThickness.getValue()); } program.setFloat("shoreStart", (Float) shoreStart.getValue()); program.setFloat("shoreEnd", (Float) shoreEnd.getValue()); }
public void applyParameters(ShaderProgram program) { LocalPlayer localPlayer = CoreRegistry.get(LocalPlayer.class); GL13.glActiveTexture(GL13.GL_TEXTURE0); glBindTexture(GL11.GL_TEXTURE_2D, terrainTex.getId()); if (localPlayer != null) program.setInt("carryingTorch", localPlayer.isCarryingTorch() ? 1 : 0); }