基本知识
RGB代表红色、绿色和蓝色三种颜色的组合。在电子设备中,如显示器、电视等,这三种颜色的不同强度组合可以产生不同的颜色。每个像素都由三个分量组成,它们分别是红色(R)、绿色(G)和蓝色(B)。每个分量的取值范围是0-255,它们的组合形成了RGB颜色空间中的所有可见颜色。因此,通过调整RGB分量可以实现各种不同的颜色效果。
CMYK
CMYK和RGB是两种常见的色彩模式,用于在不同的场景中呈现颜色。
RGB是一种适用于显示器、电视机等光学设备的色彩模式。它基于红、绿、蓝三种基本颜色的混合来产生所有其他颜色。在RGB模式中,每个颜色通道的取值范围都是0到255之间。
CMYK则是一种适用于印刷行业的色彩模式。它基于青、品红、黄三种颜料在白纸上的吸收反射原理,通过叠加不同比例的颜料来产生所有其他颜色。在CMYK模式中,每个颜色通道的取值范围也是0到255之间。
CMYK和RGB之间最大的区别在于它们所使用的基本颜色不同,以及它们在处理颜色时所考虑的因素不同。因此,在将图像从一个模式转换到另一个模式时,可能会导致一些细微但重要的差异。
描述色彩的维度
HSL
HSL色彩模式是工业界的一种颜色标准,是通过对色相(Hue)、饱和度(Saturation)、明度(Lightness)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,HSL即是代表色相,饱和度,明度三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。
色相
- 色相决定是什么颜色
饱和度
- 饱和度决定颜色浓淡
明度
- 明度决定照射在颜色上的白光有多亮
对比度
对比度(Contrast)指的是图像中最亮和最暗部分之间的差异程度。在图像处理中,调节对比度可以使图像更加清晰、明亮或者突出某些细节。
更多
RGB与其他系统的互相转化
色彩空间中的 HSL、HSV、HSB 有什么区别?
HSI和RGB的转换
其他部分
Lerp()
Unity Shader中的Lerp()函数是一种线性插值函数,用于在两个值之间进行插值。其全称为”Linear Interpolation”,意为线性插值。
Lerp()函数有三个参数:第一个参数表示起始值,第二个参数表示终止值,第三个参数表示插值因子(范围在0到1之间)。具体来说,当插值因子为0时,返回起始值;当插值因子为1时,返回终止值;而在0和1之间,则返回根据插值因子进行线性插值的结果。
例如,在一个颜色渐变效果中,我们可以使用Lerp()函数将两个颜色进行平滑过渡。具体实现方式如下:
float t = Time . time % duration / duration;
color = Color . Lerp(startColor, endColor, t);
其中startColor和endColor分别代表起始颜色和结束颜色,t为当前时间相对于渐变总时间的百分比。通过不断调整t的取值,并使用Lerp()函数获取相应的颜色数值,就可以实现一个平滑渐变的效果。
需要注意的是,Lerp()函数仅适用于数字类型和向量类型。如果需要对其他类型进行插值操作(如纹理),则需要使用其他方法。