ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

サウンドその1

サウンドを鳴らすにはSoundクラスを使う。サウンドはBGM1個とSE8個を鳴らすことが出来る。Loadメソッドでサウンドファイルを読み込み、Playメソッドで再生。Stopメソッドで停止。非常に簡単。
SEの場合は1-8のチャンクナンバーを指定できるが、0を指定しておけば空いているチャンクを自動的に探してくれる。

カーソルを上下左右でSEやBGMを再生停止するテストプログラム。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using Yanesdk.Input;
using Yanesdk.Sound;

namespace Sound
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        Yanesdk.Sound.Sound se;
        Yanesdk.Sound.Sound bgm;
        Key1 key;

        private void Form1_Load(object sender, EventArgs e)
        {
            // SEの作成
            se = new Yanesdk.Sound.Sound();
            se.Load("ksl1a.wav");

            // BGMの作成
            bgm = new Yanesdk.Sound.Sound();
            bgm.Load("airf.wav", -1);
            bgm.Loop = -1; // 無限ループに

            key = new Key1();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            key.Update();

            if (key.IsPush(1)) se.Play();  // SE再生
            if (key.IsPush(2)) se.Stop();  // SE停止
            if (key.IsPush(3)) bgm.Play(); // BGM再生 
            if (key.IsPush(4)) bgm.Stop(); // BGM停止
        }
    }
}

サウンドファイルにMP3ファイルを指定してみたがLoadでエラーに。MP3ファイルは未対応のようだ。