首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BabylonJS场景切换卡顿

BabylonJS场景切换卡顿
EN

Stack Overflow用户
提问于 2019-02-28 12:55:16
回答 1查看 292关注 0票数 0

Live Demo

我想在2个复杂的场景之间切换介绍动画。这两个场景都从.gltf或.babylon文件加载,并包含摄影机运动。

我遇到的问题是,当我从scene1切换到2时,在下一个场景动画开始之前会出现冻结/卡顿。渲染场景后,场景切换将照常进行。这可能很难发现,但第一次切换和随后的切换肯定是有区别的。

我试过在加载场景后立即使用scene2.render();,它有一点帮助,但它在尝试渲染两个场景时也会使第一个场景卡顿。我是不是漏掉了什么?我找不到一个在线效果很好的场景切换介绍的例子。只有摄像头开关,但那不是我想要的。

EN

回答 1

Stack Overflow用户

发布于 2019-03-01 05:13:13

这是因为需要编译第二个场景的着色器(因为它们可能不同于第一个场景中使用的着色器)。

Babylon.js v4将支持并行着色器编译,但这不会在所有浏览器上都可用。

最好的选择是预先强制编译:

代码语言:javascript
复制
scene1.meshes.forEach(mesh => {
            mesh.material.forceCompilation(mesh);
        });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54918653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档