« 命の価値 | トップページ | ポジティヴうねうね »

日々勉強

 携帯での仕事のためにFlashLite1.1のActionscriptを鋭意勉強中な私です。待ち受けや、それに付属するステーショナリースクリプト(時計・電池・アンテナ・カレンダー等)着せ替えツール対応のメニュー作成等はマスターできた感じ。今は容量を減らす目的で、少ない画像で動きのある画面を作るために、MCの動きを色々とスクリプト制御できるように知識を増やしてます。三角関数なんて久々に見た…。

 PCなどで使われるフラッシュプレイヤー用のFLASHは、ネット上での資料もとても多く勉強しやすいのですが、FlashLiteは面倒な作業も多いし、資料もかなり少なめ。
 計算式は流用できるのですが、基本的な組み方が異なるため、同じ動きを作ろうと思ってもなかなか…。

 通常のflashでは良く使うものとしてonEnterFrameというものがあって「このフレームが実行されるたびに」が、簡単に作れます。これの存在のおかげで、1フレームの中に、全体のほとんどの動作を詰め込む事ができるのです。が、しかし、FlashLiteにはコレがない。自分で、このフレームが実行されるたびに、という状態を、複数フレームを使って表現しないといけなくなるわけです。
 こういう細かい、あっちにあるのにこっちにないという便利機能があり、それが作る手間を大変にしてます。
 アニメーションは、1つ前の位置と現在の位置がずれて、それではじめて動いて見えるので、”フレームが実行されるたびに”はとても重要なのです。

 通常のFLASHのスクリプトを参考にし、携帯用のFLASHのスクリプトを書く時、もっとも簡単な方式は、onEnterFrame(load)に書くであろうそのMCの基本データを1フレーム目に書き(初期位置とか移動量とか)、2フレームめに動きを制御するスクリプトを書き、3フレームめに「フレーム2に戻る」という命令を入れる、というのを基本にします。これで2フレーム目と3フレームがループするので、毎回フレーム2が読み込まれ命令が実行され、onEnterFrameの役目を果たすといった感じです。このループから抜けるには、抜ける条件のif文を2フレーム目に入れ、条件に達したらフレーム4などの別フレームに飛ばす命令を入れればOK、みたいな。
 functionの代用は、functionに書く内容を余白の別フレームに記述し、その情報が必要なところでcall() でそれを読み込めば、一応の代用が出来ます。たぶん!

 結構いい加減にFlashLiteにないクラスを入れてしまっても(クラスの概念ないのに)、エミュレートされるのか、実機でちゃんと動いたりもする不思議さ(=ω=)動いてるからいいか…と思ってそのまま使ってしまってると、機種によっては動かないとかの事態になるかも知れないので、今後はこの辺りの代用方法も研究していこうかと思います。それには1つ1つの命令の意味や動きを完全に知らないといけない。
 しかも余りにも複雑なスクリプトを書いてしまうと、メモリに負荷がかかりすぎたりもするので、かなり洗練させないと、容量が厳しくなるかも。

 早く携帯のFlashLiteのバージョンが標準で2.0にならないか、そればっかり願う自分がいます。新機種ではついに実装されたので、私が1.1を完全にマスターした頃には2.0が主流になってそうな気が…あれちょっとだけ微妙な気分?w

« 命の価値 | トップページ | ポジティヴうねうね »

日記・コラム・つぶやき」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/125642/14774769

この記事へのトラックバック一覧です: 日々勉強:

« 命の価値 | トップページ | ポジティヴうねうね »

2016年10月

           
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
         

FLAG

  • Flag Counter

楽天

アンケート