lsy666wfl 2024-05-21 22:00 采纳率: 100%
浏览 3
已结题

ue4点击actor转变ui

ue4想做一个UI点击actor只变ui文字
类似实验室步骤提示

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-05-21 22:01
    关注

    引自免费微信小程序:皆我百晓生

    在Unreal Engine 4(UE4)中,要实现点击Actor改变UI的文字,你需要完成以下几个步骤:

    1. 创建一个User Interface (UI)元素,例如Text Widget。
    2. 添加一个Event Blueprint用于处理点击事件。
    3. 在Event Blueprint中,创建一个公共变量用于存储文本信息。
    4. 当点击Actor时,更新UI上的文本。

    这里是一个详细的步骤指南:

    首先,确保你已经安装了Unreal Engine并打开一个项目。如果你还没有项目,可以创建一个新的空项目。

    步骤一:创建UI文本

    1. 在Content Browser中右键点击,选择"User Interface" -> "Text"。
    2. 给新创建的Text命名为"MyTextWidget"。
    3. 将Text拖拽到合适的位置,并调整大小。

    步骤二:创建Event Blueprint

    1. 在Content Browser中右键点击,选择"Blueprints" -> "Event Graph"。
    2. 命名为"MyEventGraph",然后按Enter创建。
    3. 右键点击Event Graph空白区域,选择"Add Event" -> "Begin Play"。
    4. 在右侧的Event Graph中双击Begin Play节点,输入一些初始文本,例如"Hello, World!",这将作为UI的初始文本。

    步骤三:添加点击事件监听

    1. 打开你的Actor蓝图,比如PlayerController或者其他承载交互的Actor。
    2. 右键点击Event Graph空白区域,选择"Add Event" -> "Input" -> "Mouse Click"。
    3. 双击鼠标点击事件,会自动创建一个Set Player Input Focus事件。
    4. 在右侧的Event Graph中,从Mouse Click事件拖出一条线到Set Player Input Focus事件上。

    步骤四:从Actor发送消息到Event Blueprint

    1. 在Actor蓝图中,右键点击空白区域,选择"Add Component" -> "Box Collision"。
    2. 在Actor蓝图中找到刚添加的Box Collision组件,右键点击它,选择"Event" -> "OnComponentBeginOverlap"。
    3. 双击OnComponentBeginOverlap事件,在右侧的Event Graph中添加一个Cast to AMyEventGraph节点(根据你的Event Blueprint名称进行替换)。
    4. 如果Cast成功,你会看到一个蓝色的连线,然后连接这个连线到你的Set Player Input Focus事件上。

    步骤五:在Event Blueprint中接收消息并更改文本

    1. 回到Event Blueprint,右键点击空白区域,选择"Add Variable" -> "Public String",命名为"TextToDisplay"。
    2. 在OnReceiveBeginOverlap事件中,添加一个Get All Actors of Class节点,输入你的Actor类名。
    3. 连接Get All Actors of Class节点的结果到一个For Each Actor节点。
    4. 在For Each Actor的事件图表内,添加一个Cast to AYourActorName节点(将YourActorName替换为你的Actor类名),然后从Cast结果连接到一个Set Text节点,将TextToDisplay变量设置为目标Actor的名称或其他信息。

    现在,当Actor被点击时,UI中的文本将会变为Actor的名称。你可以根据需要修改这个过程,让文本显示更复杂的提示信息。记住,所有的操作都要根据你的具体Actor和UI结构进行相应的调整。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 6月3日
  • 已采纳回答 5月26日
  • 创建了问题 5月21日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见