OpenGL-卡通着色(Cartoon)
原理 茶壶上的色调通过角度的余弦值来选择的,这个角度是指光线和面的法线之间的夹角角度。如果法线和光的夹角比较小,我们使用较亮的色调,随着夹角变大,逐步使用更暗的色调。换句话说,角度余弦值将决定色调的强度。 关于计算,主要根据diffuse的值得区间富赋予不同颜色,使之产生过渡的颜色效果。当diffuse的值大于0.95,使用最亮的颜色,当diffuse的值小于0.25,使用最暗的颜色。 非卡通效果 CartoonShading.vs CartoonShading.fs main.cpp 完整项目代码 https://github.com/mc-liyanliang/OpenGL-Shader/tree/master