Javascript 设备的三个js渐进增强

Javascript 设备的三个js渐进增强,javascript,three.js,Javascript,Three.js,有人对设备上的三个js项目的渐进增强有什么建议吗? 我有一个带有大量后期处理的应用程序,在现代设备上很好,但在老式/便宜的手机上有点慢。为能够处理它的设备逐步启用post层会很好。 是否有一种合理可靠的方法来衡量性能,从而实现自动化?欢迎来到异类设备(PC、手机或跨平台控制台)上实时游戏开发的日常世界 您可以考虑简单地保存普通硬件配置文件的列表。虽然手机有很多种,但实际上在大多数手机中使用的GPU架构很少。例如,Android上的Chrome使用这种方法来确定哪些设备可以使用WebGL,哪些设备

有人对设备上的三个js项目的渐进增强有什么建议吗? 我有一个带有大量后期处理的应用程序,在现代设备上很好,但在老式/便宜的手机上有点慢。为能够处理它的设备逐步启用post层会很好。
是否有一种合理可靠的方法来衡量性能,从而实现自动化?

欢迎来到异类设备(PC、手机或跨平台控制台)上实时游戏开发的日常世界

您可以考虑简单地保存普通硬件配置文件的列表。虽然手机有很多种,但实际上在大多数手机中使用的GPU架构很少。例如,Android上的Chrome使用这种方法来确定哪些设备可以使用WebGL,哪些设备不能使用WebGL

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


几年前,我为一家游戏公司设计了一个系统,我在该公司工作,该系统可以测量每个用户的一系列性能参数,并尝试通过回归(“机器学习”)确定用户在其机器上的最佳性能配置文件,因为即使硬件选择范围很窄,您仍然无法知道玩家的计算机上还有多少其他内容。他们在运行youtube和teamspeak吗?谁知道后台还有什么?即使在大型测试实验室中,也很难预测家中的情况。因此,自适应方法可能是最好的,但即使如此,它在数值上还是非常密集的,并且(今天)可能不适合使用THREE.js的基于javascript的web应用程序。因此,如果你想解决这个问题,请选择你的策略(删除合成层?选择更简单的几何体?更少或更简单的着色器?取决于你的应用程序!),自己尝试一下(每次体验都会胜过猜测!),然后开始向公众部署。如果您的用户允许,请他们存储cookie。但是,如果你真的想让它工作的话,就需要一个漫长的迭代过程。

欢迎来到异类设备(PC、手机或跨平台控制台)上实时游戏开发的日常世界

您可以考虑简单地保存普通硬件配置文件的列表。虽然手机有很多种,但实际上在大多数手机中使用的GPU架构很少。例如,Android上的Chrome使用这种方法来确定哪些设备可以使用WebGL,哪些设备不能使用WebGL

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


几年前,我为一家游戏公司设计了一个系统,我在该公司工作,该系统可以测量每个用户的一系列性能参数,并尝试通过回归(“机器学习”)确定用户在其机器上的最佳性能配置文件,因为即使硬件选择范围很窄,您仍然无法知道玩家的计算机上还有多少其他内容。他们在运行youtube和teamspeak吗?谁知道后台还有什么?即使在大型测试实验室中,也很难预测家中的情况。因此,自适应方法可能是最好的,但即使如此,它在数值上还是非常密集的,并且(今天)可能不适合使用THREE.js的基于javascript的web应用程序。因此,如果你想解决这个问题,请选择你的策略(删除合成层?选择更简单的几何体?更少或更简单的着色器?取决于你的应用程序!),自己尝试一下(每次体验都会胜过猜测!),然后开始向公众部署。如果您的用户允许,请他们存储cookie。但是,如果你真的想让它工作,那就需要一个漫长的迭代过程。

我最近也在考虑这个问题。我想看fps,并根据fps在不同模式之间切换。但我还没有真正尝试实现任何东西。我最近也在考虑这个问题。我想看fps,并根据fps在不同模式之间切换。但我还没有真正尝试实现任何东西。