gpt4 book ai didi

c# - 如何改变 XNA 中的色调?

转载 作者:太空狗 更新时间:2023-10-30 00:33:32 35 4
gpt4 key购买 nike

我有 Microsoft.Xna.Framework.Color 类的颜色。我怎样才能改变它的色调(或获得色调略有不同的新颜色)。我应该将它转换为 System.Drawing.Color,然后以某种方式更改它并转换回来吗?我在任何地方都找不到任何有用的信息。

编辑例子:我有红色 R:255、G:0、B:0。现在我想得到稍微多一点的橙色。然后,如果我得到这种颜色并再次对其进行变换,我会得到更多的橙色,然后经过一些变换后我会变成黄色、绿色等。我不知道每种颜色的 ARGB 的确切值,我也不知道需要他们。我只需要通过某种因素(例如 10 度)改变颜色的色调。

最佳答案

你应该使用 A R G B属性并更改值以获得不同的 nyansers。

例如:

Color color = new Color(0,0,0);
//Then you can change the argb properties:
color.A = 10;
color.R = 15;
color.G = 9;
color.B = 25;

如果我知道你需要这样的东西:

public static class Utilities
{
public static void Increase(this Color color, int value)
{
if(color.R >= color.G && color.R >= color.B)
color.R += value;
else if(color.G >= color.R && color.G >= color.B)
color.G += value;
else
color.B += value;
}

public static void Decrease(this Color color, int value)
{
if(color.R <= color.G && color.R <= color.B)
color.R -= value;
else if(color.G <= color.R && color.G <= color.B)
color.G -= value;
else
color.B -= value;
}
}

然后:

Color myColor = new Color(10,0,0);
myColor.Increase(10);
//or
myColor.Decrease(10);

关于c# - 如何改变 XNA 中的色调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11441055/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com