当前位置: 首页 > news >正文

UE4 组件 (对话组件)

制作一个可以生成对话气泡,显示对话台词的简单组件。这个组件要的变量:台词(外部传入)。功能:开始对话(生成气泡UI) ,结束对话。

一、对话组件创建

二、开始对话事件

1、注意这里获取的是 owner(拥有者) ,组件可能挂到随意对象上。因为这个对象不固定,所以不能获取玩家角色或者第三人称角色。     按类添加组件

2.这里1添加的组件时widget组件,是动态生成的,不是和bpc_talk一样手动挂上的。生成后对象就有了widget组件,但是只是一个占位符,里面是空的,需要4给它赋予控件。 这里设置的是这个组件其他属性(显示空间、碰撞、位置)

3.创建UI气泡控件(这个控件要放入控件(widget)组件中去的),它要台词信息,所以生成时候作为接口暴露出来。  这里Owning actor也是自己创建并暴露的接口。Owning Player则是节点默认自带的。

4.控件对象赋予控件组件。

三、结束对话事件

询问之前创建的控件组件是否有效,并设置为空。

四、UI控件制作

1.前端

按钮在前,覆层,文本和背景。文本换行要自动包裹文本,并且文本变量化。

2.后端

变量创建:按钮用于点击文本框切换下一句台词。 剧本由外部台词传入,num表示剧本语句索引。Owning actor表示拥有者,由外部导入。因为这个UI控件生成时并没任何拥有者,是后面把它作为了控件组件的控件实体。它无法像bpc_talk一样获取到拥有者。需要外部传入。

UI显示时,默认显示第一句话,人物无法接受输入,只有UI能响应输入,显示鼠标。

给按钮添加单击事件,索引加1,显示下一句台词。索引超过剧本长度时代表台词说完,需要结束对话。这里这个控件并不是其他控件的子项,所以不是用remove from parent移除,而是通过调用之前组件的 结束对话事件。所以这里要通过拥有者找到组件,再调用组件方法。输入和鼠标恢复。

五、对象挂组件

1.挂上组件

2.创建剧本台词

3.调用组件方法。 注意开始对话前,要先退出之前的对话。

相关文章:

  • 使用 dynamic-datasource-spring-boot-starter 实现多数据源动态切换
  • day21-API(算法,lambda,练习)
  • 工作学习笔记:HarmonyOS 核心术语速查表(v14 实战版)
  • mapset
  • spring-ai
  • 基于自监督三维语义表示学习的视觉语言导航
  • linux系统下openwebui重启并使用本地模型(vllm或其他)
  • 江科大51单片机笔记【10】蜂鸣器播放提示器音乐(下)
  • 【无标题】四色拓扑模型与宇宙历史重构的猜想框架
  • 第4章 Function 语意学1: Member的各种调用方式
  • nginx配置反向代理服务器,实现在https网站中请求http资源
  • Redis数据结构,渐进式遍历,数据库管理
  • Ubuntu20.04本地配置IsaacGym Preview 4的G1训练环境(二):训练与推理
  • [Java基础-线程篇]7_线程设计模式与总结
  • MCU-SDRAM-W9825G6KH的存储单元
  • Vue 文件下载功能的跨域处理与前后端实现详解
  • python: DDD using postgeSQL and SQL Server
  • 【STM32】STM32系列产品以及新手入门的STM32F103
  • 深度学习PyTorch之13种模型精度评估公式及调用方法
  • 头歌作业-数据库实验一:数据库和数据表的建立,修改和删除
  • 专业的销售网站/互联网公司
  • 扬州做网站哪家好/有趣软文广告经典案例
  • 建网站需要什么/账号权重查询入口
  • 专业的建设网站哪个好/企业网站建设方案策划书
  • 网站开发团队架构/厦门网络推广哪家强
  • 中山网站建设文化策划书/免费网络推广100种方法