GRAFZ.NET
一言:自分はいったい何がしたいんだろう。その謎が解けるまでとりあえずこのサイトの更新は続く・・・
開発ブログ
flash利用で手動の画質最適化
虫の動きをスクリプトで記述する

軽い気持ちで更新されるブログ
CS3へのアップグレード
JWW外変「Kiefer」公開します。

ダウンロード
JW_WIN外部変形Kiefer
JW_WIN外部変形FastMeasure
管理者からのお知らせ
4/30 サーバーダウンについて
4/16 このサイトを開設しました。

管理者プロフィール (-)
suda
26歳男
神奈川県生まれ
最近の趣味:ジョギング
職業:grafz.netという屋号でwebデザイン+プログラム制作してます。
一言:自分はいったい何がしたいんだろう。その謎が解けるまでとりあえずこのサイトの更新は続く・・・。
コンタクトは以下まで
suda@grafz.net
RSS
ブログをRSS配信してます。

© GRAFZ.NET 2008
「開発ブログ」の最近の記事

6月26日
flash利用で手動の画質最適化


今回はプログラミングから離れて、画像の圧縮と画質について考えてみました。

jpgファイルは、解像度と画像の複雑さに比例してファイル容量も大きくなっていきます。ところが、人間が画像を見るときを考えると、必ずしも画像中の複雑な部分が重要ではないんじゃないかとふとひらめきました。例えば、草むらとか、じゃり道とか、複雑な画像にも関わらず、ファイル容量を食うんじゃないかと。草むらとかじゃり道なんて、少しくらいノイズが出てもいいんじゃないかと思うのは僕だけでしょうか?かと言って、画像全体の画質を下げてしまえば、(例えば)その画像に写っている人の顔にもノイズが入ってきます。

そこで、画像中を適当に分割してやって、それぞれの領域の画質を手動で設定してやる、ということをしてみます。複数のjpgをテーブルを組むのも手段の一つですが、読み込みの際に、明らかに分割されていることがバレてしまいます。ここではswfとしてひとつのファイルにまとめてしまいます。

では、サンプル画像の中身を見てみます。3分割して、絵の内容と画質を手動で調節します。
説明
要素としては、空、牛、草むらです。実にシンプルな写真ですね。南ドイツで撮ったものです。

・・・・・
続きを読む

6月6日
虫の動きをスクリプトで記述する


常に進行方向を向きながら回転する物体。その動きをスクリプトで記述してみます。動きをスクリプトで記述することのメリットは、パラメータを変えるだけで物の動きを制御できたり、また、手作業では不可能な動きを作り出せることもあることにあります。
今回はこれ↓をプログラミングしてみましょう。
flash player required. Get Adobe Flash player

回転運動をする物体のクラスを作成し、引数で渡すMovieClipのonEnterFrameハンドラをつかまえて動きをつけます。回転運動の中心の座標と、回転確度も指定できるようにします。以下、クラスの記述です。

・・・・・
続きを読む

5月24日
MovieClipLoaderで画像をロードする


ダウンロードしたswfファイルの中に、さらに画像などを読み込む方法といえば、loadMovieがまず思いつきます。このメソッドはURLを指定してやるだけでよくて、記述が簡単なんですが、難がひとつあります。それは、ロードが完了したタイミングをつかまえられない、ということ。つまり、読み込みが完了した直後にその画像を非表示にする、などということができません。
そういったニーズを満たしてくれるのが、MovieClipLoader。このクラスのオブジェクトに、リスナーオブジェクトを追加してやることで、画像読み込みに関連するいろいろなイベント、例えばエラー処理や読み込み完了など、を処理することができます。今日はもっとも基本的なパターンとして、「画像読み込みが完了するまではloading表示、完了したらloadingを消して、画像を表示」という挙動のクラスを設計してみます。

ざっくりとした仕様としては、StartLoadメソッドで画像の読み込みを開始して、ロード完了と同時に画像を非表示化。表示・非表示はShowメソッド、Hideメソッドで行う、という感じです。読み込みが完了する前のタイミングでShowが呼ばれたとしても、読み込み完了と同時に表示されるように時間差をクッションしてやる、というのがコツです。以下ソースコードです。



・・・・・
続きを読む