- 2008-10-21 (火) 4:43
- ActionScript3.0 | Progression
addSceneFromXMLを使ってみて、PRMLって便利だなぁ…と感じたので、リファレンスを眺めていたら、PRMLLoader、PRMLParserなるものがあった。
PRMLLoaderはリファレンスによると、PRML形式のXMLファイルを読み込んで自動的にProgressionインスタンスを作成してくれるとある。
ということは、(通常は)Index.asに書かれるProgressionインスタンスを作成のくだりに関係するということだろう(多分ですが…)。
// Progression インスタンスを作成します。 prog = new Progression( "index", stage, IndexScene );
通常はこんな感じでProgressionインスタンスを作成し、最初のシーンであるIndexSceneへ移動するようにする。
PRMLLoaderはPhotoGallery的なもの(Index.asでシーンを作成、移動するパターン)にしか使えないのかなぁ…なんて思っていたのですが、そんなこともなさそうだ。
PRMLLoader(stage:Stage, request:URLRequest = null)
stageに関連づけたいインスタンスを記述すれば、Index.asだけでしか使えないってことはないみたい…
でも昨日のエントリみたいに、IndexScene以下にaddSceneFromXMLを使ってSceneを動的に生成の場合との違いは何? ってことをまだ(きちんと)理解していない。
ここらあたりは、詳しく調べてみる必要大(分かり次第、エントリする予定)。
あと、PRMLParserは、読み込んだPRML形式のXMLファイルを解析するのに使うみたいだ。
ちらっと見た感じでは、read_onlyのプロパティが多そう…
こちらも詳しく使い方を調べてみる必要大。
- Newer: PRMLLoaderとaddSceneFromXMLの使い分け
- Older: Sceneを動的に作成してみる・解決編
Comments:3
- northprint 08-10-21 (火) 17:28
-
PRMLLoaderはprogressionインスタンスから作成されるので、Indexシーンからシーン構造を全部作る際に使うものだと思います。おそらくですがイージーキャスティング用に作られたものではないかと。。私のサンプルは実はPRMLLoaderで作った方がいいんですよね。(実は最初はPRMLLoaderでやろうとしてました)
使い道としては、これもおそらくなんですが、イージーキャスティング用のシーンエディターでシーン構造作ってPRMLLoader用のXML出力させて自力で読み込んで。なんて感じなんじゃないでしょうか?
addSceneFromXMLはシーンの子階層だけとかに使える(例えば子シーン、孫シーンにフォトギャラリーが出てくるような場合)のでこっちの方が汎用性は高いと思います。
確かprogressionのリポジトリにPRMLLoaderのサンプルがあったはず。。。
ごめんなさい。憶測で物言ってますね。私も挑戦してみます - あつのすけ 08-10-21 (火) 17:41
-
northprintさま
コメントありがとうございます〜!
僕もProgressionのレポジトリからPRMLLoaderのサンプルをチェックして使ってみました。
で、どうなったかというと、northprintさまが仰られるように、Index.asにPRMLLoaderを使えば、XMLに記述した全シーンを作成出来ちゃいますね。
シーンエディタ使わないでも昨日のエントリみたいなXMLを用意(今回はIndexSceneも必要)して、Index.asの_onInitにPRMLLoaderを記述しちゃえば、OKでした。動作も問題なさそう(XMLの読み込みが終わったら、自動的にIndexSceneに移動してくれます)です。
冒頭あたりで、private var _index:IndexScene;みたいな(シーンの)変数宣言は必要ですが…
一気に全部作りたいときは、Index.asでPRMLLoader。特定のシーンの子階層を作成したいときは、addSceneFromXMLを使うのかなぁ…なんて勝手に思っています(正しいのかは分かりませんが…)。
あとでPRMLLoaderで試してみたこと、エントリしておきますね。
- あつのすけ 08-10-21 (火) 19:06
-
taka_niumさまに教えて頂きました。(以下、僕が勝手に要約したもの)
PRMLLoaderは基本的にコンポーネントベース用です。
クラスベースで使う利点を(あえて)挙げるとしたら、XMLから全シーンを一気に作成出来るくらいですかね。
PRMLLoaderを使うと、読み込みから処理までの記述がシンプルに出来ますよ〜とのことでした。
あながち僕の考えは間違いではなかったみたい…taka_niumさま、ありがとうございました!
Trackbacks:0
- Trackback URL for this entry
- http://flabaka.com/blog/wp-trackback.php?p=281
- Listed below are links to weblogs that reference
- PRMLLoaderとPRMLParser from flabaka