OpenGL学习之材质RGB值和光源RGB值关系
材质的颜色与光源的颜色有些不一样。对于光源,R、G、B值等于R、G、B对其最大强度的百分比。若光源颜色的R、G、B值都是1.0,则是最强的白光;若值变为0.5,颜色仍为白色,但强度为原来的一半,因而表现为灰色;若R=G=1.0,B=0.0,则光源为黄色。对于材质,R、G、B值为材质对光的R、G、B成分的反射率。好比,一种材质的R=1.0、G=0.五、B=0.0,则材质反射所有的红色成分,一半的绿色成分,不反射蓝色成分。也就是说,若OpenGL的光源颜色为(LR、LG、LB),材质颜色为(MR、MG、MB),那么,在忽略全部其余反射效果的状况下,最终到达眼睛的光的颜色为(LR*MR、LG*MG、LB*MB)。 一样,若是有两束光,相应的值分别为(R一、G一、B1)和(R二、G二、B2),则OpenGL将各个颜色成分相加,获得(R1+R二、G1+G二、B1+B2),若任一成分的和值大于1(超出了设备所能显示的亮度)则约简到1.0。
欢迎关注本站公众号,获取更多信息