Atlas.jsブログ

Webブラウザで動作する、教育用JavaScriptゲームエンジン、Atlas.jsに関する知識共有ブログです。

選択されているタグ : OGS

タグを絞り込む : Atlasエディタ

OGSセミナー開催しました

OGSセミナーが開催されました!

こんにちはXipher(サイファー)です.

多くの方々にお越しいただき非常に盛り上がるセミナーとなりました.

畳の上でプログラミング,と一風変わった様子ですが,とても良い環境でした.

参加者は4グループに分かれ,各グループ毎にこちらで用意したゲームを改造するというもので,様々な改造案が出ました!

皆さん実装のために色々考え,そして会話が沢山なされました!どんどん改造案が実装へと向かっていく様子は、とても素晴らしいものでした.

これからに向かって

RUBINはみなさんの第一歩を応援しています.

このOGSもプログラミングの第一歩となることを期待しています!


Atlas エディタを使ってゲーム開発をしよう!!

atlas.jsでゲーム開発がらくらくできちゃう

はじめまして!! しぉみんです。
テストとレポートが明けてやっと解放されました今日この頃です。
今回私は, この Atlas エディタと atlas.js を利用してゲーム制作を行いました。 まだ atlas.js を学んでから 2, 3 週間しか経っていませんがなんとかゲームらしい作品ができました。これが今回制作したゲームです。

bomb HEY! 仕分けゲーム
bomb HEY! 仕分けゲーム




どこかで見たことがあるような気がするかもしれませんがたぶん見なかったことなかったことにしましょう。赤いボムと黒いボムをそれぞれの色の領域に仕分けしていくゲームです。この言語と開発環境で作成しました。Atlas エディタ
クリックとタッチに対応しています。全体的なグラフィックは未完成ですがゲームのシステム自体はほぼ完成です。ちなみに放っておくと無限増殖するので注意です。ソースコードのコメントには私の苦労と葛藤が記録されていますのでぜひ見ないでそっとしておいてくださいね。




つぎはwebページ制作のほうに取り掛かりたいと思います。
ゴールデンウィークはとてもとても天気が良くてレポート日和になりそうです。orz
ではまた今度ノシ


ブロック崩し

どうもmoltomheadです。
明日(というより今日)開かれるOGS(Oneday Game Seminar)で使用されるブロック崩しを作成しました。
そのことについて何回かに分けて触れたいと思います。
まずはバーで跳ね返す、ボールのクラスについて解説したいと思います。
ソースコードを見ながら、実際に確認してみてください。
ブロック崩し

Ball = Atlas.createClass(Atlas.Shape.Circle,{//ボールを作成する
  		initialize: function(col,radius){
     		this.inherit(col,radius);
          	 this.setPosition(250,200);//真ん中に配置
      		this.dirX = game.getRand(3,4);//左右の方向の移動量
      		this.dirY = game.getRand(4,6);//上下の方向の移動量
     	}, 
     	enterFrame: function(){
     		this.x += this.dirX;//左右の方向へthis.dirX分だけ移動させる
    		this.y += this.dirY;//上下の方向へthis.dirY分だけ移動させる
    		if(this.x > 480 || this.x < 0)//ボールが画面の右側か左側を超えた場合
    			this.dirX = -this.dirX;//ボールの左右の移動量を反転させる(跳ね返る)
              if(this.y > 480){//ボールが画面の下へ行ってしまったとき
                 this.dirX = 0;//
              	this.dirY = 0;//ボールの移動を止める
                 game.addChild(gameover);//ゲームオーバーを表示
              }
              if(this.y < 40)//ボールが画面の上側へ行ってしまったとき
                   this.dirY = -this.dirY;//ボールの上下の移動量を反転させる
          	 if(this.hitTest(ber))//ボールがバーに当たったとき
         	   	 this.dirY = -this.dirY;//跳ね返る
               
    	}	
  	});

クラスの難しい部分はまた今度説明するとして、ボールのクラスでは座標、移動量、壁とバーとの接触判定の設定をしています。
座標は、画面の大きさが(500,500)に対して真ん中に来るように設定しています。
次に移動量ですが、それぞれをランダムで決めています。game.getRand(n,m)はnからmまでのランダムな値を返します。
最後に壁とバーとの接触判定です。ボールが画面の座標を超えてしまった場合、上下左右の移動量を反転させることによって、ボールが跳ね返ったようにみせています。
また、壁とバーの接触判定、ボールの移動はinitialize内ではなくenterFrame内に記述されています。enterFrame内に処理を記述すると、わざわざループ用の命令を書かなくても、ループ処理をさせることができます。ではinitializeとはなんぞや?と思う方もいるかもしれませんが、それを含めて細かいことはクラスと同様、今度説明したいと思います。では今回はここまで。


エントリーリスト

カテゴリーリスト

Facebook

Twitter

おすすめの本