登录页面
通过基本UI控件和可视化脚本实现一个项目中简单的登录页面,可以通过点击或使用快捷键的方式交互,点击登录可以切换到3D场景,点击注册可以跳转到一个IdeaXR官网。
场景搭建
界面搭建
创建一个2D场景,使用默认的UI节点进行界面搭建,节点类型如下图所示
提示
布局容器不是必需的,也可以通过手动进行控件的布局,但往往需要花费更多的时间。因此建议使用容器进行各种界面的自动布局,详情请参阅容器。
场景节点树结构如下
属性设置
单行文本框
启用密码输入框的
机密
属性,密码会加密显示复选框
将学生选择、老师选择管理员三个复选框设置为同一个
组
(组的设置和作用参考按钮),设置后三个复选框样式会变为单选框的样式启用学生选择的
按下
属性,作为三个复选框中的默认选项链接按钮
将注册账号按钮的
聚焦模式
属性改为全部
,这样可以通过键盘快捷键快速切换到此按钮
场景运行效果如下:
交互制作
在根节点上创建一个可视化脚本,基于这个脚本创建以下内容:
判断账号密码
当按下登录按钮时,判输入的用户名和密码是否分别为"admin"、“123456”,如果正确则打印一个“登录成功”消息,否则打印“登录失败”,实现方法如下:
将登录按钮的
pressed()
信号连接到脚本中使用Ctrl+左键将用户名和密码输入框的
文本
属性拖入脚本中添加判断逻辑(逻辑单元通过搜索添加):当用户名等于“admin”且密码等于“123456”时,输出字符串“登录成功”,否则输出“登录失败”(输出字符串功能从交互编辑器左侧的”逻辑单元“中拖出)
登录后跳转场景
登录后的功能一般为场景跳转。跳转场景的实现方法如下:
从可视化脚本中的逻辑单元拖入一个切换场景
节点并连接,指定场景路径为默认场景,替换到之前做的判断逻辑上。如下图所示
运行后,输入用户名为”admin“,密码为”123456“,然后点击登录按钮即可切换到默认场景
打开外部链接
将注册按钮的
pressed()
信号连接到脚本中,从可视化脚本中通过搜索创建一个Engine Singleton
节点,该节点提供了一些以单例形式存在的全局接口,点击该节点,在属性中将其设置为OS
单例通过Ctrl+左键拖出OS单例的属性列表,搜索并创建
shell_open()
方法,将节点的url路径设为http://ideavr.top提示
shell_open
可用于打开网页或其他应用程序运行场景点击注册按钮,会使用系统默认浏览器跳转到IdeaXR官网,效果如下: