UE4从零开始
后山之人
这个作者很懒,什么都没留下…
展开
-
UE4 UMG控件的可视性
/** Is an entity visible? */UENUM(BlueprintType)enum class ESlateVisibility : uint8{ /** Visible and hit-testable (can interact with cursor). Default value. */ Visible, /** Not visible and takes up no space in the layout (obviously not hit-testable).原创 2021-04-20 17:28:34 · 2397 阅读 · 0 评论 -
【UE4从零开始 007】Tick简介
Tick指的是以规则间隔(通常为每帧一次)在一个Actor或Component上执行指定的代码。1、Tick开关在构造函数中,通过设置 bCanEverTick 的值(true/false)来开启或关闭Tick。Actor使用 PrimaryActorTick.bCanEverTick 对应的Tick函数为 Tick。Component使用 PrimaryComponentTick.bC...原创 2019-08-02 16:17:25 · 5934 阅读 · 1 评论 -
【UE4从零开始 020】初识UMG UI设计器
1、简介虚幻运动图形界面设计器(Unreal Motion Graphics UI Designer)(UMG) 是一个可视化的 UI 创作工具,可以用来创建 UI 界面。UMG的核心是控件(如按钮、复选框、进度条等),这些控件是一系列预先制作的函数,可用于构建界面。这些控件在专门的控件蓝图中编辑,该蓝图使用两个选项卡进行构造:设计器(Designer) :可视化编辑UI界面。图表(Gra...原创 2019-08-19 15:53:29 · 1518 阅读 · 0 评论 -
【UE4从零开始 013】目录结构简介
可以关联Github账户到Epic Game账户,然后加入到 EpicGames组,这样就可以在Github上下载UE4的源码了。通用目录一些子目录在引擎和游戏项目目录中都有:Binaries --包含可执行文件或编译期间创建的其他文件。Build --包含构建引擎或游戏所需的文件,包括创建特定于平台的构建版所需的文件。Config --配置文件,设置用来控制引擎行为的值。游戏项目Co...原创 2019-08-14 16:16:28 · 710 阅读 · 0 评论 -
【UE4从零开始 021】控件类型介绍
1、Common选项说明边框(Border)边框是容器控件,可以包含一个子控件,提供使用边框图像和可调节的填补将其包围起来的机会。按钮(Button)按钮是单子项、可点击的Primitive控件,它可实现基本交互。你可将任何其他控件放入按钮控件中,以在UI中创建一个更复杂且有趣的可点击元素。复选框(Check Box)借助复选框(Check Box)控件,...原创 2019-08-19 17:26:37 · 2719 阅读 · 0 评论 -
【UE4从零开始 022】显示控件蓝图
1、显示控件蓝图创建 控件蓝图 并设计好布局之后,若要令其显示在游戏内,需要在另一个蓝图中(例如 关卡蓝图 或 角色蓝图 )使用 Create Widget 和 Add to Viewport 节点调用它。在上述示例中,Create Widget 节点调用 类(Class) 部分下指定的控件蓝图,返回值(Return Value) 为生成的结果,Add to Viewport 函数用于在屏幕...原创 2019-08-19 18:11:45 · 7487 阅读 · 5 评论 -
【UE4从零开始 014】配置文件简介
配置文件可用于加载项目时初始化属性。以分段排列的键值对(Key-Value)存储。单个给定Key可以与一个或多个Value相关联。引擎配置文件用于对象和变量的默认值。用户输入配置可用于键绑定。当使用 项目向导 创建新的空白项目时,将创建 DefaultEngine.ini 和 DefaultGame.ini 。如果需要,以模板创建的新项目还可以生成 DefaultEditor.ini 和 Def...原创 2019-08-14 18:15:00 · 1802 阅读 · 0 评论 -
【UE4从零开始 023】属性绑定
UMG 最有用的一个方面是能够将控件的属性绑定到蓝图中的函数或变量。将属性绑定到蓝图中的函数或变量后,只要调用函数或更新变量,都会在控件中反映出来。绑定函数将文本的内容绑定自一个新建的或已有的函数。绑定变量将文本的内容绑定自一个变量。测试在 Tick 中不停的修改 MyText0 和 MyText1 ,运行查看效果。...原创 2019-08-20 15:51:26 · 1584 阅读 · 0 评论 -
【UE4从零开始 024】按钮绑定事件
为按钮绑定事件在 Designer 标签页面中,选中 “按钮”,在 详情 面板最下方:或在 Graph 标签页面中,选中 “按钮”,在 详情 面板最下方:点击 “+” 即可绑定相应的事件。添加相应的函数测试。如下:...原创 2019-08-20 16:38:31 · 4335 阅读 · 1 评论 -
【UE4从零开始 010】容器之TArray
TArray 是虚幻引擎中最常用的容器类。其设计决定了它速度较快、内存消耗较少、安全性高。1、创建TArray<int32> IntArray;这会创建一个空数组,可以保存整数序列。2、填充数据Init使用 Init 函数,用大量元素副本填入TArray。如:IntArray.Init(10, 5);// IntArray == [10,10,10,10,10]...原创 2019-08-07 17:24:19 · 15782 阅读 · 1 评论 -
【UE4从零开始 012】代码编写标准
1、命名规则命名(如类型或变量)中的每个单词需 大写首字母 且单词之间无下划线。如:Health和UPrimitiveComponent,而不是lastMouseCoordinates或delta_coordinates。类型名前缀需使用额外的大写字母,以将其和变量名进行区分。例如:FSkin为类型名,而Skin则是FSkin的实例。类型和变量的命名为名词。函数名为动词,以描述函数的效果...原创 2019-08-13 16:39:24 · 1098 阅读 · 0 评论 -
【UE4从零开始 011】容器之TMap
TMap 也是是虚幻引擎中最常用的容器类。与TArray很相似,不过TMap是以键值对<Key, Value>的形式存在的。1、创建 TMap<int32, FString> FruitMap;2、填充数据Add 和 Emplace填充Map的标准方式是使用 Add 函数: FruitMap.Add(5, TEXT("Banana")); FruitMap....原创 2019-08-08 12:54:12 · 5318 阅读 · 0 评论 -
【UE4从零开始 008】字符串简介
UE4中提供了多个不同类,以便于根据需要处理字符串。1、FNameFName通过一个轻型系统使用字符串。在此系统中,字符串会存储在数据表中,以便能被重复使用。FName不区分大小写且不可变。FName的存储系统和静态特性决定了通过Key进行FName的查找和访问的速度较快。FName子系统的另一个功能是使用HASH表为FName转换提供快速字符串。FName不区分大小写,作为索引组合存储在...原创 2019-08-02 19:31:01 · 1254 阅读 · 0 评论 -
【UE4从零开始 001】下载与安装
1、创建Epic Games帐户要运行Epic Games Launcher,需要拥有有效的Epic Games帐户。前往UnrealEngine.com单击 立即开始创建账户2、下载并运行安装程序拥有有效Epic Games帐户,便能下载安装程序(Epic Games Launcher安装应用程序)。根据操作系统,单击 下载 按钮。下载完成后 运行 安装程序在电脑...原创 2019-07-31 11:49:07 · 2304 阅读 · 0 评论 -
【UE4从零开始 002】第一个C++ Actor类
https://www.unrealengine.com/account/connected我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,...原创 2019-07-31 15:11:05 · 1948 阅读 · 1 评论 -
【UE4从零开始 003】公开C++中的属性到虚幻编辑器
让C++中的属性出现在虚幻编辑器中创建C++类后,我们希望公开一些属性到虚幻编辑器中,以便可以在编辑器中设置这些属性的值。将属性公开到编辑器非常简单,只需要使用说明符 UPROPERTY 即可。 如上图我们只需在属性声明的上一行加入 UPROPERTY(EditAnywhere) ,保存并且编译,这样我们就能在编辑器中看见该属性并且可以设置它的值了。我们还可以使用分类功能来设置 To...原创 2019-07-31 15:53:13 · 1425 阅读 · 0 评论 -
【UE4从零开始 004】通过蓝图扩展C++类
1、通过蓝图扩展C++类根据 MyFirstActor 类创建新的 蓝图类。在 内容浏览器 视图中,点击 Add New 按钮 或者单击 右键 ,然后点击 Blueprint Class。在弹出的窗口中最下方,点击 All Class, 在搜索框中输入 MyFirstActor ,然后选中我们自己创建的 MyFirstActor类,并且点击 Select 按钮,创建成功后,重命名为 My...原创 2019-07-31 18:49:57 · 2300 阅读 · 2 评论 -
【UE4从零开始 005】UE4中最基础的类
1、类从大部分Gameplay类可以派生出4中主要类型的类。分别是UObjectAActorUActorComponentUStruct当然也可以创建不继承任何父类的类,但它们不会参与到引擎内部的构建中。UObject虚幻引擎中的基本构建块叫做UObject,该类结合UClass使用,可以提供引擎中的多个最重要的基本服务:反射属性和函数序列化属性垃圾回收按名称查找UO...原创 2019-08-01 13:15:14 · 1575 阅读 · 2 评论 -
【UE4从零开始 009】定时器 Timer简介
定时器 可以设置在经过一段时间后以固定的时间间隔重复或单次执行某个操作。定时器管理定时器在全局 定时管理器(FTimerManager)中管理。全局定时管理器存在于 AActor(通过GetWorldTimerManager()获得)和 UWorld(通过GetTimerManager()获得)中。可以通过两个函数使用定时器管理器来设置定时器:SetTimer 和 SetTimerForNex...原创 2019-08-05 17:35:36 · 5425 阅读 · 0 评论 -
【UE4从零开始 015】蓝图简介
1、蓝图介绍UE4中引入了一个强大的新功能:蓝图可视化脚本。蓝图系统是一类完整的游戏性脚本系统,此系统的基础概念是使用基于节点的界面在虚幻编辑器中创建游戏性元素。使用蓝图所定义的对象通常被直接称为“蓝图”。2、蓝图用法在其基本形式中,蓝图是游戏开发中的可视化脚本。通过使用引线连接节点(Nodes)、事件(Events)、函数(Functions)和变量(Variables)来创建复杂的游戏性...原创 2019-08-15 15:04:33 · 3073 阅读 · 0 评论 -
【UE4从零开始 016】关卡蓝图
1、默认关卡蓝图每个游戏都可以在 DefaultGame.ini 配置文件中指定默认的关卡蓝图类,所有新地图的关卡蓝图都将使用此类创建,以允许特定于游戏的特殊功能。2、打开关卡蓝图若要打开关卡蓝图进行编辑,请在 关卡编辑器工具栏(Level Editor Toolbar) 中 点击 蓝图(Blueprint) → 打开关卡蓝图(Open Level Blueprint)。此操作将在 蓝图...原创 2019-08-15 16:41:46 · 4069 阅读 · 0 评论 -
【UE4从零开始 025】富文本
UE4中富文本的使用方式跟其他引擎有些区别。UE4中的富文本需要和一个数据表配套使用。在使用富文本之前,需要创建一个数据表资源。1、创建数据表资源创建数据表资源和创建其他资源一样,在内容浏览器中单击 新增(Add New) 即可。然后选择 其他(Miscellaneous)>数据表(Data Table)。当显示 选取结构(Pick Structure) 框时,您可以选择 富图像行(...原创 2019-08-20 19:20:49 · 2536 阅读 · 0 评论 -
【UE4从零开始 017】蓝图类
1、创建蓝图类通过内容浏览器创建在 内容浏览器(Content Browser) 中点击 Add New 。在下拉菜单中选择 蓝图类(Blueprint Class)。选择一个父类。额外的蓝图类型可以在 Create Advanced Asset 中的 Blueprints选项卡中创建。如图:单击右键创建在内容浏览器的右侧 资源视图 中的空白区域单击右键:在内容浏览器的...原创 2019-08-15 17:50:11 · 756 阅读 · 0 评论 -
【UE4从零开始 018】蓝图接口
1、创建蓝图接口与创建 蓝图类 类似,只不过需要在 Create Advanced Asset 中的 Blueprints 选项卡中选择 Blueprint Interface :2、蓝图接口编辑器界面菜单工具栏我的蓝图详情图表编辑器注意:此时的 图表编辑器 视图与蓝图类编辑器中的图表编辑器视图稍有不同,它显示为灰色,并且不能留了,也不能在其中添加任何节点。因为接口本身不...原创 2019-08-15 18:19:54 · 787 阅读 · 0 评论 -
【UE4从零开始 019】蓝图宏库
1、创建蓝图宏库与创建 蓝图类 类似,只不过需要在 Create Advanced Asset 中的 Blueprints 选项卡中选择 Blueprint Macro Library :2、蓝图宏库编辑器界面菜单工具栏我的蓝图详情图表编辑器3、创建蓝图宏蓝图宏可以在蓝图类或者关卡蓝图中创建,就像蓝图函数一样。它们还可以组织到蓝图宏库中。若要在蓝图类、关卡蓝图或蓝图宏库...原创 2019-08-16 11:22:28 · 1937 阅读 · 0 评论 -
【UE4从零开始 026】裁剪
裁剪 是使用边界框将渲染对象(图形和文本)限制在某个区域中,以使超出边界框的任何内容都不显示。在本示例中,每个按钮都是显示的文本的父项。这些示例将展示是由按钮还是文本控制裁剪。左图 - 按钮或文本上都未启用裁剪。中图 - 文本上启用裁剪。右图 - 按钮上启用裁剪。画布(Canvas) 面板(又称裁剪区)的轮廓为蓝色,代表游戏屏幕,它将会裁剪(即不绘制)游戏超出该区域的任何内容。...原创 2019-08-21 18:15:45 · 1986 阅读 · 0 评论 -
【UE4从零开始 027】插槽 Slot
UMG中的 插槽(Slot) 有点类似于 Transform 组件,我们在UMG中设计UI时,使用 插槽(Slot) 来设置控件的坐标、大小等。此外,插槽具有多种类型,UMG会根据父节点的不同自动使用正确类型的插槽。控件所用的插槽类型以括号标识,如:上图表示插槽类型为:CanvasPanelSlot。AnchorsAnchors 有如上图16种默认锚定类型,当然我们也可以自定义锚定类...原创 2019-08-22 11:48:27 · 6053 阅读 · 0 评论 -
【UE4从零开始 028】UMG的Timeline动画
在控件蓝图编辑器最下方,是动画编辑区域,我们可以为我们的UI制作一些简单的动画。1、添加动画在左侧 动画区域 点击 “+Animation” ,添加一个动画轨并命名,在游戏中我们可以直接通过名称来播放对应的动画。2、添加控件在右侧 时间轴 区域的左半部分,点击 “+Track”,选择我们需要添加动画的控件,3、添加关键帧右侧 时间轴 区域的右半部分,是我们动画的 时间轴 和 关键...原创 2019-08-23 12:55:26 · 3471 阅读 · 0 评论