UE5.4内容示例(1)- 学习笔记

https://www.unrealengine.com/marketplace/zh-CN/product/content-examples

《内容示例》是学习UE5的基础示例,可以用此示例熟悉一遍UE5的功能

  • 模型与材质部分

StaticMeshes
FBX_Import_Options
Material_Advanced
Material_Decals
Material_Instances
Material_Nodes
Material_ParallaxOcclusionMapping
Material_PivotPainter
Material_PivotPainter2
Material_Properties
Material_SkinRendering
Material_Substrate

  • UI部分

UI_UMG
UI_CommonUI
UI_SlatePostBuffer
Paper2D

  • 场景与地形部分

Level_Landscape
Level_PostProcessing
Level_Scripting
Level_Streaming
Level_Volumes

  • 灯光部分

Lighting_Realtime

  • 蓝图部分

Blueprint_Overview
Blueprint_Advanced
Blueprint_Communication
Blueprint_Input_Examples
Blueprint_Mouse_Interaction
Blueprint_Network
Blueprint_ProceduralMesh
Blueprint_RenderToTarget
Blueprint_Splines

  • 动画部分

Animation_Basics
Animation_Choosers
Animation_ControlRig
Animation_Deformer
Animation_IKRig
Animation_MorphTargets
Animation_PhysicsControl
Animation_Retargeting

  • 粒子部分

Niagara_Advanced_Particles
Niagara_Fluids
Niagara_Particles

  • 物理引擎部分

Physics
PhysicalAnimation
Physics_Cloth
Physics_Destruction

  • AI与算法部分

AI_NavMesh
Math_Hall
Audio

  • 此篇UE5学习是以技术方向切入,避开材质如何制作、粒子如何制作等深入美术方向(或技美方向)的问题, 从整体结构来学习掌握。

ExampleProjectWelcome

1、1.A Static Mesh(静态模型)

在这里插入图片描述

  • 非常简单的静态网格模型,用了M_Metal材质
    在这里插入图片描述

  • 在此材质右击,创建材质实例后M_Metal_Inst,可以看到这个材质提供3个参数
    在这里插入图片描述

  • 在M_Metal材质的参数面板里也可以看到
    在这里插入图片描述

  • M_Metal材质为普通PBR材质,其中Roughness用了一个复杂的处理,简化下,也是能出来一些效果。
    在这里插入图片描述

  • 通过乘,提亮并加对比度,在通过Lerp控制上下对比度的数值

  • 因为本人不是美术方向,对于材质,我的方法是收集与整理,并简单套用。

2、1.B Skeletal Mesh(骨骼模型)

在这里插入图片描述

  • 最简单的骨骼网格体有4部分组成:Skeletal Mesh(网格模型)、Skeleton(骨骼数据)、Material(蒙皮的材质)、Animation Sequence(骨骼动画)
  • 这些的IK绑定,骨骼转移都是比较麻烦的部分

3、Play or Simulate Stands(Timeline动画的球)

在这里插入图片描述

  • BP_Timeline_Ball,使用Timeline完成小球的动画
  • Bounce节点里设置了循环与自动播放,里面有3个动画轨道,Impact(负责触发落地后的粒子效果)Movement(负责上下跳动)Scale(负责落地后小球压扁)
    在这里插入图片描述
  • 小球上下移动,TimeLine返回一个0-1的Alpha区间值,通过Lerp,用Set Relative Location设置
    在这里插入图片描述
  • 类似方法,设置小球的形变
    在这里插入图片描述
  • 在Timeline的Track按钮里,有4种轨道,一般用浮点型轨道,这里用事件型轨道,事件型轨道接口是一个白色的事件箭头,触发播放粒子
    在这里插入图片描述
  • 目前Sequence动画系统,用变量控制的性能比较差;当需要可控制的动画时,需要使用Timeline等蓝图结合来编程。如果只是此案例的动画,也可以使用Sequence来实现。

4、1.D Interactive Slider

在这里插入图片描述

  • 这里有2个蓝图;滑动框BP_Slider:负责鼠标控制滑动,并返回一个Value 0-1的值;下面的圆盘BP_Mat_with_Slider:负责使用Value的值,设置材质图片的清晰度。
  • 滑动框-用鼠标控制某个模型的移动:Left Mouse Button设置是否按下;Get Input Mouse Delta获取鼠标移动的差值;Add Relative Location设置物体增量移动。这样就可以实现模型的任意拖动。
    在这里插入图片描述
  • 滑动框-控制横向移动,并设置最大距离
    第1段:根据Vertical判断是使用鼠标的x或y,用Start与End的差值乘以鼠标变化值,用Sensetivity参数控制下速度,最后给到位置增量设置
    在这里插入图片描述
    第2段:Slider的x,y,z值,都控制在Start和End的最大与最小之间,重新设置Slider的位置
    在这里插入图片描述
  • 滑动框-返回一个Value值:Vector Length获得Start与End的距离和Slider的移动距离,相除获得位置的百分比,如果需要,进行下Clamp下,控制在0.1-1之间
    在这里插入图片描述
  • 滑动框-End值可以被拖动设置,这个功能很好。只用设置End值的Show3DWidget,在ConstructionScripte设置好对应的模型大小与位置
    在这里插入图片描述
    在这里插入图片描述
  • 修改材质里的参数:Material是材质变量,在外部赋值;用Create Dyniamic Material Instance生成一个MID(Material Instance Dyniamic)对象,接下来,控制Value的数值就可以改变材质的效果。
    在这里插入图片描述
  • Material材质:通过乘以一个Value数,然后去掉小数点,再除回来;这样Value越大,小数点扔掉越少,精度就越高
    在这里插入图片描述

5、1.E Triggerable Gears

在这里插入图片描述

  • 一个触发模型蓝图BP_Button;一个齿轮动画蓝图BP_Gears
  • BP_Button的触发是通过Blueprint Interface完成,对比Slider更加高级些;如何建立蓝图接口:
    在这里插入图片描述
    先建立蓝图接口类:
    在这里插入图片描述
    做好接口函数
    在这里插入图片描述
    在对应的蓝图对象中,比如Slider的案例,是在下面的盘的模型蓝图中,加入接口
    在这里插入图片描述
    在这里插入图片描述
    在蓝图中就出现接口事件,右键导入事件
    在这里插入图片描述
  • 如何触发蓝图接口:
    在这里插入图片描述
    Target Blueprint对象是Actor对象,可以把Details锁住,然后拖动Outliner里的蓝图对象到对应的框中,完成赋值操作(类似于Unity的操作)
  • 齿轮动画:使用了Event Tick的Delta Seconds来实现Rotation的Yaw不断旋转的功能
    在这里插入图片描述

6、1.F Triggerable Light Bulb

在这里插入图片描述

  • 一个控制台BP_ButtonLight_Bulb_Basic和一个灯的蓝图对象BP_Light_Bulb_Basic
  • 通过在灯的蓝图里设置Toggle light事件(Custom Event)来触发(以上,案例展示3种两个蓝图互相通信的示例)
    在这里插入图片描述
    在这里插入图片描述
  • 改变控制台的灯:获取MID
    在这里插入图片描述
    通过材质的State 0或1来控制红色或绿色
    在这里插入图片描述
    通过Begin Overlap与End Overlap来设置材质的State值
    在这里插入图片描述
  • 灯光蓝图变化,分为模型的材质变化,和灯Light的变化
    改变灯泡和灯丝的颜色
    在这里插入图片描述
    根据A,透明度,使用Set Intensity来改变灯的亮度
    在这里插入图片描述

此场景学习完毕,祝愿大家学习愉快

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

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

相关文章

MySQL零散拾遗(八)--- MySQL正则表达式

MySQL 支持使用正则表达式进行模式匹配,这对于复杂的字符串处理非常有用。MySQL 中的正则表达式可以通过 REGEXP 或 RLIKE 运算符来实现。下面详细介绍 MySQL 中正则表达式的语法和一些常用的正则表达式模式。 正则表达式基础 锚点 ^: 匹配字符串开头$: 匹配字符串…

Python 高阶语法

前言: 我们通过上篇文章学习了Python的基础语法,接下来我们来学习Python的高阶语法 1.初识对象 在Python中我们可以做到和生活中那样,设计表格、生产表格、填写表格的组织形式的 面向对象包含 3 大主要特性:  封装  继承 …

Zilliz 推出 Spark Connector:简化非结构化数据处理流程

随着人工智能(AI)和深度学习(Deep Learning)技术的高速发展,使用神经网络模型将数据转化为 Embedding 向量 已成为处理非结构化数据并实现语义检索的首选方法,广泛应用于搜索、推荐系统等 AI 业务中。 以生…

架构建模-系统架构师(三十二)

1、DNS配置文件是(),它包含了主机的域名搜索顺序和DNS服务器地址。 A /etc/hostname B /dev/host.conf C /etc/resolv.conf D /dev/name.conf 解析: 保存在etc/reolv.conf 2、信息隐蔽式开发整体程序时使用的法则&#xff0c…

C语言 定义结构体变量并计算该日在本年中是第几天

定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题&#xff08;即将闰年情况包含在内&#xff09;。 #include <stdio.h>typedef struct {int year;int month;int day; } Date;int isLeapYear(int year) {if ((year % 4 0 && year %…

力扣202.快乐数

202. 快乐数 - 力扣&#xff08;LeetCode&#xff09; 主要是用到了鸽巢原理&#xff0c;最后他们一定会重合&#xff0c;我们只需要判断类似&#xff0c;链表的成环相遇的时候是不是1就行了 class Solution { public:int bitsum(int n){int sum 0;while (n){int a 0;a n …

用护眼灯还需要开灯吗?护眼灯行业三大套路迷局揭秘

用护眼灯还需要开灯吗&#xff1f;在使用护眼台灯时&#xff0c;同时开启室内的主照明十分必要。如果关闭其他灯具&#xff0c;仅保留护眼台灯&#xff0c;那么只有台灯周围的小片区域能够被照亮&#xff0c;而房间的其他部分则处于相对昏暗的状态。这种明显的光线差异会造成视…

freertos的学习cubemx版

HAL 库的freertos 1 实时 2 任务->线程 3 移植 CMSIS_V2 V1版本 NVIC配置全部是抢占优先级 第四组 抢占级别有 0-15 编码规则&#xff0c; 变量名 &#xff1a;类型前缀&#xff0c; c - char S - int16_t L - int32_t U - unsigned Uc - uint8_t Us - uint…

Java常见的面试二

1、普通类和抽象类有那些区别 普通类中不能有抽象方法&#xff0c;抽象类中可以有抽象方法普通类可以直接实例化&#xff0c;抽象类不能直接实例化 2、抽象类能够使用final修饰吗 不能&#xff0c;抽象类是由子类继承的&#xff0c;但是final修饰的类不能被继承。两者矛盾所以…

《书生大模型实战营第3期》入门岛 学习笔记与作业:Python 基础知识

文章大纲 Python 简介1 安装Python1.1 什么是conda&#xff1f;1.1.1 功能与作用&#xff1a;1.1.2 常用命令&#xff1a;1.1.3 适用性&#xff1a; 1.2 Python安装与学习环境准备1.2.1 下载miniconda1.2.2 安装miniconda1.2.3 创建一个python练习专属的conda虚拟环境 2: Pytho…

【制作100个unity游戏之31】用unity制作一个爬坡2d赛车小游戏

最终效果 【制作100个unity游戏之31】用unity制作一个爬坡2d赛车小游戏 前言 今天用unity制作一个简单的爬坡2d赛车小游戏 素材 https://www.spriters-resource.com/mobile/hillclimbracing/ 拼装车素材 车身添加碰撞体&#xff0c;摩檫力0 轮胎添加碰撞体和刚体&#xff0…

【VSCode实战】Golang无法跳转问题竟是如此简单

上一讲【VSCode实战】Go插件依赖无法安装 – 经云的清净小站 (skycreator.top)&#xff0c;开头说到了在VSCode中Golang无法跳转的问题&#xff0c;但文章的最后也没给出解决方案&#xff0c;只解决了安装Go插件的依赖问题。 解决了插件依赖问题&#xff0c;无法跳转的问题也离…

苍穹外卖 02

1.新增员工 controller&#xff1a; EmployeeServiceImpl&#xff1a; 实现controller里的save方法&#xff0c;要调用到mapper层的insert方法 因为员工登录成功后&#xff0c;会将id封装进jwt令牌,并响应给前端 所以后续请求中前端会携带jwt令牌。通过令牌可解析出被封装的…

C++:平衡搜索二叉树(AVL)

hello&#xff0c;各位小伙伴&#xff0c;本篇文章跟大家一起学习《C&#xff1a;平衡搜索二叉树&#xff08;AVL&#xff09;》&#xff0c;感谢大家对我上一篇的支持&#xff0c;如有什么问题&#xff0c;还请多多指教 &#xff01; 文章目录 :maple_leaf:AVL树:maple_leaf:…

速盾:分享一些防御 DDoS 攻击的措施

DDoS&#xff08;分布式拒绝服务&#xff09;攻击是指攻击者通过操纵大量的计算机或网络设备&#xff0c;向特定的目标发起大规模的网络流量&#xff0c;以消耗目标网络资源&#xff0c;造成网络服务不可用的攻击行为。为了保护网络免受DDoS攻击的影响&#xff0c;组织和个人可…

大学计算机专业主要课程及概要介绍

大学计算机专业主要课程及概要介绍 大学计算机专业是一门涵盖广泛领域的学科&#xff0c;旨在培养学生在计算机科学与技术方面的理论知识与实践能力。该专业课程设置丰富多样&#xff0c;涵盖了从基础理论到高级应用的多个方面。以下是一些主要的课程及其概要介绍&#xff1a;…

Python爬虫技术 第15节 CSS选择器基础

在使用Python进行网页爬取时&#xff0c;CSS选择器是提取HTML文档中特定元素的常用方法之一。CSS选择器基于HTML元素的结构和属性来定位和选择页面中的元素。结合Python中的BeautifulSoup库或PyQuery库等&#xff0c;可以非常高效地解析和筛选出你想要的数据。 CSS选择器基础 …

我的深度学习命令

安装依赖 pip install -r requirements.txt --index-url https://pypi.tuna.tsinghua.edu.cn/simple conda 环境: conda search pillow 查找可用版本 (或者pip search Pillow)查询当下虚拟环境 …

wodpress设置固定链接的方式和好处【SEO优化】

设置固定链接的好处 提高用户体验&#xff1a;固定链接使得网址更加直观和易于记忆&#xff0c;用户可以更容易地分享和访问文章。 优化SEO&#xff1a;搜索引擎更倾向于索引具有清晰结构的网址&#xff0c;固定链接有助于提高网站的SEO表现。 避免URL重复&#xff1a;固定链…