OpenGL Blending

Blending 예제
http://dis.dankook.ac.kr/lectures/cg08/entry/blending-예제

Blending Filter 예제
http://dis.dankook.ac.kr/lectures/cg08/entry/blending-filter-예제

//
Default (no blending) = Cs*1
glBlendFunc(GL_ONE, GL_ZERO)      

사용자 삽입 이미지

// Draw background only = Cd*1
glBlendFunc(GL_ZERO,
GL_ONE)  

사용자 삽입 이미지

// Addition Blending = Cs*1 + Cd*1
glBlendFunc(GL_ONE,
GL_ONE)    

사용자 삽입 이미지

// Alpha blending (back-to-front) = Cs*As + Cd*(1-As)

glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) 

사용자 삽입 이미지

// Brighten the scene = Cs*As +
Cd*1
glBlendFunc(GL_SRC_ALPHA, GL_ONE) 

사용자 삽입 이미지

// Multiplicative blending = Cd*Cs
glBlendFunc(GL_ZERO,
GL_SRC_COLOR)

사용자 삽입 이미지

// darken the scene = Cd*As
glBlendFunc(GL_ZERO,
GL_SRC_ALPHA);

사용자 삽입 이미지

// Invert all the colors =
Cs*(1-Cd)
glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ZERO)

사용자 삽입 이미지