Saya juga telah memikirkan hal ini. Aku merasakan perhatian utama (dalam hal realisme / kinerja perdagangan-off) adalah bahwa spasial telinga Anda lebih rendah ke mata Anda - dan cukup mudah menerima sesuatu yang mungkin tidak serealistis mata Anda akan membutuhkan. Ada peluang yang sangat bagus untuk mencoba memodelkan suara dengan sempurna di lingkungan lokal secara berlebihan - EAX mungkin 'cukup baik'.
Dalam lingkungan tertutup (misalnya Gempa), saya pertama-tama akan menghitung dua properti tentang setiap kamar: 'transferrance' dan perendaman:
Transferrance akan menunjukkan bagaimana suara akan dipengaruhi oleh perjalanan melalui ruangan ini dan kemungkinan besar akan dihitung menuju EQ parametrik (idealnya Anda akan menambahkan gema / reverb dari setiap kamar, tetapi chip EAX Anda mungkin tidak memiliki bandwidth sebanyak ini). EQ parametrik juga pada akhirnya akan mensimulasikan redaman suara.
Perendaman akan dihitung dengan membagi ruangan menjadi sembilan kubus (mungkin, bahkan hanya satu mungkin cukup bagus) dan menghitung properti suara lokal dari perspektif itu. Parameter ini akan digunakan di lingkungan EAX.
Akhirnya setiap kamar Anda akan dihubungkan oleh grafik, di mana setiap titik dalam grafik adalah portal yang menghubungkan setiap kamar.
Ketika suara dipicu Anda akan mengisi banjir (tidak ada pencarian A *) dan melacak perpindahan dan jarak yang ditempuh. Ketika suara mencapai pemain Anda akan mengantri untuk bermain di beberapa titik di masa depan; berdasarkan jarak yang ditempuh. Anda mungkin melacak jumlah titik grafik yang dilewati dan akhirnya 'menyisihkan' suara (dengan kata lain, pengisian banjir terus menerus). Anda mungkin harus menggunakan CUDA untuk melakukan ini karena bisa membuat CPU terikat.
Ketika sebuah suara diputar, Anda akan menggunakan API suara 3D (OpenAL) untuk dan meletakkannya di portal tempat ia masuk, Anda kemudian akan mencari tahu dari sembilan kubus mana pemain saat ini berada dan menerapkan lingkungan EAX itu.
Yang rapi di sini adalah bahwa jika lingkungan Anda cukup kompleks Anda akan mendapatkan gema 'global' gratis dan pemain akan merasakan suara datang dari arah yang benar; dan jika Anda memperbaiki lingkungan EAX semoga efeknya cukup meyakinkan sehingga otak akan menerimanya.