3.0StarlingフレームワークでつくったQuadインスタンスに、カラーとアルファのグラデーションを設定します。Starlingフレームワークのごく基本的な使い方とQuadインスタンスのつくり方については、「Starlingフレームワークを使う」で解説しています。CS5.5を用います(CS5でもほぼ同様)。Quadインスタンスの頂点にカラーを定めるまず、Starlingフレームワークでステージの真ん中に黒い正方形のQuadインスタンスを置きます(図001)。そこで、Starlingフレームワークで表示リストのルートにオブジェクトをつくるクラス(本稿ではStarlingフレームワークの「ルートクラス」と呼びます)として、以下のクラスMySpriteを定めます(スクリプト001)。2;}}}そして、上記ActionScript(AS)ファイルと同階層に保存するFlashムービー(FLA)ファイルから、つぎのようなフレームアクションでルートクラスを呼出します。これらのスクリプトについて詳しくは、前出「Starlingフレームワークを使う」をご参照ください。stage);myStarling.start();Quadインスタンスには、各頂点ごとにRGBカラーやアルファが定められます。異なる設定を与えた頂点の間は、値が滑らかに変わります。インスタンスの4頂点には、つぎのように0から3までの整数で頂点番号が決まっています(図002)。3Quadインスタンスの頂点のカラーは、Quad.setVertexColor()メソッドで定めます。ふたつの引数には、頂点番号の整数とRBGカラー値を渡します。RBGカラー)前掲スクリプト001でつくったQuadインスタンスの頂点ごとに異なったカラーを定めてみましょう。つぎのスクリプト002は、Quadインスタンスに対してQuad.setVertexColor()メソッドを呼出し、頂点1から3にそれぞれ赤(0xFF0000)と緑(0x00FF00)と青(0x0000FF)を設定しました(第19〜21行目)。異なるカラーを定めた頂点の間は、グラデーションで塗られます(図003)。Quadインスタンスの頂点にアルファを加えるQuadインスタンスのアルファも、カラーと同じように頂点ごとに定められます。用いるのは、Quad.setVertexAlpha()メソッドです。Quad.setVertexColor()メソッドと同じく引数はふたつで、頂点番号の整数とアルファ値を渡します。アルファ)前掲スクリプト002でつくったQuadインスタンスの頂点に、さらにアルファを加えます。つぎのスクリプト002は、Quadインスタンスに対してQuad.setVertexAlpha()メソッドを呼出し、頂点0をアルファ0に設定しました(第19行目)。0.1;}}}さらに、イベントEvent.ENTER_FRAMEに登録したリスナー関数(rotate())で、Quadインスタンスに回転のアニメーションを加えました(第23および第25〜27行目)。[パブリッシュプレビュー]で確かめると、頂点ごとに異なったカラーとアルファを設定したQuadインスタンスが回ります(図004)。回転のアニメーションについては、前出「Starlingフレームワークを使う」をご参照ください。図004■頂点にカラーとアルファを設定されたQuadインスタンスが回る気をつけなければならないのは、Quad.setVertexAlpha()メソッドでインスタンスの頂点にアルファを加えるのは、Quad.setVertexColor()メソッドによるカラーの定めの後でなければならないということです。Quad.setVertexColor()メソッドはカラーを定めるだけでなく、アルファも1に設定し直してしまうからです。前掲スクリプト003第20行目の頂点番号1のカラー設定の前につぎのようにアルファを0に変えても、アルファ値は1に戻されてしまいます。頂点のカラーやアルファの値を確かめるには、Quad.getVertexColor()およびQuad.getVertexAlpha()メソッドを用います。引数はともに頂点番号です。