Progressionを使い、とある大規模プロジェクトでFlashコンテンツ制作したのですが、特定環境で発生した問題には戸惑いました。
PPC Mac only!
その問題が発生する環境とは「PowerPC Macでのみ発生」というもの。
ちょっと調べてみたところ、確かにブラウザやFlash PlayerやOSのバージョンは関係なく、本当にただPowerPC Macである、というだけで発生するのです。
具体的な症状は、ProgressionのメソッドであるAddChildで配置するパーツが配置(表示)されない、という現象。
しかも、「一つも AddChild出来ない」というわけではなく、ある特定のパーツ以降で発生する。
なんだか、メモリリークのにおいプンプンである。
ググれ!きっと先人がいるはず!
で、ググりにググってみたところ、同様の症状について言及されいてるページを発見した。
この方によれば、「new AddChildを、コンストラクタのaddChildに変更すると正常に動作する」とのことで、たしかに、コマンドリストにnew AddChildしていた箇所だったのでそのコードを以下のように変更してみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | /* // Progression標準的コード. addCommand( new AddChild( partsRoot, _partsA ), new AddChild( partsRoot, _partsB ), new AddChild( partsRoot, _partsC ) }; */ // PPC Mac対応コード. partsRoot.addChild( _partsA ); partsRoot.addChild( _partsB ); partsRoot.addChild( _partsC ); _partsC.initOnAdded(); // ←必要に応じて初期化メソッド呼び出し. |
AddChildしてた箇所を全てこのようにしたところ、問題は発生しなくなりました!
かなり規模が大きいプロジェクトだったので同様なコードはかなりあり、それぞれ動作確認を取るのも結構大変でしたが、大抵これでうまくいくと思います。
それでも、便利なProgression
まさかのこの問題では手こずりましたが、このプロジェクトで初めて使ったProgression、総じてかなり便利でした。
クラスとかの構造もわかりやすかったので、自前でラッパークラスをつくり、便利に使いました。
使用していたProgressionのバージョンは3.1.62でしたが、最新版では直っていたりするのかな?
[AD]
↓最近発売されたオフィシャルProgression本!バージョン4にも対応、とのことで、これからProgressionやるなら必携!
ProgressionによるFlashコンテンツ開発ガイドブック
著者/訳者:阿部貴弘 池田泰延 楢山哲弘 松竹 誠 山上健一
出版社:毎日コミュニケーションズ( 2010-04-28 )
定価:¥ 2,940
Amazon価格:¥ 2,940
単行本(ソフトカバー) ( 312 ページ )
ISBN-10 : 4839931798
ISBN-13 : 9784839931797
↓今までの歴代Macが載っているらしい。話が通じる人と呑むときにこの本があれば酒も進みそう!
著者/訳者:大谷 和利
出版社:エイ出版社( 2008-03-24 )
定価:¥ 1,260
Amazon価格:¥ 1,260
単行本 ( 157 ページ )
ISBN-10 : 4777909921
ISBN-13 : 9784777909926






