[ CATEGORY ] RECENT…メインページ・最近の記事一覧

http://www.dango-itimi.com/blog/

FLASH tips Google Maps API for Flash : マップ上に Polyline で円を描くクラス

javascript 版の Google Maps API (Version3)では円を描く処理はサポートされているようですが、Flash バージョンの Google Maps API では円描画はサポートされていない模様(javascript 版 Version2 相当?)なので、ネット上の記事を参考に円を描く処理をクラス化しました。

【 参考サイト 】

http://www.nanchatte.com/map/circle.html

【 ダウンロード 】

ファイル一式ダウンロード
http://www.dango-itimi.com/blog/swf/101/com.zip

上記ファイル内には以下の二つのファイルを配置しています。

・楕円頂点座標群取得用クラス
com.dango_itimi.geom.core.Polygons

・Google Maps 上に円描画用クラス
com.dango_itimi.googlemap.Circle


【 利用方法 】

事前に map インスタンス(com.google.maps.Map)を生成し、利用準備可能状態にしておく必要があります。
東京の緯度(35.689506)と経度(139.691701)に 頂点数 360 半径 300メートルの円を描画したい場合以下となります。

var lat:Number = 35.689506;
var lng:Number = 139.691701;
var circleData:Circle = Circle.create(new LatLng(lat, lng), 360, 300);
Circle.draw(map, circleData);


以下クラスのソースコードをそのまま記述。

▽続きを読む

[ FLASH ] [ tips ] 2010年08月13日 16:47 | コメント (0) | トラックバック (0)

ETC zoome から YouTube へ

zoome 動画アップロード有料化に伴い、YouTube への動画投稿に関して少々調査を行ないました。

・HD画質の動画はアップロード時 YouTube のサーバ側で 約2000bps に強制再エンコードされる
・高めのビットレート(6000bps等)で動画を作っておけば再エンコードでも結構綺麗になるらしい

6000bps の動画をアップロードして再エンコードされるのと 3000bps の動画をアップロードして再エンコードされるのとで、表示にどのように違いが出るのか調べてみる必要がありそうです。少なくとも、高いビットレートの動画のほうがサーバ側でのエンコード処理に時間がかかりそう。

試しに過去作成した 1280x720 2800bps の動画をそのまま YouTube にアップロードしてみたところ、再エンコードによる画質劣化がやや目につくという点以外、特に問題なく簡単にアップロードできました。

サーバ側でのエンコードは段階的に行われるようで、動画プレイヤーの画質選択項目は、320, 480, 720 と時間が経過するにつれ増えていきます。
その他、HD画質で閲覧すると zoome よりも YouTube のほうがダウンロードに時間がかかる気がします。

追記 2010/07/21)
1280x720 4500bps の動画を作成しアップロードしてみたところ、音(BGM)がぶつぎりに再生されてしまう現象が発生。同動画のビットレートを 2000bps まで落として再アップロードしてみたところ、BGM は正常に再生されました。よって高ビットレートでも問題なく BGM が再生される設定方法を模索中。

[ ETC ] 2010年07月20日 15:31 | コメント (0) | トラックバック (0)

FLASH tips 原点座標(0, 0)にシンボルを再配置する jsfl

シンボルを原点座標(0, 0)に配置するだけの jsfl を作成しました。
前回記事の続きの記事ともなります。

【 ダウンロード 】
http://www.dango-itimi.com/blog/swf/100/OriginalPositioner.zip

【 jsfl ファイル解説 】

■ OriginalPositioner.jsfl

メインクラスファイル
このファイルを実行しても何も起こらず

■ OriginalPositionerOfSelectedLayer.jsfl

現在編集中のステージ内で
選択している1つのレイヤーの
全てのフレームに配置している
一つ目の要素(シンボルやシェイプ)の配置位置を
原点(0, 0)に設定する jsfl ファイル

ステージ上に複数シンボル等が配置されている場合、どれが「一つめの要素」と判定されるかわかりません。上記スクリプトは、一つのフレーム内にシンボル等が1つだけ配置している場合を用途としています。

【 使用手順例 】

前回記事からの続きとなります。

(1)

ムービークリップ walk_bottom.psd 内の、フレーム 1~6 に配置されている各ムービークリップ 1~6 を処理の都合上原点座標に配置したい場合があります。

(2)

OriginalPositionerOfSelectedLayer.jsfl を実行することで、各ムービークリップ 1~6 が原点座標に自動で配置されます。

[ FLASH ] [ tips ] 2010年07月15日 19:49 | コメント (0) | トラックバック (0)

FLASH tips シンボル配置位置の小数点以下を四捨五入して再配置する jsfl

シンボル配置位置の小数点以下を四捨五入して再配置する jsfl を作成しました。

【 ダウンロード 】
http://www.dango-itimi.com/blog/swf/100/IntegralValuePositioner.zip

【 jsfl ファイル解説 】

■ IntegralValuePositioner.jsfl

メインクラスファイル
このファイルを実行しても何も起こらず

■ IntegralValuePositionerOfStage.jsfl

現在編集中のステージ内全てのレイヤーの
再生ヘッダ一にあるフレーム(currentFrame)に配置している
全ての要素(シンボルやシェイプ)の配置位置に対し
小数点以下を四捨五入して再配置する jsfl ファイル

■ IntegralValuePositionerOfSelectedItems.jsfl

ライブラリで選択したアイテム(シンボル)内全てのレイヤーの
1フレーム目に配置している
全ての要素(シンボルやシェイプ)の配置位置に対し
小数点以下を四捨五入して再配置する jsfl ファイル

■ IntegralValuePositionerOfSelectedLayer.jsfl

現在編集中のステージ内で
選択している1つのレイヤーの
全てのフレームに配置している
全ての要素(シンボルやシェイプ)の配置位置に対し
小数点以下を四捨五入して再配置する jsfl ファイル


【 作成経緯と使用手順例 】

Photoshop での大量のキャラクターアニメーション制作後、Flash の psd インポート機能にて以下の状況が大量に発生しそうなため、今回の jsfl の制作を行ないました。

(1)

ゲーム制作において都合のよい、足元を中心とした基準点で各レイヤー毎にムービークリップを作成する設定で psd を読み込みます。

(2)

psd が読み込まれた後のライブラリの様子です。ムービークリップ 1~6 内には同数値のビットマップデータ 1~6 が配置されています。
ここで例えばムービークリップ1 の内容を見てみると…

(3)

ビットマップデータの横幅が 21 ピクセルため、配置 X座標が -10.5 という 0.5 ピクセルの少数値が付与されてしまっています。こいつはいただけねえぜ…!

(4)

ライブラリのムービークリップ 1~6 を選択し IntegralValuePositionerOfSelectedItems.jsfl を実行すれば、小数点以下は四捨五入されて再配置されます。

次にライブラリ内 walk_bottom.psd ムービークリップを見てみます。

(5)

Photoshop で作成したそのままの配置位置に、各ムービークリップ 1~6 が フレーム 1~6 に割り当てられているのがわかります。ここでよく見ると、配置されているムービークリップ の X座標 が 24.5 という、またしても小数点以下の数値が見えます。

(6)

walk_bottom.psd レイヤーを選択し IntegralValuePositionerOfSelectedLayer.jsfl を実行すれば、選択したレイヤー内全てのフレームのムービークリップの小数点以下は四捨五入されて再配置されます。

次の記事「原点座標(0, 0)にシンボルを再配置する jsfl」へ続きます。

追記 2010年7月19日)
jsfl ソースファイル内に誤りがあったため修正したものを再アップロードしました。

[ FLASH ] [ tips ] 2010年07月15日 17:11 | コメント (0) | トラックバック (0)