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.xdnf.cn/news/1488818.html

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

相关文章

5G智能防爆手持终端在石油化工行业中扮演着什么角色?

5G智能防爆手持终端在石油化工行业中扮演着至关重要的角色,主要体现在以下几个方面: 一、确保安全生产 防爆设计:石油化工行业的工作环境往往存在易燃易爆的危险,5G智能防爆手持终端采用特殊材料和设计,能够在这些极端…

华为交换机SSH配置

华为交换机SSH配置 一、 简介 1、SSH概念 SSH是一种用于通过网络连接到远程计算机并执行命令的协议。它提供了加密的通信会话,使得用户可以在不安全的网络中安全地传输数据。SSH协议最初由芬兰的Tatu Ylnen在1995年创建,旨在解决Telnet和非加密的远程…

C++内存管理和模板/stl初识

前言 c兼容C语言,但它因为有类和对象的概念,C语言原生的那套内存管理函数在特定场景下还是有些捉襟见肘的,为此c在C语言的基础上引入新的内存管理方案,今天我们就来简单的认识一下c的内存管理。除此之外,模板也是c引入…

unity2D游戏开发03状态控制

多态和动画 建立player-idle动画,取玩家最后两个图片 选中playcontroller控制器 将玩家动画拖进去 右键player-idle,选择set as layer Default state 右键点击Any State ,点击Make Transition 结果 动画参数 动画参数是动画控制器定义的变量,点击Param…

【leetcode 详解】生成特殊数字的最少操作【中等】(C++思路精析)

题目见下: 测试数据: 解题思路笔记: 最初拿到这道题是很蒙的,联想不到什么数据结构的模型(肯定是笔者积累太少了),甚至惯性地想怎么实现“删除数字”的操作:在原字符串中抽出一个字符然后将剩…

js轮播图制作

实现一个简单的JavaScript轮播图可以通过以下步骤完成: 创建HTML结构,包括轮播图容器和图片列表。 使用CSS进行样式设置,包括隐藏多余的图片。 使用JavaScript编写函数来控制图片的切换。

异常处理和swagger使用

全局异常处理类 定义全局异常处理类,会将错误全部提交到这个异常处理类中进行处理,这个类会将处理的统一结果响应给前端,如果不添加异常处理类,异常不会按照统一的响应格式进行,前端无法识别,当然也可以在…

vue3 常用的知识点

setup:容许在script当中书写组合式API 并且vue3的template不再要求唯一的根元素 <script setup>const name app; </script>组合式API的用法&#xff1a; 可以直接在script标签中定义变量或者函数&#xff0c;然后直接在template当中使用 <template>{{mes…

文件上传总结

一、原理 通过界面上的上传功能上传了一个可执行的脚本文件&#xff0c;而WEB端的系统并未对其进行检测或者检测的逻辑做的不够好&#xff0c;使得恶意用户可以通过文件中上传的一句话木马获得操控权 二、绕过方法 1>前端绕过 1.删除前端校验函数 checkFile() 2.禁用js…

如何实现ECharts图表根据屏幕大小自适应?

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;Vue篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来Vue篇专栏内容:Vue-ECharts自适应 目录 前言 1920*1080分辨率示图 8184*2432分辨率示图 以vue3ts开发为例 (…

高效工作流:用Mermaid绘制你的专属流程图;如何在Vue3中导入mermaid绘制流程图

目录 高效工作流&#xff1a;用Mermaid绘制你的专属流程图 一、流程图的使用场景 1.1、流程图flowChart 1.2、使用场景 二、如何使用mermaid画出优雅的流程图 2.1、流程图添加图名 2.2、定义图类型与方向 2.3、节点形状定义 2.3.1、规定语法 2.3.2、不同节点案例 2.…

昇思25天学习打卡营第1天|简单深度学习

前言 昇思MindSpore是一个全场景深度学习框架&#xff0c;旨在实现易开发、高效执行、全场景统一部署三大目标。 其中&#xff0c;易开发表现为API友好、调试难度低&#xff1b;高效执行包括计算效率、数据预处理效率和分布式训练效率&#xff1b;全场景则指框架同时支持云、边…

SpringBoot添加密码安全配置以及Jwt配置

Maven仓库&#xff08;依赖查找&#xff09; 1、SpringBoot安全访问配置 首先添加依赖 spring-boot-starter-security 然后之后每次启动项目之后&#xff0c;访问任何的请求都会要求输入密码才能请求。&#xff08;如下&#xff09; 在没有配置的情况下&#xff0c;默认用户…

【2024最新版】Stable diffusion汉化版安装教程(附SD安装包),一键激活,永久免费!

目前广泛使用的Stable Diffusion Web UI简称(SDWebUI)是发布在开源平台Github上的一个Python项目,与通常的软件安装方法不同,这个项目并不是下载并安装即可使用的应用程序,而是需要准备执行环境,编译源码. 如果你是一个新手不会安装,现在可以直接使用一键启动包. 例如:国内的…

计算机网络实验-RIP配置与分析

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 一、相关知识 路由信息协议&#xff08;Routing Information Protocol&#xff0c;RIP&#xff09;是一种基于距离向量&#xff08;Distance-Vector&…

noVNC使用与介绍

noVNC使用与介绍报告 1. 概述 VNC&#xff08;Virtual Network Console&#xff0c;虚拟网络控制台&#xff09;是一种流行的远程桌面访问协议&#xff0c;它允许用户通过网络连接到远程计算机的图形界面。VNC协议的实现通常包括两个主要组件&#xff1a;服务器端&#xff08…

不同行情下算法的具体使用!

上一篇我们说到了不同公司算法交易的区分&#xff0c;有朋友提出了不同的行情下的算法交易应该怎么使用&#xff0c;小编今天就带大家了解下&#xff01;当然具体实际状况百出&#xff0c;这种可以实际为准&#xff08;韭菜修养全拼实际探讨交流&#xff09;&#xff01; 我们在…

Java:实现RSA加密与验证的方法详解

1 RSA简介 RSA加密是一种非对称加密。可以在不直接传递密钥的情况下&#xff0c;完成解密。这能够确保信息的安全性&#xff0c;避免了直接传递密钥所造成的被破解的风险。是由一对密钥来进行加解密的过程&#xff0c;分别称为公钥和私钥。两者之间有数学相关&#xff0c;该加…

AI画师来袭:精选6款AI美女绘画软件,让创意无限

随着互联网的发展&#xff0c;“AIGC” 一词成为了人们热议的话题&#xff0c;看着 AI 生成的美丽的风景照、生活照以及一些奇观&#xff0c;你最开始以为这些都是真实存在的&#xff0c;但如果有人告诉你&#xff0c;这是 AI 生成的&#xff0c;你一定会再次感叹 AI 技术的强大…

优化医疗数据管理:Kettle ETL 数据采集方案详解

在现代医疗保健领域&#xff0c;数据的准确性、完整性和及时性对于提高医疗服务质量和患者护理至关重要。为了有效管理和利用医疗数据&#xff0c;Kettle ETL&#xff08;Extract, Transform, Load&#xff09;数据采集方案成为了许多医疗机构的首选工具之一。本文将深入探讨Ke…