StarlingフレームワークによるStage3Dを使った2次元表現

[ライブラリ]のビットマップからImageインスタンスをつくってステージに置く-前編-

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
Starlingフレームワークでは、[ライブラリ]のビットマップはテクスチャにして、Imageオブジェクトに入れたうえでステージに置きます。
講師:
07:37

字幕

ActionScript 3.0 定義済みの ビットマップの代わりに使うのは Starling の Image というクラスです では その import 宣言です import の starling そしてドット display です それから Image これが ActionScript 3.0 定義済みの ビットマップの代わりになる やはり役目も同じ入れ物になるクラスです では中身の方はというと BitmapData の代わりに Texture というクラスを使います これも import しましょう starling の textures の中の Texture というクラス これが BitmapData の代わりになります 処理の流れは ActionScript 3.0 定義済みの 場合と一緒です では initialize 初期化のメソッドの中に その処理を書きましょう BitmapData の代わりになるのが Texture でした myTexture という名前にしましょう 型指定は Texture です そして この右辺をどうするかは ちょっと置いておきます 一旦ここで区切ります そして この Texture のインスタンスは そのままでは ステージには置けない というのは同じなので Image のオブジェクトを作ります instance の名前にしましょう Image というのが型指定で new Image コンストラクタを呼び出します そして この括弧の中には Texture のオブジェクトを入れます 同じ手順ですね ActionScript 3.0 定義済みと 同じです そして これでは未だ ステージに表示されませんので ステージに表示するには addChild そして この Child addChild の中に渡すのは Image のオブジェクトです この 3 行の中では ActionScript 3.0 定義済みと全く一緒ですね 問題は ライブラリの ビットマップのオブジェクトを どうやってテクスチャにするか なのですが 残念ながら ライブラリのビットマップは BitmapData にするしかありません ですから ともかくも BitmapData の オブジェクトは作ってしまいましょう myData という変数名にします そして BitmapData ですね BitmapData で型指定をします import 宣言が自動的に入りました 実は フレームアクションとは違いまして クラスの場合には Flash の中のクラスも全て やはり import 宣言は しないといけません ですから これは必ず残しておきます そして この右辺は new で ライブラリの ビットマップに付けた名前 Pen オブジェクトを作ります そしてこの BitmapData の オブジェクトを Texture のオブジェクトに変換する という処理になります この変換の処理というのは とても簡単です Texture のクラスの中に 実は その処理をするメソッドが 用意されています Texture.fromBitmapData 全くそのままの名前ですね この中に BitmapData のオブジェクトを 入れてしまえば良いです そうすると BitmapData のオブジェクトが Texture に変換されて Texture の 変数に入ります そうしたら もう後は ActionScript 3.0 定義済みと同じで 但しクラスが Image のオブジェクトを作り その引数に Texture のオブジェクトを渡し その Image のオブジェクトを addChild で ステージに表示する という手順になります では このクラスのファイルは 保存します Starling ルートクラスを 保存です そして 結果を見てみましょう Flash ムービーファイル fla ファイルの方に切り替えて 制御メニューから ムービープレビューです ライブラリのビットマップが作られて オブジェクトとして作られ それがテクスチャに変換されて Image オブジェクトの中に包まれて Starling フレームワークの ステージに表示されました ではウィンドウは一旦 閉じておきます もう一度 クラスファイルの方に切り替えます 下が少し邪魔ですので ファンクション 4 番を 2 回押して フルスクリーンに戻します この動作でしたら このままでも良いのですが 更にアニメーションを追加したりしたい といった場合には この Image オブジェクトの 変数は ローカル変数でない方が良いです プロパティとして 宣言した方が良いので ここに改行を加えて そして 変数宣言と型指定の部分は プロパティの領域に持っていきます プロパティとして宣言します そして このプロパティ名を コピーして コントロールキー若しくはコマンドキーを押しながら ドラッグしてコピーですね この変数 プロパティに入れます 結果は変わりませんけれども この instance という変数が プロパティになりましたので この initialize というメソッド以外に メソッドを作った場合でも そこから アクセスできるようになります こちらの方が 拡張が便利ですので 一旦 保存しておきましょう では Starling フレームワークで Flash のライブラリに入った ビットマップから オブジェクトを作ってステージに 表示する手順について おさらいをしましょう クラスは 2 つです 2 つというのは ActionScript 3.0 と 同じでしたけれども 使うクラスは違います 先ず ビットマップをテクスチャにして そのオブジェクトを作ります 但し Texture は そのままでは ステージあるいは タイムラインに置けないので Image オブジェクトの中に包んでおく ということですね ですから この 2 つを import 宣言しました そして具体的には Texture のオブジェクトを 作るのですが 欲しいのは ライブラリにあるビットマップです そしてライブラリにあるビットマップは 予め付けておいた名前 コンストラクタで呼び出して 一旦 BitmapData として オブジェクトにとります 但し これは Starling フレームワークでは そのまま使えないので Texture.fromBitmapData というメソッドの 引数に渡して BitmapData これは Flash の世界で使われる オブジェクトなのですが それを Starling の世界で使う テクスチャに変換します そして Texture のオブジェクトは この変数に入りました 但し これは そのままでは置けませんので Image のオブジェクトを new 演算子で コンストラクタを呼び出して作り その引数に Texture のオブジェクトを渡し つまり Texture のオブジェクトを Image で包んで そのオブジェクトを addChild で Starling フレームワークの ルートクラスの子どもに加える こういう手順です これで Flash の ライブラリにある ビットマップから オブジェクトを作って Starling フレームワークに 表示することができます

StarlingフレームワークによるStage3Dを使った2次元表現

StarlingはFlash Player 11の新しい描画機能Stage3Dに基づいて作られた2次元の描画用フレームワークです。このコースではStarlingフレームワークによるクラス定義の基礎から、トゥイーンアニメーションやマウスインタラクション、そして最近のバージョンで実装された新しい機能まで解説していきます。

5時間09分 (40 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
カテゴリー
プログラミング
価格: 3,990
発売日:2014年01月26日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。