1

アセットを .play() できますが、次の構造のエンティティはできません。

 <a-scene>
    <a-assets>
        <audio id="assetNarration" src="snd/dt_narration_1.mp3" preload="auto" autoplay="false">
        <video id="video" src="video/Open_Sky.mp4" autoplay="false" loop></video>
    </a-assets>
        <a-sound id="entityNarration" src="#assetNarration" autoplay="false" position="0 5 0" volume="0.5"></a-sound>
        <a-videosphere id="v1" src="#video" autoplay="false" rotation="0 90 0"></a-videosphere>
 </a-scene>

これにより、次のようにトリガーできます。

var nar = document.querySelector('#assetNarration');
var vid = document.querySelector('#video');
nar.play();
vid.play();

..だがしかし

var nar = document.querySelector('#entityNarration');
var vid = document.querySelector('#v1');
nar.play();
vid.play();

これとの主な違いは、エンティティにボリュームと位置の値を設定していることです。これらは、アセットで直接 .play() をトリガーすると無視されます。

4

1 に答える 1

1

おそらく試してみてくださいel.components.sound.playSound()。それ以外の場合は、インライン URL を直接渡してみてください。これは、もう少し柔軟なオーディオ バッファーを作成するためです。

于 2016-10-03T22:51:42.657 に答える