Avec cette fonction, vous pouvez obtenir le mode de filtre MIP actuel pour un échantillonneur de shader donné. Vous fournissez la valeur d'index pour l'échantillonneur de shader (retourné par la fonction shader_get_sampler_index(), et la fonction renverra l'une des constantes de valeur de mode énumérées ci-dessous.
gpu_get_tex_mip_filter_ext(sampler_index);
| Argument | La description |
|---|---|
| sampler_index | L'index de l'échantillonneur de shader pour obtenir |
Constant (listed below):
| Constant | La description |
|---|---|
| tf_point | Cela signifie que le mélange entre les niveaux de mipmap est désactivé, ce qui peut provoquer des transitions de texture visibles, mais donne les meilleures performances. |
| tf_linear | Cela signifie que le mélange entre les niveaux de mipmap est activé (ce qui est également connu sous le nom de filtrage trilinéaire ), ce qui lisse les transitions de texture, mais il donnera un coup mineur à la performance. |
| tf_anisotropic | Cela signifie que le filtrage anisotrope est activé, ce qui améliore considérablement la qualité de la transition de texture et peut réduire le flou visible avec les autres modes de filtrage, mais il a le plus grand impact sur les performances. |
var _sampleIndex =
shader_get_sampler_index(shd_Glass, "s_Background");
var _spriteTex = sprite_get_texture(sprite_index, 0);
shader_set(shd_Glass);
if gpu_get_tex_mip_filter_ext(_sampleIndex) != tf_point
{
gpu_set_tex_mip_filter_ext(_sampleIndex,
tf_point);
}
texture_set_stage(_sampleIndex , _spriteTex);
shader_reset();
Le code ci-dessus définit le mode de filtre MIP sur tf_point (désactivation du mipmapping) pour l'échantillonneur de texture de shader donné s'il n'a pas déjà été défini.