我开始学习java游戏编程,通过观看Notch的代码在YouTube上被一个人解释,所以我需要帮助处理这个视频:
https://www.youtube.com/watch?v=7eotyB7oNHE&list=PL8CAB66181A502179&index=5
他在他的游戏中实现了颜色,我也是,但我不明白它们是如何工作的。他在颜色课上做了一个函数,叫做:
Colours.get(colour1, colour2, colour3, colour4);
他用一个喷漆纸来做这件事,他将用"colour1“代替黑色,用"colour2”代替深灰色,用"colour3“代替淡灰色,用"colour4”代替白色。问题是我不明白以下几点:不使用字母怎么能得到3位数的颜色?
谢谢!
发布于 2014-08-31 11:24:28
他正在使用颜色的int表示。
每种颜色由4个值表示,每个值为8位:
int表示将这些8位值打包到一个32位的int数字中,以便alpha值得到最高位数,然后是红色值,然后是绿色值,最后是蓝色值得到最低位数。因此,使用按位操作,您可以从颜色组件值中创建int值,如下所示:
public static int getColorIntRepresentationOutOfColorComponentByteValues(byte alpha, byte red, byte green, byte blue) {
return ((int)alpha << 24) | ((int)red << 16) | ((int)green << 8) | (int)blue;
}https://stackoverflow.com/questions/25591295
复制相似问题