0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Unityで作るImmersive Audio環境

Posted at

ImmersiveAudioとは

Immersiveというのは、「没入感」という意味です。
つまり「イマーシブ オーディオ」とは「没入感の高いオーディオ」という意味になります。
一般的には、たくさんのスピーカーを配置したり、ヘッドフォンでの再生でも特殊な処理を行うことにより、360度、全方位から音が聞こえるコンテンツを「イマーシブ オーディオ」と呼んでいます。「立体音響」「3Dサラウンド」「Spacial Audio」など様々な呼び名がありますが、基本的に全て同義語と考えて間違いありません。

https://biz.musicecosystems.jp/blog/what-is-immersive/

using UnityEngine;

[RequireComponent(typeof(AudioSource))]
public class AudioDistanceControl : MonoBehaviour
{
    public AudioSource audioSource;
    public Transform listenerTransform;
    public float maxDistance = 10f;
    public float minDistance = 1f;
    [Range(0f, 1f)] public float maxVolume = 1f;

    void Update()
    {
        float distance = Vector3.Distance(listenerTransform.position, transform.position);

        if (distance < minDistance)
        {
            audioSource.volume = maxVolume;
        }
        else
        {
            audioSource.volume = maxVolume - Mathf.Clamp01((distance - minDistance) / (maxDistance - minDistance)) * maxVolume;
        }

        if (!audioSource.isPlaying && audioSource.volume > 0)
        {
            audioSource.Play();
        }
    }

    // ギズモを使用して最小距離と最大距離をエディタに表示
    void OnDrawGizmos()
    {
        // 最小距離を示すギズモ(青色)
        Gizmos.color = Color.blue;
        Gizmos.DrawWireSphere(transform.position, minDistance);

        // 最大距離を示すギズモ(赤色)
        Gizmos.color = Color.red;
        Gizmos.DrawWireSphere(transform.position, maxDistance);
    }
}
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?