偶然、designsbyzephy による YouTube の 2D ゲーム開発ビデオ シリーズに出会い、ビデオからコードを学習して理解することが、私の次の Java 学習ベンチャーになると決めました。
最大の障害は、自分でコードを解読しようとすることです。ビデオ メーカーは、すべてを説明するのに信じられないほど初心者に友好的ではないアプローチをとっているからです。
だからここに私の質問とビデオがあります
ビデオ: http://www.youtube.com/watch?v=7eotyB7oNHE
5:31 に、彼はコードを入力します。
int index = 0;
for (int r = 0; r < 6; r++){
for (int g = 0; g < 6; g++){
for (int b = 0; b < 6; b++){
int rr = (r * 255/5);
int gg = (g * 255/5);
int bb = (b * 255/5);
colors[index++] = rr << 16 | gg << 8 | bb;
}
}
}
colors[index++] = rr << 16 | gg << 8 | bb;
|
私の理解では、彼は各色の6つの色合いによって作成されたすべての組み合わせで配列を埋めていますが、私が得られないのはシンボルが何を表しているかです. 彼は以前のビデオでそれについて話しているとビデオで言及していますが、彼はそうでは&
ありませ|
ん&
.|
彼の以前のビデオのいずれか。私が理解できないもう 1 つのことは、なぜ色を変えているのかということです。彼はビデオでそれを説明していますが、それでも私には意味がありません。基本的に彼が言うのはbb
、 、gg
、およびrr
すべてに 2 & 8 ビットのデータが含まれていますが、それでは説明が不十分です。なぜそれを行っているのか、なぜbb
, gg
,rr
色に 2^8 ビットのデータが含まれているという理由だけで左にシフトする必要があるのか、また 2^8 ビットのデータを持つことはそもそも何を意味するのかを知る必要があります。 ?