我正在使用 python3 创建一个声音游戏,您可以在 2d 空间中走动,并在走动时听到空间中的物体。 我已经弄清楚如何使用 Supercollider 的 Ambisonics 工具包来空间化声音,其中 0 是前面,-pi 是逆时针后面,pi 是相对于玩家的视点顺时针后面。
我已经弄清楚如何计算两个向量之间的角度,但我很难理解如何通过了解玩家和物体的位置以及玩家的视角来找到我需要的两个向量。
有人可以帮我吗?
如果您有玩家位置
(x0, y0)
和物体位置 (x1, y1)
以及玩家面向角度 theta
(角度按顺时针方向测量),那么
<x1 - x0, y1 - y0>
<cos(theta), -sin(theta)>