what does glBlendFunc do?

does the glBlendFunc only defines the operation of blending when it is enabled? or it also do the blending?
i mean… who is doing the blending calculation?



initially disabled, you have to enable bleding first with glEnable(GL_BLEND);

… your graphics card, maybe ?!

in general, blending says what has to be done the incoming fragment color (source color) and the color stored in the framebuffer (destination color)

glBlendFunc(GL_ONE, GL_ZERO); // which is the default setting
… that means:
resulting color = (source color x 1) + (destination color * 0) = source color

… sets the operation that has to be performed on both scaled colors, by default “+” or GL_FUNC_ADD