我目前正在编写一个简单的3d声音系统,但我被卡住了。在3d空间中获取声音的“声像”
问题是: 我在空间中有一个点,声音来自哪里,当然我有听众,他的点和方向。
距离不是问题,它完美的工作,但是当我想要计算声音的平移(多少左/右),那么这是一场完全的灾难。
我已经在网上搜索过它,但是我找不到任何可用的解决方案,然后我试着用三角形和东西来自己计算它,但是你不想知道结果是什么。
我不会显示代码,因为我已经写了三次,每个版本都不可用。
我不想让你一定给我代码,我会很高兴,如果我得到一个数学解决方案。如果声音是来自相机的左侧或右侧,我想知道。
我在C++ 11中工作,声音库是Audiere。
编辑: 感谢willywonkadailyblah我想出了一些解决方案。你可以在这里看到: Get x position of sound from camera
与点积我可以得到三角形的cosα,然后用一个简单的pitagoras定理我可以得到距离(A)。
最后,我将听到的距离与距离分开,并乘以声音距离。
你最好展示你的最佳尝试,并解释具体症状是什么以及你的确切目标是什么。有简单的方法和复杂的方法(具有花哨的头部响应功能)。 –