Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 如何在统一中减少虚拟现实游戏的滞后_Unity3d_Google Cardboard_Virtual Reality - Fatal编程技术网

Unity3d 如何在统一中减少虚拟现实游戏的滞后

Unity3d 如何在统一中减少虚拟现实游戏的滞后,unity3d,google-cardboard,virtual-reality,Unity3d,Google Cardboard,Virtual Reality,我一直在用Unity3d为VR制作游戏。它只有低多边形模型,文件大小小于40MB,但在手机上玩游戏时仍然落后。。请建议如何提高性能 提前感谢您。为了提高移动虚拟现实的性能,您必须尽可能优化一切,您应该记住以下一些变量: 图形侧 -场景中的多边形数 -你有多少光源 编程端 -你的代码需要做多少工作,效率如何 编程部分可以包括物理系统中的问题,也可以包括一些逻辑问题,这些逻辑问题可能会由于较高的计算量而降低整体性能 我的建议是了解unity提供的功能,事实上,您可以观察代码的工作量以及瓶颈在哪里。这

我一直在用Unity3d为VR制作游戏。它只有低多边形模型,文件大小小于40MB,但在手机上玩游戏时仍然落后。。请建议如何提高性能


提前感谢您。

为了提高移动虚拟现实的性能,您必须尽可能优化一切,您应该记住以下一些变量:

图形侧 -场景中的多边形数 -你有多少光源

编程端 -你的代码需要做多少工作,效率如何

编程部分可以包括物理系统中的问题,也可以包括一些逻辑问题,这些逻辑问题可能会由于较高的计算量而降低整体性能

我的建议是了解unity提供的功能,事实上,您可以观察代码的工作量以及瓶颈在哪里。这也很有用

当然,解决方案可以是按照设计标准来实现代码,比如软件和软件体系结构(取决于项目的大小)


我希望它能对你有用

我从开发和推出虚拟现实游戏中发现了以下一些问题

  • 多边形的数量通常是您第一个检查的,即使您的模型是低多边形。例如,我看了unity商店中的Synty模型,其中一些袋子超过1k,角色模型超过7k。如果您希望每个眼睛的目标最大为50000,这将严重减少对象的数量
对于某些模型,可以使用blender和decimate工具轻松减少多边形数。从那以后,我将使用LOD来根据距离进一步减少它们的数量

  • 使用遮挡剔除(仅限专业版)
  • 将相机距离设置为100,而不是默认值
  • 使用移动着色器并小心使用一些标准着色器,因为它们非常昂贵。此外,由于透支,透明着色器将变得昂贵
  • 对纹理进行批处理,并尽可能使其保持静态
  • 不要在灯光上使用动态阴影,而是烘焙灯光
  • 尽量避免使用物理,因为这会变得昂贵,而使用光线投射来触发事件或射击武器
  • 经常运行探查器并检查是否存在任何瓶颈(仅限专业版)
  • 减少粒子效果及其值的计数
  • 角色骨骼也可能导致问题,因此请尽可能多地移除
  • 还有您的代码要查看,如Manu所述
  • 在inspector中将“质量”设置设置为“低”,以获得最佳性能
你能提供游戏场景的截图吗

我希望这是有道理的。
祝你好运

这个问题还没有完成。我用谷歌纸板和Unity开发了虚拟现实游戏。我没有落后。我认为你应该通过改变设备或者优化代码来测试你的游戏。降低对象质量可能是您可以共享代码(如果可以)以获得具体建议的一种方式