【UE5】资源(Asset)

了解UE游戏的基本构成

资源(Asset):
· 在UE中,资源(Asset)是指游戏中使用到的各种素材,例如模型、纹理、材质、声音、动画、蓝图、数据表格、关卡等(通常以uasset结尾),他们是构成游戏的基本组成部分。
· 资源可以是从外部导入的文件,也可以是通过UE提供的编译器创建的内容。右键可以创建的类型,都是UE里的资源
· 大部分资源并不由开发人员制作,但是需要了解并使用它们

资产创建的位置:

由虚幻编辑器中创建:

  1. 游戏关卡
  2. 材质(Materials)
  3. 粒子系统
  4. 过场动画序列
  5. 蓝图脚本
  6. 给人工智能用的导航网格(AI Navigation Meshes)
  7. 预计算光照信息(Light Maps)
  8. 场景(光卡)光照

由外部应用程序中创建:

  1. 静态网格物体(Static Meshes)
  2. 骨架网格物体(Skeletal Meshes)
  3. 骨架动画(Skeletal Animation)
  4. 贴图(Textures)
  5. 声音(WAVS)
  6. IES灯光信息
  7. Nvidia APEX文件(APB 及 APX)

逻辑(Logic):
· 在使用UE的开发过程中,资源和逻辑是密不可分的
· 逻辑是指游戏中的各种行为和交互逻辑,例如角色控制、AI、任务等
· 资源可以包含逻辑,如蓝图(BP)、行为树(BT)、动画状态机等
· C++代码则是纯粹的逻辑
· 将逻辑和资源有机地结合起来,以实现游戏的玩法,是游戏的核心任务
· 在游戏开发中,逻辑和资源是相互依存的,只有合理的组合和利用它们,才能够打造出丰富、生动、有趣的游戏体验

对每一个组成部分有简单的认识

静态网格体(Static Mesh):
· 是由一系列多边形构成的几何体的组成部分,缓存在视频存储器中,可以使用显卡进行渲染
· 俗称 不可动的3D模型,通常用于构建游戏世界中的静态元素,如建筑物、装饰物、地形等(不可动指的是不支持动画和形变、但可以进行平移旋转和缩放)
· Static Mesh通常是由建模软件(如 3ds Max、Maya等)创建完成后,通过导入插件将其导入到虚幻引擎中
· UE还提供了一些工具来优化Static Mesh的性能,如静态光照、LOD(Level of detail)和碰撞体等

在内容游览其中筛选静态网格体
在这里插入图片描述

材质(Materials):
· 虚幻引擎中的材质定义了场景中对象的表面属性,广义上,可以将材质理解为网格体上控制其视觉外观的“涂料”
· 在虚幻引擎中,Materials的应用非常广泛。它不仅可以应用于静态模型(Static Meshs),还可以应用于骨骼模型(Skeletal Meshs),并且可以通过实例化材料(Materials Instances)的方式实现实时的材质变化
· 此外,虚幻引擎还提供了各种材质优化技术,例如材质实例(Materials Instances)、材质球(Materials Layers),以满足游戏开发者对材质可定制性和性能的要求

打开材质编辑器
在这里插入图片描述
在这里插入图片描述

纹理(Texture):
· 纹理是一种主要用于材质的图像资源
· 材质可能会用到多种纹理,实现多种目的,例如一个普通材质可能用到基础颜色纹理,高光纹理、以及法线纹理
· 纹理也可用于UI

骨架网格体(Skeletal Meshes & Skeletal Animation):
· 骨架网格体由两部分构成:表面的一层多边形,使多边形顶点产生动画的一组层次化的关联骨骼
` 骨骼动画是指将骨骼网格与动画动作捆绑在一起,实现角色模型的动态表现。在Skeletal Animation中,每个骨骼都有自己的动画曲线,通过将这些动画曲线结合在一起,就能够实现整个角色的动态动画效果
在内容游览其中筛选骨架网格体
在这里插入图片描述

在这里插入图片描述
查看动画
在这里插入图片描述

蓝图(Blueprint):
· 虚幻引擎中的 蓝图可视化脚本 系统是一类完整的游戏性脚本系统,此系统的基础概念是使用基于节点的界面在虚幻编辑器中创建游戏性元素。和其它一些常见的脚本语言一样,蓝图的用法也是通过定义在引擎中的面向对象的类或者对象。使用虚幻引擎后便知,使用蓝图所定义的对象通常被直接称为“蓝图”
· 该系统灵活而强大,使设计师能够使用通常仅面向程序员的几乎所有概念和工具。此外,程序员可以借助虚幻引擎C++实现可用的蓝图特定标记创建基线系统,而此系统又可被设计师加以拓展

动画蓝图(Animation Blueprint):
· 动画蓝图是一种特殊的蓝图,它用于控制骨骼网格体的动画效果,动画蓝图编辑器(Animation Blueprint Editor) 中的 图表(Graphs)可以效果动画,允许直接控制骨架的骨骼,或设置骨骼网格体逐帧逻辑,以便创建最终动画姿势

玩家输入(PlayerInput):
· 玩家输入对象负责将来自玩家的输入转换为Actor(如 PlayerControllers 或 Pawn)可以理解的数据,PlayerInput是输入处理流程的一部分,通过玩家输入映射和输入组件,将玩家的硬件输入转化为游戏事件和运动。
· PlayerInput是用于管理玩家输入的,PlayerController类中的UObject。它仅在客户端上生成。PlayerInput 中定义了两种结构体,第一种是FInputActionKeyMapping,它定义了操作映射(ActionMapping)。另一种是FInputAxisKeyMapping,它定义了轴映射(AxisMapping)
在这里插入图片描述

摄像机(Camera):
· 摄像机代表了玩家的视角,比如玩家如何查看世界。因此,摄像机只和玩家控制的人物有关
· PlayerController会指定一个摄像机类,并实例化一个Camera Actor(ACameraActor)以此计算玩家从哪个位置和角度观察世界

用户界面(UI):
· 用户界面和头显(HUD)是游戏向玩家提供游戏信息以及在某些情况下允许玩家与游戏互动的方式
· 虚幻示意图形界面处理器(Unreal Motion Graphic UI Designer)(UMG)是虚幻引擎中的一套用户界面系统,用于创建游戏中的图形用户界面(GUI),UMG提供了一套可视化的工具和蓝图系统,使开发者能创建交互式和响应式的UI元素,如按钮、文本、图像、滚动条等
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

关卡(Level):
· 关卡是游戏的“世界”的全部或一部分。关卡包含玩家可以看到并于之交互的所有内容,例如环境、可用对象、其他角色,等等。在电子游戏中,常常有多个关卡,彼此之间有划分明确的过度(例如,在你打败一个关卡中的boss之后,你就会继续到下一个关卡)
· 虚幻引擎将每个关卡保存为单独的“.umap”文件

Level与World的关系:
· 为了游戏布置和其他因素,将整个游戏世界(World)划分为多个关卡(Level),一个World由一个或多个Level组成,World负责这些Level的加载和释放,对他们进行管理
· 多个Level拼接成为一个游戏世界

行为树(Behavior Tree):
行为树是用于创建角色AI行为的一种模块,行为树是一种基于状态机和决策树的机制,它可以使开发人员以图形化的方式创建角色的AI行为,从而使角色可以自主的及逆行决策并执行相应的行为
· 执行逻辑时,行为树会使用一种名为 黑板 的独立资源来存储它需要知道的信息,黑板解耦了行为树和外部的数据交换,让行为树变成存粹的逻辑

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

freeswitch设置多个execute_on_media

概述 freeswitch是一款简单好用的VOIP开源软交换平台。 fs中有非常多的接口和通道变量,使用方式多变。 官方文档有时候也仅仅是介绍了最基本的使用方法和格式。 环境 centos:CentOS release 7.0 (Final)或以上版本 freeswitch:v1.6 G…

办公技巧:Word中插入图片、形状、文本框排版技巧

目录 一、插入图片排版技巧 二、添加形状排版技巧 三、插入“文本框”排版技巧 我们平常在制作word时候经常会遇到插入选项卡下的图片、形状和文本框这三种情况下,那么如何使得Word文档当中添加这三个元素的同时,又能保证样式美观呢,今天小…

Leetcode200. 岛屿数量

Every day a Leetcode 题目来源:200. 岛屿数量 解法1:深度优先搜索 设目前指针指向一个岛屿中的某一点 (i, j),寻找包括此点的岛屿边界。 从 (i, j) 向此点的上下左右 (i1,j),(i-1,j),(i,j1),(i,j-1) …

静态链表的结构设计与主要操作功能的实现(初始化,头插,尾插,判空,删除,输出,清空,销毁)

目录 一.静态链表的结构设计 二.静态链表的结构设计示意图 三.静态链表的实现 四.静态链表的总结 一.静态链表的结构设计 typedef struct SNode {int data;//数据int next;//后继指针(下标) }SNode,SLinkList[MAXSIZE]; 二.静态链表的结构设计示意图 0:有效数据链的头节点;…

ATA-3080功率放大器在海底管道悬跨振动激振器检测中的应用

海底管道悬跨振动检测是指对海底管道在悬跨(即管道跨越两个支撑点之间的区域)段发生的振动进行监测和分析的过程。为了实现海底管道悬跨振动检测,通常使用以下几种方法: 1.加速度传感器:通过在管道表面安装加速度传感器…

现在可以手动获取真随机数吗?

获取真正的随机数并不像获取伪随机数那样简单,因为真随机数的产生依赖于物理过程或者其他难以预测的现象。在计算机科学中,通常使用的是伪随机数,它们是通过算法生成的,看起来像是随机的,但实际上是可以重现的。 如果…

新生儿散光:原因、科普和注意事项

引言: 散光是一种常见的眼睛问题,虽然在新生儿时期相对较少见,但了解其原因、科普相关知识,并提供一些建议的注意事项,对于婴儿的视力健康至关重要。本文将深入探讨新生儿散光的原因、相关科普知识,并为父…

新的centos7.9安装jenkins—(一)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 因为是用java8,所以还是要最后java8版本的jenkins,版本号是2.346.3,后…

​ 一文带你了解多文件混淆加密

目录 🔒 一文带你了解 JavaScript 多文件混淆加密 ipaguard加密前 ipaguard加密后 ​ 🔒 一文带你了解 JavaScript 多文件混淆加密 JavaScript 代码多文件混淆加密可以有效保护源代码不被他人轻易盗取。虽然前端的 JS 无法做到纯粹的加密&#xff0c…

Echarts 大屏注册自定义地图解析文件流报错问题解决

效果图: 1、首先通过后台接口获取到SVG图片的文件流,postman能够正确解析出文件流,前端调用api时需要设置返回的响应格式为image/svg+xml格式,否则解析失败 拿到文件流后是这样的 <?xml version="1.0" encoding="utf-8"?> <!-- Generator: …

6.3.WebRTC中的SDP类的结构

在上节课中呢&#xff0c;我向你介绍了sdp协议&#xff0c; 那这节课呢&#xff0c;我们再来看看web rtc中。是如何存储sdp的&#xff1f;也就是sdp的类结构&#xff0c;那在此之前呢&#xff1f;我们先对sdp的内容啊&#xff0c;做一下分类。因为在上节课中呢&#xff0c;虽然…

软件设计不是CRUD(6):低耦合模块设计实战——组织机构模块(上)

组织机构功能是应用系统中常见的业务功能之一&#xff0c;但是不同性质、不同行业背景、不同使用场景的应用系统对组织机构功能的要求可能完全不一样。所以使用这样的功能对低耦合模块设计进行示例性的讲解是比较具有代表性的。在后续的几篇文章中&#xff0c;我们会首先进行示…

linux磁盘清理

目录 排查过程1、查看磁盘占用情况2. 按照占用大小进行倒排-当前目录及其子目录3.当前目录磁盘占用情况 清理命令 排查过程 1、查看磁盘占用情况 df -hdf -h 命令用于显示磁盘空间的使用情况&#xff0c;以人类可读的方式呈现&#xff0c;其中&#xff1a;df 是 “disk free”…

ROS2编译Python节点来发布和订阅的实践《2》

通过熟悉&#xff1a;ROS2对比ROS1的一些变化与优势&#xff08;全新安装ROS2以及编译错误处理&#xff09;《1》 我们大概了解到了ROS2的重新设计带来的巨大优势&#xff0c;最核心的就是去掉了roscore&#xff0c;这样就避免了因为节点管理器崩溃而使整个系统都崩溃的场景出现…

机器学习/sklearn 笔记:K-means,kmeans++,MiniBatchKMeans,二分Kmeans

1 K-means介绍 1.0 方法介绍 KMeans算法通过尝试将样本分成n个方差相等的组来聚类&#xff0c;该算法要求指定群集的数量。它适用于大量样本&#xff0c;并已在许多不同领域的广泛应用领域中使用。KMeans算法将一组样本分成不相交的簇&#xff0c;每个簇由簇中样本的平均值描…

【ChatGLM2-6B】Docker下部署及微调

【ChatGLM2-6B】小白入门及Docker下部署 一、简介1、ChatGLM2是什么2、组成部分3、相关地址 二、基于Docker安装部署1、前提2、CentOS7安装NVIDIA显卡驱动1&#xff09;查看服务器版本及显卡信息2&#xff09;相关依赖安装3&#xff09;显卡驱动安装 2、 CentOS7安装NVIDIA-Doc…

idea 问题合集

调试按钮失效&#xff1a; 依次点击&#xff1a;Modules-web-src-Sources&#xff0c;重启IDEA即可&#xff08;网上看到的方法&#xff0c;原因呢未明&#xff09;

Modbus故障码速查手册(故障码含义、分析原因、详细解读)

Modbus故障码速查手册 文章目录 Modbus故障码速查手册引言故障码表故障详解0x01 IllegalFunction0x02 IllegalDataAddress0x03 IllegalDataValue0x04 SlaveDeviceFailure0x05 Acknowledge0x06 SlaveDeviceBusy0x08 MemoryParityError0x0A GatewayPathUnavailable0x0B GatewayTa…

java spring-boot 修改打包的jar包名称

修改pom文件 <finalName>lzwd</finalName><build><finalName>lzwd</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plu…

IP地址定位的误差问题及解析

随着互联网的普及&#xff0c;IP地址定位成为了数字时代中不可或缺的一部分&#xff0c;被广泛应用于各种场景&#xff0c;从位置服务到网络安全。然而&#xff0c;尽管IP地址定位提供了便利&#xff0c;但其准确性仍然受到多种因素的影响&#xff0c;存在一定的误差。本文将深…
最新文章