これだけは知っておきたい「FlashLite入門」
この1年、FlashLiteを触る機会を多くいただきました。
まったくの初心者から始めたので、何度も思い通りにいかず、苦しめられました。
ということで今回は、1年の総括の意味を込めておさらいします。
1. ムービークリップの参照方法
これは、以前記事にしましたが、もう少し上乗せして 説明します。//AS2.0だと、 my_mc._x = 100; //FlashLite1.1だと tellTarget("my_mc"){ _x = 100; } //ネストが深い場合 my_mc.huga_mc.hoge_mc._x = 100; //Flash Lite1.1だと、 tellTarget("my_mc/huga_mc/hoge_mc"){ _x = 100; }
//tellTargetの外の変数を参照する場合 hoge = true; tellTarget("my_mc"){ if(/:hoge){ _x = 100; } } :/で参照できる //mcの中から、_rootの変数を参照するには、 tellTarget("my_mc"){ if(/:hoge){ _x = 100; } } もしくは、この場合_root.hogeでも参照できます。
このように、タイムラインの変数を指定するには、ドット (.) およびコロン (:)と組み合わせたスラッシュシンタックス (/) を使用します。
2. Flash Lite1.1でfunctionは使えない
call(frame) を使えば代用できます。指定したframeに処理したいスクリプトを書いて、呼びたいタイミングでcallします。
何度も同じ処理を書く場合は、callは便利ですね。
ただし、処理内容を1フレーム目に書くといきなり実行されてしまうので、
call を定義するときは、再生時に実行しないフレームに書きましょう。
p>
3. SWFの容量は100K以内
これについては、いろいろなサイトでチップスが紹介されていますが、個人的には、下記のサイトから多く学びました。
http://taichistereo.sblo.jp/article/14671674.html
他にも、最後の手段ですが、以下の方法も有効です。
・ライブラリのプロパティの所で画質もめちゃくちゃおとす
・埋込フォントを使わない
4. 画像が赤くなる
ある機種では正常に表示されるのに、一部の機種では、画像が赤くなってしまうことがあります。
【主な原因とその対策】
・PNG画像を使用した
→ライブラリのところで、プロパティ→圧縮を「ロスレス(PNG/GIF)」にする
・SWFの容量が100Kギリギリもしくはオーバーしている
→③の方法で容量を軽くしてください
・ワークメモリの上限をオーバーしている
→これについては、 http://thinkit.jp/article/659/2/ の「ワークメモリについて」
が参考になります。
・グラデーションのある透過PNG画像
→これは、個人的にはどうやっても対処できず、グラデーションを消しました。
→フラッシュ上でベクターで書けばそもそも問題はないはず
5. swfmillでケータイFlashを動的に生成する
swfmillは、swfをxmlにしてバイナリでswfを編集でき、xmlからswfを生成できます。xmlからムービークリップを参照したり、変数を触れるのでswfを動的に生成できます。
一度、自分でインストールしてみて、実際に使ってみることをおすすめします。
以下のサイトからダウンロードできます。
http://swfmill.org/
この構造を知っているだけで、FlashLiteを使ったコンテンツの幅が広がるのは
間違いありません。
今回の記事は以上です。
まだまだコンテンツを作っていく上でつまずくことがあると思うので、
都度更新していきます!
最近は、PCだけでなくモバイルにも目を付けた企業が増えてきたと聞きます。
この記事が開発の役に立てばと思います。