在MonoGame上运行时更改纹理透明度

igo*_*GIS 7 transparency textures monogame

我是MonoGame库的新手.我从.xnb文件加载纹理

_background = content.Load<Texture2D>(_backgroundKey);
Run Code Online (Sandbox Code Playgroud)

然后我想在运行时更改透明度(alpha).

哦,我发现自己该怎么做

spriteBatch.Draw(texture, position, sourceRect, Color.White * 0.5f, .......);
Run Code Online (Sandbox Code Playgroud)

这行代码将以半透明度绘制纹理.

jal*_*mes 2

您可以通过在绘制调用中使用(半)透明颜色来更改纹理的不透明度:

spriteBatch.Draw(texture, position, new Color(Color.Pink, 0.5f);
Run Code Online (Sandbox Code Playgroud)

值范围从 0(完全透明)到 1(完全不透明)。Color有很多不同的构造函数,因此您也可以传递一个字节(0-255)而不是浮点数,这将导致相同的结果。