Starlingで画像を表示するにはImageを使う。ゲーム制作などで最も使う描画オブジェクトである。
テクスチャやビットマップから作成可能。
var image:Image = new Image(assets.getTexture(IMG_NAME)); image.x = 10; image.y = 20; yourSprite.addChild(image);
ドローコールを減らすために出来るだけテクスチャアトラスから取得した方が良い。
透明度やスケールの変更などは通常のActionScript[1]のMovieClip[2]などと同様。
image.alpha=0.5;
回転および拡大縮小の起点を変更するときには、pivotX,pivotYを使う。
image.pivotX = 10;
基点を変えるのに実際によく使うのはalignPivot()である。たとえば中心に寄せるには
image.alignPivot();
左下にするには
image.alignPivot(Halign.LEFT,Valign.BOTTOM);
である。
このあたりの機能はImageのものというより元となっているDisplayObject[3]クラスの機能だが、実際にはImageなどでよく使うのでここで紹介している。
他によく使う機能としてcolorがある。
image.color = Color.GREEN; image.color = 0xff0000;
とするとその色が着色される。注意する必要があるのは、これはブレンディングでいうところの乗算でありcolorではより明るくはならない。たとえば、
image.color = 0xffffff;
とすると、imageの色は変わらない。よってもしcolorを使っていろいろな色の表現をしたい場合は、元の画像を明るめにしておく必要がある。
もし明るい色を含む、より詳細な色の変更をする場合はColorMatrixFilter[4]を使う。ただし、colorに比べるとかなり重い。
var filterRed:ColorMatrixFilter = new ColorMatrixFilter(); filterRed.tint(0xFF0000, 0.8); var redBlock:Image = new Image(blockTexture); redBlock.filter = filterRed;
色の変更についてはこちら[5]を参照のこと。
(This host) = https://njf.jp