小编Xep*_*hyr的帖子

RGB的颜色不正确Unity C#

所以我有一个2D对象,您可以更改使用按钮的颜色,每个按钮将更改对象的精灵.我有一个红色,橙色,黄色,绿色,蓝色,紫色的精灵.

现在我有一个粒子系统(之前描述的对象的子元素),我想将startColor属性更改为与2D对象的sprite相同的颜色.我正在使用此代码(附加到您可以更改精灵的2D对象):

        var sprite = gameObject.GetComponent<SpriteRenderer>().sprite;
        var startColor = gameObject.transform.GetChild(0).gameObject.GetComponent<ParticleSystem>().startColor;

        if (sprite == red) startColor = new Color(255, 29, 0);
        else if (sprite == orange) startColor = new Color(254, 32, 0);
        else if (sprite == yellow) startColor = new Color(254, 215, 0);
        else if (sprite == green) startColor = new Color(0, 254, 32);
        else if (sprite == blue) startColor = new Color(0, 37, 254);
        else if (sprite == purple) startColor = new Color(178, 0, 255);

        gameObject.transform.GetChild(0).gameObject.GetComponent<ParticleSystem>().startColor = startColor;
Run Code Online (Sandbox Code Playgroud)

所有新的Colors()我都试图用RGB创建.所以我获取了所有颜色精灵的RGB值并插入它们.当我执行代码时,粒子的颜色与对象的精灵颜色不匹配.

注意:我在android上运行它,并且粒子系统的材料是纯白色,所以它不应该着色. …

c# colors unity-game-engine

1
推荐指数
1
解决办法
4229
查看次数

标签 统计

c# ×1

colors ×1

unity-game-engine ×1