跳到主要内容

登录页面

通过基本UI控件和可视化脚本实现一个项目中简单的登录页面,可以通过点击或使用快捷键的方式交互,点击登录可以切换到3D场景,点击注册可以跳转到一个IdeaXR官网。

场景搭建

界面搭建

创建一个2D场景,使用默认的UI节点进行界面搭建,节点类型如下图所示

提示

布局容器不是必需的,也可以通过手动进行控件的布局,但往往需要花费更多的时间。因此建议使用容器进行各种界面的自动布局,详情请参阅容器

场景节点树结构如下

属性设置

  • 单行文本框

    启用密码输入框的机密属性,密码会加密显示

  • 复选框

    将学生选择、老师选择管理员三个复选框设置为同一个(组的设置和作用参考按钮),设置后三个复选框样式会变为单选框的样式

    启用学生选择的按下属性,作为三个复选框中的默认选项

  • 链接按钮

    将注册账号按钮的聚焦模式属性改为全部,这样可以通过键盘快捷键快速切换到此按钮

场景运行效果如下:

交互制作

在根节点上创建一个可视化脚本,基于这个脚本创建以下内容:

判断账号密码

当按下登录按钮时,判输入的用户名和密码是否分别为"admin"、“123456”,如果正确则打印一个“登录成功”消息,否则打印“登录失败”,实现方法如下:

  1. 将登录按钮的pressed()信号连接到脚本中

  2. 使用Ctrl+左键将用户名和密码输入框的文本属性拖入脚本中

  3. 添加判断逻辑(逻辑单元通过搜索添加):当用户名等于“admin”且密码等于“123456”时,输出字符串“登录成功”,否则输出“登录失败”(输出字符串功能从交互编辑器左侧的”逻辑单元“中拖出)

登录后跳转场景

登录后的功能一般为场景跳转。跳转场景的实现方法如下:

从可视化脚本中的逻辑单元拖入一个切换场景节点并连接,指定场景路径为默认场景,替换到之前做的判断逻辑上。如下图所示

运行后,输入用户名为”admin“,密码为”123456“,然后点击登录按钮即可切换到默认场景

打开外部链接

  1. 将注册按钮的pressed()信号连接到脚本中,从可视化脚本中通过搜索创建一个Engine Singleton节点,该节点提供了一些以单例形式存在的全局接口,点击该节点,在属性中将其设置为OS单例

  2. 通过Ctrl+左键拖出OS单例的属性列表,搜索并创建shell_open()方法,将节点的url路径设为http://ideavr.top

    提示

    shell_open可用于打开网页或其他应用程序

  3. 运行场景点击注册按钮,会使用系统默认浏览器跳转到IdeaXR官网,效果如下: