UE学习篇ContentExample解读------Blueprints Advanced-下

文章目录

  • 总览描述
  • 批次阅览
    • 2.1 Timeline animation
    • 2.2 Actor tracking
    • 2.3 Button Trigger using a blueprint interface
    • 2.4 Opening door with trigger
    • 2.5 Child Blueprints
  • 概念总结
  • 致谢:

总览描述

在这里插入图片描述

打开关卡后,引入眼帘的就是针对关卡的总体性文字描述,这里翻译一下:

​ 这个地图涵盖一些在关卡中使用蓝图的有用技巧和技术。包括灯光跟踪和工作门!

本节是继续开始下半节的内容分享:

批次阅览

2.1 Timeline animation

时间线动画

在这里插入图片描述

**翻译:**一个使用使用时间线制作针对Static Mesh 组件的动画,它通过事件跟踪一个具体的时间点,来一个生成发射器(特效)。

蓝图分析:

在这里插入图片描述

  • 组件结构
    在这里插入图片描述

    只有一个根组件,带了一个求的静态网格组件

  • 参数介绍

  • 构造脚本

  • 事件图表
    在这里插入图片描述

    我们发现,只有一个时间线名为Bounce的节点,甚至没有Event BeginPlay,这是怎么回事呢?其实时间线里面有一些选项,我们双击来看一下:
    在这里插入图片描述

    我们观察蓝色选中的按钮,第一个选中的就是循环播放,第二个是自动播放,所以就是为什么他并没有连接执行节点,也能够执行的原因!

    我们在观察一下,所谓的时间线,就是一个曲线,如上,上面有两个曲线,一个叫:Impact的事件轨道、一个Movement的浮点数轨道!

(1)Impact的事件轨道

在轨道中,我们发现差不多在1.5s的样子,有一个白点,这个触发事件的时机,对应到事件图标,就是Impact的执行节点执行逻辑,如下:

在这里插入图片描述

他的逻辑就是在位置处生成一个Emitter,也就是所谓的一个特效

(2)Movement的浮点数轨道

我们观察他,他分两段:0-1.45s左右,值逐渐从1.0降低到0.0,然后从1.55-3s左右,值又从0.0恢复到1.0,这个纵坐标的值对应Movement的输出节点,对应一下逻辑!

在这里插入图片描述

(3)看下第三个轨道,Scale的浮点数轨道

在这里插入图片描述

这个听名字就知道,是控制这个球的缩放因子,如下图对应逻辑所示:

在这里插入图片描述

**综上:**通过时间点,控制球的位置和缩放,并且在碰地的那一刻触发一个特效,从而模拟一个动画的效果

关键概念:

  • Time Line
  • 轨道
  • Spawn Emitter

结果展示:

在这里插入图片描述

2.2 Actor tracking

Actor跟随

在这里插入图片描述

翻译: 事件图表中,当玩家到达一定范围内,它会使得聚光灯转向玩家!

蓝图分析:
在这里插入图片描述

  • 组件结构
    在这里插入图片描述

    关于这个灯的介绍,请参考<BluePrints Advanced-上>的1.4

  • 参数介绍
    在这里插入图片描述

    重点关注:Delta seconds、Player in range、Detection range

    • Delta seconds 这个就是Tick事件每次传的帧间隔
    • Player in range 表明玩家是否在范围内
    • Detection range 检测范围,默认是1000
  • 构造脚本
    类似,请参考<BluePrints Advanced-上>!

  • 事件图表

    在这里插入图片描述

    因为很大,咱们分块进行讲解:

    (1)整个逻辑都是处在Tick事件中的,咱们看第一个判断玩家范围
    在这里插入图片描述

    这边的逻辑主要包括:判断自己和玩家的距离是否<=检测范围,并进行设置Player Range变量,同时也更新Delta Seconds变量!

    (2)当我们玩家处于范围内之后,他会计算灯头和玩家的旋转,并且利用RInterp To蓝图节点,进行平滑插值旋转设置,如下:

在这里插入图片描述

继续看RInterp To节点的另一个Target输入值的获取逻辑:

在这里插入图片描述

这一块主要关注Find Look at Rotation这个节点,他用于计算自己的正方向到某个方向的Rotator旋转结构,正常来说就是指自己的X轴旋转到什么地方!同时根据玩家是否在范围内,决定是使用默认的角度,还是朝向玩家的角度,从而Make Rotator!

(3)最后一块就是就是当玩家处于范围内,通过时间线,柔和的调节灯光属性和材质
在这里插入图片描述

关键概念:

  • Look At Rotation
  • RInterp To

2.3 Button Trigger using a blueprint interface

这节跳过,因为比较简单,不重复赘述蓝图接口的运用了,有需要的参考<UE学习篇ContentExample解读------Blueprint_Communication-下>的3.1

2.4 Opening door with trigger

在这里插入图片描述

翻译: 一个使用事件线开关门的案例。门移动的方向取决于玩家在哪边!

蓝图分析:

在这里插入图片描述

  • 组件结构
    在这里插入图片描述

    根组件是门框静态网格体组件,下面有两个子组件:触发器和门的静态网格体

  • 参数介绍
    在这里插入图片描述

    只有一个参数,开的方向是正还是反!

  • 构造脚本

  • 事件图表
    在这里插入图片描述

    逻辑基本上就两块:盒子重叠时,离开盒子时。咱们就分析一个就可以了,另一个就是相反。咱们看看进入盒子,做了什么逻辑:
    (1)我们先看看播放时间线动画之前,做了什么
    在这里插入图片描述

    这里有一个新人可能比较迷的操作:Unrotate Vector,逆旋转,它将玩家指向门的向量根据Actor的旋转进行逆旋转,什么意思呢?

    其实就是将玩家指向门的向量从世界空间变换到局部空间,然后根据向量的X,来判断人是站在门的哪一边,从而决定门是正转还是反转90°!

    (2)开门的逻辑

    在这里插入图片描述

    我们看到就是通过Open Direction这个布尔变量,决定是90°的Yaw还是-90°的Yaw,然后进行设置到这个旋转。这个旋转的插值的逻辑其实是有问题的,如果门在场景中换个角度摆放,可能就有问题了,大家有看出来的小伙伴记得留言哦!

关键概念:

  • 逆变换

结果展示:

在这里插入图片描述

2.5 Child Blueprints

这一节是关于子蓝图的,也不重复赘述,之前的<Blueprint_Communication-上>的1.3小节已经提到过了!

概念总结

  • Timeline动画

  • 坐标变换

致谢:

今天的学习就到此为止啦,喜欢的小伙伴点点关注+赞哦!有问题及时留言!感谢大家Thanks♪(・ω・)ノ!我是火火,火一般的男人!

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

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

相关文章

物联网系统中基于IIC通信的数字温度传感器测温方案

01 物联网系统中为什么要使用数字式温度传感器芯片 物联网系统中使用数字式温度传感器芯片的原因主要有以下几点&#xff1a; 高精度与稳定性 高精度测量&#xff1a;数字式温度传感器芯片&#xff0c;如DS18B20&#xff0c;采用芯片集成技术&#xff0c;能够有效抑制外界不…

算法宝典——二分查找算法

1.认识二分查找 二分查找的时间复杂度:O(logN) 二分查找属于算法中耳熟能详的一类&#xff0c;通常的我们会说只有数组有序才可以使用二分查找&#xff0c;不过这种说法并不完全正确&#xff0c;只要数据具有"二段性"就可以使用二分查找&#xff0c;即我们可以找出一…

【零散技术】Odoo PDF 打印问题问题合集

序言:时间是我们最宝贵的财富,珍惜手上的每个时分 Odoo PDF打印 是一个必备功能&#xff0c;但是总会遇到一些奇奇怪怪的问题&#xff0c;此帖仅做记录&#xff0c;方便查阅。 目录 1、样式丢失 2、部分结构丢失 3、没有中文字体 1、样式丢失 这种情况一般是由于 …

ppt压缩有什么简单方法?压缩PPT文件的几种方法

ppt压缩有什么简单方法&#xff1f;许多用户常常面临文件过大的问题&#xff0c;尤其在需要通过电子邮件发送或上传至网络平台时&#xff0c;大文件会带来诸多麻烦。此外&#xff0c;较大的文件可能导致软件响应缓慢&#xff0c;从而影响整体的演示体验。因此&#xff0c;寻找有…

C++ 基础入门-命名空间、c++的输入输出、缺省参数、函数重载、引用、内联函数超详细讲解

这篇文章主要对c的学习做一个基础铺垫&#xff0c;方便后续学习。主要通过示例讲解命名空间、c的输入输出cout\cin&#xff0c;缺省参数、函数重载、引用、内联函数&#xff0c;auto关键字&#xff0c;for循环&#xff0c;nullptr以及涉及到的周边知识&#xff0c;面试题等。为…

机械键盘驱动调光DIY--【DAREU】

1 下载键盘对应的驱动&#xff0c;不要装到C盘 达尔优驱动下载中心 2 驱动更改教程 标准模式 键盘功能 鼠标功能 切换灯光 切换配置文件 多媒体 windows快捷键 禁用 Fn 启动程序 文本功能 光标定位 FN模式 灯光效果设置 注意 宏--自定义功能

面试扩展知识点

1.C语言中分为下面几个存储区 栈(stack): 由编译器自动分配释放堆(heap): 一般由程序员分配释放&#xff0c;若程序员不释放&#xff0c;程序结束时可能由OS回收全局区(静态区): 全局变量和静态变量的存储是放在一块的&#xff0c;初始化的全局变量和静态变量在一块区域&#…

用于探索和测试API的开源IDE工具-Bruno

1、前言 在进行软件开发与测试过程中&#xff0c;无论是开发人员还是测试人员&#xff0c;都会或多或少地进行接口调试与接口测试。尤其针对那种测试流程规范性很高的项目&#xff0c;测试人员进行接口测试是不可或缺的一部分。而这其中&#xff0c;大多数都会使用 Postman 作…

9.26 Buu俩题解

[CISCN2019 华东北赛区]Web2 看wp写完之后写的 知识点 存储型XSS与过滤绕过sql注入 题解 好几个页面&#xff0c;存在登录框可以注册&#xff0c;存在管理员页面(admin.php) ->既然存在管理员页面&#xff0c;且直接访问admin.php提示我们 说明存在身份验证&#xff0…

crypto-js解密报错malformed utf-8 data

在进行加解密处理时出现这个问题。 但是当在一个完整程序运行环境内加密字符串&#xff0c;解密字符串是没问题的。 当把加密的字符存储到txt文件&#xff0c;在读取解密时出现错误无法解密。 最后&#xff0c;使用res.replace(/\s/g,‘’)正则过滤掉txt文件内的空格就成功了。…

若依生成主子表

一、准备工作 确保你已经部署了若依框架&#xff0c;并且熟悉基本的开发环境配置。同时&#xff0c;理解数据库表结构对于生成代码至关重要。 主子表代码结构如下&#xff08;字表中要有一个对应主表ID的字段作为外键&#xff0c;如下图的customer_id&#xff09; -- ------…

SOCKS5代理和HTTP代理哪个快?深度解析两者的速度差异

在现代互联网环境中&#xff0c;使用代理IP已经成为了许多人日常生活和工作的必备工具。无论是为了保护隐私&#xff0c;还是为了访问某些特定资源&#xff0c;代理IP都扮演着重要的角色。今天&#xff0c;我们就来聊聊SOCKS5代理和HTTP代理&#xff0c;看看这两者到底哪个更快…

【赵渝强老师】K8s中的Deployment控制器

K8s的Deployment将Pod部署成无状态的应用程序&#xff0c;它只关心Pod的数量、Pod更新方式、使用的镜像和资源限制等。由于是无状态的管理方式&#xff0c;因此Deployment中没有角色和顺序的概念&#xff0c;换句话说&#xff1a;Deployment中没有状态。   通过使用Deploymen…

UART 如何实现波特率自动检测原理介绍

为什么需要波特率自动检测机制 我们都知道&#xff0c;串口通讯是需要约定波特率才能够进行准确的通讯。此时假设&#xff0c;你们公司开发了一个板子&#xff0c;有一个串口与外接设备进行通讯。因为你们公司开发的产品要提供给多个客户&#xff0c;而有些客户可能之前就有一…

MacOS Catalina 从源码构建Qt6.2开发库之02: 配置QtCreator

安装Qt-creator-5.0.2 在option命令中配置Qt Versions指向 /usr/local/bin/qmake6 Kits选入CLang

SSM+Vue社区物业管理系统

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 spring-mybatis.xml3.5 spring-mvc.xml3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质创作…

【cache】浅析四种常用的缓存淘汰算法 FIFO/LRU/LFU/W-TinyLFU

本文浅析淘汰策略与工作中结合使用、选取&#xff0c;并非针对算法本身如何实现的 文章目录 FIFOLFULRUW-TinyLFU实践与优化监控与调整 FIFO first input first output &#xff0c; 先进先出&#xff0c;即最早存入的元素最先取出&#xff0c; 典型数据结构代表&#xff1a;…

Elasticsearch使用Easy-Es + RestHighLevelClient实现深度分页跳页

注意&#xff01;&#xff01;&#xff01;博主只在测试环境试了一下&#xff0c;没有发到生产环境跑。因为代码还没写完客户说不用弄了( •̩̩̩̩&#xff3f;•̩̩̩̩ ) 也好&#xff0c;少个功能少点BUG 使用from size的时候发现存在max_result_window10000的限制&…

TypeScript介绍和安装

TypeScript介绍 TypeScript是由微软开发的一种编程语言&#xff0c;它在JavaScript的基础上增加了静态类型检查。静态类型允许开发者在编写代码时指定变量和函数的类型&#xff0c;这样可以在编译时捕获潜在的错误&#xff0c;而不是等到运行时才发现问题。比如&#xff0c;你…

基于STM32的无人驾驶车辆系统

目录 引言项目背景环境准备 硬件准备软件安装与配置系统设计 系统架构关键技术代码示例 传感器数据采集与处理路径规划与避障控制实时反馈与控制系统应用场景结论 1. 引言 随着无人驾驶技术的发展&#xff0c;嵌入式系统在无人驾驶车辆中的应用变得越来越重要。STM32作为高效…