public void setBlendMode(int mode) {
		oldBlendMode = blendMode;
		blendMode = mode;
		
		GL14.glBlendEquation(GL14.GL_FUNC_ADD);
		if (mode < 100) {
			g.setDrawMode(mode);
			return;
		}
		
		try {
			Reflection.invokePrivateMethod(mPredraw,g);
		} catch (Exception e) {App.getApp().handle(e);}
		gl.glEnable(SGL.GL_BLEND);
		gl.glColorMask(true,true,true,true);
		
		if (mode == BM_ADD || mode == BM_SUBTRACT) {
			gl.glBlendFunc(SGL.GL_SRC_ALPHA,SGL.GL_ONE);
			if (mode == BM_SUBTRACT) {
				GL14.glBlendEquation(GL14.GL_FUNC_SUBTRACT);
				GL14.glBlendEquation(GL14.GL_FUNC_REVERSE_SUBTRACT);
			}
		}
		
		try {
			Reflection.invokePrivateMethod(mPostdraw,g);
		} catch (Exception e) {App.getApp().handle(e);}
	}