当前位置: 代码迷 >> JavaScript >> 设备的三种js渐进增强
  详细解决方案

设备的三种js渐进增强

热度:50   发布时间:2023-06-05 10:33:27.0

是否有人对设备上的三个js项目的逐步增强有任何建议? 我有一个带有大量后期处理的应用程序,这在现代设备上还不错,但在较旧/便宜的手机上却有点慢。 逐步为可以处理的设备启用后层会很好。 是否有合理可靠的方法来衡量绩效以实现自动化?

欢迎来到异构设备(PC,移动设备或跨平台控制台)上实时游戏开发的日常世界……

您可能会考虑只保留一份常见的硬件配置文件列表。 尽管手机种类繁多,但实际上大多数手机都使用了很少的不同GPU架构。 例如,这是Android上的Chrome使用的方法,用于确定哪些设备可与WebGL配合使用,哪些不能与WebGL配合使用。

我承认这似乎很粗糙, 应该有一些干净的方法来确定哪些设备在您的代码上可以很好地执行,但是坦率地说,对于不同的设备它会有所不同,这就是为什么像NVIDIA这样的公司都有测试实验室根据产品评估性能。各种各样的硬件配置,然后它们仍然最终为单个游戏标题生成某种性能选项表,而不是构建一些可以从第一原理中确定性能的功能。

几年前,我为一家游戏公司设计了一个系统,在该公司工作,该系统将为每个用户测量一系列性能参数,然后尝试通过回归(“机器学习”)来确定THAT的最佳性能概况用户使用他们的机器,因为即使硬件选择范围很窄,您也永远无法分辨播放器计算机上正在发生多少其他事情。 他们在运行YouTube和团队演讲吗?谁知道后台还有什么? 即使在大型测试实验室中,也很难预测家庭情况。 因此,自适应方法可能是最好的方法,但是即使如此,它仍然需要大量的数字,对于使用THREE.js的基于JavaScript的Web应用程序来说,今天可能不是一个很好的选择。 因此,如果您想解决此问题,请选择策略(拖放合成层?选择更简单的几何图形?更少或更简单的着色器?取决于您的应用!),然后尝试一下(每次体验都会胜过猜测!),然后开始向公众部署。 如果您的用户允许,请要求他们存储cookie。 但是,如果您真的希望它可以正常工作,则需要一个漫长的迭代过程。

  相关解决方案