Home > Progression
Progression Archive
Progression、メモリリークについての個人的メモ
- 2009-05-18 (月)
- Progression
ここ最近、はまった事とかを忘れないようにメモシリーズ第二弾。
何かと噂のFlashのステキフレームフレームワーク「Progression」ですが、
何度か使って便利さを実感しつつも、
幾つかどうしようもない状況を引き起こしているので、
忘れないようにメモ。
Progressionを使用し、外部SWFをload、unloadする際、
読み込んだ各コンテンツシーン(外部SWF)がunloadされず、
メモリに残り続けるという現象。
今回は外部SWFがメガコンテンツだっただけに、あっと言う間にカックカク。
いろいろ試してみるも効果なし。
開発者のniumさんも言っているように、現状メモリ関連は対応していないらしい…。
・LoadChildした外部swfを完全にUnloadするには
・CastSprite内でCastImageLoaderを使用するとメモリが解放されない?
一つ目のスレッドの最後にもあるように、
個人的にいろいろ試した結果、原因は、外部SWFにドキュメントクラスやその他のクラス全てにおいて、Progressionの標準クラス(Castとか)を使用すると、unloadされない。
ということ。
テストはFlash標準のデバッグモード+SWFProfilerで確認。
外部SWFとして、以下2つのファイルを用意。
A.swf→ドキュメントクラスにCastMovieClipでクラスを設定。基本項目以外は設定なし。
B.swf→ドキュメントクラスにMovieClipでクラスを設定。基本項目以外は設定なし。
※ファイルを重くするため、テキストを大量にアウトライン化して配置。
indexSceneからそれぞれ読み込むテストを行うと、
A.swfはunload、メモリ解放が全くされない。
B.swfは問題なくunload、メモリも解放された。
試しに、B.swf内にCastSpriteで丸だけのクリップを作成し配置した。
結果、B.swfはunloadされず、メモリも解放されなくなった。
なお、indexSceneを参照する事は可能だった。
あまり検索してもこの手の話はヒットしなかったのですが、
う~ん、これはオレだけなのか・・・?
さらに、困った現象は、
B.swf(CastSpriteなどは削除した初期ファイル)でTweenerを使用する際、
CurveModifiersとDisplayShortcutsの初期化(init())すると、
unloadされず、メモリも解放されなくなる・・・というもの。
まだ勉強不足な所が多々あるので、
きっと何かを間違えているに違いとは思いますが、
なかなか奥が深いProgreesionだなっと。
- Comments: 0
- Trackbacks: 1
Progression を試してみる vol.2[外部ファイル読み込みメモ]
- 2008-09-25 (木)
- Progression
Progressionでの自分用メモ
外部の画像を読み込んでアルファのTweenを行う方法1。
protected override function _onCastAdded():void {
var com:LoadChild = new LoadChild( this, new URLRequest("sample.jpg"));
com.loader.alpha = 0;
// オブジェクトの load() メソッドによる読み込みが開始された瞬間に送出されます。
com.loader.onCastLoadStart = function():void {
this.addCommand(
new Trace( "onCastLoadStart" )
);
}
// オブジェクトの load() メソッドによる読み込みが完了された瞬間に送出されます。
com.loader.onCastLoadComplete = function():void {
this.addCommand(
new Trace( "onCastLoadComplete" )
);
}
addCommand(
// 任意のコマンドを記述してください。
com,
new DoTweener( com.loader, { alpha:1, time:2 } )
);
}
読み込みスタートと完了通知関数があるけど、読み込み中ってどうすればいいんだろうか。
う~ん、もうチョイなのか
- Comments: 0
- Trackbacks: 0
Progression を試してみる vol.1
- 2008-07-28 (月)
- Progression
最近ずっと気になっていた
Progression Frameworkをようやく試してみました。
というはなし。
最近はチュートリアルやサンプル、ちらほらFlasherさんのブログで解説されているので、
それらのサイトを参考に、取り合えず動くものを作成してみました。
コレ
コンポーネントベースやタイムラインベースもあるので、
AS苦手でもサクッといろいろ出来ちゃうみたいですが、
取り合えず「クラスベースでの制作スタイル」で始める。
とにかく手探りでなのでたったコレだけで2日弱もかかる…
もう既にいろいろな方が書いていますが、
ブラウザの戻る/進むボタンが使えたり、
右クリックで新規ウィンドウとか選べたり、
中コンテンツへ直リン貼れたりと
本当にすごいと思いました。
馴染むまでまだ暫くかかりそうですが…
やっぱり便利そうなので、試していこうかと。
- Comments: 0
- Trackbacks: 0
ホーム > Progression