月の上に今日の日付を表示する
何となくこのままでは物寂しい気がします。そこで飾り要素として、今日の日付を月の上に表示させます。図の位置にダイナミックテキストボックスを作成し、フォントに「Arial(なければゴシック体のフォントで代用)」、サイズ「30」、色は「#ffffff(白)」、「アンチエイリアス(読みやすさ優先)」を指定します。変数に「moonTx」を指定してください。
4. レイヤー「action」の1フレーム目にActionscriptを追加します。
moonTx = nowYear + "." + (nowMonth+1) + "." + nowDate;テキストボックスに表示させる変数「moonTx」を作ります。月は0から始まるので「+1」しています。年、月、日の間に「"."」があります。「""」で囲むと変数ではなく、テキストとしてFlashでは解釈されます。
変数「moonAge」は満ち欠けを求めるときに作成しているので、これをそのまま利用します。
完成したファイルをダウンロード
前半はリアリティのあるアニメーション作成を、後半で実際の月の満ち欠けに合わせてプログラムをしてきました。
アニメーションはひと手間で大きく変わることが改めて実感できました。以前作成した「手軽に作れる、ページめくりのアニメ」でも、「光を利用して、空気感を出す」というコツがありましたが、今回は実際とは違う演出手法として利用しました。
今回使用した、月齢を求める式ですが私も天文学の専門ではないので何でこの式で満ち欠けが求められるのか、あえて言うとさっぱり意味が分かりません…。しかし、このような難しい式は各分野の専門家によって一般に公開されていて、自由に利用することが多いです。こういった物を利用することでより複雑な計算や表現を手軽に行うことができますので、自力で宇宙の不思議に挑むことなく是非活用しましょう。
今回は計算式でしたが、Flashの世界ではビジュアル表現や便利な機能など作るには大変手間がかかることもコンポーネントやライブラリとして提供していることがあります。中には有料の物もありますが、仕事としてFlashを作成する方なら売上と天秤にかけることもあるでしょう。また、ノンプロの人であれば手軽に高度な表現ができるフリーのライブラリがあれば面白い表現ができるようになると思いますので、是非使ってみてください。