April 14, 2009
[Progression] コンテンツのプリロード
コンテンツの先読みについて。。。
Preloader.asではデフォルトだとurlプロパティに設定したswfを読み込むようになってて、それ以外のファイルをどうやって読み込むかちょっと考える。
Preloader.asが終わった後に、index.swf内でもう一度ロード処理を記述するのはなんか微妙。。。
コンテンツ開始時にローディングが2回出るのとかは、ユーザーにとっては混乱してしまうだけだし。
なので、Preloader.as内で読み込みをして、ローダーなりバイナリをstaticな変数に代入しておく。
index.swfの初期化時にMain.as側から参照してコンテンツを展開して行くのが僕的にしっくり。
で、実際どう書いて行くかなわけですが。
今のところ僕の中でのPreloader内でのロード処理の流れの認識(超勘違いかもしれないけど)は、
_onCastLoadStart
ロード処理開始(index.swf [Preloader.urlで指定したswf] )
_onCastLoadComplete
ロード処理終了(index.swf [Preloader.urlで指定したswf] )
この処理中にindex.swf以外のコンテンツのswfも読み込もうとしたときに、どこでやるのがスマートなのかって考えて、並列で一緒に読み込むなら「_onCastLoadStart」内。直列で順々に読み込むなら「_onCastLoadComplete」内がいいかなと思ってます。
僕は順々に読み込みたかったので、「_onCastLoadComplete」内でもろもろ読み込むようにしました。
なんかあんま素直じゃない気がして気持ち悪いんだけど、、、とりあえず動いているのでいいか。
<追記>
Preloader.asに「parallelMode」っていうプロパティがあるのにさっき気づいた。
parallelMode = false;
で順々に読んでくれるのかしら?
ちょっと検証する時間がないので後回し。