結局twitter見ちゃったりで目標タイム+2時間になってしまったけど、
例の案件を一応納品。修正出るまでとりあえず好きなことできる!素材!素材!

今までの経験も踏まえつつFlashLite1.xで容量削減のために何ができるのか、
一度ここでまとめておこうと思いました。

・・・が、かなり良くまとまった記事を見つけたので、とりあえずその紹介から。
詳細は以下。

[Think IT] 第5回:Flash Liteのまとめと今後 (2/3)

書いてあることを見やすくまとめると、

  1. (◎)複雑なベクターは避ける→最適化する or ビットマップにする
  2. (△)変数名・フレーム名を短いものにする
  3. (?)簡単な図形はシンボル化したパーツで使いまわす
  4. (◎)読み込む前に画像ファイルの容量を落としておく
  5. (○)画像のアルファチャンネルは避ける
  6. (○)無駄なフレームやキーフレームを削除する
  7. (?)スクリプトの記述量

ただのコピペですが、左に経験上の評価をつけてみました。
(◎:効果大 ○:まぁまぁ △:あまり変化した記憶がない ?:場合による or 未知数)

パスの最適化は普通に効果があると思います。
崩れ過ぎてしまう場合でも、①選択範囲を作って部分的に適用②スムージングの調節③「複数処理を適用」のチェックボックスあたりを弄ると調整できることが多いです。ただ、あまりに元のパスが酷い場合はベクターをさらにベクターでトレースした方がいい場合もありますw 上手くいけば曲線を綺麗に残しつつ、アンカーポイントを大幅に削減できます。
ビットマップ化もかなり有効です。制作の自由度が落ちるので、計画的に使う必要がありますが。詳しくはまた下に別途書きます。

変数名?シンボル名を短くする、に関しては、そこまで効力を感じたことはありません。。でも一応話を知ってからは気を付けてます。

モバイルコンテンツに携わってから受けた一番大きな衝撃が、「シンボルを極力使いまわすことが必ずしも軽量化に繋がるわけではない」だったので、3点目に関しては甚だ疑問です。以前、容量削減に四苦八苦した際に、思い切ってシンボル化していた絵を全部分解したら、ガクっと容量が落ちたことがありました。衝撃だったのですが、その後も何度か同じ経験をしてます。酷い時は、トゥイーンを分解してコマアニメにした方が軽かったりw これは未だに謎です。
ただ、「●」「■」の2種類の矩形はシンボルとして用意しておくと、マスクなど細かい部分にサッと使い回せるのでお勧めです。

読み込む前の画像ファイルの容量を落としておく・・・これは見落としがちだと思います。同じラスターで同じように見えても、そのフォーマットや設定を詰めていくことでかなり変わります。
詳細に設定するには、Photoshopでは(Shift+Ctrl+Alt+Sで)「Web用及びデバイス用に保存」がオススメです。設定を変えつつ、容量を左下で確認できます。
Flashにインポートするフォーマットとして、鉄板はPNGフォーマットですね。劣化ほぼしないしとりあえずPNGで...と安易に選んでしまいがちですが、GIFフォーマットが実は強力だったりします。元記事でも書いてありますが、色を限定することで、同じ見栄えでPNGと大幅に差をつけることができます。グラデーションを含まないイラストなどには効果大です。

無駄なキーフレームやレイヤーを整理しておくのは普通にやっていれば特に問題無いとおもいますし、改善してもそこまでの効果はありません。スクリプトの記述量削減はスクリプトをあまり案件で使ったことがないので知りませんw

・・・こんなところでしょうか。
上で少しふれたことも踏まえて、もう少し上のリストに自分で足してみようと思います。

  1. アニメーションで出来上がったところまでを一旦まとめる
  2. 同じモーションをするシンボルは一つにまとめる(シンボル化する)
  3. スパンの長いフレームやトゥイーンを短くする
  4. シンボル化していた部分を分解してみる

・・・正直これらは制作段階で行うというよりは、分解などの不可逆的な操作も多いので、
出来上がった後に「どうしても容量を減らしたい!」という場合に行う苦肉の策ですw

1.アニメーションで出来上がったところまでを一旦まとめる
物が徐々に出来上がっていくようなアニメーションにしか使えない気もしますが、一旦作ったところまでをビットマップや別レイヤーに分けてあげるだけです。塗りのコマアニメで段々範囲が広くなっていく場合、一度できた部分を別レイヤーに分けて、そこからまた追加分のアニメーションを描いていきます。何フレームに1度まとめるかはバランスの問題ですね・・・。
あと複数の細かいシンボルで構成されてる物の場合、出現のアニメーションはベクターの状態で行い、全体を動かす段階になったらビットマップに切り替えてあげると負荷が軽くなるケースがあります。(容量は増えますが...)

2.同じモーションをするシンボル同士は一つにまとめる(シンボル化する)
トゥイーンは少ない方が良いみたいです。なので同じ動きをなじ時間にしている物があれば、シンボル化して1つのトゥイーンにすると良いと思います。

3.スパンの長いフレームやトゥイーンを短くする
間にキーフレームは無いのに、何故かそのレイヤーのフレームを短くしたり、トゥイーンを早くしたりするだけで軽量化される場合があります。入れ子になっている中のシンボルにキーフレームが関係しているかも知れませんが、シンボルじゃなくてもたまになります。謎です。本当に困ったら、怪しいと思ったレイヤーを感覚で弄るのも手かも。あと動いてないシンボルは、負荷にならないためにも「シングルフレーム」にしておくのが吉です。(1フレームしかなければ放置でも良いけど)

4.シンボル化していた部分を分解してみる
トゥイーンの場合はコマアニメにします。全く理に適っていないように見えて、絶大な効果を挙げることがあります。まさに苦肉の策。
パーツが複雑に入り組んでいる多関節などの場合は、まあ納得できますけどね。複数のフレームを一気に分解する時や、その後の編集には「複数フレーム編集」がお勧めです。

--------------------------


また思い出したら書きます。上とフォーマットが異なってすみません。
でもFlashLite1.xの中身は未だに未知数なので、あと数KB!って時は何でも試してみると良いと思います。元記事にあるようにサイズレポートも参考にしつつ。

Home > Flash > | Tips & Chutorials > [ FlashLite 1.x ] 容量削減のためにできること

Comments:0

Comment Form