此函数可用于检索用于绘制的当前目标扩展混合模式因子。返回的值将是以下常量之一("s"表示从源获取的值,而"d"表示从目标获取的值):
混合模式因子常量 | |
---|---|
常量 | 混合因子(红色、绿色、蓝色、透明度) |
bm_zero | (0, 0, 0, 0) |
bm_one | (1, 1, 1, 1) |
bm_src_colour | (Rs, Gs, Bs, As) |
bm_inv_src_colour | (1-Rs, 1-Gs, 1-Bs, 1-As) |
bm_src_alpha | (As, As, As, As) |
bm_inv_src_alpha | (1-As, 1-As, 1-As, 1-As) |
bm_dest_alpha | (Ad, Ad, Ad, Ad) |
bm_inv_dest_alpha | (1-Ad, 1-Ad, 1-Ad, 1-Ad) |
bm_dest_colour | (Rd, Gd, Bd, Ad) |
bm_inv_dest_colour | (1-Rd, 1-Gd, 1-Bd, 1-Ad) |
bm_src_alpha_sat | (f, f, f, 1) where f = min(As, 1-Ad) |
gpu_get_blendmode_dest();
Blend Mode Factor Constant (see above table)
var bm;
bm[0] = gpu_get_blendmode_src();
bm[1] = gpu_get_blendmode_dest();
gpu_set_blendmode_ext_sepalpha(bm[0], bm[1], bm_inv_src_alpha, bm_inv_dest_colour);
以上代码创建本地数组并获取当前源和目标混合因子。然后使用该数组来操纵混合因子的Alpha分量。