Unity¤Ë´ØÏ¢¤¹¤ëµ­»ö¤Ç¤¹

¡¡°ú¤­Â³¤­¡¢²»³Ú¤ÎÌ̤ǤΥ²¡¼¥à¤Î±é½Ð¤òÄɲ䷤Ƥ¤¤­¤Þ¤¹¡£

¡¡¤³¤Î¼ê½ç¤Ç¤Ï¾ìÌ̤˱þ¤¸¤Æ¼«Æ°Åª¤ËºÆÀ¸¤¹¤ë BGM ¤òÀÚ¤êÂؤ¨¤ë½èÍý¤ò¼ÂÁõ¤·¤Æ¤¤¤­¤Þ¤¹¡£

ȯŸ£³£¹¡¡¡ÝBGM¤ÎºÆÀ¸¡Ý
£·£¹¡¥SoundManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¡¢SoundManager ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë
£¸£°¡¥GameManager ¥¹¥¯¥ê¥×¥È¤È UIManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢SoundManager ¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤Æ¡¢¾ìÌ̤˹ç¤ï¤»¤ÆBGM¤ò¼«Æ°Åª¤ËÀÚ¤êÂؤ¨¤ëÀ©¸æ½èÍý¤ò¼ÂÁõ¤¹¤ë



¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£

¡¡¡¦AudioSource.Play¥á¥½¥Ã¥É¡¢AudioSource.Stop¥á¥½¥Ã¥É
¡¡¡¦DOTween¤ÎÊä´Öµ¡Ç½¤Î¼ÂÁõÎã­«¡¡¡¼AudioSource.DOFade¥á¥½¥Ã¥É¤òÍøÍѤ·¤¿BGM¤Î¥¯¥í¥¹¥Õ¥§¡¼¥É±é½Ð½èÍý¡¼
¡¡¡¦AddComponent ¥á¥½¥Ã¥É



£·£¹¡¥SoundManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¡¢SoundManager ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë

£±¡¥Àß·×


¡¡BGM ¤òºÆÀ¸¤¹¤ë½èÍý¤ò¹Í¤¨¤¿¾ì¹ç¡¢BGM ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¡¢¤½¤³¤Ë¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤òºÆÀ¸¤¹¤ë¤¿¤á¤Î AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ëÊýË¡¤¬¹Í¤¨¤é¤ì¤Þ¤¹¡£
¤³¤Î¾ì¹ç¡¢BGM ¤òÀÚ¤êÂؤ¨¤ë½èÍý¤ò¹Ô¤¦¤¿¤á¤Ë¡¢¿·¤·¤¯¥¹¥¯¥ê¥×¥È¤òÍÑ°Õ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
BGM ¤¬£²¼ïÎà¤Ç¤¢¤ì¤Ð¤è¤¤¤Î¤Ç¤¹¤¬¡¢¥²¡¼¥à¤Ç¤Ï¿ô¼ïÎà¤òÀÚ¤êÂؤ¨¤ë¤³¤È¤¬ÁÛÄꤵ¤ì¤Þ¤¹¤Î¤Ç¡¢¸ÄÊ̤ËÀßÄꤷ¤¿¤ê¡¢¸ÄÊ̤Υ¹¥¯¥ê¥×¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¤Ï
´ÉÍý¤ÎÌ̤«¤é¤â¡¢¼ÂÁõ¤Î¤¿¤á¤Î½àÈ÷¤ÎÌ̤«¤é¤âÆñ¤·¤¤À߷פˤʤê¤Þ¤¹¡£

¡¡¤½¤³¤Çº£²ó¤Ï¡¢¥ª¡¼¥Ç¥£¥ª´ØÏ¢¤Î½èÍý¤ò¤¹¤Ù¤Æ´ÉÍý¤¹¤ë¤¿¤á¤Î¥Þ¥Í¡¼¥¸¥ã¡¼¥¯¥é¥¹¤È¤·¤Æ SoundManager ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Æ¡¢BGM¡¢SE¡¢¥Ü¥¤¥¹¤Ê¤É¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤è¤¦¤ËÀ߷פò¹Í¤¨¤Þ¤¹¡£
¤³¤³¤ÎÃæ¤Ë¡¢Àè¤Û¤É¤Î¼ê½ç¤Ç¥¤¥ó¥Ý¡¼¥È¤·¤¿¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤òBGM¤È¤·¤ÆºÆÀ¸¤·¤¿¤ê¡¢Ää»ß¤·¤¿¤ê¤¹¤ëÀ©¸æ¤Î¼ÂÁõ¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡ºÆÀ¸Ãæ¤ÎBGM¤òÀÚ¤êÂؤ¨¤ë¤Ë¤Ï¤¤¤¯¤Ä¤«¼êË¡¤¬¤¢¤ê¤Þ¤¹¤¬¡¢º£²ó¤Ï£²¤Ä¤Î AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍÑ°Õ¤·¤Þ¤¹¡£AudioClip ¤Ï¶õ¤Ë¤·¤Æ¤ª¤¤¤Æ¡¢
¾ìÌ̤˱þ¤¸¤Æ¡¢ºÆÀ¸¤µ¤»¤ë AudioClip ¤ÎÆâÍƤòÀÚ¤êÂؤ¨¤Æ¤¤¤¯ÊýË¡¤ò»È¤¤¤Þ¤¹¡£

¡¡¥¤¥á¡¼¥¸¤È¤·¤Æ¤Ï ¥ª¡¼¥Ç¥£¥ª¤ÎºÆÀ¸µ¡´ï¤¬ AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢¼ÂºÝ¤ËºÆÀ¸¤µ¤ì¤ë¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤¬ AudioClip ¤Ë¤Ê¤ê¤Þ¤¹¡£



¡¡SoundManager ¥¹¥¯¥ê¥×¥È¤Ç¤¹¤¬¡¢BGM ¤À¤±¤Ç¤Ï¤Ê¤¯¡¢SE ¤ä ¥Ü¥¤¥¹¤Ê¤É¡¢¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤Ë´ØÏ¢¤¹¤ëµ¡Ç½¤ò¤¹¤Ù¤Æ´ÉÍý¤¹¤ëÌò³ä¤ò»ý¤¿¤»¤Þ¤¹¡£
¤½¤Î¤¿¤á¤³¤ì¤é¤Î¥ª¡¼¥Ç¥£¥ª´Ø·¸¤Î½èÍý¤Ï¡¢¤¤¤Ä¤É¤Î¥¹¥¯¥ê¥×¥È¤Ç¤â¤è¤¤¤è¤¦¤Ë GameData ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿ºÝ¤ÈƱ¤¸¤è¤¦¤Ë¡¢
¥·¥ó¥°¥ë¥È¥ó¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤òºÎÍѤ·¤ÆÀ߷פò¹Ô¤¦¤³¤È¤ò¹Í¤¨¤Þ¤¹¡£

¡¡BGM ¤Ë¸Â¤é¤º¡¢SE ¤Ê¤É¤ÏÆäˡ¢¤¤¤º¤ì¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤Ç¤â¼Â¹ÔÌ¿Î᤬ȯÀ¸¤¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
¤½¤¦¤¤¤Ã¤¿¾ì¹ç¡¢³Æ¥¹¥¯¥ê¥×¥È¤´¤È¤Ë SoundManager ¥¹¥¯¥ê¥×¥È¤ÎÊÑ¿ô¤òÍÑ°Õ¤·¤ÆÂåÆþ½èÍý¤ò¹Ô¤¦¤Î¤Ç¤Ï¡¢Èó¾ï¤ËÏ«ÎϤ¬¤«¤«¤ê¤Þ¤¹¡£
¶²¤é¤¯¤¹¤Ù¤Æ¤Î¥¹¥¯¥ê¥×¥È¤ËÄɲäò¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦²ÄǽÀ­¤â¤¢¤ê¤Þ¤¹¡£

¡¡¤³¤¦¤¤¤Ã¤¿¥±¡¼¥¹¤Î¾ì¹ç¤Ï¡¢³Æ¥¹¥¯¥ê¥×¥È¤¬ÊÑ¿ô¤òÍÑ°Õ¤·¤ÆÍøÍѤǤ­¤ë¾õÂ֤ˤ¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢
SoundManager ¦¤¬¡¢¤¤¤º¤ì¤Î¥¹¥¯¥ê¥×¥È¤«¤é¡¢¤¤¤Ä¤Ç¤âÍøÍѤ·¤Æ¤âÌäÂê¤Ê¤¤¾õÂ֤ˤ·¤Æ¤ª¤¯À߷פÎÊý¤¬´ÉÍý¤â¥¢¥¯¥»¥¹¤âÍưפˤʤê¤Þ¤¹¡£

¡¡°ìÊý¤«¤é¤Î½èÍý¤ò¹Í¤¨¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ÁÐÊý¤Î½èÍý¤ò¸«Ä¾¤·¤Æ¡¢¤É¤Î¤è¤¦¤ËÀ߷פò¹Ô¤Ã¤Æ¤ª¤¤¤¿¤Û¤¦¤¬
À衹¤ÎÍøÊØÀ­¤ä½¤Àµºî¶È¡¢´ÉÍý¤¬´Êñ¤«¤Ä¡¢¤ï¤«¤ê¤ä¤¹¤¯¤Ê¤ë¤Î¤«¤ò¡¢Ç°Æ¬¤ËÃÖ¤¤¤ÆÀ߷פò¹Ô¤¦¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£


£²¡¥SoundManager ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡¥·¥ó¥°¥ë¥È¥ó¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤Ç¡¢SoundManager ¤òºîÀ®¤·¤Þ¤¹¡£
ÊÑ¿ô¤ä¥á¥½¥Ã¥É¤â¿¤¯¡¢½èÍý¤âÊ£»¨¤Ç¤¹¤Î¤Ç¡¢½èÍý¤òµ­½Ò¤·¤ÆËþ­¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢
¤É¤Î½èÍý¤¬¤É¤Î¤è¤¦¤ËÆ°¤¤¤Æ¤¤¤ë¤«¡¢¤É¤Î½èÍý¤È½èÍý¤¬¤Ä¤Ê¤¬¤Ã¤Æ¤¤¤ë¤«¤ò¤·¤Ã¤«¤ê¤ÈÉû¼ï¤·¤Æ¡¢½èÍý¤òÇÄ°®½ÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£
½èÍý¤ÎÆâÍƤ¬¤ï¤«¤é¤Ê¤¤¤Þ¤Þ¤À¤È¡¢¼«Ê¬¤Ç½¤Àµºî¶È¤¬¹Ô¤¨¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¤¿¤á¤Ç¤¹¡£


SoundManager.cs


¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


£³¡¥¡ãAudioSource.Play¥á¥½¥Ã¥É¡¢AudioSource.Stop¥á¥½¥Ã¥É¡ä


¡¡AudioSource.Play¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î AudioClip ¤Ë¥¢¥µ¥¤¥ó¤µ¤ì¤Æ¤¤¤ë¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤ò¥²¡¼¥àÆâ¤ÇºÆÀ¸¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¤Þ¤¿¡¢AudioSource.Stop¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î AudioClip ¤Ë¥¢¥µ¥¤¥ó¤µ¤ì¤Æ¤¤¤ë¥ª¡¼¥Ç¥£¥ª¥Õ¥¡¥¤¥ë¤ÎºÆÀ¸¤òÄä»ß¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¤É¤Á¤é¤Î¥á¥½¥Ã¥É¤â¡¢AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÊÑ¿ô¤ËÂåÆþ¤¹¤ë¤³¤È¤ÇÌ¿Îá¤ò½Ð¤¹¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

    [SerializeField]
    private AudioSource[] audioSources;

    // ¿·¤·¤¤»ØÄꤵ¤ì¤¿BGM¤òºÆÀ¸
    audioSources[index].Play();

    // ºÆÀ¸¤òÄä»ß
    audioSources[index].Stop();

»²¹Í¥µ¥¤¥È
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
AudioSource
https://docs.unity3d.com/ja/current/ScriptReferenc...
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
AudioSource.Play
https://docs.unity3d.com/ja/current/ScriptReferenc...
Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
AudioSource.Stop
https://docs.unity3d.com/ja/current/ScriptReferenc...


£´¡¥¡ãDOTween¤ÎÊä´Öµ¡Ç½¤Î¼ÂÁõÎã­«¡¡¡¼AudioSource.DOFade¥á¥½¥Ã¥É¤òÍøÍѤ·¤¿BGM¤Î¥¯¥í¥¹¥Õ¥§¡¼¥É±é½Ð½èÍý¡¼¡ä


¡¡DOTween¤Îµ¡Ç½¤Ç¤¢¤ë¡¢AudioSource.DOFade¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¤È¡¢»ØÄꤷ¤¿»þ´Ö¤ò¤«¤±¤Æ½ù¡¹¤Ë¥Ü¥ê¥å¡¼¥à(²»ÎÌ)¤òÀ©¸æ¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
Âè1°ú¿ô¤Ë ÊѲ½¸å¤Î Volume ¤ÎÃÍ(Æ°¤«¤·¤¿¤¤ÃÍ)¡¢Âè2°ú¿ô¤Ë¤Ï¡¢Volume ¤ÎÃͤ¬ÊѲ½¤¹¤ë¤Þ¤Ç¤Î»þ´Ö¤ò»ØÄꤷ¤Þ¤¹¡£
Volume ¤ÎÃÍ¤Ï AudioSource ¤Î Volume ¥×¥í¥Ñ¥Æ¥£Íó¤òÁàºî¤·¡¢ºÇ¾®ÃÍ¤Ï 0¡¢ºÇÂçÃÍ¤Ï 1 ¤Ç»ØÄê¤ò¹Ô¤¤¤Þ¤¹¡£

½ù¡¹¤Ë¥Ü¥ê¥å¡¼¥à¤ò¾®¤µ¤¯¤¹¤ë¾ì¹ç
    // ½ù¡¹¤Ë¥Ü¥ê¥å¡¼¥à¤ò²¼¤²¤ë
    audioSources[1].DOFade(0, CROSS_FADE_TIME).SetEase(Ease.Linear);¡¡¡¡¡¡//  CROSS_FADE_TIME É䫤±¤Æ¡¢¸½ºß¤Î¥Ü¥ê¥å¡¼¥à¤ò 0 (ºÇ¾®ÃÍ)¤Ë¤¹¤ë
½ù¡¹¤Ë¥Ü¥ê¥å¡¼¥à¤òÂ礭¤¯¤¹¤ë¾ì¹ç
    // ½ù¡¹¤Ë¥Ü¥ê¥å¡¼¥à¤ò¾å¤²¤ë
    audioSource.DOFade(0.1f, 0.75f);       // 0.75 É䫤±¤Æ¡¢¸½ºß¤Î¥Ü¥ê¥å¡¼¥à¤ò 0.1f ¤Ë¤¹¤ë

¡¡¤³¤Îµ¡Ç½¤ò¾å¼ê¤¯³èÍѤ¹¤ë¤³¤È¤Ç¡¢BGM¤¬ÆÍÁ³ÀÚ¤êÂؤï¤Ã¤¿¤ê¡¢¤¢¤ë¤¤¤ÏBGM¤¬ÀÚ¤êÂؤï¤ë¤Þ¤Ç¤Î̵²»¤Î»þ´Ö¤òºî¤é¤Ê¤¤±é½Ð¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
º£²ó¤Î¾ì¹ç¡¢¿·¤·¤¯Î®¤¹BGM¤Î¥Ü¥ê¥å¡¼¥à¤ò½ù¡¹¤ËÂ礭¤¯¤·¤Æ¤¤¤­¡¢¤½¤Î´Ö¤ËÁ°¤Ëή¤ì¤Æ¤¤¤¿BGM¤Î¥Ü¥ê¥å¡¼¥à¤¬½ù¡¹¤Ë¾®¤µ¤¯¤Ê¤ë¤È¤¤¤¦¡¢BGM¤Î¥¯¥í¥¹¥Õ¥§¡¼¥É±é½Ð¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£

¡¡¥Ü¥ê¥å¡¼¥à¤Ï 1.0f ¤Þ¤ÇÀßÄê²Äǽ¤Ç¤¹¤¬¡¢ºÇÂçÃͤˤ·¤Æ¤·¤Þ¤¦¤È¡¢º£¸åÄɲ乤ë SE ¤Î²»¤òºÇÂç¤Ë¤·¤Æ¤âÄ°¤³¤¨¤Ê¤¯¤Ê¤ë¶²¤ì¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç
¤³¤³¤Ç¤Ï¾®¤µ¤á¤ËÀßÄꤷ¤Æ¡¢¥Ð¥é¥ó¥¹¤ò¼è¤ê¤Ê¤¬¤é¥¹¥¯¥ê¥×¥È¤ÎÃͤòÄ´À°¤·¤Æ¤¯¤À¤µ¤¤¡£ÊÑ¿ô¤Ë¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ¤â¤¤¤¤¤Ç¤·¤ç¤¦¡£

¡¡¤Ê¤ª¡¢SetEase ¥á¥½¥Ã¥É¤Î Ease.Linear ¤òÍøÍѤ¹¤ë¤È¡¢¥Õ¥§¡¼¥É¤¹¤ë½èÍý¤¬°ìÄê®Å٤ˤʤê¤Þ¤¹¡£¥Ü¥ê¥å¡¼¥à¤òÅù®¤ÇÁý¸º¤·¤¿¤¤¾ì¹ç¤Ë¤Ï³èÍѤ·¤Æ¤¯¤À¤µ¤¤¡£


£µ¡¥SoundManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Æ¡¢SoundManager ¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤·¡¢ÀßÄê¤ò¹Ô¤¦


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Î¶õ¤¤¤Æ¤¤¤ë¾ì½ê¤òÁªÂò¤·¤Æ±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Create Empty ¤òÁªÂò¤·¤Æ¶õ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò£±¤ÄºîÀ®¤·¤Þ¤¹¡£
̾Á°¤ò SoundManager ¤ËÊѹ¹¤·¤Þ¤¹¡£

¡¡Àè¤Û¤ÉºîÀ®¤·¤¿ SoundManager ¥¹¥¯¥ê¥×¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤Æ¤¯¤À¤µ¤¤¡£



¡¡Â³¤±¤Æ SoundManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë¤Æ SoundManager ¥¹¥¯¥ê¥×¥È¤Î¥¢¥¿¥Ã¥Á¤ò³Îǧ¤·¡¢ÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡SoundDataSO ÊÑ¿ô¤Ë¡¢Datas ¥Õ¥©¥ë¥À¤Ë¤¢¤ë SoundDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¾¤ÎÉôʬ¤Ï¤½¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£


SoundManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


£¸£°¡¥GameManager ¥¹¥¯¥ê¥×¥È¤È UIManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢SoundManager ¥¹¥¯¥ê¥×¥È¤ò»È¤Ã¤Æ¡¢¾ìÌ̤˹ç¤ï¤»¤ÆBGM¤ò¼«Æ°Åª¤ËÀÚ¤êÂؤ¨¤ëÀ©¸æ½èÍý¤ò¼ÂÁõ¤¹¤ë

£±¡¥Àß·×


¡¡SoundManager ¥¯¥é¥¹¤Ï¡¢¥·¥ó¥°¥ë¥È¥ó¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤Ë¤è¤Ã¤ÆºîÀ®¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á GameData ¥¯¥é¥¹¤ÈƱ¤¸¤è¤¦¤Ë¡¢¤¤¤º¤ì¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤Ç¤â¼«Í³¤Ë»²¾È¤·¤Æ¡¢¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£
BGM ¤ä SE ¤ÎºÆÀ¸¤Î¤¿¤Ó¤Ë¡¢³Æ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë SoundManager ¥¹¥¯¥ê¥×¥È¤ÎÊÑ¿ô¤òÍÑ°Õ¤·¤Æ¼èÆÀ¤ò¤·¤Æ¤¤¤ë¤È¡¢
Î㤨¤Ð¡¢¥¨¥Í¥ß¡¼¤¬ SE ¤òºÆÀ¸¤·¤¿¤¤¤È¤Ê¤Ã¤¿¾ì¹ç¡¢À¸À®¤µ¤ì¤ë¤¿¤Ó¤Ë SoundManager ¥¹¥¯¥ê¥×¥È¤Î»²¾È¤ò¼èÆÀ¤¹¤ëɬÍפ¬À¸¤Þ¤ì¤Þ¤¹¡£

¡¡¤³¤¦¤¤¤Ã¤¿¡ÚÊ£¿ô¤Î¥¹¥¯¥ê¥×¥È¤«¤é»²¾È¤µ¤ì¤ëÍÑÅÓ¤¬¤¢¤ê¡¢ÈÆÍÑŪ¤ËÍøÍѤµ¤ì¤ë¾ðÊó¡Û¤Ë¤Ä¤¤¤Æ¤Ï¡¢
¥·¥ó¥°¥ë¥È¥ó¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤òºÎÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢³Æ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¿·¤·¤¤ÊÑ¿ô¤òÄɲ乤ëɬÍפâ¤Ê¤¯¤Ê¤ê¡¢
BGM ¤ä SE ¤ÎºÆÀ¸½èÍý¤Ë¤Ä¤¤¤Æ¤â¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ëÌ¿Îáʸ¤ò£±¹Ôµ­½Ò¤¹¤ì¤ÐºÑ¤ß¤Þ¤¹¡£



¡¡BGM ¤òºÆÀ¸¤¹¤ë¾ìÌ̤Ȥ·¤Æ¡¢¥²¡¼¥à¤Î³«»Ï»þ¤¬¤¢¤ê¤Þ¤¹¡£
¡¡¸½ºß¡¢¥²¡¼¥à¤ò³«»Ï¤·¤¿ºÝ¤Î¿Ê¹Ô¾õÂÖ¤Ï GameManager ¥¹¥¯¥ê¥×¥È¤Î Start ¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ½é´üÀßÃ֤δÉÍý¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢
GameManager ¥¹¥¯¥ê¥×¥È¤«¤é SoundManager ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤¿BGM¤òºÆÀ¸¤¹¤ë¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤è¤¦¤Ë½èÍý¤òÄɲ䷤ơ¢¥á¥¤¥ó¤È¤Ê¤ë BGM¤ÎºÆÀ¸½èÍý¤ò¼Â¹Ô¤·¤Þ¤¹¡£

¡¡º£²ó¤Ï¤â¤¦£±¤Ä BGM ¤òÍÑ°Õ¤·¤Æ¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï BOSS ¤È¤Î¥Ð¥È¥ëÍѤΠBGM ¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¥Ü¥¹¤Î½Ð¸½¤Ë¹ç¤ï¤»¤ÆºÆÀ¸¤¹¤ë BGM ¤òÀÚ¤êÂؤ¨¤¿¤¤¤È»×¤¤¤Þ¤¹¡£
¥Ü¥¹¤Î½Ð¸½»þ¤Ë¤Ï·Ù¹ð¤Î±é½Ð¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤Î±é½Ð¤Ë¹ç¤ï¤»¤Æ¡¢¾ìÌ̤˱þ¤¸¤¿BGM¤ÎÀÚ¤êÂؤ¨½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¤³¤Î½èÍý¤Ï·Ù¹ð¤Î±é½Ð¤ò¼Â¹Ô¤·¤Æ¤¤¤ë UIManager ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë BGM ¤ÎºÆÀ¸¤Î¥á¥½¥Ã¥É¤òÄɵ­¤·¤Æ¤¤¤­¤Þ¤¹¡£



¡¡SoundManager ¥¯¥é¥¹¤Ëµ­½Ò¤·¤¿¥á¥½¥Ã¥É¤Ï¡¢GameData ¥¯¥é¥¹¤ÈƱ¤¸¤è¤¦¤Ë¡¢¡Ú¥¯¥é¥¹Ì¾.¥¯¥é¥¹¤ÎÂåÆþ¤µ¤ì¤Æ¤¤¤ëÊÑ¿ô̾.¼Â¹Ô¤·¤¿¤¤ÊÑ¿ô̾¤«¥á¥½¥Ã¥É̾(°ú¿ô¤Î»ØÄê)¡Û¤Î½ñ¼°¤Çµ­½Ò¤·¤Þ¤¹¡£

¡ã¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¤Î¥á¥½¥Ã¥É¤Î¼Â¹ÔÌ¿Îá¡ä
  SoundManager.instance.PlayBGM(SoundDataSO.BgmType.Main);

¡¡°ú¿ô¤Ë BgmType ¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¡¢»ØÄꤷ¤¿ BgmType ¤ÎÀßÄꤵ¤ì¤Æ¤¤¤ë BgmData ¤¬»²¾È¤µ¤ì¤ÆÍøÍѤµ¤ì¤ëÀ߷פˤʤäƤ¤¤Þ¤¹¡£


£²¡¥GameManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¥²¡¼¥à³«»Ï¤Ë¹ç¤ï¤»¤Æ BGM ¤òºÆÀ¸¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£
¤É¤ÎÉôʬ¤Ëµ­½Ò¤¹¤ë¤«¤ò¹Í¤¨¤Æ¼ÂÁõ¤ò¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤¡£


GameManager.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹


¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


£³¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£¥²¡¼¥à¤Î³«»Ï¤Ë¹ç¤ï¤»¤Æ¡¢»ØÄꤷ¤¿ BGM ¤¬ºÆÀ¸¤µ¤ì¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£

¡¡Â³¤¤¤Æ¡¢BGM ¤òÀÚ¤êÂؤ¨¤ë½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£


£´¡¥UIManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¾ìÌ̤Ȥ·¤Æ¤Ï¡¢¥Ü¥¹¤¬½Ð¸½¤¹¤ë¥¿¥¤¥ß¥ó¥°¤Ç BGM ¤òÀÚ¤êÂؤ¨¤¿¤¤¤È»×¤¤¤Þ¤¹¡£

¡¡Æ±¤¸¤è¤¦¤Ë BGM ¤òºÆÀ¸¤¹¤ë¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢Á°¤Ëή¤ì¤Æ¤¤¤¿ BGM ¤«¤é¡¢¿·¤·¤¯»ØÄꤷ¤¿ BGM ¤Ø¤È¼«Æ°Åª¤ËÀÚ¤êÂؤï¤ë¤è¤¦¤ËÀ©¸æ¤òÀ߷פ·¤Æ¤¢¤ê¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢BGM ¤ò»Ï¤á¤ÆºÆÀ¸¤¹¤ë¾ì¹ç¤â¡¢BGM ¤òÀÚ¤êÂؤ¨¤ë¾ì¹ç¤â¡¢¤É¤Á¤é¤â PlayBGM ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ì¤Ð¼ÂÁõ½ÐÍè¤Þ¤¹¡£
°ú¿ô¤Ë BgmType ¤ò»ØÄꤷ¤Æ¤¤¤ë¤Î¤Ï¡¢¤³¤ÎÀÚ¤êÂؤ¨¤Ë¤âÂбþ¤¹¤ë¤¿¤á¤Ç¤¹¡£


UIManager.cs

<= ¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹


¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


£µ¡¥¡ãAddComponent ¥á¥½¥Ã¥É¡ä


¡¡SoundManager ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¿·¤·¤¯¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£

¡¡AddComponent ¥á¥½¥Ã¥É¤Ï¡¢¥²¡¼¥à¼Â¹ÔÃæ¤Ë¤ª¤¤¤Æ¡¢ÂоݤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë»ØÄꤷ¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¿·¤·¤¯¥¢¥¿¥Ã¥Á¤¹¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î°ìÈÖ²¼¤Ë¤¢¤ë Add Component ¥Ü¥¿¥ó¤Î½èÍý¤ò¹Ô¤¦¥á¥½¥Ã¥É¤Ç¤¢¤ë¤È¤â¸À¤¨¤Þ¤¹¡£

        // BGMÍÑ AudioSourceÄɲÃ
        BGM_Sources[0] = gameObject.AddComponent<AudioSource>();
        BGM_Sources[1] = gameObject.AddComponent<AudioSource>();

¡¡º£²ó¤Ï SoundManager ¥¹¥¯¥ê¥×¥È¤Î Awake ¥á¥½¥Ã¥ÉÆâ¤Ë¼ÂÁõ¤µ¤ì¡¢¥²¡¼¥à¤Î¼Â¹Ô»þ¤Ë¡¢Ê£¿ô¤Î AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë½èÍý¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£
»öÁ°¤Ë AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤ê£±¤Ä¤º¤Ä¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ê¤Þ¤¹¤¬¡¢
SoundManager ¥¹¥¯¥ê¥×¥È¤Î½èÍý¤Ç¤Ï¡¢AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î AudioClip ¥×¥í¥Ñ¥Æ¥£¤Î¾ðÊó¤ò¥¹¥¯¥ê¥×¥ÈÆâ¤ÇưŪ¤ËÊѹ¹¤·¤Æ¤¤¤ë¤¿¤á¡¢
£±¤Ä¤Î AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ë¤Ä¤­¡¢ÆÃÄê¤Î AudioClip ¤ò»ØÄꤹ¤ë¤È¤¤¤¦À߷פǤϤ¢¤ê¤Þ¤»¤ó¡£
¤½¤Î¤¿¤á¡¢»öÁ°¤Ë¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë AudioSource ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬ÉÔÍפǤ¢¤ë¤¿¤á¡¢¥²¡¼¥à¤Î¼Â¹Ô¤Ë¹ç¤ï¤»¤Æ¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤Þ¤¹¡£

¡¡¤Ê¤ªº£²ó¤Ïº¸ÊÕ¤ËÊÑ¿ô¤òÍÑ°Õ¤·¤Æ¡¢¤½¤ÎÊÑ¿ô¤ËÂФ·¤Æ AddComponent ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤Þ¤¹¡£
AddComponent ¥á¥½¥Ã¥É¤Ë¤ÏÌá¤êÃͤ¬¤¢¤ê¡¢¥¢¥¿¥Ã¥Á¤·¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤òÌ᤹¤³¤È¤¬¤Ç¤­¤Þ¤¹¤Î¤Ç¡¢
¤³¤Î¤è¤¦¤Ê½èÍý¤ò¼ÂÁõ¤¹¤ë¤È¡¢AddComponent ¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ¥¢¥¿¥Ã¥Á¤µ¤ì¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤ò¡¢º¸ÊÕ¤ÎÊÑ¿ô¤ËÌ᤹¤³¤È¤¬¤Ç¤­¤ë¤¿¤á¡¢
¼Â¼ÁŪ¤Ë GetComponent ¥á¥½¥Ã¥É¤Î½èÍý¤â°ì½ï¤Ë¹Ô¤¨¤ëµóÆ°¤È¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¡¡Ìá¤êÃͤò³èÍѤǤ­¤ë¤è¤¦¤Ë¤Ê¤ë¤ÈÈó¾ï¤Ë¿¤¯¤Î½èÍý¤òµ­½Ò¤Ç¤­¤ë¤À¤±¤Ç¤Ï¤Ê¤¯¡¢Ã»½Ì¤·¤¿½èÍý¤â¼ÂÁõ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

Unity¸ø¼°¥¹¥¯¥ê¥×¥È¥ê¥Õ¥¡¥ì¥ó¥¹
AddComponent
https://docs.unity3d.com/ja/current/ScriptReferenc...



£¶¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¡¢¥Ü¥¹¤ò½Ð¸½¤µ¤»¤Æ¤¯¤À¤µ¤¤¡£·Ù¹ð±é½Ð¤¬»Ï¤Þ¤ë¤Î¤Ë¹ç¤ï¤»¤Æ BGM ¤¬¥Ü¥¹ÍѤΠBGM ¤ËÀÚ¤êÂؤï¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£


¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£

¡¡¼¡¤Ï¡¡È¯Å¸£´£°¡¡¡ÝSE¤ÎºÆÀ¸¡Ý¡¡¤Ç¤¹¡£

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

Menu



´ðÁÃ

µ»½Ñ/Ãμ±(¼ÂÁõÎã)

3D¥¢¥¯¥·¥ç¥ó¥²¡¼¥à

2D¤ª¤Ï¤¸¤­¥²¡¼¥à(ȯŸÊÔ)

2D¶¯À©²£¥¹¥¯¥í¡¼¥ë¥¢¥¯¥·¥ç¥ó(ȯŸÊÔ)

2D¥¿¥Ã¥×¥·¥å¡¼¥Æ¥£¥ó¥°(³ÈÄ¥ÊÔ)

¥ì¡¼¥¹¥²¡¼¥à(È´¿è)

2DÊüÃÖ¥²¡¼¥à(ȯŸÊÔ)

3D¥ì¡¼¥ë¥¬¥ó¥·¥å¡¼¥Æ¥£¥ó¥°(±þÍÑÊÔ)

3Dæ½Ð¥²¡¼¥à(È´¿è)

2D¥ê¥¢¥ë¥¿¥¤¥à¥¹¥È¥é¥Æ¥¸¡¼

3D¥¿¥Ã¥×¥¢¥¯¥·¥ç¥ó(NavMeshAgent »ÈÍÑ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥«¥¨¥ë¤Î°Ù¤Ë¡Á¡¢¥Ü¥³¥¹¥«¥¦¥©¡¼¥ºÉ÷)

VideoPlayer ¥¤¥Ù¥ó¥ÈϢư¤Î¼ÂÁõÎã

VideoPlayer ¥ê¥¹¥ÈÆ⤫¤é¥à¡¼¥Ó¡¼ºÆÀ¸¤Î¼ÂÁõÎã(ȯŸ)

AR ²èÁüÉÕ¤­¥ª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Î¼ÂÁõÎã

AR ¥ê¥¹¥ÈÆ⤫¤éÀ¸À®¤Î¼ÂÁõÎã(ȯŸ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥µ¥Ð¥¤¥Ð¡¼É÷)

private



¤³¤Î¥µ¥¤¥ÈÆâ¤ÎºîÉʤϥæ¥Ë¥Æ¥£¤Á¤ã¤ó¥é¥¤¥»¥ó¥¹¾ò¹à¤Î¸µ¤ËÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£

´ÉÍý¿Í/Éû´ÉÍý¿Í¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹