我有一个带有动画效果的AFrame网页。背景音乐。页面加载后动画即开始播放,但音乐需要一段时间才能加载。有没有像场景(或动画)那样等待/睡眠的方式,这样我的动画才能在音乐完全加载后开始。
答案 0 :(得分:0)
您必须将资源放在a-assets
元素中,以便在加载之前阻止渲染。您可以在此处找到示例:https://github.com/aframevr/aframe/blob/master/examples/showcase/anime-UI/index.html#L14
答案 1 :(得分:0)
https://aframe.io/docs/0.2.0/core/asset-management-system.html
将资源(img
,video
,audio
,a-asset-item
等媒体元素)放入<a-assets>
下的<a-scene>
:
<a-scene timeout="5000">
<a-assets>
<img id="myImg" crossorigin src="myimg.jpg">
<video id="myVideo autoplay crossorigin src="myvideo.mp4"></video>
</a-assets>
<a-video src="#myVideo"></a-video>
</a-scene>
场景将阻止资源加载时的初始化。但是, timeout 默认为3秒,无论如何场景都将开始加载。这可以使用timeout
属性进行配置,如上所示。
如果您想绝对阻止,可以将timeout
设置为非常高的数量。
使用<a-assets>
还可以提供浏览器缓存和各种媒体元素属性的配置,例如crossorigin
,autoplay
,preload
。