Cette fonction peut être utilisée pour récupérer le facteur alpha du mode de fusion étendu de la source actuelle. La valeur renvoyée sera l'une des constantes suivantes ("s" indique une valeur tirée de la source alors qu'un "d" indique une valeur de la destination) avec seulement le composant "A" utilisé lors du dessin:
Constant Facteur de fusion (Rouge, Vert, Bleu, Alpha) 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 (Annonce, Annonce, Annonce, Annonce) bm_inv_dest_alpha (1-Annonce, 1-Annonce, 1-Annonce, 1-Annonce) 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) où f = min (As, 1-Ad)
gpu_get_blendmode_srcalpha();
Constant (see above table)
var bm;
bm[0] = gpu_get_blendmode_srcalpha();
bm[1] = gpu_get_blendmode_destalpha();
gpu_set_blendmode_ext_sepalpha(bm_inv_src_alpha,
bm_inv_dest_colour, bm[0], bm[1]);
Le code ci-dessus crée un tableau local et obtient les facteurs de fusion source et destination actuels pour le composant alpha. Ce tableau est ensuite utilisé pour manipuler le composant RVB des facteurs de fusion.