【UE4】【UI】在三维世界中和UI交互
首先。
VR环境下不可能也不被允许在头盔屏幕上出现UI并进行交互。
那为了能愉快的搞事情,必然需要有什么途径在虚拟环境中实现UI及其交互。
在开始之前,请先看以下官方文档和教程。
第一篇:创建 3D 控件交互
具体思路是这样。
为了能在3D世界内显示UI,那么这个“UI”必然是Actor。在UE4中我们能通过控件蓝图创建一系列UI。那如何让这两个关联呢?
此时就要引入两个很重要的组件。
一是Widget。用来作为UI的载体。
二是WidgetInteraction。是一条射线,用来和UI交互。
首先看Widget。
新建一个Actor>>添加组件Widget>>Widget Class 选择我们要实现的UI控件蓝图。
之后根据实际需要设置下Draw Size的尺寸。然后将这个Actor丢到世界中去,就能看到UI了。
已经有了UI,但现在我们只能看看,还不能交互。
为了达成这个目的,需要在手柄上绑定另一个组件WidgetInteraction。
其实本质很简单,就是一条射线碰撞检测。
关键在这里。
press pointer key这个函数即是使我们按下扳机模拟鼠标左键按下的方法。
详细的见这里。