Отличие между перемножением текстур и функцией mix()
Есть фрагментный шейдер:
#version 430 core
in vec2 texPos;
out vec4 color;
uniform sampler2D tex;
uniform sampler2D tex2;
void main()
{
1-ый вариант
color = mix(texture(tex, texPos), texture(tex2, texPos) , x); x - какое-то число от 0 до 1
2-ой вариант
color = texture(tex,out_tex) * texture(tex2,out_tex);
}
Я пытался совместить 2 текстуры сначала с помощью первого варианта, а потом с помощью воторого. Я вижу разницу между результатами, но не могу понять что именно происходит при первом варианте, а что при втором.