Atlas.jsブログ

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

音をならしてみよう


どうも、steelydylanです。Atlas.jsでは音をならすための機能も用意されています。
音関係機能には以下の物があります。

sprite.getSound("音楽素材の名前");
sprite.soundClonePlay();/*多重再生の場合に使用*/
sprite.soundLoopPlay();/*ループ再生の場合に使用*/
sprite.soundReplay();/*最初から再生する場合に使用*/
sprite.soundStop();/*サウンドを停止したい時使用*/
sprite.soundPlay();/*再生に使用*/
sprite.soundPause();/*サウンドの一時停止に使用*/
sprite.soundGetCount();/*サウンドの現在の再生時間の取得*/
sprite.soundSetCount();/*サウンドの再生時間の指定*/
sprite.soundGetVolume();/*ボリュームの取得*/
sprite.soundSetVolume();/*ボリュームの設定*/
sprite.soundGetAlltime();/*サウンドの全再生時間の取得*/
sprite.soundIsPlaying();/*サウンドが現在流れているかを取得*/

game.loadでまずは音をロードしよう。

まず、音を使うにはgame.loadで音をロードしてあげる必要があります。
mp3やogg、wavなどの形式に対応しています。
game.load(["http://natsupro.digi2.jp/anotuki/stage.mp3","music"]);
このように素材をロードして、その素材になまえをつけ、
sprite.getSound("music");で、
Spriteオブジェクトや、Shapeオブジェクトに、音を備え付け、
あとは、sprite.soundPlay()で音をならすことができます。
また、sprite.soundLoopPlay();で音をループ再生させることも出来ます。

ソースコードサンプル

Atlas();
window.onload = function(){
	var game = new App();
	game.setQuality(500,500);/*画面の解像度を500*500に*/
	game.setSize(500,500);/*画面の大きさを500*500に*/
	game.centerize();/*画面を中央に*/
	game.setColor("black");/*背景を黒に変更*/
  	game.load(["http://natsupro.digi2.jp/anotuki/stage.mp3","music"]);/*音楽をロード*/
	var text = new Text("押すと音がなります","red",20);/*テキストのオブジェクト生成*/
  	var button = new Shape.Box("white",190,30);/*箱のオブジェクト生成*/
  	button.getSound("music");/*ロードした音楽を取得*/
	text.setPosition(200,210);/*textをx:200,y:210に設置*/
  	button.setPosition(200,200);/*buttonをx:200,y:200に設置*/
  	button.touchStart = function(e){/*タッチした時の処理*/
     	if(this.intersect(e.x,e.y)){/*カーソルの座標がbuttonの座標に接している場合*/
          	if(this.soundIsPlaying())/*現在音楽が再生されているかどうか*/
             	this.soundStop();	/*音楽を止める*/
          	else
              	this.soundPlay();	/*音楽を再生する*/
     	}
  	}  	
	game.addChildren(button,text);/*button,textを画面に追加*/
	game.start();/*ゲームスタート*/
};

実行結果

以下に実行結果を貼っておきます。参考にしてください。
http://atlas-editor.ap01.aws.af.cm/user/Atlasjs/535b7172f8d392d312000008


blog comments powered by Disqus

エントリーリスト

カテゴリーリスト

Facebook

Twitter

おすすめの本