2014年7月3日木曜日

【AndEngine】テキストの色変更

AndEngineでテキストを使う場合に注意すべきこと.

// フォントは使いまわすためにメソッドローカルじゃなくクラスフィールドでもっておこう
Font font = FontFactory.create(getFontManager(), getTextureManager(), 256, 256, Typeface.create(Typeface.DEFAULT, Typeface.BOLD), 32, true, Color.WHITE);
font.load();
// テキストの作成
Text text = new Text(0, 0, font, "aaaaaaaaaaaaaaaaa", getVertexBufferObjectManager());
// 色を指定
text.setColor(Color.RED);
// 表示
attachChild (text);

で赤い文字が表示されるのだが,
上記の通りFontFactory.createメソッドで
フォントをWHITEで取っておく必要がある
後のsetColorメソッドで色を乗せるためである.

このメソッドには引数で色を指定しないものもある.
色を指定せずにフォントを取得すると黒で取れる.
黒に色を乗せても黒のままである.

自前のビットマップフォントなどを使う場合でも同様.
黒いビットマップフォントを作ると色を変更できない.
色を変更したいのであれば白いビットマップフォントを作る必要がある.

0 件のコメント:

コメントを投稿