Я создал SCNNode и добавил к нему аудио.
Это монофонический звук.Все настроено правильно.
Он работает как Spatial Audio, это не проблема.
Проблема в том, что когда я подхожу ближе или далеко, он едва меняет громкость.Я знаю, что это изменится, если я уйду очень-очень далеко, но это не похоже на то, что Apple продемонстрировала здесь:
https://youtu.be/d9kb1LfNNU4?t=23
В некоторых других играх громкость звука действительно меняется на расстоянии одного шага.
С моим, с одним шагом вы даже не можете сказать, громкость изменилась.Вам нужно как минимум 4 шага.
Кто-нибудь знает, почему?
Код ниже:
SCNNode *audioNode = [[SCNNode alloc] init];
SCNAudioSource *audioSource = [[SCNAudioSource alloc] initWithFileNamed:audioFileName];
audioSource.loops = YES;
[audioSource load];
audioSource.volume = 0.05; // <-- i used different values. won't change much either
audioSource.positional = YES;
//audioSource.shouldStream = NO; // <-- makes no difference
[audioNode addAudioPlayer:[SCNAudioPlayer audioPlayerWithSource:audioSource]];
[audioNode runAction:[SCNAction playAudioSource:audioSource waitForCompletion:NO] completionHandler:nil];
[massNode addChildNode:audioNode];
Может быть, масштаб узлов?
вся сцена размером около 4 футов.
Когда я добавляю объект, я обычно масштабирую его до 0,005 (в противном случае он становится слишком большим).Но я также попробовал использовать тот файл, который уже был подходящего размера из файла .scn.
Это ни на что не должно повлиять, поскольку в результате получается сцена размером с журнальный столик, и я хорошо вижу объекты.