UE5数字孪生系列笔记(四)

news2024/11/14 13:34:35

场景的切换

  • 创建一个按钮的用户界面UMG
    在这里插入图片描述
  • 创建一个Actor,然后将此按钮UMG添加到组件Actor中
    在这里插入图片描述
  • 调节几个全屏的背景
    在这里插入图片描述
    在这里插入图片描述
  • 运行结果
    在这里插入图片描述

目标点切换功能制作

  • 设置角色到这个按钮的位置效果
    在这里插入图片描述
  • 按钮被点击就进行跳转
    在这里插入图片描述

多个地点的切换与旋转

  • 将之前的目标点切换逻辑替换成旋转的逻辑,这样更加精准
    在这里插入图片描述
  • 其他的也跟上述方法一样
  • 例如:酒店大楼
    在这里插入图片描述
    在这里插入图片描述
  • 运行结果
    在这里插入图片描述

设置主视角切换

  • 我们点击主UMG的邮件那个按钮,使视角跳转到空中,再次点击就跳转到开始的视角
  • 思路:设置一个判断当我们点击了按钮就将跳转到空中视角,再次点击就到开始视角,设置一个Location标点在空中作为空中视角
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

设置摄像机高度

  • 在大楼按钮场景逻辑上添加判断当前是否按了主视角切换的逻辑,去除bug,每次点击回到原视角的bug
    在这里插入图片描述
  • 将源代码中右键移动视角的z轴进行新增变量
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 在原始低角度时就是原来的z轴限定范围
    在这里插入图片描述
  • 在高视角时就是高视角的z轴限定范围
    在这里插入图片描述

在这里插入图片描述

  • 最后在点击到各个大楼按钮后,将z范围限制回原来的4520
    在这里插入图片描述
  • 运行结果
    请添加图片描述

天气插件的导入

  • 开始界面的大楼按钮可以优化一下,当我们点击进入系统的时候,再显示大楼的按钮,没有点击进入系统之前是隐藏的

  • 首先将这几个按钮给隐藏掉
    在这里插入图片描述

  • 然后在主UMG中点击了进入系统按钮的后,再将这几个按钮显示出来
    在这里插入图片描述

  • 将插件复制到工程目录下
    在这里插入图片描述

  • 删除原场景中的天空、云彩、天光等组件
    在这里插入图片描述

  • 将插件中的天空与天气拖入场景中
    在这里插入图片描述

  • 之后默认是下雨状态就是正常了
    在这里插入图片描述

实时天气制作

  • 在解析天气API的逻辑这里加上一个switch进行选择天气类型即可
    在这里插入图片描述

  • 相关的查询条件在高德API中查看
    在这里插入图片描述

实时时间制作

  • 在更新时间与日期这里与一天的时间进行关联
    在这里插入图片描述

设置晚间道路发光效果

  • 将道路网格设置为蓝图,这样就可以给其添加材质
    在这里插入图片描述
    在这里插入图片描述
  • 将道路的材质复制出来,我们来做一个自发光的材质,在白天与黑夜时间中控制道路的材质变化
    在这里插入图片描述
  • 新建一个自发光材质
    在这里插入图片描述
  • 道路蓝图的逻辑,如果为真就是白天不需要自发光,如果为假就是黑夜需要自发光在这里插入图片描述
  • 更新时间这里抒写逻辑,是否是晚上了要开启自发光
    在这里插入图片描述

制作夜晚光照效果

  • 创建一个Actor蓝图,添加一个盒子用上自发光材质进行在场景中描边操作
    在这里插入图片描述
  • 铺设到场景
    在这里插入图片描述
  • 在晚上道路发光的逻辑位置继续抒写夜晚关照效果的逻辑
    在这里插入图片描述
  • 可以自己往上面按照这种描边逻辑加效果
    在这里插入图片描述

制作菜单UI界面

  • 当我们点击UMG那个四个小格子的按钮时,展开一个控制的界面
    在这里插入图片描述
  • 逻辑编写
    在这里插入图片描述

天气时间UI与控制制作

UI制作

  • 制作按钮UI界面与天气模拟界面
    在这里插入图片描述
    在这里插入图片描述
  • 制作打开模拟天气UI的动画
    在这里插入图片描述
  • 逻辑编写和制作菜单UI界面逻辑是一样的
    在这里插入图片描述
  • 制作关闭按钮与控制台界面UI
    在这里插入图片描述
    在这里插入图片描述

逻辑

  • 关闭逻辑:当IsWeatherClick为假时,说明我们点击的是关闭的操作,那就进行关闭,将IsWeatherClick变为真
    在这里插入图片描述
  • 启用天气模拟按钮逻辑抒写
    在这里插入图片描述
  • 天气切换逻辑
    在这里插入图片描述
  • 在实时更新天气这里加上是否按了天气模拟的判断
    在这里插入图片描述
  • 在实时更新时间一天的变化这里也加上判断,改变一下逻辑,当开启天气模拟的时候就不会获取当前时间了
    在这里插入图片描述
  • 时间控制逻辑
    在这里插入图片描述
    在这里插入图片描述
  • 补个关闭菜单UI界面的按钮逻辑和关闭天气模拟UI逻辑一样
    在这里插入图片描述
    在这里插入图片描述

场地漫游功能制作

  • 添加一个第三人称模版的包用来使用
    在这里插入图片描述
  • 将模版中的默认的动画和骨骼去掉
    在这里插入图片描述
  • 将模版蓝图拖入到场景中
    在这里插入图片描述
  • 创建场景漫游的UI
    在这里插入图片描述
  • 改变控制器逻辑,将我们的主控制器切换到这个第三人称模版的控制器上
  • 在第三人称模版蓝图中添加一个自定义事件,因为改变控制器的时候,第三人称蓝图中不会获取到增强输入系统,所以我们得手动调用一下
    在这里插入图片描述
  • 切换控制器逻辑
  • Set View Target With Blend:它用于在游戏中平滑地切换视角,即从当前观察的视点(如一个摄像头或角色的第一人称视角)过渡到另一个指定的目标视点
    • 视角目标切换
      Target:此节点接受一个新的视角目标作为输入。这可以是一个具有Camera组件的Actor,如另一台自由摄像机、玩家控制器、或者任何包含摄像头组件的游戏对象。当执行此节点操作时,游戏的主视角将从当前视点切换到指定的目标视点。
    • 平滑过渡
      Blend Time:节点允许设置一个过渡时间(Blend Time),在这段时间内,视角变换不是立即完成,而是以动画化的方式逐渐过渡到新的视点。这样可以避免突然的视角跳变,提供更自然、流畅的视觉体验,有助于保持玩家沉浸感。
    • 过渡方式
      Blend Function:除了指定过渡时间外,还可以选择不同的过渡方式(Blend Function)。例如,可以选择线性(Linear)过渡,使得视角在指定时间内均匀地从旧视角移动到新视角;或者选择如Cubic Ease等非线性函数,使过渡过程具有加速或减速的效果,符合特定的动画曲线。
    • 兼容性与灵活性
      即使目标Actor没有直接附加Camera组件,此节点仍可能执行视角切换。在这种情况下,引擎可能会以某种默认方式处理过渡,可能是直接平滑过渡到一个默认或最近的有效视点。“Set View Target with Blend”适用于各种类型的摄像机切换场景,如第三人称视角与第一人称视角之间的切换、不同固定摄像机之间的视角切换、以及过场动画中导演视角的切换等。
      在这里插入图片描述

场景漫游返回逻辑

  • 返回主控制器逻辑:新建一个bool变量用来标识返回主控制器了
    在这里插入图片描述
  • 控制器转换后关闭UI逻辑
    在这里插入图片描述
  • 控制器转换主控器后打开UI逻辑
    在这里插入图片描述
  • 在控制器转换这里调用隐藏UI的事件
    在这里插入图片描述
  • 在Tick这调用切换回主视角的事件
    在这里插入图片描述
  • 运行结果
    请添加图片描述

监控UI制作

  • 插入一个插件到工程目录,这个插件基于 UE5 实现的 rtsp 的视频播放插件,实现的运行时输出 mp4 文件
  • 插件开源地址:https://github.com/inveta/InVideo
    在这里插入图片描述
  • 启用插件
    在这里插入图片描述
  • 根据开源地址的提供的使用方法进行使用,新建这个插件的蓝图
    在这里插入图片描述
  • 创建一个imageUI界面
    在这里插入图片描述
    在这里插入图片描述
  • 播放视频网址节点
    在这里插入图片描述
  • 制作监控查看UI界面与动画
    在这里插入图片描述
    在这里插入图片描述
  • 打开与关闭监控UI界面逻辑与之前的菜单UI界面打开与关闭逻辑一样
    在这里插入图片描述
    在这里插入图片描述

退出系统UI制作

  • 制作退出系统的UI界面
    在这里插入图片描述
  • 逻辑:就是登录系统到UI的反向操作
  • 先关闭菜单UI
    在这里插入图片描述
  • 然后播放反方向这些UI的动画与设置他们的可视性
    在这里插入图片描述
  • 最后隐藏这几个大楼按钮
    在这里插入图片描述
  • 运行结果
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1597342.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

技术速递|为 .NET iOS 和 .NET MAUI 应用程序添加 Apple 隐私清单支持

作者:Gerald Versluis 排版:Alan Wang Apple 正在推出一项隐私政策,将隐私清单文件包含在针对 App Store 上的 iOS、iPadOS 和 tvOS 平台的新应用程序和更新应用程序中。请注意,至少目前 macOS 应用程序被排除在外。 隐私清单文件…

javaWeb项目-外面点餐系统功能介绍

项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端:Vue、ElementUI 关键技术:springboot、SSM、vue、MYSQL、MAVEN 数据库工具:Navicat、SQLyog 1、Spring Boot框架 …

云服务器降价,阿里腾讯华为京东云优惠价格表整理

现在租一个服务器多少一个月?优惠价格低至3.8元1个月,租用一个月云服务器收费价格表:阿里云和腾讯云2核2G3M服务器优惠价格61元一年,折合一个月5元,京东云轻量云主机5.8元一个月,华为云服务器优惠价格3.8元…

状态模式【行为模式C++】

1.概述 状态模式是一种行为设计模式, 让你能在一个对象的内部状态变化时改变其行为, 使其看上去就像改变了自身所属的类一样。 2.结构 State(抽象状态类):定义一个接口用来封装与上下文类的一个特定状态相关的行为,可以有一个或多…

家居网购项目(权限验证+事务管理)

文章目录 1.过滤器权限认证1.程序框架图2.web.xml3.编写AdminAuthorization4.编写MemberAuthorization5.细节6.结果展示1.未登录可以任意浏览商品2.点击添加购物车提示登录3.点击后台管理,提示管理员登录4.也做了其余资源的访问验证 2.事务管理1.思路分析2.重写JDBC…

AI大模型日报#0415:贾佳亚团队新作王炸、马斯克首款多模态大模型、ChatGPT to B

导读: 欢迎阅读《AI大模型日报》,内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了每条资讯的摘要。标题: 融合ChatGPTDALLE3,贾佳亚团队新作开源:识图推理生图一站解决 摘要: 贾佳亚团队推出了多模态模型Mini-Gem…

Android11应用安装未知来源的权限改动

最近开发的App需要下载安装另一个App。这就涉及到了app的安装代码。关于App的安装代码,写了不少,所以这一块觉得不是问题: 判断版本,Android8.0判断是否有未知来源安装全选,没有则打开未知来源安装权限设置界面去开启…

pdf预览空白问题解决。第一次预览正常,再重新打开就空白的问题。是因为cmaps没有更新

文章目录 问题描述问题解决问题总结曾经参考过的文章(也未能解决) 问题描述 我用的是pdfjs作为PDF预览工具使用。 预览有电子签章的PDF后(如下图的水印、签章),再重新预览没有电子签章的PDF,就会空白。 如上图,第一个…

【Linux】磁盘管理和文件系统

目录 一、硬盘 1.硬盘结构 2.结构类型 二、MBR与磁盘分区 1.MBR主引导记录 2.磁盘分区结构 三、文件系统类型 四、linux系统添加并使用新硬盘的步骤 1.添加新的硬盘 2.刷新识别 3.进行分区 4.格式化,创建文件系统 5.挂载使用 一、硬盘 1.硬盘结构…

什么是人力资源成本?人力资源成本有哪些?

人力资源成本是企业运营成本的重要组成部分,对企业的财务状况和经营效率有着直接影响,如今企业面临着持续的成本压力和效率挑战。人力资源成本不仅直接关联企业的运营效率,还影响着企业的长期战略发展。因此,如何优化人力资源成本…

二、变量和引用

目录 2.1 什么是变量 2.2变量的命名 2.3 变量的类型 2.3.1 根据数据类型分类 2.3.2 根据作用域分类 2.4 变量的定义 2.5 shell中的引用 在程序设计语言中,变量是一个非常重要的概念。也是初学者在进行Shell程序设计之前必须掌握的一个非常基础的概念。只有理…

D3-八数码

D3-八数码 题目描述解题思路代码如下 题目描述 解题思路 本题若直接在3*3网格中思考较为困难,可以转换为一维的字符串,在一维字符串中考虑较为简单,要注意本题中两个字符交换位置时只能是x和另外字符交换,本题另外一个难点在于如何…

借力社交裂变,Xinstall助你实现用户快速增长

在数字化时代,社交裂变已成为品牌获取新用户、扩大影响力的关键手段。然而,如何有效利用社交裂变,实现用户快速增长,却是许多品牌面临的挑战。今天,我们将为大家介绍一个强大的社交裂变引擎——Xinstall,它…

Cesium 无人机航线规划

鉴于大疆司空平台和大疆无人机app高度绑定,导致很多东西没办法定制化。 从去年的时候就打算仿大疆开发一套完整的平台,包括无人机app以及仿司空2的管理平台,集航线规划、任务派发、实时图像、无人机管理等功能的平台。 当前阶段主要实现了&…

包装类初识泛型

一.包装类 在Java中, 基本类型不继承于Object类. 所以为了在泛型代码中可以支持基本类型,Java给每个基本类型都对应了一个包装类型.(包装类型相当于引用类型) 1.基本类型对应的包装类 byte -- Byteshort -- Shortint -- Integerlong -- Longfloat -- Floatdouble -- Doublech…

20V/3A大电流线性稳压器替代MIC29302/MIC29300

概述(替代MIC29302/MIC29300) PCD3942 是一款低压差稳压器,专为快速瞬态响应而优化。该装置能够提供 3A 的输出电流,典型压降为 325mV。工作静态电流为 1mA,关机时降至 1μA 以下,同时压差模式下静态电流控制良好。除了快速瞬态响…

lua学习笔记20(lua中一些自带库的学习)

print("*****************************lua中一些自带库的学习*******************************") print("*************时间***************") --系统时间 print(os.time()) --自己传入参数得到时间 print(os.time({year2011,month4,day5})) --os.data(&qu…

《HF经理》:二认知误区

一、管理者掌握重要权力: 二、全力来自管理者的职位: 三、管理者必须控制自己的直接下属: 对策:展示自己的品质,能力和影响力 四、管理者必须建立良好的个人关系: 五、管理这必须确保一切运行正常&…

深度学习框架

深度学习框架 1 引言 在当今技术加速发展的时代,深度学习已经成为了人工智能领域内最为引人注目的子领域之一。其在图像识别、自然语言处理、自动驾驶等多个行业中的成功应用,已经证明了深度学习在解决复杂问题方面的巨大潜力。然而,深度学习…

31、链表-K个一组反转链表

思路: 首先知道如何反转链表,其次找出每组的开始节点和结束节点,然后对于不足与k个的链表保持原状。 代码如下: class Solution {public ListNode reverseKGroup(ListNode head, int k) {if (headnull||k1){return head;}ListN…