FLASH/Web制作: 2005年11月アーカイブ

 先日まで回線の品質によってloadMovieが成功したり失敗したりしているものだと思いtraceを大量に書き込んでデバッガに掛けて見たところプログラム的には動作に問題なかった。なのに読み込みファイルが更新されない場合がある・・・。
 この問題で2日間悩んでいたが、もしかするとキャッシュ?ということでIEのキャッシュを調べたらファイルが存在。これかーと判ったもののキャッシュを無効にするってどうやるの状態。そこでググるのですが、ポピュラーな解決策はgetTime()でユニークな数値を発生させて?以降のダミー引数としてリクエストを投げるという方法。もちろんブラウザのキャッシュには大量のゴミが発生することのなるがこれは仕方ないかも。これで一段落したので、MMO開発に復帰します。

 引き続き過負荷なFLASHを作っていますが、やはり貧弱なネットワークを使用したりすると直ぐにフリーズします。そもそもloadMovie()自体に戻り値が無いのには驚いた。一応イベントとしてonClipEvent (data)がありますが、完全に読み込みが完了しなくてもネットワーク環境が悪いと発動するらしい。さらに対処するためにgetBytesLoaded()とgetBytesTotal()を使って同じ値になったときに読み込み完了と見なす事は可能だが、何と処理の速いPCではgetBytesTotal()が0でセットされたときに判定に持ち込む場合があり読み込み前に完了判定される場合があるという…。そういうわけでもう一段条件を入れてgetBytesTotal()が0以下の時は無視する処理を入れる必要がある。

 では、読み込み自体が失敗した時は?

サイトで調べた未確認情報ではgetBytesTotal()が-1を返す可能性があるとか…もう信用できない範疇。使ってみると便利なloadMovieですが穴だらけの関数ですね。その他気がついたことは、読み込みを開始したときに対象のオブジェクトは内容を一旦削除されてしまう事。つまり画像を連続で取り込んで擬似的に動画にしようとしてもチラツキというかブラウザの再読み込み並みの酷さで画像の切り替えを行ってしまう。う~ん何かいい方法ないかなー。

 ちょっとしたことがきっかけですが、サーバーに負荷が掛かった場合を想定したFLASHを作って見ることにしました。主にデータの取得が出来なかった場合はどのように処理を回避すべきか…。課題が多いです。

このアーカイブについて

このページには、2005年11月以降に書かれたブログ記事のうちFLASH/Web制作カテゴリに属しているものが含まれています。

前のアーカイブはFLASH/Web制作: 2005年10月です。

次のアーカイブはFLASH/Web制作: 2005年12月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

Powered by Movable Type 4.1