Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# XNA:仅对不透明像素应用SpriteBatch.Draw(…)颜色_C#_Xna_2d - Fatal编程技术网

C# XNA:仅对不透明像素应用SpriteBatch.Draw(…)颜色

C# XNA:仅对不透明像素应用SpriteBatch.Draw(…)颜色,c#,xna,2d,C#,Xna,2d,我有一个精灵从一个有阿尔法通道的PNG加载。图像包含一个不透明的磁盘,其余部分是透明的 我想使用SpriteBatch.Draw(…)的color参数来更改磁盘的色调。但是,默认的混合行为会将颜色应用于整个精灵,因此我最终会在着色的磁盘周围创建一个不透明的方形轮廓 有没有办法改变混合模式,使透明像素不受颜色参数的影响?我从未见过这种情况发生,从XNA开始,我就一直在使用透明PNG。你在混合2D和3D吗?如果是这样,3D渲染设置可能会让SpriteBatch感到困惑,但我认为SpriteBatch

我有一个精灵从一个有阿尔法通道的PNG加载。图像包含一个不透明的磁盘,其余部分是透明的

我想使用
SpriteBatch.Draw(…)
color
参数来更改磁盘的色调。但是,默认的混合行为会将颜色应用于整个精灵,因此我最终会在着色的磁盘周围创建一个不透明的方形轮廓


有没有办法改变混合模式,使透明像素不受
颜色
参数的影响?

我从未见过这种情况发生,从XNA开始,我就一直在使用透明PNG。你在混合2D和3D吗?如果是这样,3D渲染设置可能会让SpriteBatch感到困惑,但我认为SpriteBatch应该为您正确设置这些设置。也许你使用的PNG图像有问题?

比尔,你说得对。我忘了清除一个PNG中的背景。该问题应删除。

不,不要删除!这就是StackOverflow的用途。如果有人遇到类似的问题,这个QA实际上可以向他们指出一个他们没有想到的方向。顺便说一句,不要用“回答”你自己的问题来回答比尔,而是使用评论系统。对不起,我认为我需要50个信誉点才能发表评论。