知识记录
文章平均质量分 74
Goulandis
这个作者很懒,什么都没留下…
展开
-
【UE5】UMG C++父类绑定蓝图子类属性
有时我们在设计UMG时可能会使用到C++父类来处理一些通用逻辑,如果我们想要在C++父类中获取其派生子类的某个属性,如Image或Button等,我们可以通过使用UE提供的BindWidget元数据标签的方式来获取。原创 2024-08-26 17:48:13 · 998 阅读 · 0 评论 -
【UE5】动态播放媒体
最近项目中有一个需求,需要将场景中的42块屏幕都显示媒体内容,想着如果每一块屏幕都创建一个MediaPlayer资产、一个MediaSource资产、一个MediaTexture资产及创建对应的Material,就是4*42=168个资产需要维护了,所以想着就全部采用动态创建,动态管理的办法维护,其中碰到了一些问题,在此记录一下。原创 2024-04-29 09:38:37 · 2129 阅读 · 0 评论 -
【UE5】数字人基础
这里主要记录一下自己在实现数字人得过程中涉及导XSens惯性动捕,视频动捕,LiveLinkFace表捕,GRoom物理头发等。原创 2024-04-28 21:59:10 · 2806 阅读 · 2 评论 -
【UE5】UE5与Python Socket通信中文数据接收不全
问题就出在Count的值上,可以看到在上面的代码中我们是直接计算的FString的长度,然后以这个长度作为发送的数据大小,在纯英文的数据中这没有任何问题,但在中文数据中,由于中文编码的特殊性,FString应该有做特殊的编码处理,导致直接计算FString的长度作为发送数据的字节大小其实是小于真实数据大小的,这就导致在UE端发送中文数据时就没有发送完整到数据,所以Python端接收到数据就出现数据不全的问题。最近在使用UE的Socket模块与Python服务器进行通信时遇到了一些坑,特此记录一下。原创 2023-08-03 20:49:32 · 1309 阅读 · 0 评论 -
【UE5】使用快捷键切换编辑器中英文设置
最近在项目上和美术配合,由于在编辑器上美术习惯使用中文而我习惯使用英文,配合的时候对中英文要切来切去很麻烦,于是就向弄一个快捷键来切换编辑器的中英文,然后在网上找到一个大佬—[opda](UE4自定义快捷键实现中英文切换 - 知乎 (zhihu.com))的实现,并且大佬还直接将功能插件化了,不过大佬是在UE4中做的插件,而我要在UE5.1中使用,直接将插件放入引擎编译过不了,会报这个错误:这里直接在插件的.biuld.cs文件中加一行:再编译就好了,然后进入编辑器就可以直接使用F6快捷键进行中英文切换原创 2022-12-07 22:50:46 · 2268 阅读 · 0 评论 -
【UE5】多用户协同编辑
UE5新出了一个多用户协同功能所以想搭一个来玩玩。Epic已经将流程极度的简化了,在B站虚幻官方也放出了教程视频,[官方文档](多用户编辑入门 | 虚幻引擎文档 (unrealengine.com))也有教程。这里做一下简要记录。首先打开Multi-User Editing插件,插件会要求重启,重启之后,在Project Settings/Plugins下会多出一个Multi-User Editing选项。Enable Multi-User Toolbar Button:勾选之后需要重启编辑器,在编辑器的菜原创 2022-12-07 22:49:42 · 5484 阅读 · 3 评论 -
【UE5】解决UE5无法播放mp4视频
最近接手的项目需要把项目从UE4中迁移至UE5,其中遇到了一个mp4视频无法播放的bug,这里做一下记录。在官方论中有提到过这个bug,https://forums.unrealengine.com/t/media-textures-wont-display-video-in-ue5-preview-1-while-using-directx-12/503980/2意思是在最新的DX12图形库下UE5默认使用的WMF解码器目前不支持mp4的视频解码。解决方案有两个,其一更换图形库,其二更换解码器。原创 2022-11-14 22:44:12 · 10669 阅读 · 4 评论 -
【UE4】C++编程
右键.uproject会出现几个选项:.uproject是UE的项目描述文件,采用json的格式来描述一个项目的版本信息、模块信息、插件信息等。.uproject参数描述文件—FileVersion:描述项目版本;EngineAssociation:引擎版本;Category:这个分类着实是不知道有什么卵用;Description:项目描述;Modules:模块信息,是一个类型的数组,数组中一个元素代表一个模块,的具体描述在ModuleDescriptor.h里面涉及很多模块的描述,最常使用的基本只原创 2022-10-16 00:34:10 · 8201 阅读 · 4 评论 -
【UE4】全局Widget
由于UE4在默认情况下会OpenLevel会将当前Level创建的Widget从ViewportClient中移除,所以默认的UserWidget会随着切换关切而消失。(gif过大自行下载查看)[https://raw.githubusercontent.com/Goulandis/ImgLib/main/img/20220508232919.gif]有的时候我们可能需要使用一个全局的按钮什么的,所以就需要Widget不随切换关切而从ViewprotClient中移除,而是在我们想要移除的时候才移除,做原创 2022-05-08 23:38:29 · 1825 阅读 · 0 评论 -
【UE5】9-16视域时画面拉伸
在做UE5的安卓竖屏开发时碰到一个很有意思的问题,UE5拖入场景的CameraActor画面比例默认是16:9的,当我们我们需要竖屏显示时,需要设置成9:16,设置方法也比较简单,将Aspect Ratio(横纵比)设置成9/16=0.5625就可以了。于是问题出现了,当相机靠近View Target时画面出现了拉伸。嗯,脚变得特变长,怎么办呢?经过一番摸索,发现可以通过修改视距和视域解决,这里我们把相机的视距拉远一点,然后把视域设小一点,如:视域默认为90,这里我设成23,于是效果出来了。原创 2021-09-14 14:36:01 · 2976 阅读 · 5 评论 -
【UE4】UE4 在网页里展示虚拟形象
参考博客:吾爱豆一、通过UMG来展示角色在UE4中使用UMG来展示角色的原理主要通过UE4提供的一个SceneCapture2D相机来捕捉场景中的画面,搭配Render Target将捕捉到的画面显示到贴图上,然后将贴图制作成材质,将材质运用到UMG中就可以了,当然也不一定非得要将贴图制作成材质再给UMG使用,贴图也是可以直接给UMG使用的,只是我们后面还需要在材质里对贴图做一些处理,所以这里就直接把贴图做成材质了。首先像场景中添加一个SceneCapture2D,并把它位置设置到角色前,设置到自己想原创 2021-08-05 21:57:35 · 1756 阅读 · 0 评论 -
【BAT】BATWindows自动脚本同步GitHub远程仓库
title: 【BAT】BATWindows自动脚本同步GitHub远程仓库date: 2020-01-21 20:01:34tags: BATcategories: 知识记录Windows自动脚本,我已自动同步GitHub仓库为例。一、编写自动脚本先上源码,可以直接用TXT写,然后将文件后缀改为.bat。start "C:\Windows\System32\cmd.exe"cd /G:cd Goulandis\Git\Tempgit add .git commit -m "Fro.原创 2020-06-01 22:09:56 · 638 阅读 · 0 评论 -
【UE4】UE4使用蓝图动态修改粒子参数
如果对UE4联级粒子P_Water系统比较熟悉的可能对动态修改粒子参数不陌生。UE4的联级粒子系统大部分的模块都拥有一个 Distribution子栏,其中可以选择如下模式其中 Distribution Vector Particle Parameter就是参数模式,选择之后Distribution栏会变成这样其中Parameter Name就是参数的名字,在蓝图调用参数时需要用到。Mi...原创 2020-01-17 17:07:46 · 9013 阅读 · 1 评论 -
【UE4】UE4内嵌Web及与Web通信
UE4嵌入Web及UE4到Web的通信,我使用UE 4.22.3版本,以UE4嵌入ECharts并与ECharts通信为例。一、自定义WebBrowserUwebBrowser是UE4自带的用于浏览Web的插件类,为了后面进行UE4与Web的通信,所以这里我们需要自定义一个UWebBrowser类。1.创建自定义WebBrowser类在C++ Classes中右键创建一个自己的继承自wid...原创 2020-01-17 17:04:23 · 24960 阅读 · 28 评论 -
【UE4】UE4读写Json文件
一、准备工作如果我们想要在UE4中读写Json文件,那么我们必须使UE4包含Json和JsonUtilities这两个模块,那么UE4如何添加模块呢?UE4添加预定义模块的方法很简单,我只需打开工程的.Biuld.cs文件,在其中的PublicDependencyModuleNames.AddRange()函数中追加两个模块即可,如:using UnrealBuildTool;publi...原创 2019-11-06 22:09:08 · 11883 阅读 · 1 评论 -
【UE4】UE4连接MySQL
一、使用MySQLIntegration插件连接MysqlUpdate Data from Query Async组件后面必须再跟一个其他的节点,节点才能正常执行UE4 C++编程中不能出现私有私有变量?UE4 C++静态变量?MySQL Integration插件只支持sql语句,不支持存储过程在蓝图中实现的C++函数在蓝图中没法使用?暴露给蓝图的变量和函数必须是公有且非静态的U...原创 2019-11-06 22:07:44 · 6784 阅读 · 0 评论 -
【C++】C++面向对象模型初探
1.成员的分开存储C++通过将类的成员分开存储的方式来实现面向对象成员存储位置普通成员变量栈区,与struct变量有相同的内存布局和字节对齐方式静态成员变量全局数据区,如此便可以使用类名和类所有的对象都可以访问成员函数代码段,包括静态成员函数和非静态成员函数虚函数虚函数表指针(vfptr)存放在栈区,其指向的虚函数表有自身的内存存储空间2.C...原创 2019-10-03 21:33:59 · 178 阅读 · 0 评论 -
【C++】C++函数模板的实现机制剖析
函数模板的实现机制剖析要剖析函数模板的实现机制,我们要先了解程序的编译过程,这里以gcc为例这里对下面代码进行剖析#include "stdafx.h"//这是VS的固有头文件#include <iostream>using namespace std;template <typename T>void Fun(T a,T b){ a = a + b;...原创 2019-10-03 21:36:12 · 1149 阅读 · 0 评论 -
【C++】C++中的四种转换类型
title: 【C++】C++中的四种类型转换date: 2019-09-12 09:43:34tags: C++categories: 知识记录C++提供四种类型转换:const_cast、static_cast、dynamic_cast、reinterpret_cast1.const_cast const_cast的存在主要就是针对const字段,C++提供const_cast...原创 2019-10-03 21:40:07 · 278 阅读 · 0 评论 -
【C++】全局变量、静态全局变量、局部变量与静态局部变量
1.普通全局变量 普通全局变量是定义在函数和类外的或由extern标识或直接定义没有static标识的变量。 各个类型的变量之间最主要的区别就是作用域的不同了,普通全局变量的作用域在整个源程序中,全局变量对整个源程序中都是可见的,无论源程序是由单个文件还是多个文件组成,普通全局变量具有external链接属性,所以普通全局变量在整个源程序的各个文件中都可以被引用。2.静态全局变量 静...原创 2019-10-03 21:44:06 · 589 阅读 · 0 评论 -
【C】C的typedef的妙用
1.自定义数组类型typedef int (Array)[5];Array是一个类型为int长度为5的数组类型,即定义一个Array a;那么a就是一个类型为int长度为5的数组,所以a的使用方法和数组一致。typedef int(Array)[5];Array a;int i = 0,j = 0;for (i = 0; i < 5; i++) a[i] = i;for (...原创 2019-10-03 21:30:31 · 205 阅读 · 0 评论