gpu_set_alphatestref

此函数将设置 Alpha 测试的参考值 (如果已使用 gpu_set_alphatestenable() 启用此参考值)。这是"截止"阈值,在该阈值下将不会绘制具有 Alpha 的像素。

基本上,如果将此值设置为 0,并且启用了线性插值 (在"游戏选项"中或使用 gpu_set_texfilter()),则仍然可以在重叠对象的边缘看到视觉错误。这是因为您可以拥有几乎完全透明的区域,这些区域可以阻止在它们后面绘制内容,但如果将此参考值设置为 (例如,低于最大值一个) 254,则可以保证仅绘制 100% 不透明像素。也可以禁用纹理插值,这通常允许您使用默认值而不会出现任何问题,并且根本不需要使用此函数,但这在很大程度上取决于源图稿。

注意:这是一个高级绘制函数,因此,如果您不确定是否需要它,或者不知道它的确切函数,则最好不要使用它,因为它会严重损坏您的游戏绘制方式。

 

语法:

gpu_set_alphatestref(val);

参数类型描述
valReal将 Alpha 测试的参考值设置为 0 到 255 (默认值为 0)

 

返回:

N/A

 

例子:

if (!gpu_get_alphatestenable())
{
    gpu_set_alphatestenable(true);
    gpu_set_alphatestref(128);
}

上述代码将检查 Alpha 测试是否已启用,如果未启用,将打开 Alpha 测试并将测试阈值设置为 128 (仅绘制 Alpha 大于 0.5 的像素)。