UE4中UWidgetComponent可以将UMG转为3D界面放到场景中,操作与2D界面操作一样,但是在VR模式下通过手柄操作不能像鼠标一样点击,这时就要用到UWidgetInteractionComponent与3D界面交互。

1、新建一个UMG,命名为Widget3D,拖入一个Button和Image控件,如图

2、添加蓝图代码,在按钮的点击事件中切换Image的背景色

3、新建一个蓝图,添加Widget组件,并将属性中WidgetClass设置为Widget3D

4、在手柄所在的蓝图类中添加WidgetInteraction组件,附加到手柄所在的组件

5、可自行调节WidgetInteraction的属性值,其中需要根据控件远近调节InteractionDistance,改变操作距离。ShowDebug在非Shipping版中可以显示操作射线

6、在手柄扳机键事件中添加如下蓝图代码,这里的PressPointerKey和ReleasePointerKey用于模拟鼠标的按下和释放事件,相当于鼠标点击了控件

7、效果如下,当红色射线落在按钮上时扣动扳机键,上面的Image控件背景色会在红色和绿色间切换

参考https://docs.unrealengine.com/zh-CN/Engine/UMG/HowTo/InWorldWidgetInteraction/index.html

UE4在VR模式下使用3D控件相关推荐

  1. wmp控件_始终在WMP 12上的“正在播放”模式下显示播放控件

    wmp控件 When your playing music or a video in Windows Media Player in Windows 7, you can toggle the pl ...

  2. MVC模式下My97DatePicker日期控件引用注意事项

    My97DatePicker日期控件之前在用webform模式开发的时候,只要 <script language="javascript" type="text/j ...

  3. UE4如何提高在VR模式下的清晰度

    UE4如何提高在VR模式下的清晰度. 1.在编辑状态下提高分辨率:在VR模式预览的窗口按~打开控制台输入:r.Screenpercentage 200 即可(把分辨率提升为2倍). 2.如何在打包后也 ...

  4. 创建 3D 控件_2.设置角色蓝图

    步骤 在 内容浏览器 中单击 添加新内容 按钮并选择 蓝图类. 在弹出的菜单中选择 角色,然后将其命名为"3D_Menu"或者类似的名称. 双击 新蓝图,在蓝图编辑器中打开它. 单 ...

  5. Android 解决下拉刷新控件和ScrollVIew的滑动冲突问题。

    最近项目要实现ScrollView中嵌套广告轮播图+RecyleView卡片布局,并且RecyleView按照header和内容的排列样式,因为RecyleView的可扩展性很强,所以我毫无疑问的选择 ...

  6. android禁止下拉刷新,Android开发之无痕过渡下拉刷新控件的实现思路详解

    相信大家已经对下拉刷新熟悉得不能再熟悉了,市面上的下拉刷新琳琅满目,然而有很多在我看来略有缺陷,接下来我将说明一下存在的缺陷问题,然后提供一种思路来解决这一缺陷,废话不多说!往下看嘞! 1.市面一些下 ...

  7. 一种无痕过渡下拉刷新控件的实现思路

    一种无痕过渡下拉刷新控件的实现思路 相信大家已经对下拉刷新熟悉得不能再熟悉了,市面上的下拉刷新琳琅满目,然而有很多在我看来略有缺陷,接下来我将说明一下存在的缺陷问题,然后提供一种思路来解决这一缺陷,废 ...

  8. android google 下拉刷新 csdn,android SwipeRefreshLayout google官方下拉刷新控件

    下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...

  9. Android SwipeRefreshLayout 官方下拉刷新控件介绍

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24521483 下面App基本都有下拉刷新的功能,以前基本都使用XListView ...

  10. android 下拉刷新 组件,android系统自带下拉刷新控件的实现

    android系统自带的下拉刷新控件SwipeRefreshLayout位于android.support.v4.widget包下,实现步骤如下: 1.在布局文件中添加该控件,该控件一般作为父控件,而 ...

最新文章

  1. Oracle CDC (Change Data Capture)更新数据捕获——概述
  2. 小米今日正式进军越南市场 借助合作方铺渠道分销
  3. catia 工厂设计_SolidWorks、creo、UG哪个更适合机械设计?
  4. ssh跳板登陆太麻烦,使用expect每次自动登录 利用expect 模拟键盘动作,在闲置时间之内模拟地给个键盘响应...
  5. visual c++ for .net(新语法)
  6. 透明大页相关内核参数_Linux7.4 关闭透明大页
  7. 驾驶证损毁、驾驶人信息变更的如何换证
  8. oracle 会话实例,返璞归真:Oracle实例级别和会话级别的参数设置辨析
  9. Mozilla Firefox 10.0 beta4 发布
  10. 【干货】同步与互斥的失败例子
  11. 现代软件工程 第二章 【个人技术】 练习与讨论
  12. mysql高级用法(函数)
  13. 他曾一举击败英伟达,却因坚持研发背负骂名
  14. Swift学习笔记 In-out形参
  15. 如何在Mac上组合歌曲?
  16. RTR/SLA 在多ISP环境下下的应用--已经更新,切换后线路恢复时,已能自动恢复
  17. STM32中使用PS2手柄
  18. 斯特灵公式求阶乘c语言,斯特林公式求阶乘
  19. 软件结构体系实验作业一——使用状态模式模拟会员积分系统
  20. 堡垒机(运维审计系统)的基本原理与部署方式

热门文章

  1. web前端效率提升之禁用缓存-遁地龙卷风
  2. SQL最全基础教程(有本事别看啊!)
  3. newifi3 高恪魔改_新路由3高恪newifi3固件-支持512M
  4. tsplay 打流,EasyICE测试
  5. 计算机及网络保密检查记录表,南京航空航天大学涉密计算机保密检查记录表.doc...
  6. 用java下载音频文件_喜马拉雅FM下载的音频转换为正常文件的JAVA实现
  7. 微信小程序 Video API
  8. 手把手教你学51单片机
  9. 最最简单的一个爬虫代码
  10. matlab单机无限大系统_单机无穷大系统暂态仿真(完整).docx