视网膜MacBook上的Unity WebGL性能问题

问题描述

我开发了一个具有3d角色的WebGL Unity 3D应用程序,该角色可以在环境中导航(鼠标导航和WASD)并与某些对象进行交互。 在Windows上,一切都很棒,FPS为45-60,分辨率为1920 * 1xxx。 在Mac上,由于Retina,性能下降到13-17,分辨率为3300 * 2100(笔记本电脑的分辨率的两倍)。 我该如何处理? 任何帮助将不胜感激。谢谢!

解决方法

在Unity中,如果您转到“编辑”菜单>“项目设置”>“播放器|分辨率和演示:“显示分辨率”对话框。您可以更改程序的默认设置。

Here you can see the default ratio's your screen will be displayed in

This是一门有关统一性能优化的课程

有关更多信息,请访问link

或者Unity Desrciption本身。

,

好吧,如果您进入webGL,应该团结一致。因此: WebGL> WebGL Player设置>分辨率和演示文稿

您会找到这个screen

设置功能

默认画布宽度
设置WebGL canvas元素的宽度。

默认画布高度
设置WebGL canvas元素的高度。

在后台运行
启用此选项可让您的内容在画布或浏览器窗口失去焦点时继续运行。

,

我需要在html文件中添加JavaScript代码,以将DPI设置为1

,

感谢 Siba 的提示。虽然我不得不搜索一下如何在 2019.4 实际做到这一点。 以防万一有人偶然发现这一点,我在 UnityLoader.instantiate 之前用 JavaScript 做了这个: window.devicePixelRatio = 1;

如果您使用较新的 Unity 版本,此主题也可能有帮助: https://forum.unity.com/threads/webgl-retina-scaling.853144/