Skip to content

enchant.jsがAdobe Edge Animateに対応するプラグインを開発中!ミニゲーム開発が変わる!?

やあ。オレはケビン。この春からUEIでインターンをしてる。ミュンヘン工科大学の学生さ。

UEIは思ったよりずっとハッピーな会社だったけど、リョウ・タカハシやマコト・コンドーみたいなグルーヴィな先輩達に囲まれてまあなんとかやってるぜ。
やはりドイツと相性がいいのは日本だよな。次はイタリア抜きでやろうぜ。

今日はオレが作っているenchant.jsの新しいプラグインを紹介するぜ。その名もedge.enchant.js。

言わずと知れた、AdobeのHTML5版Flashのようなもの、Adobe Edge Animateで作ったアニメーションをenchant.jsに取り込んじゃおうっていう、野心的なプラグインなのさ。

これを使うとゲーム制作が劇的に簡単になるかもしれないぜ。

まずはこのビデオを見てくれ

このデモでは、まずEdge Animatorで作ったアニメーションをenchant.js側で再生しつつ、enchant.jsのスプライトとの衝突判定(コリジョン・デテクション)を行っているんだ。

ソースコードはこんな感じ。

		//compは全てのenchant.jsのスプライトに変換したEdgeのオブジェクトです。
		var comp = enchant.edge.Compositions.instance.groupFromComposition(); //Edgeのデータを読み込む

		scene.addChild(comp);
		sp.image=game.assets['images/chara1.png'];
		scene.addChild(sp);
		
		var sp2 = enchant.edge.Compositions.instance.getSprite('bear'); // Edgeで作ったアニメのスプライトを取り出す
		var stage = enchant.edge.Compositions.instance.getSprite('Stage');
		
		sp.moveTo(stage.width/2,stage.height/2);//クマのスプライトを画面の中心へ

		sp.addEventListener('enterframe', function(e) {
			if(game.frame % 3 == 0){
				sp.frame = (sp.frame)%2+1;
			}
			if(sp.intersect(sp2)) { //Edgeで作ったアニメのスプライト(sp2)と衝突判定
				alert('crash');
				game.stop();
			}

どうだい?
このプラグインのミソは、Adobe製のフレームワークを一切使わず、Edgeの出力データのみからenchant.jsのスプライトアニメーションを生成してるってコト。そうすることでenchant.jsの全機能を簡単に使うことができるんだぜ。つまりonhitやintersectはもちろん、addEventListenerだってできるんだぜ。
ワイルドだろ?

こうするとゲーム開発の時にアニメーション担当とゲームプログラミング担当で分業しやすくなって、enchant.jsによるゲーム開発もいっそう効率化していくんだぜ。

もうすぐ発表できると思うから、首をジラフみたいにして待ってな!

文・shi3z
このエントリーをはてなブックマークに追加
はてなブックマーク - enchant.jsがAdobe Edge Animateに対応するプラグインを開発中!ミニゲーム開発が変わる!?
Post to Google Buzz
Share on GREE

Related posts:

  1. enchant.js v0.5.0がついにリリース! Canvas強化とwidget追加でゲーム以外のアプリもお任せ!?
  2. Ruby on enchant.js / RubyでHTML5ゲームを作ってみる
  3. Ruby on enchant.js : Groupクラスの追加
  4. イカすスマホUIが作り放題! widget.enchant.js超入門
  5. たった99行でシューティングゲームを作る方法

Facebook comments:

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*