
Ue4 常规技术
gaofei7439
软件程序开发,系统集成,硬件也会一点
展开
-
UE4 报错:Serial loading Unknown structure
背景: UE4 C++ 工程 在编译的时候,出现 Unknown structure 等报错;查询之后发现: 在C++ 中定义的结构体,暴露给蓝图之后, 重新创建了一个新的容器,包含了很多结构体。这个容器的数据类型 自己定义为:AllZMQDataPool在Gameinstance 中定义 一个新的变量, 变量类型就是 AllZMQDataPool;在common func 中创建快速获取变量的方法。在编译完成之后,打包时,出现上述问题。废话少说,解决方案如下:1, 直接修改 结构体原创 2022-01-11 10:58:59 · 637 阅读 · 0 评论 -
UE4 打包重新命名的方法
内容来源于:UE4重命名工程和exe的名字 - 程序员大本营,若涉侵权,告知后必删;背景: 工程项目中已经命名好之后的项目,需要重新命名,并进行打包;根据上述的链接,查找到对应的重命名流程。PS: 我的是C++ 工程;(前面直接用原作者的图片,我就不贴自己的图片了)一,工程名1. 原来的工程名如下:2打开项目的 config 文件在config 文件里面找到DefaultEditor.ini 文件;(1)实际上这个文件里面可能是空白的;直接在里面按照下图中框选的部转载 2022-01-06 16:22:20 · 4448 阅读 · 0 评论 -
UE4 关于 childActor 位置不对的—— 随手笔记
通过ChildActor 嵌套其他的蓝图。 比如:把蓄电池的蓝图 在机身 的蓝图中,通过childAcor 挂载。单独看机身的蓝图,蓄电池的相对位置是正确的。但是 把机身扔进 场景之后, 蓄电池的相对位置出现了错误。经过排查: 是因为 蓄电池的 可移动性没有设置。 将其设置为科移动之后,问题解决。...原创 2021-11-16 15:26:00 · 645 阅读 · 0 评论 -
UE4 _ 组件蓝图使用方法 随笔
一,背景我们经常需要开发一些通用性的功能,如果每次使用都写一遍,会非常麻烦,比较好的方法是 我们做成一个组件蓝图,直接在组件蓝图中实现方法。然后我们把组件蓝图 往 上面挂 就可以。比如:我们在项目中 可能会需要移动某个特定的物体, 每次我们控制其移动的时候 在本地写移动的函数 会显得很麻烦。如图: 我们创建一个组件蓝图,简单的实现 一个移动的功能。组件蓝图中 初始化如下:get parent components 获取的所有的父类组件包括 根节点。此处测试 使用get ...原创 2021-11-14 21:05:46 · 2081 阅读 · 0 评论 -
UE4 开发笔记 接口的使用——纯思路
一,背景1,在项目开发过程中,经常遇到需要进行批量化处理的情况。比如:需要对所有的故障排除的模型进行设置相应的动作或者状态。需要对所有的umg 里面的btn 的动作进行应答。针对大量模型索引操作的情况,以前常规的做法是,直接通过 get all actors of chass 进行索引, 稍微方便点的就是 在 common function 中 构建函数,直接可以通过虚函数直接索引到。但是这并不能解决 程序耦合性高的问题。在程序开发过程中,尤其是 在UMG 的环节,经常会遇到一些...原创 2021-11-10 14:19:30 · 995 阅读 · 0 评论 -
LH 项目工作笔记关于Texcorrd 的注意事项 1-2
一,实现效果为了要模拟一个滚筒的数值上下切换的效果。如果采用模型进行表现,只需要控制位移或者旋转角度即可。如果要采用UMG 来进行实现。刻度部分就需要使用一个材质来实现。核心的思路:以上一张竖向的图,我们只需要控制它的上下移动,就可以模拟刻度的变化效果。为这个图创建材质,———— 针对UI 的类型。在调用 TexCoord 后, 分别 需要使用 Mask R 和Mask G 分别在两个方向上进行加值。因为横向我们不需要已经 所有 mask R 之后 add 的数值就是..原创 2021-08-20 19:11:22 · 194 阅读 · 0 评论 -
LH项目通电部分工作记录1-1
一,遇到的问题1,上电经常性失败主要的流程:(1)在加载关卡后,我们会默认执行一个上电的基本流程:外电源开关插上去,71p 插上,外电源开关合上。然后 按下 “”“管理按键”, MFD 会上电。关键点:关卡加载之后, Map8 总是会被加载。然后在Map8 里面的 actor 才会被默认加载。尤其是涉及到通讯的 zmq manager 蓝图,里面有关于通讯的逻辑。 我们在打印日志中发现:zmq 中跟通讯相关的 打印日志还没打印完毕, 就开始外电源上电操作。这在理论上是不正确的。正确的顺原创 2021-08-20 19:01:43 · 161 阅读 · 0 评论 -
关于UE4 中结构体 赋值结构体赋值
**关于UE4 中结构体 赋值结构体赋值**1, 经典的指令 set ref当我们对结构体进行赋值的时候, 最常用的指令是 set ref , 使用此指令可以 快读的对 结构体 中的一个单元进行赋值。但是我们在测试的时候, 此条指令并不一定 每次都成功。以下是 我们测试的成功的情况:(1)如果结构体 下面的第一个层级, 直接进行赋值 ,经过测试可以正常赋值。以下是我们测试未成功的情况:(1) 如果 结构体 是对结构体下面的第二个层级进行赋值, 我们发现无法正常。以上情况 ,具体到底原创 2021-07-12 18:55:18 · 1504 阅读 · 2 评论 -
UE4 数组元素的删除
**UE4 中 删除数组元素的方法**背景: 在应用开发中, 我们定义了一个 int 或者 string 类型的数组 。比如 int a【6】={3 ,4,4,5,6,8} 。我们要删除 其中所有的 4 。UE4 中可用的蓝图节点是 remove item 或者 remove Index初始解决的方法: 我们直接使用 for each loop 通过判断 当时 item 是否等于过滤 的item , 如果是 , 则调用数组 直接删除当前的 Item .遇到的问题: 我们发现 按照我们的原创 2021-06-03 10:29:06 · 3570 阅读 · 3 评论 -
3D Widget 制作
核心步骤1,Pawn 中设置 widget interaction 。2, 在蓝图中添加 widget componet , 找到属性设置:原创 2021-05-27 18:11:47 · 353 阅读 · 0 评论 -
3D UI 过程中遇到的问题
一 , 模型点不中现象:在 3D UI 中, 我们 使用 三维模型做了一个 三维UI 蓝图。 但是我们在进行点击操作过程中, 我们发现 三维 UI (模型形式) , 会出现点不中的问题。我们采用射线检测, 发现 射线 射击检测到的时 3D UI 后面的模型。原因查询 :1, 经过查询, 发现 作为方向的 模型 一般是一个 片。 这个片 自身的模型 通过查询碰撞, 发现Simple 的模型 都没有碰撞体。2,解决方法:设置模型的碰撞体 为Complex 。 然后设置 碰撞类型,就可原创 2021-05-27 18:11:32 · 268 阅读 · 0 评论 -
UE4中 模型角度控制旋转的问题
**UE4中 模型角度控制旋转的问题**一,背景1, 在项目开发过程中,遇到一种需要 旋转按钮的情况。 根据设定的档位值,旋转模型的角度。UE4 4.19知识点:1, 每个模型在 制作时,因为个别建模人员的规范是否执行,会导致 同样的按钮,出现了坐标轴不一致的情况。模型围绕坐标轴旋转的原则是 , 朝向 坐标轴的方向,顺时针方向 是角度+ , 逆时针旋转 是 角度—。二,出现的问题1, 旋钮设定了 6个档位, 在控制旋转过程中, 通过修改档位, 控制旋钮的旋转。但是在实际运行过程中,本应该原创 2021-05-15 13:10:33 · 5780 阅读 · 0 评论 -
事件调度器
一个比较好用的 方法:定义一个全局的actor 。 在里面做好 事件调度器。所有比较繁复的数据传输,都可以通过 此 中转站,作为 事件调度器的 数据转发原创 2021-04-14 08:59:09 · 194 阅读 · 0 评论 -
UE4 关于Actor 的隐藏
问题描述:进行开发过程中,如果一个actor 蓝图里面有 多个物体。 我们在进行 对其隐藏的时候,一般有两种方法1, set actor hidden in game (自身)2, set hidden in game (根节点)在使用过程中,有时候发现第一种方法并不好用。 使用第二种方法,通过勾选 是否应用到children ,可以很有效的控制物体的显示和隐藏效果。...原创 2021-04-14 08:55:22 · 6218 阅读 · 1 评论 -
UE4 关于UMG卸载失败的解决方案
UE4 关于UMG卸载失败的解决方案问题描述:1,在开发UMG 过程中,有时候会发现当卸载一个UMG 之后,在调试状态,发现UMG 并未卸载干净。这样在重复进出当前UMG 的时候,就会发生因为 存在多个同样的UMG , 导致操作失效的情况。原因: 经过高手指点,发现 如果UMG 里面变量或者对象被其他 actor 或者蓝图引用的话,就会导致 卸载失败。解决方案:1, 将引用UMG 元素的对象 首先进行卸载。2,然后 再 在需要卸载UMG 中,remove from parent...原创 2021-04-14 08:47:55 · 995 阅读 · 0 评论 -
关于 UE中 父类和 子类 函数互相调用的方法
背景: 在UE4 中, 有时候需要通过构建一个父类。构建通用的一些函数和变量。方便子类在构建的时候不用重复去构建。一, 父类中构建 函数。在父类中构建一个函数名字Func1。 可以没有实现。在子类中 函数列表(重载下) 选择 函数名称,可以在子类中 对此函数重构。父类中:在 初始构建的时候 Construct 中调用一个函数 比如 Init_Parent在子类中 可以 对Ini_Parent 重载。 这样子类在构建的时候,就会默认的执行 在父类中已经提前定义好的函数Init_Parent原创 2021-03-04 22:44:59 · 5001 阅读 · 0 评论 -
UE4 C+—— 文件查找, 文件删除, 文件定位
UE4 C+—— 文件查找, 文件删除, 文件定位一,开发平台UE4 4.15 VS2015二,背景1, 实现对一个文件夹进行 jpg 格式的图片进行查找,然后删除此文件夹里面 所有此格式的图片。2,获取文件内。jpg 格式的图片的 数量3,获取最新存入的.jpg 的图片三, 功能实现1,特定格式文件查找//////////////////////////////////...原创 2021-01-23 16:15:49 · 914 阅读 · 0 评论 -
UE4 UMG————获取UMG 界面坐标点的方法
**UMG——获取UMG 界面坐标点的方法**一,背景在一些场景中,我们需要在UMG 上进行鼠标点击操作。同时这个UMG 中有时候会出现 三维物体的窗口,用户可以用过鼠标点击之后滑动,在不同的角度和视角观察三维模型的具体情况。这里面以后会牵涉到几个重要的点:1,在加载当前这个UMG 的时候,或者在这个关卡的默认关卡里面,有没有对 鼠标的有效范围进行约定。 一般有两个 UI 和 game. 。Only Game 的意思是: 鼠标点击 只在三维世界中有效。 在UMG 上的点击不起效果。On原创 2021-01-23 16:15:06 · 8886 阅读 · 1 评论 -
3D Max 或者 Maya 导出 FBX到UE4 的基本注意事项。
**3D Max 或者 Maya 导出 FBX到UE4 的基本注意事项。**背景:1, 同事 3D Max 进行建模 一个机场(存在很多模型)。 在给 FBX 文件后, 导入UE4 之后,出现两个问题(1)多个模型分开(不算是问题) 、(2)模型创建的材质球和贴图没有自动关联解决方案:1, 在3d Max 或者Maya 中,进行导出的时候 有一个选项嵌入的媒体只要勾选之后, 导入的模型就会自动关联上贴图。非常方便。2, UE4 中需要注意的事项如果需要导入的模型 是由原创 2020-12-09 18:24:38 · 7127 阅读 · 3 评论 -
UMG————拖拽
**UMG 中拖拽的功能****背景:**UMG 中要实现拖拽。我想做一个拖拽图标放在新的位置的功能。重要的蓝图节点记录:1,OnDrop: 检测鼠标按键松开的事件这是一个鼠标按住之后松开的事件。可以理解为 松开鼠标的时候, 鼠标对应的位置 的事件。2,On mouse Button Down 检测鼠标按下的事件这个事件 针对拖拽 可以搭配 另外一个节点一起使用。搭配的节点: Detect Drag if pressed 。 可以理解为一个绑定的事件。如果在鼠标按下的时候 ,发生原创 2020-11-19 17:32:57 · 2414 阅读 · 0 评论 -
UE4 -----------关于多播的用法
**UE4 中 多播的用法**一,目的想象一个场景, 一个 King 和一堆 peasant(农民) 站在一起参加活动。 突然, king 死掉了, 周围的农民 吓得立即四散。以上场景实现 用到了 多播的概念。二,实现步骤1,创建King 的类King.h…DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnKingDeathSignature, AKing*, DeadKing); //委托签名;…以上是一个 动态多播的声转载 2020-10-26 17:30:21 · 1689 阅读 · 0 评论 -
UE4 中 材质贴图的实现永远中间位置的逻辑
关于UE4 材质 中间居中的 逻辑分析我们以 原来的 texcoord 的2.2倍为例子。 放大倍数之后 的初始效果应该是按照2.2 倍数的 效果, 从左边开始 ,应该出现2.2 个斧头。左边第一个肯定是一个完整的斧头(我们暂时只针对 倍数大于1的情况。)现在我们想将 左上角的第一个斧子 移动到 中央位置。我们 先计算第一个斧子自己的中间位置 所占整个贴图的位置的百分比。(1) 放大倍数2.2 之后。 我们可以认为整个贴图的长度是2.2 。(2)第一个斧子 中央位置 的长度原创 2020-10-03 23:34:47 · 1154 阅读 · 0 评论 -
Ue4 制作高端小地图的方法(非Capture2D)
Ue4 制作高端小地图的方法(非Capture2D)一,背景在一些RPG 游戏中, 一般都需要增加的一个功能就是小地图。 角色在运动过程中,可以通过小地图看到当前的 全局地图以及 当前角色的相对位置。二,种类根据目前流出的教程, 基本上有两套教程可以参考。方法一: 利用Capture2D这是目前最快捷的一种方式,主要针对的是场景不复杂的情况。主要利用一个顶视图的效果来实现。基本原理可以等同于反射镜的制作流程。1,创建一个 Capture2d 的蓝图。 BP_SceneCapture ; 我原创 2020-09-29 16:41:41 · 1669 阅读 · 0 评论 -
简易交通灯逻辑
背景: 项目技术测试阶段,用到了交通灯。 本阶段暂时使用简易的交通灯进行效果模拟。基本架构:(1) 序号0-3 代表是4个红绿灯, Manager 是四个红绿灯的主控器。红绿灯在场景中都作为 manager 的附属。(2)每个红绿灯 的颜色 : 红 , 红黄, 绿, 黄。基本的逻辑:(1)初始阶段, manager 遍历 ,每一个红绿灯都设置为红色。(2) 每一展灯,都会 经历 红——红黄——绿——黄 的阶段。 走完之后, 下一次 就从下一展灯开始按照此顺序进行变化灯。(3)使用取余原创 2020-09-18 11:21:08 · 2761 阅读 · 0 评论 -
UE4 Texcoord 的故事
一,背景很久之前和一位小伙伴就材质中 要给原点的偏移研究过好久,还被教育了好久。过了这么久,重新来看 又懵逼了, 结果小伙伴也不在身边,自己重新来研究。二, 关于 Texcoord这是一个纹理坐标系, U 横向, V 垂直方向针对它的原理 纠结了很久,尤其是 当整体偏移了 超过1 的时候, 又出现了原来重复的图案。 此处发现用% 来解释,就一些都解释的通了,目前我只能这样来说服自己。从左上角 向右下偏移 一半。下面是偏移整数个单位,完全没有变化,2/1 =2, 余数是0 , 相当于没有原创 2020-09-11 19:24:53 · 3480 阅读 · 0 评论 -
UE4中监视器 和镜子的 实现效果 SceneCapture2D的用法
**UE4中监视器 和镜子的 实现效果 SceneCapture2D的用法v**一,目的为了实现在虚拟场景中 创建一个监视器或者一个反光镜的效果。 此处需要用到一个 sceneCapture2D 组件。二,测试环境UE4 4.24三,思路1, SceneCaptue2D 组件 可以理解为一个 获取二维画面的摄像机组件(只是个人理解,因为她的样子就是一个摄像机),这个组件有一个选项是 Texture Target , 就是将获取的画面存储的地方。 这个Texture Targrt原创 2020-09-04 19:29:24 · 4461 阅读 · 0 评论 -
UE4 中 物理关节点——机械关节的制作
**UE4 中物理关节点—— 机械装置的制作**一,目的在UE4 中 我们期望, 可以实现机械结构的联动效果。在UE4 中, 有一个Physic constraint , 主要用它来实现这个效果。二, 实现步骤Base: 中心基础点cube.Wheel: 车轮Piston: 活塞Arm: 驱动轴以上除了 base 都需要勾选 Simulate Physic所有的 physic Constraint 都要禁止 collison.1, 模型处理这个系统的运动核心 是原创 2020-08-31 18:23:44 · 3370 阅读 · 1 评论 -
C4D 从入门到放弃
**C4D 从入门到放弃**一,目的本文只是记录 在C4D 系统中 对坐标系操作的 关键流程,也是在这次捣鼓过程中,终于理解了 maya 软件中 所谓的对 坐标和旋转进行冻结 frezz 的原理。二, 预热在系统中, 我们经常提到了 两个名字 世界坐标系 和本地坐标系 。本地坐标系 简称 Local system , 请注意 它的含义是 相对于父节点 的 位置以及旋转来说的。 深刻理解这句话 。1, 模型的坐标系原点不在模型的轴心上?按照常规的的理解, 我们见到的大部分的模原创 2020-08-21 19:02:30 · 1976 阅读 · 0 评论 -
UE4 常规知识—— look up 和 look Right 的含义
UE4 常规知识—— look up 和 look Right 的含义1, get look up 上下俯仰官方的定义:首先按照字面的意思 是获取一个上下俯仰的角度值, 即使测试的时候 发现这个数值 的范围是【-1, 1】 ,并且可以直接当作一个角度值。 只不过是实施刷新获取的。比如 你鼠标向上滑动了一下 ,输出 0.3 , 向下滑动了一下 马上输出 -0.5 .一个使用的例子:我们获取一个摄像机的相对角度 。Pitch 对应的是围绕Y 轴的俯仰。 此数值和 Look u原创 2020-08-19 09:42:51 · 1289 阅读 · 0 评论 -
Ue4 笔记—— 关于碰撞
**UE4 中关于碰撞的一些知识汇总**1, 三种模式ignore overlap block忽略 叠加 阻挡。主要是以上三种模式。2,阻挡 block 的条件(1)将两个物体都勾选一下 simulation physic(2) 当前物体有个碰撞预设 collision preset : 根据实际情况(3)Object type: 当前物体的类型。按照以前的理解 比如随便一个立方体 我们都设置成 world static 。 但实际上我们原创 2020-08-06 14:27:57 · 1491 阅读 · 1 评论 -
Ue4 常规技术—— DownloadImage
一,目的想象一个应用场景。用户通过微信小程序扫描进入一个应用。用户可以上传自己手机内的图片。但是上传图片前 会被裁剪为特定的尺寸。 图片会上传到一个服务器。服务器接收到图片后,根据当前文件夹内存储的图片,进行图片重新命名,按照特定的规则。 然后 服务器可以给 Ue4 端发送一条指令 http ,让Ue4 端 根据接收的指令进行解析, 反向去 服务器端下载图片。目前只是一个还没验证过的思路,需要前端和后端的人一起测试才能确定效果。在Ue4 中 下载图片的一个 指令节点是:按照官方的解释: UR原创 2020-08-05 15:56:09 · 1796 阅读 · 0 评论 -
Ue4 常规技术—— Camera Shake
一,目的在射击类的应用场景中,经常需要一个场景,当被子弹击中的时候, 当前的镜头需要抖动一下。此时就用到了 Camera Shake .二, 使用步骤1, 创建蓝图创建蓝图 ,蓝图类型 选择 Camera Shake2,蓝图参数定义Oscillation Duration: 持续的时间。Oscillation blend in time : 理解为渐入的时间,从静止到开始抖动的过渡时间,为了平滑。Oscillation blend OUT time :渐出的时间, 从抖动 到回到初始原创 2020-08-05 14:46:28 · 1610 阅读 · 0 评论 -
UMG___Menu Anchor 菜单锚点
一、目的想要弹出某个菜单时,Menu Anchor可以做为菜单弹出的位置,Menu Anchor本身不显示任何东西二、参数设置:Nenu Class:选择要弹出的UI,可以为任意的UserWidgetPlacement:设置弹出UI在Menu Anchor的位置及内容的格式,注意旁边的标识。三、调用方法:在Menu Anchor控件中,有两个方法一个是Open(显示关联的UI)一个Close(关闭关联的UI)一个例子。...转载 2020-08-05 11:13:52 · 731 阅读 · 0 评论 -
UMG_ Wigget Switcher
UE4 中 Wigget Switcher 的基础小知识一,目的在UMG 中 ,我们经常实现的功能是 通过点击几个button 可以实现一个特定的区域 显示不同的画面。 此时就用到了 Wigget Switcher 。如下图所示, 通过切换 active widget index 的数值 ,即可实现对 UMG 组件的切换。以上是 切换 Widget 的 方法, 主要是更改 index....原创 2020-08-05 11:00:15 · 308 阅读 · 0 评论 -
PostprocessVolume后期处理效果
一,主要用于后期处理效果、简称PP二,使用方法在面板中 选择 Post Volume 放入场景中按照箭头的勾选之后,就会对整个常用应用后期效果。主要涉及 泛光, 景深以下是一个景深的效果。 近景 清晰 ,远景模糊。Method : 默认是高斯的方法,是最标准的。 第一个模式是散光之类的,最逼真但是消耗太大不建议使用。Focal Distance : 是距离镜头的距离 进行的效果。 搭配 Near blur size : 0 。 就是说 这个距离内的不会模糊。Far blur size原创 2020-08-03 17:24:06 · 2725 阅读 · 0 评论 -
UMG笔记——关于UMG 的一些基础知识和动画的实现
**UMG笔记——关于UMG 的一些基础知识和动画的实现一, 目的**在很多UMG 的动画中,有一个经典的案例 是控制 一个 UMG 从页面的底部移动到 画面的中间位置。常规的做法是 在UMG 动画中 更改 slot 的的 PositionY 的数值。 此文章 直接按照国外的教程 ,通过设置 锚点 anchors 的位置 来进行动画控制。 中间涉及的基础知识 正好过一遍。二, 基础知识锚点 Anchors 有九种对齐模式。 我们挑选了其中一种中间对齐的进行讲解。- Anchors 锚原创 2020-07-31 17:50:54 · 2604 阅读 · 0 评论 -
UE4 中 Render Target的 用法
**UE4 中 Render Target的用法**一, 用法主要使用此指令实现在某个平面上进行绘画操作 或者实现 刮刮乐的效果,基本上都需要用到此方面的相关知识。二, 使用流程1, 先 定义一个 Canvas Render Target 2D , 可以理解为一个画布 RT。2, 定义一个材质Mat_1。 这个材质中 我们将 Texture 部分设置为一个变量。后面我们将 画布和此材质进行绑定,画布作为材质中 Texture 的一个变量(此部分在后续蓝图中进行操作。)。2原创 2020-07-31 11:04:56 · 11121 阅读 · 0 评论 -
BlueprintImplementableEvent函数说明符用法 以及C++返回多个参数的方法
用BlueprintImplementableEvent标明的函数在C++代码中不需要有方法体,方法体在蓝图中实现。用法:1,现在C++头文件中定义函数名UFUNCTION(BlueprintImplementableEvent)void OnDepleted();2,在蓝图中Add Event,找到对应的函数名,创建后即可实现具体逻辑3,最后可以在自己的C++代码中调用该方法,这样就会自动调用蓝图函数void MyActor::OnPressed(){OnDepleted();}转载 2020-07-01 16:19:58 · 3170 阅读 · 0 评论 -
UE4中关于材质的 奇技淫巧
UE4中关于材质的 奇技淫巧1,大部分的材质效果 只要使用节点 texcord panner Multi lerp 3const 1const 都可以实现 PBR 的材质效果。2,如果是 一些带有自发光的属性模型,可以在材质中设置为 Ulit (无光照模式),这样可以节省开销。3,使用 Texcord 和 panner 等指令 进行结合,对应材质中的 world offset 可以模型的位移,可以用来做窗帘的随风抖动的效果。记住,为了实现窗帘顶部与刚性物体绑定的效果,需要对模原创 2020-07-01 14:17:31 · 2660 阅读 · 0 评论 -
Ue4 中 DPI 的用法
1,目的我们在开发UI类的应用时, 因为不同终端的画面分辨率不同,可能会导致整个UI 在显示的时候 出现不同的效果。为了尽可能的匹配效果,可以通过DPI 进行缩放设置。在项目设置中—— Engine_UserInterface ——DPI scaling通过设置 DPI scae Rule 规则,进行设置 缩放的方法。DPI scae Rule 规则:(1)shortest : 以最短边作为变化的标准。长边变化时,没有变化。短边变化时,执行缩放。(2) longest: 以最长边作为变原创 2020-06-30 13:55:38 · 2733 阅读 · 0 评论