随笔分类 - 虚幻引擎
摘要:准备工作 安装插件VictoryPlugin与vaRest VictoryPlugin插件分享链接:https://pan.baidu.com/s/1wzDsZSitZeTuZBpz3PqT8A?pwd=8888 提取码:8888 vaRest可在EPIC中自行安装 注册高德开发平台账户 注册完成后
阅读全文
摘要:在实在联网功能时,我们常常需要获取到会话类型,当我们需要在蓝图中使用这些类型的时候。如果我们直接在头文件中直接使用会话相关类型在编译时就会报错 Unrecognized type “你所引用的类” - type must be a UCLASS,USTRUCT or UENUM 这时候就需要利用结构
阅读全文
摘要:Widget Blueprint could not be loaded because it derives from an invalid class 蓝图控件无法加载,因为它来自无效的类 生成节点部件必须创建一个类 这是我在打包一个含自定义插件的项目时出现的问题 出现问题的原因:在打开编译器的
阅读全文
摘要:我们通过Steam访问线上服务不知道怎么配置的可以看我的另一篇 UE /虚幻 Steam配置 配置完成后在角色类的头文件中添加一个变量用于存储获取到的会话接口 public: // 指向在线会话接口的指针 // #include "Interfaces/OnlineSessionInterface.
阅读全文
摘要:第一步:在项目插件中,打开Online Subsystem Steam 第二步:打开项目C++文件,在 .Build.cs文件下的公共依赖模块名称中添加 OnlineSubsystem 和 OnlineSubsystem 第三步:找到官方文档的OnlineSubsystemSteam的Default
阅读全文
摘要:蓝图实现 创建一个联机地图,我命名为 “ onlineMap01 ” ,然后在角色蓝图中创建两个按钮事件,一个用于打开地图,另一个用于加入创建的地图 OpenLevel的options中的listen是指定监听服务器,简单来说就是将当前端设为服务端 可以利用UE编辑器直接开两个标准窗口测试,或者打包
阅读全文
摘要:蓄力攻击:按住攻击键一段时间后自动或松开时释放攻击 这里写的是按住攻击键一段时间后自动攻击。 通过两个布尔值进行判断,一个判断是否正在攻击(IsAttack),一个判断是否蓄力完成(IsFocoEenrgia),这里当蓄力部分完成时,那么这一次攻击就是蓄力攻击,在松开时就不需要进行普通攻击了。然后在
阅读全文
摘要:通过第一次按键改变一个布尔值当松开或按下一段时间后重置该值,在短时间内值重置之前按下第二个按钮,达到组合键的效果 这是只有两个键的组合键,如果需要增加组合键的数量,只需要重复增加判断值,和1键按下的操作即可
阅读全文
摘要:首先获取到轴输入,前后为 Y 轴输入,左右为 X 轴输入,将这两个值存为一个 向量2D 再通过获取到的向量2D的值计算出运动的方向值 其中Direction得到的值为与具体方向如下图
阅读全文
摘要:首先基于ActorComponent创建一个组件 HealthComponent,将需要的变量与函数创建 #include "CoreMinimal.h" #include "Components/ActorComponent.h" #include "HealthComponent.generat
阅读全文
摘要:在蓝图中播放蒙太奇动画,可以使用 PlayAnimMontage 和 PlayMontage,并且PlayMontage可以在,蒙太奇动画播放完的时候执行想要执行的程序 但是在UEC++中,没有PlayMontage(emmmm有可能只是我没找到) 这时候需要实现在播放蒙太奇动画之后需要的程序时间,
阅读全文
摘要:首先基于Character创建一个角色类,在头文件为其添加弹簧臂和摄像机组件 UPROPERTY(VisibleAnywhere, Category = "Comp") class UCameraComponent* CameraComp; UPROPERTY(VisibleAnywhere, Ca
阅读全文
摘要:在最高一级目录中,是你的引擎(Engine)目录以及你的所有游戏项目目录。Engine目录包含引擎自身及其随附工具。每个游戏目录都包含与该游戏有关的所有文件。与先前的引擎版本相比,UE4中的引擎和游戏在目录结构上有了更明显的区分。 根目录 Engine - 包含构成引擎的所有源代码、内容等。 Tem
阅读全文
摘要:项目 虚幻引擎4项目(Project) 保存着构成游戏所需的所有内容和代码。项目在你的电脑硬盘上由许多目录构成,例如 蓝图 和 材质。你可以随时修改项目目录的名称和层级关系。 虚幻编辑器 中的 内容浏览器 所展示的目录结构和你在硬盘上看到的 项目 目录结构相同。 _内容浏览器面板会镜像显示磁盘上的项
阅读全文
摘要:AsyncTask AsyncTask系统实现的多线程与自己实现继承的FRunnable实现的原理相似,还可以利用UE4提供的线程池。当使用多线程不满意时也可以调用StartSynchronousTask改成主线程执行。 来自头文件 AysncWork.h 文件中注释,直接仿照注释来实现AsyncT
阅读全文
摘要:虚幻官方文档:https://docs.unrealengine.com/5.0/en-US/API/Runtime/Core/HAL/FRunnable/ FRunnable “runnable”对象的接口。 可运行对象是在任意线程上“运行”的对象。调用使用模式是Init()、Run()、Exit
阅读全文
摘要:C++中,往往令人头痛的是指针的管理问题!在对象动态构建时,我们需要将对象指针进行存储,一旦忘记释放,那么将会导致不可预估的错误。在C++中排查指针导致的内存泄漏问题实在令人头痛!在虚幻中,为了解决此类问题,加入了智能指针(共享指针,共享引用,弱指针),当我们使用动态方式构建对象时,再也不需要担心内
阅读全文
摘要:词义广泛,用来陈述功能,选项,与其他程序结构进行沟通的方式。接口抽象出了交互结构,提供了两个未知逻辑交互的便捷性。对于编程中,如何更好的设计低耦合程序起到了至关重要的作用。设计者可以在互不关心的情况下,进行友好的程序设计,并且通过接口来完成设计的整合交互。 虚幻引擎中,加入了接口设计,从一定程度上“
阅读全文
摘要:事件本身和多播代理一样,为了操作的安全性,事件提供了额外的操作限定。即禁止在声明事件对象的外部调用事件传播,清理,检查等函数。通过操作隔离,最大程度的增加了事件的安全性。派生类允许调用事件的广播。 在虚幻C++中事件和多播几乎相同。只是构建方式略不同 构建宏 事件类型构建宏由于需要限定事件对象调用约
阅读全文
摘要:代理: 代理可以帮助我们解决一对一或是一对多的任务分配工作。主要可以帮助我们解决通知问题。我们可以通过代理完成调用某一个对象的一个函数,而不直接持有该对象的任何指针。 代理就是为你跑腿送信的,你可以不用关心给送信的目标人具体是谁,只要按照约定好的信件格式进行送信即可 更简单理解,想去调用某个函数,但
阅读全文