我正在尝试创建一个通过设备麦克风对某些音高做出响应的游戏。但是团结不支持这样的事情。但是,他们可以使用microphone设备记录您的声音。

var aud = GetComponent.<AudioSource>();
aud.clip = Microphone.Start("Built-in Microphone", true, 10, 44100);

是否有可能使用aud.pitch作为输入来移动刚体而无需记录,而只是实时获取输入,例如
ball.velocity.y = jumpHeight * aud.pitch; // move up

最佳答案

我相信音调只是您可以修改以更改音频源的默认值。我怀疑它实际上在播放声音的每一帧时都会检测到音高值。但是,您可以使用.NET库,例如Vocalyz

10-04 17:16