2D应用大小在VR系统中的显示问题

2D应用大小在VR系统中的显示问题

💡 原文中文,约3700字,阅读约需9分钟。
📝

内容提要

VR系统中显示2D应用的问题主要涉及分辨率和DPI。解决方法是根据调用者的身份返回正确的DisplayInfo给用户。获取Density的方法也需要进行拦截,以确保显示正常。

🎯

关键要点

  • 在 VR 系统中,显示 2D 应用主要通过 VirtualDisplay 方式,确保正常显示是基本功能。
  • VR 眼镜的分辨率通常很高,显示 2D 应用时需要保持正常的分辨率和 DPI。
  • 建议将分辨率设置为 1920*1080 或更小,以避免影响 Unity 的纹理大小。
  • DPI 的计算需要考虑屏幕大小,推荐使用 4.95 英寸的常见屏幕进行计算。
  • 获取屏幕信息时,直接使用主屏幕的大小可能导致显示不正常,需要根据调用者身份返回正确的 DisplayInfo。
  • 在获取屏幕宽高时,需指定 DisplayId,避免使用默认的主屏幕信息。
  • 获取 Density 的方法需要拦截,以确保根据正确的 Context 获取屏幕信息。
  • 在 Zygote 启动时获取资源信息时,需注意 binder 无法使用的情况,需加判断。
➡️

继续阅读