![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
UE4
文章平均质量分 69
MOON-P
这个作者很懒,什么都没留下…
展开
-
UE4 WorldComposition加载Level与位置偏移代码分析
Level里与WorldComposition有关的两个重要参数StreamedLevelsOwningWorld是全局变量,存储的是WorldComposition里的SubLevel的名字对应的主level(即WorldComposition的主Level)的World,主要是在Level::PostLoad时把主level赋值给OwmingWorldUWorldComposition::OnLevelPostLoad是把WorldComposition的Tile赋值,这个也是..原创 2021-07-08 15:09:01 · 788 阅读 · 0 评论 -
UE4 添加自己项目的AutomationProject,解决报错Failed to find comand
如果不了解AutomationTool可以先看下列官方文档https://docs.unrealengine.com/4.26/en-US/ProductionPipelines/BuildTools/AutomationTool/HowTo/AddingAutomationProjects/https://docs.unrealengine.com/4.26/en-US/ProductionPipelines/BuildTools/AutomationTool/HowTo/AddingComman原创 2021-06-24 11:30:15 · 533 阅读 · 0 评论 -
UE4 热更新:HTTPChunkInstaller
热更大概有两种模式。一、打一个基础包,更新包1是在基础包上叠加的,更新包2是在基础包和更新包1上叠加的,更新包2不包含更新包1的内容。新用户下载的时候需要下载更新包1,更新包2。二、打一个基础包,更新包1是在基础包上叠加的,更新包2是在基础包上叠加的,更新包2包含更新包1的内容。新用户直接下载更新包2。我看网上关于unreal的热更资料,基本上是以第一种的思路。我这里用的是第二种,使用unreal的HttpChunkInstall来热更。HttpChunkInstall里会把chunk的.pa...原创 2021-01-07 11:01:42 · 2018 阅读 · 1 评论 -
UE4 自定义K2Node蓝图节点实现
这篇主要以一个蓝图节点的示例来说明大概怎么写一个自定义蓝图节点。这个自定义K2Node蓝图节点其实是为了优化是“C++利用反射UFUNCTION实现RPC”的。之前调用服务器函数是使用泛型蓝图节点然后解析里面的FPerperty类型序列化后传给服务器。但是这有个问题就是函数的参数数量和类型是变化的,之前是定义了0-8参数的各个泛型函数和一个以结构体包含的(结构体里包含了所有参数)泛型函数来实现的,这个实现是能够符合需求的,但是不方便。现在通过这个蓝图节点实现。我先放上解释,最后有.h和.cpp.原创 2020-10-20 12:26:39 · 3129 阅读 · 0 评论 -
UE4 C++利用反射UFUNCTION实现RPC
项目要实现一个远程调用函数的功能,即服务端发送一段buffer,客户端解析这段buffer,然后把里面的数据解析成函数名,参数1,参数2,参数…… 的形式来调用客户端的函数。这里的一个问题主要是,项目使用的不是UE4服务端,所以远程调用难以调用某个具体的对象,只能调用到静态函数。静态函数一般想到静态函数库,所以使用静态函数库来实现。使用蓝图函数库的函数有一个概念,就是其实每一个蓝图函数库的函数都带一个默认的参数就是World Context Object。World Context Objec...原创 2020-10-12 11:34:57 · 1260 阅读 · 0 评论 -
UE4 SceneCapture2D显示人物模型时过滤背景颜色或天空盒
游戏有时候需要把人物显示到UI上,会需要用到RT。这里不是具体教程,具体教程可以找其他的资料。是因为我自己在做的时候遇到需要去除天空盒的问题,然后又没搜索到解决方法。这里把我解决的方法分享出来。SceneCapture做下面几个设置,Primitive Render Mode设置 Use ShowOnly List ,只显示Show Only Actors里添加的Actor。然后想要显示的Actor添加到Show Only Actors。Capture Souce 是只渲染的Texture Tar.原创 2020-06-04 18:31:01 · 4457 阅读 · 2 评论 -
UE4 动画插件Advanced Locomotion System V4分析
倾斜:(以站立姿势的地面移动倾斜为例)Calculate Relative Acceleration Amount是求的当前加速度在actor上的旋转值并把范围限定在-1到1。Relative Acceleration Amount X是前后方向的值, Relative Acceleration Amount Y是左右方向值。ALS_N_Lean是混合了前后左右倾斜的BlendSpac...原创 2020-04-28 11:14:38 · 4799 阅读 · 0 评论 -
UE4 富文本装饰器——超链接
游戏里需要超链接,比如点击文字或图片然后会弹出tips。需要实现的是文字的可点击和超链接内容的读取。如格式<a itemId="001">物品1</>显示文字 物品1 然后点击后我们能够知道是itemId=“001”代码如下:头文件:#pragma once#include "Components/RichTextBlockDecorator...原创 2020-03-30 18:25:55 · 3504 阅读 · 2 评论 -
UE4 Actor的自定义渲染
1.创建一个Actorclass AMyActor : public AActor 2.创建一个UPrimitiveComponent 组件,这个组件是游戏线程渲染组件class UMyRenderingComponent : public UPrimitiveComponent3.创建一个FPrimitiveSceneProxy,这是游戏线程的“UPrimitiveCom...原创 2020-03-23 18:09:13 · 2858 阅读 · 0 评论 -
UE4 蓝图Structure与Xml的读取
使用了Unreal提供的XmlParser库来解析Xml文件。然后把解析到的内容填充到定义好的结构体内。该方式是以蓝图Structure来定义结构。使用:一个简单的xml文件<?xml version="1.0" encoding="UTF-8"?><test> <testa id="0" name="aaaaaaa" other="ot...原创 2020-03-12 12:32:44 · 1116 阅读 · 0 评论 -
UE4 批量转换Texture为Sprite
批量替换的逻辑很简单,找到所有的UI面板下的贴图资源,然后替换为同名的Sprite资源。主要是UE4的使用哪些API的问题,时间都花在查源码找API上。所以这里把代码贴出来。void SWidgetUiTool::OnReplaceToSprite(){ FAssetRegistryModule& AssetRegistryModule = FModuleManager::...原创 2019-11-01 15:06:43 · 1742 阅读 · 1 评论 -
UE4 蓝图Structure与Json的读写
蓝图创建Structure测试读JSON:测试写JSON结果:因为代码比较长,所以先解释一下,最后在放完整代码。代码解析:一、把蓝图Structure暴露到C++ UFUNCTION(BlueprintCallable, Category = "Json", CustomThunk, meta = (CustomStructureParam ...原创 2019-10-11 18:41:05 · 6800 阅读 · 3 评论