我阅读了source关于负责渲染场景的场景实体,但我没有找到任何关于停止渲染的事情。
问题:有没有办法停止渲染?
答案 0 :(得分:0)
我不确定您是否可以完全停止渲染,但是您可以暂停特定实体或场景:
https://aframe.io/docs/0.7.0/core/entity.html#pause
这是一个演示,它等待场景加载,然后调用场景中的暂停功能,暂停场景中的所有组件和实体。
https://glitch.com/edit/#!/a-frame-pause-scene-on-load
<a-scene>
<a-node id="waitOnMe"></a-node>
<a-box position="-1 0.5 -3" rotation="0 45 0" color="#4CC3D9" shadow>
<a-animation attribute="rotation"
dur="10000"
fill="forwards"
to="0 360 0"
repeat="indefinite"></a-animation>
</a-box>
<a-sphere position="0 1.25 -5" radius="1.25" color="#EF2D5E" shadow></a-sphere>
<a-cylinder position="1 0.75 -3" radius="0.5" height="1.5" color="#FFC65D" shadow></a-cylinder>
<a-plane position="0 0 -4" rotation="-90 0 0" width="4" height="4" color="#7BC8A4" shadow></a-plane>
<a-sky color="#ECECEC"></a-sky>
</a-scene>
注意:我添加了一个a-node元素,以保证它在页面末尾捕获load事件。
然后js暂停:
<script>
var scene = document.querySelector('a-scene')
scene.addEventListener('loaded', function () {
scene.pause();
});
document.getElementById('waitOnMe').emit('loaded');
</script>
有关等待加载的相关信息,请访问: https://stackoverflow.com/a/47363072/8005106