UE4 组件 (对话组件)
制作一个可以生成对话气泡,显示对话台词的简单组件。这个组件要的变量:台词(外部传入)。功能:开始对话(生成气泡UI) ,结束对话。一、对话组件创建
https://i-blog.csdnimg.cn/direct/77aab199a9324624aa76bb067ebb7fe9.png
二、开始对话变乱
1、注意这里获取的是 owner(拥有者) ,组件可能挂到随意对象上。因为这个对象不固定,以是不能获取玩家角色或者第三人称角色。 按类添加组件
2.这里1添加的组件时widget组件,是动态生成的,不是和bpc_talk一样手动挂上的。生成后对象就有了widget组件,但是只是一个占位符,里面是空的,必要4给它赋予控件。 这里设置的是这个组件其他属性(显示空间、碰撞、位置)
3.创建UI气泡控件(这个控件要放入控件(widget)组件中去的),它要台词信息,以是生成时候作为接口暴暴露来。 这里Owning actor也是自己创建并暴露的接口。Owning Player则是节点默认自带的。
4.控件对象赋予控件组件。
https://i-blog.csdnimg.cn/direct/0826821fe2214a21bb0c357e4ef0aff0.png
三、结束对话变乱
询问之前创建的控件组件是否有效,并设置为空。
https://i-blog.csdnimg.cn/direct/9135f4f31b824597870c686ff99ccb55.png
四、UI控件制作
1.前端
按钮在前,覆层,文本和背景。文本换行要自动包裹文本,而且文本变量化。
https://i-blog.csdnimg.cn/direct/c96a6b231a6948e9b082c3ac9cab2ee6.png
2.后端
变量创建:按钮用于点击文本框切换下一句台词。 剧本由外部台词传入,num表示剧本语句索引。Owning actor表示拥有者,由外部导入。因为这个UI控件生成时并没任何拥有者,是背面把它作为了控件组件的控件实体。它无法像bpc_talk一样获取到拥有者。必要外部传入。
https://i-blog.csdnimg.cn/direct/f66c7bf603ec40a8b27d9024568d3da1.png
UI显示时,默认显示第一句话,人物无法接受输入,只有UI能响应输入,显示鼠标。
https://i-blog.csdnimg.cn/direct/1c394b6fd98c4b0d830cbb346de6499f.png
给按钮添加单击变乱,索引加1,显示下一句台词。索引超过剧本长度时代表台词说完,必要结束对话。这里这个控件并不是其他控件的子项,以是不是用remove from parent移除,而是通过调用之前组件的 结束对话变乱。以是这里要通过拥有者找到组件,再调用组件方法。输入和鼠标恢复。
https://i-blog.csdnimg.cn/direct/e3fc0028fb3d4dfca7ff7328b4579975.png
五、对象挂组件
1.挂上组件
2.创建剧本台词
3.调用组件方法。 注意开始对话前,要先退出之前的对话。
https://i-blog.csdnimg.cn/direct/567475d009e945498a47a486d8d84e69.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]