SIHOのプログラミングわーくワク

興味の赴くままに勉強してたら、読み書きできる言語は9個になりました。他にもいくつか気になる言語があったりなかったり?  まだまだ続く、楽しいお仕事わーくワク♪

  • « 
  • 10 
  • 11 
  • 12 
  • 13 
  • 14 
  • 15 
  • 16 
  • 17 
  • 18 
  • 19 
  • 20 
  • 21 
  • 22 
  • 23 
  • 24 
  • 25 
  • 26 
  • 27 
  • 28 
  • 29 
  • 30 
  • 31 
  • »

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

メモリーリーク回避についての参考リンク

2009.11.28 (Sat)

papervision3Dでコンテンツを作っていると、きっちりオブジェクト&イベントリスナーを削除してあげないと、すーぐに激重になってしまうのですね。
それを回避すべく調べたので、参考にしたページをまとめておきます。

ちなみに、私はPlaneをMovieMaterialとBitmapAssetMaterialとBitmapFileMaterialで使っていたのだけども、BitmapAssetMaterialをdispose()すると、次からは表示されなくなってしまうので、何度も出したり消したりするときは、dispose()は使わないほうがいいみたい。
あと、外部XMLで指定のある画像を読み込んで表示するとき、BitmapFileMaterialを使うとぱらぱらというテンポで順に表示されるので、MovieClipの中のLoaderオブジェクトに一度画像を読み込んでからMovieMaterialをPlaneインスタンスに適用させて使いました。こちらのほうが処理的にはすばやく表示されました。

■AS3で陥りがちなメモリーリーク
http://as3s.org/2008/01/as3/

AS3ではガベージコレクションによるメモリ管理が導入されています。
ガベージコレクションとは、簡単に言えば「どこからも参照されなくなったオブジェクトがころあいを見計らって勝手にメモリから消去される」仕組みです。
この「どこからも参照されなくなった」という条件がクセモノで、気をつけないとすぐにメモリーリークの原因になります。



■ActionScript3.0 | メモリの解放
http://wakaz.info/2008/12/actionscript30_1.html

removeChildしただけだと、画面に映らなくなるだけで、消えてはいないみたい。
そこで、nullを代入することで、全て消えるっぽい。
その他、BitmapDataの時は、dipose();を使ったり、…



■MovieAssetMaterial・BitmapAssetMaterial でメモリーリーク
http://actionscript-junky.net/p_blog/category.php?k=papervision3d

、asset系のmaterialを適用してフレームを回しているとメモリーリークが起こるようです。
ソースを探ってみると内部で使用回数とmovieClipへの参照を保持している模様。そしてそれを解放する手段が用意されていない

※この方は、MOvieMaterialにして回避したそう。そういうやり方もあるのね。とメモ。

■Papervision3D 2.0 GreatWhiteでメモリ解放
http://pecoco.jp/blog/?p=18

(1)○○○○Material.destroy()メソッドを使う
(2)一度テクスチャ用にBitmapDataインスタンスを作って、BitmapMaterialを利用
(3)未検証だけど、○○○○Material.bitmapを直接dispose()するとか


コメント

コメントの投稿

トラックバック

この記事のトラックバックURL

 | HOME | 

プロフィール

siho_prof

SIHO
しほ

Twitter:
SIHO_o

viva mambo, inc.
iPhone&iPad / Flash / Kinect
使用言語:Objective-C, ActionScript 3.0, Javascript, Lua, PHP, C#, C, C++, WSH。
F-site staff

Solar System Simulator 広報

Web,スマートフォン、Desktopを問わず、アプリ制作が好物。執筆は必要に応じて。お仕事くださいまし。

サイネージ:ガンダムフロント東京・キャラクターフォトスポット設計(2012/4~常設)

アトラクション:富士急ハイランド 戦国BASARA ゲーム設計&プログラミング(2010/7-2012/4にて常設展示)

イントラシステム:「某メーカー研究所KJ法システム」DB,Flash,PHPを含むソリューション設計&DB構築、「美術系専門学校の生徒管理システム」iPadクライアントを含むソリューション設計&DB構築

iPhone/iPadアプリ:某球団試合速報アプリ、『魂を熱くさせる 宇宙飛行士100の言葉』『Mitaka Gallery -てのひら宇宙-』

書籍同梱ソフト:『4次元デジタル宇宙紀行Mitaka』『DVD-ROM&図解 動く! 深海生物図鑑』『DVD-ROM&図解 ハッブル望遠鏡で見る宇宙の驚異』

著書:『世界一わかりやすい Windows 7』『世界一わかりやすい Flash CS3』

検索フォーム

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。