1

在现实生活中,透明度(或不透明度)可以用一个“简单”的方式来解释,即一个物体可以反射多少光,或者有多少光可以穿过。因此,如果一个物体是透明的,光线穿过它,反射到它后面的任何东西上,光线就会回到我们身边。

计算机如何模拟这种行为?我的意思是,作为开发人员,我们有许多抽象和 API 来设置像素的 alpha 级别和不透明度,但是计算机如何将其转换为屏幕上的位图?

我认为正在发生的事情:背面和正面颜色都“组合”以产生第三种颜色,然后将其绘制到屏幕上。例如:屏幕上的透明白色在背面红色将被涂成粉红色!

4

1 回答 1

2

是的,你说得对。“背面”颜色与“正面”颜色与正面颜色的不透明度成比例组合。

对于单个颜色通道,例如红色,不透明度从 0 到 1:

new = old * (1 - opacity) + front * opacity
于 2013-11-06T10:30:38.090 回答