public void setEffectsTexture(Texture newEffectsTexture) {
   if ((effectsTexture.getWidth() == newEffectsTexture.getWidth())
       && (effectsTexture.getHeight() == newEffectsTexture.getHeight())) {
     this.effectsTexture = newEffectsTexture;
   } else {
     // This should not be possible with the current BlockSelectionRenderSystem implementation
     throw new RuntimeException(
         "New effectsTexture must have same height and width as the original effectsTexture");
   }
 }
  public void beginRenderOverlay() {
    if (effectsTexture == null || !effectsTexture.isLoaded()) {
      return;
    }

    defaultTextured.activateFeature(ShaderProgramFeature.FEATURE_ALPHA_REJECT);
    defaultTextured.enable();

    glBindTexture(GL11.GL_TEXTURE_2D, effectsTexture.getId());

    glEnable(GL11.GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  }