虚幻引擎---术语篇

一、前言

在使用虚幻引擎开发之前,需要对常用术语有基本的了解。它能帮助我们更好的理解引擎的架构,以及在后续的学习中构建知识体系。

二、虚幻引擎术语

1. 项目

  • 项目包含游戏的所有内容;
  • 每个虚幻引擎项目都与一个.uproject文件关联。

2. 关卡

  • 关卡(Level) 是开发者定义的游戏区域,又称为地图;
  • 关卡包含玩家可以看到并与其交互的所有内容;
  • 虚幻引擎将每个关卡保存为单独的 .umap 文件。

3. 世界

  • 世界(World) 是构成游戏的所有关卡的容器;
  • 世界处理关卡的流送和动态Actor的生成。

4. 蓝图

  • 蓝图是虚幻引擎中的可视化编程脚本;
  • 通常,蓝图在虚幻引擎被用于定义类或对象。

5. 类

  • **类(class)**定义虚幻引擎中特定事物的行为和属性;
  • 类可以被继承,继承后派生的类称为子类,被继承的类称为父类
  • 父类的信息可以通过继承传递给子类。

6. 对象

  • 对象是类的实例,即一个对象就是某类事物的一个实体;
  • 对象是系统的基本组成部分。

7. Actor

  • Actor是可以放到关卡中的任何对象,即在视口中能看到的所有东西;

8. 组件

  • 组件(Component) 是一种可以添加到Actor的功能。
  • 组件必须连接到Actor,不能独自存在

9. Pawn

  • **Pawn(士兵)**是Actor的子类;
  • Pawn定义了游戏内的形象或人像的基本行为和属性,如:NPC、玩家角色。

10. 角色

  • 角色(Character) 是Pawn的子类;
  • 角色定义了游戏内的玩家角色的基本行为和属性。

11. 玩家控制器

  • 玩家控制器(Player Controller) 可以获取玩家输入以控制玩家角色;
  • 玩家控制器还是多人游戏的主要网络互动点
  • 客户端只能使用其玩家控制器与服务器进行通信;

12. AI控制器

  • AI控制器(AI Controller) 操控游戏内的NPC;

13. 玩家状态

  • 玩家状态(Player State) 是游戏参与者在游戏中的状态;
  • 玩家状态通常包括名称、等级、血量、得分等。
  • 非玩家角色作为游戏世界的一部分而存在,没有玩家状态。

14. 游戏模式

  • 游戏模式(Game Mode) 用于设置游戏规则;
  • 针对不同的关卡可以设置不同的游戏模式;
  • 每个关卡都只能有一个游戏模式;
  • 在多人游戏中,游戏规则将发送到每个连接的客户端。

15. 游戏状态

  • **游戏状态(Game State) ** 包含游戏中需要发送到每个客户端的信息;
  • 在多人游戏中,每个玩家的机器上都有一个本地游戏状态实例;
  • 本地游戏状态实例从游戏状态的服务器实例获取更新的信息。

16. 体积

  • 体积(Volumes) 是带有边界的3D空间;
  • 根据连接到体积的效果,具有不同的使用方法,例如:
    • 阻挡体积:用于阻止Actor通过它们;
    • 施加伤害体积:对与该体积重叠的任何Actor造成持续伤害;
    • 触发器体积:在Actor进入或退出体积时触发事件。

17. 笔刷

  • 笔刷(Brush) 是用于描述3D形状的Actor;
  • 笔刷可以放置在关卡中以定义关卡的几何体。

三、坐标空间术语

1. 世界坐标

  • 物体在当前关卡中的位置称为世界坐标
  • 虚幻引擎的世界坐标系默认使用右手坐标系

2. 局部坐标

  • 物体在另一个物体中的位置称为局部坐标
  • 局部坐标系同样采用右手坐标系。

3. 法线

  • 垂直于平面上某一点的直线称为法线

4. 切线

  • 垂直于平面的法线并且与平面只有一个交点的直线称为切线

5. 视图

  • 摄像机拍摄到的画面称为视图。

6.裁剪

  • 摄像机能拍摄到的区域由视椎体决定;
  • 视椎体由六个平面包围而成;
  • 图元与视椎体的位置关系及裁剪情况有三种:
    • 图元完全位于视椎体内部,图元将会被保留;
    • 图元完全位于视椎体外部,图元将会被剔除;
    • 图元与视椎体边界相交,位于视椎体外部的图元部分会被剔除,其余部分会被保留。

这些常用术语在虚幻引擎官方文档中都有详细解释,这里只是按个人理解对这些术语做的记录和排序,术语的重要性无先后之分。

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

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

相关文章

2024深育杯misc2

题目描述:攻击者远程服务器监听所用的端口是( )?请提交flag,例如端口号为80,则提交Sangfor{80} 附件解压打开是一个raw文件 用volatility3工具查看ip链接信息

UI自动化测试中公认最佳的设计模式-POM

一、概念 什么是POM? POM是PageObjectModule(页面对象模式)的缩写,其目的是为了Web UI测试创建对象库。在这种模式下,应用涉及的每一个页面应该定义为一个单独的类。类中应该包含此页面上的页面元素对象和处理这些元…

L14.【LeetCode笔记】返回倒数第k个节点

目录 1.题目 2.分析 思路 代码 提交结果 1.题目 面试题 02.02. 返回倒数第 k 个节点 实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。 注意:本题相对原题稍作改动 示例: 输入: 1->2->3->4->5 和 …

linux-进程间通信

进程的通信是两个或多个进程实现数据的交互,让不同的进程看到同一份资源,而这份资源是由操作系统创建管理的。如果让其中一个进程来提供的话会破坏该进程的独立性,因为这个进程内部的数据可以被其他进程看到,那这个独立性就遭到了…

基于阿里云服务器部署静态的website

目录 一:创建服务器实例并connect 二:本地文件和服务器share 三:关于IIS服务器的安装预配置 四:设置安全组 五:建站流程 六:关于备案 一:创建服务器实例并connect 创建好的服务器实例在云…

Java算法OJ(10)哈希表练习

目录 1.前言 2.正文 2.1俩数之和 2.2无重复字符的最长子串 2.3罗马数字转整数 2.4整数转罗马数字 3.小结 1.前言 哈喽大家好吖,今天来分享几道哈希表相关的练习题,操作比较基础但是思想比较重要,另外有许多思路与解法都是学习参照题解…

二叉树:堆的建立和应用

在建立堆之前,我们要知道什么是树和二叉树 树 树是一种非线性的数据结构,它是由n(n>0)个结点组成的一个具有层次关系的集合,之所以把它叫做树,是因为它长得像一棵倒挂的树,也就是根在上面&…

oracle的静态注册和动态注册

oracle的静态注册和动态注册 静态注册: 静态注册 : 指将实例的相关信息手动告知 listener 侦 听 器 , 可以使用netmgr,netca,oem 以及直接 vi listener.ora 文件来实现静态注册,在动态注册不稳定时使用,特点是:稳定&…

postgresql按照年月日统计历史数据

1.按照日 SELECT a.time,COALESCE(b.counts,0) as counts from ( SELECT to_char ( b, YYYY-MM-DD ) AS time FROM generate_series ( to_timestamp ( 2024-06-01, YYYY-MM-DD hh24:mi:ss ), to_timestamp ( 2024-06-30, YYYY-MM-DD hh24:mi:ss ), 1 days ) AS b GROUP BY tim…

调试器 gdb/cgdb 的使用

一. touch mycode.c vim mycode.c cgdb 下载 Ubuntu:sudo apt-get install -y cgdb Centos: sudo yum install -y cgdb Linux 下我们编译好的代码无法直接调试 g/gcc 默认的工作模式是release模式 程序要调试,必须是debug模式,编译时…

通过DataWorks实现MaxCompute跨项目迁移

本文为您介绍如何配置不同MaxCompute项目并实现数据迁移。 背景信息 本文使用的被迁移的原始项目为教程《简单用户画像分析(MaxCompute版)》中的WorkShop2023项目,您需要再创建一个迁移目标项目,用于存放原始项目的表、资源、配置…

【Linux】安装cuda

一、安装nvidia驱动 # 添加nvidia驱动ppa库 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update# 查找推荐版本 sudo ubuntu-drivers devices# 安装推荐版本 sudo apt install nvidia-driver-560# 检验nvidia驱动是否安装 nvidia-smi 二、安装cudatoolkit&…

Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive

前言 ref 和 reactive 是 Vue3 中实现响应式数据的核心 API。ref 用于包装基本数据类型,而 reactive 用于处理对象和数组。尽管 reactive 似乎更适合处理对象,但 Vue3 官方文档更推荐使用 ref。 我的想法,ref就是比reactive好用,…

ctfshow-Misc入门(1-16)

misc1 查看图片得到flag misc2 1、打开文本,发现以“塒NG”开头 3、修改文件格式为png格式 4、查看图片,得到flag *遇到的问题:无法直接修改后缀名 *解决方法:需要点击文件夹,然后点击查看,将文件拓…

自动驾驶概念

1.线控底盘 由五大系统构成:线控转向、线控制动系统、线控换挡、线控油门踏板以及线控悬架。 2.自动驾驶分级 L1级别,也被称作驾驶支援阶段。在这一阶段,车辆系统能够根据驾驶环境来辅助驾驶者进行方向盘操作或减速操作中的一项&#xff0c…

【C】错误的变量定义导致sprintf()‌输出错误

问题描述 刚刚写一个用AT指令透传相关的函数,需要用到sprintf()‌拼接字符串。 结果发现sprintf()‌拼接出来的内容是错误的,简化后的代码如下: const char AT_CIPSEND_FIX_LENGTH_HEADER[11] "ATCIPSEND"; // 错误的&#xff0…

【Pytest+Yaml+Allure】实现接口自动化测试框架

一、框架思想 requestsyamlpytestallure实现接口自动化框架。结合数据驱动和分层思想,将代码与数据分离,易维护,易上手。使用yaml编写编写测试用例,利用requests库发送请求,使用pytest管理用例,allure生成…

内网渗透横向移动1

1.信息收集 (1)判断域控 shell net time /domain shell ping OWA2010CN-God.god.org (2)主机探测 浏览探测->网络探测 主机列表显示: (3)域用户收集: shell net user /domain…

C++初阶——类和对象(下)

目录 1、再探构造函数——初始化列表 2、类型转换 3、static成员 4、友元 5、内部类 6、匿名对象 7、对象拷贝时编译器的优化(了解) 1、再探构造函数——初始化列表 1. 构造函数初始化除了使用函数体内赋值,还有一种方式——初始化列表, 初始化列…

数据指标与标签在数据分析中的关系与应用

导读:分享数据指标体系的文章很多,但讲数据标签的文章很少。实际上,标签和指标一样,是数据分析的左膀右臂,两者同样重要。实际上,很多人分析不深入,就是因为缺少对标签的应用。今天系统的讲解下…