介绍 虚幻引擎是当前比较流行的游戏开发引擎之一,许多流行的游戏都是虚幻引擎开发的。 然而“引擎”这个词在行业中的定义比较模糊,对不同的人会产生不同的意思。它是一个代码库?是一个编辑器?还是一个工具箱? 可能它全都是,然而却差了很多文档来让人正确地认识它。 以前的工作中经常涉及到整合第三方库到引擎中,我花了很多时间来理解虚幻的build过程。现在把结果写在这个文章里。 如果你不理解C++是如何编译的
转载 2019-11-29 10:16:00
387阅读
2评论
TUniquePtr(唯一指针,对应c++ 11标准库中unique_ptr:用来取代C++98中的auto_ptr)是“其所指向的对象及其资源”的唯一拥有者,实现了独占式拥有(exclusive ownership)的概念。可以绑定单个对象T或对象数组T[],在其内部仅有一个成员变量为T* Ptr,所以其sizeof为8。具体逻辑详见:Engine\Source\Runtime\Core\Pub
有了基类之后,我们便可以开始做可以移动的单位了,先来看看Enemy(这回将在文章中涉及到一些脚本以外的部分,然而好多东西我都忘了…… 所以还特地翻出来视频重新看了一眼)。需要涉及到的部分有:创建动画和控制器添加刚体、碰撞体等属性添加脚本 一.         创建动画和控制器在本例中涉及到的动画均为帧动画,所
首先吐个槽,陆陆续续看了好多次视频我发现我还是不会虚幻引擎,直到我学会了unity再回来直接看文档,几分钟领悟... 论理解的重要性... 而且网上都偏向那个材质球玩意为主,文档学习是最快的方法首先 新建 选择空白项目 image.png 在内容管理器新建关卡 此东西等于unity的新建场景 或者 菜单新建 image.png
转载 2024-03-31 10:35:03
188阅读
简单介绍一下GenerateProjectFiles.bat以及如何生成UnrealBuildTool.exe先构建MsBuild所需环境配置 然后利用MsBuild 编译UnrealBuildTool 最后调用…\Binaries\DotNET\UnrealBuildTool.exe -ProjectFiles %* ,即调用UnrealBuildTool.exe并传入所需参数 运行Unreal
本文主要介绍UE4如何通过UnrealBuildTool.exe去生成工程文件“visual studio 中就是生成UE4.sln”文件关于UnrealBuildTool.exe是如何生成的请查看上一篇文章UnrealBuildTool.exe的生成一、UnrealBuildTool.exe 生成工程文件的全流程为什么点一下 “GenerateProjectFiles.bat” (UnrealE
年底了,把之前的草稿文章整理一下,整理好的发出来UnrealBuildTool简介参考:https://docs.unrealengine.com/4.27/en-US/ProductionPipelines/BuildTools/UnrealBuildTool/UE里的项目代码、包括UE本身的源码,都是划分成一个个module的dll的,每个Module用build.cs文件来控制对应modul
Running F:/Epic Games/UE_4.20/Engine/Binaries/DotNET/UnrealBuildTool.exe -projectfiles -project="D:/Users/Public/q/q.uproject" -game -rocket -progressDiscovering modules,
原创 2022-01-29 09:48:25
265阅读
一,内容概述如果想用第三方库,不得不提一下UE4的编译系统,UnrealBuildTool。UE4项目都是以模块为单位,不同模块构成整个系统。UnrealBuildTool会将不同模块编译到一起,每一个module都需要一个.build.cs文件,当然这个文件还做其他很多工作,比如跨平台等。使用第三方库的两种方法:1,直接在工程项目的build.cs文件中配置这个第三方库。2,根据UE4的模块定义
转载 2023-11-30 23:05:20
91阅读
Unreal4源码拆解UnrealBuildTool功能流程解析TargetDescriptor构建对象描述类知乎专栏:UBT源码解析 概述TargetDescriptor 构建目标的描述信息保存了构建一个UEBuildTarget所需要的所有信息创建方式:用于该项目依赖的项目, 这些项目需要在主项目之前编译时候进行编译会为这些需要提前编译的项目创建TargetDescriptor调用pub
一、问题 在配置一个模块的时候,我们通常会指定一个模块的依赖。那么一个runtime类型的module能在依赖中包含Editor类型的module吗? 二、哪个Target.cs文件被使用 当在编译环境中选择一个构建目标时,当选择不同的“解决方案配置”时,构建时传递给UnrealBuildTool的 ...
转载 2021-08-09 20:50:00
191阅读
2评论
一、准备工作如果我们想要在UE4中读写Json文件,那么我们必须使UE4包含Json和JsonUtilities这两个模块,那么UE4如何添加模块呢?UE4添加预定义模块的方法很简单,我只需打开工程的.Biuld.cs文件,在其中的PublicDependencyModuleNames.AddRange()函数中追加两个模块即可,如:using UnrealBuildTool; public c
转载 2024-09-05 10:57:50
137阅读
Unreal4源码拆解-UnrealBuildTool功能流程解析-ModuleDescriptor 引擎版本4.274.2x功能不会差太多主要功能概括ModuleDescriptor类,如其命名,模块描述信息。功能上大致是以JSON的方式读取和更新 .uplugin文件 。具体设计上类内变量名和JSON中项名相同。 注意:可读可写 .uplugin文件首先.uplugin文件文件是JSON文件,
UE4的蓝图之强大让人欲罢不能,但是实际在项目的开发中,C++与蓝图都需要结合使用,单独选择一样开发都不是特别科学,这里我就来研究了一下C++使用UMG接口来操作界面,我的目的非常简单,用C++来创建界面,并在创建成功的时候,告诉界面打印出相关信息。using UnrealBuildTool;public class UMGProject : ModuleRules{ public UMGPro
转载 2022-12-13 14:41:22
923阅读
UBT中的构建平台管理工具类UEBuildPlatform前言UEBuildPlatform 是一个工具类,静态内容 包含了 所有注册平台的组织和构建平台信息等等 以及 相关处理函数。同时也是一个基类。以此作为 基类拓展出了很多子类,均在Engine\Source\Programs\UnrealBuildTool目录下子类根据平台建立,主要增加保存了 对应平台 的 SDK相关信息和处理函数 Pla
转载 5月前
21阅读
编译配置描述虚幻引擎 4 采用了一种自定义的编译方式,通过我们的 UnrealBuildTool 工具(UBT)。该工具通过处理一些必要的信息来构建引擎的反射体系,并将 C++ 的代码和蓝图、网络复制、序列化以及垃圾回收系统进行关联整合。每种编译配置包含两种关键字。第一种表明了引擎以及游戏项目的状态。比如,如果使用 Debug 配置来进行编译,将可以调试游戏代码。第二个关键字表
转载 2023-06-30 14:02:19
136阅读
前文说到UE3开始,虚幻就使用了UnrealBuildTool(以下简称UBT)来编译和生成代码。为什么这么做而不是使用VS是很好理解的:因为VS跨平台会比较麻烦。像虚幻这样体量的工程,单为工程做一次VS配置就基本是一天的时间而且UE4还不像UE3那样就十几个工程,把所有uproject都看做工程的话,得几十了。依赖关系复杂度几何增长,用VS的工具去维护……而且要维护各个平台和配置……再加上维护完
转载 2024-04-20 11:44:39
91阅读