Я не уверен, что под "реальностью" вы подразумеваете исходный код, который взламывает такой эффект, или как он работает в природе.
В коде
Вы можете прозрачно наложить изображения простымЛинейная интерполяция обоих входных изображений:
Color lerp (Color lhs, Color rhs, real f) {
return (1-f)*lhs + f*rhs;
}
Image overlay_transparent (Image a, Image b, real f) {
assert (a.width == b.width);
assert (a.height == b.height);
Image output;
for_each (y : 0 .. a.height)
for_each (x : 0 .. a.width)
output(x,y) = lerp(a(x,y), b(x,y), f);
return output;
}
Затем можно выполнить наложение 50%, вызвав overlay_transparent (a,b, 0.5)
.
В действительности
Прозрачные материалы отражают долювходящий свет, некоторая часть поглощается, а другая часть пропускается через материал.
Идеальное зеркало отражает весь входящий свет зеркально, каждый выходящий вектор частиц зависит исключительно от его входящего вектора.
Совершенно рассеянный материал отражает весь входящий свет, но для каждого входящего вектора в полушарии существует бесконечно много возможных векторов выделения в точке попадания.
Идеально поглощающий материал черный, как и сама Пустота..
Прекрасно пропускающий материал, который не мешает частицам на путитьфу материал будет невидим.
Все эти совершенные материалы пока не встречаются в природе, и большинство материалов реального мира представляют собой их смесь.
Обратите внимание, что это наука всам;для получения более глубоких знаний вы можете начать изучение синтеза реалистичных изображений и трассировки путей, а также концепции BRDF / BSDF / ....