Blending combines a fragment's R, G, B, and A values with those stored in the framebuffer at the corresponding location. The blending, which is performed only in RGBA mode, depends on the alpha value of the fragment and that of the corresponding currently stored pixel; it may also depend on the RGB values. You control blending with glBlendFunc, with which you indicate the source and destination blending factors.