小编Aar*_*ler的帖子

尝试将整数范围转换为RGB颜色

我知道你们都很忙,所以我要简短一点。

我目前正在开发一款有趣的小游戏。游戏中有敌人。为简单起见,请将其视为彩色正方形。我想最小化任何HUD,所以我决定通过颜色平滑显示生物的生命值(绿色代表健康,黄色代表受损,红色代表几乎死亡)。

查看图片: 在此处输入图片说明

但是,我真的很难想出一种像样的高效方法将hp值转换为RGB颜色。从0到255映射到单个int根本不是问题-这是一个示例函数,正是这样:

public int mapHpToGreyscale(int input) {

    //input = current hp
    double minHealth = 0;
    double maxHealth = hpmax;
    double minColValue = 0;
    double maxColValue = 255;

    int output = (int) ((input - minHealth) / (maxHealth - minHealth) * (maxColValue - minColValue) + minColValue);

    return output;
}
Run Code Online (Sandbox Code Playgroud)

有没有快速便捷的方法来实现我想要的目标?我将不胜感激。

java colors

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

标签 统计

colors ×1

java ×1