我正在使用 THREEjs 和 webvr-boilerplate 开发游戏。我正在为如何正确渲染始终保持在场景顶部的 HUD(分数、距离、通电等)而苦苦挣扎。我试图拥有一个平面(具有从隐藏的画布元素引入的纹理),但将其放置在空间中证明很困难,因为我无法匹配正确的深度。
请问有什么线索吗?:)
我正在使用 THREEjs 和 webvr-boilerplate 开发游戏。我正在为如何正确渲染始终保持在场景顶部的 HUD(分数、距离、通电等)而苦苦挣扎。我试图拥有一个平面(具有从隐藏的画布元素引入的纹理),但将其放置在空间中证明很困难,因为我无法匹配正确的深度。
请问有什么线索吗?:)
好吧,你不应该有一个经典的 HUD,VR 不能那样工作。
您正在寻找一种称为叙事或空间 UI 的东西 - 即分数和其他图标在场景空间中以固定位置或距离呈现为几何图形(这个称为空间 UI)。为获得最佳效果,请在模仿真实显示的某些游戏对象上绘制信息,例如汽车仪表板上的燃油表或枪上可见的剩余子弹(这称为剧情 UI)。
Unity 制作了一个很好的页面来描述这些概念。
我专门为 WebVR 和 THREE.js 项目创建了一个性能统计 HUD。 https://github.com/Sean-Bradley/StatsVR
虽然默认设置显示特定信息,但您可以对其进行修改以显示自定义图形和其他数据。
如果您不相信我,请查看
StatVR视频教程。