【cocos2d-x】色指定について

c++

cocos2dxlogo


cocosの色指定についてです。

Color3Fがない!?

cocosには色を表現するための構造体が存在します。

Color3B, Color4B, Color4Fの3種類です。
なぜか、Color3Fはありません。
誰か知ってたら教えて下さい笑

さて、色の指定法には大きく分けて2種類あります。

・RGB(A)を直接指定する
・プリミティブな色を指定する

この辺はiOSとかでも一緒ですね。

まず、末尾にBとFの2種類出て来ましたが、直接指定の際に
B:0 – 255で指定する
F:0.0f – 1.0fで指定する

となります。

Color3Bによる指定

RGB指定

// RGBの順番で[0 - 255]で指定します。
Color3B red = Color3B(255, 0, 0);

プリミティブ指定

// 簡単な色はこの様に予め定義されています
Color3B red = Color3B::RED;

Color4Bによる指定

RGB指定

// RGBAの順番で[0 - 255]で指定します。
Color4B red = Color4B(255, 0, 0, 255);

プリミティブ指定

// 簡単な色はこの様に予め定義されています
Color4B red = Color4B::RED;

Color4Fによる指定

RGB指定

// RGBAの順番で[0.0f - 1.0f]で指定します。
Color4F red = Color4F(1.f, 0.f, 0.f, 1.f);

プリミティブ指定

// 簡単な色はこの様に予め定義されています
Color4F red = Color4F::RED;

赤字でも書きましたが、僕は指定する際にColor4Bのα値を.7fとかで指定していて、その色を適用したLayerが表示されなくて少し悩みました。
こう書いてみると大した事じゃないんですけどね。

誰かのお役に立てば。

このブログのcocos記事一覧

コメント

タイトルとURLをコピーしました