- 博客(69)
- 收藏
- 关注
原创 UE4 通过Echarts实现各种统计图
主要内容:本文主要讲解UE4 UMG向网页发送数据,通过WebBrowser插件将用Echarts定制好的统计图在UE4内展现出来,达到数据可视化的效果。实现步骤:1.启用UE4自带的WebBrowser插件
2021-03-12 17:29:19 5513 5
原创 UE5 LiveLink 自动连接数据源,以及打包后不能收到udp消息的解决办法
为什么要自动连接数据源,因为方便打包后接收数据,这里我是写在了Game Instance,也可以写在其他地方,自行替换成Beginplay和Endplay关于编辑器模式下能收到udp消息,打包后不能收到消息的问题有两点需要排查,启动打包后的程序前需要关闭ue编辑器,不然会占线。第二点,需创建快捷方式添加 -messaging 参数启动才能接收udp消息
2024-03-21 18:28:16 330
原创 UE4 播放Sequence保持最终状态,并且sequence里的动画不会还原
1.保持最终状态,在sequence播放器中有个settings的结构体勾上PauseAtEnd2.保持动画最终状态
2023-07-10 16:37:16 749
原创 UE4 关闭steamvr自启动
在我们打开项目时,如果安装过steamvr会自动启动,因为steamvr插件是默认启用的,所以把引擎目录下的steamvr插件默认启动改为false就可以了用记事本打开SteamVR.uplugin文件把true改成false
2023-07-10 15:38:00 778
原创 UE4 导致AIMoveTo不生效的原因
1.没有添加导航提网格(按P键显示)2.检查场景中的碰撞是否把AI阻挡了3.要移动的pawn和目标点或者目标actor有没有正确设置(如果设置了TargetActor会优先选择)4.检查AI控制器是否为空5.如果AI是生成的而不是一开始就放到场景的(把AutoPossessAI设置为PlacedInWorldOrSpawned)
2023-05-25 16:31:07 2595
原创 UE4 解决当角色走到一个物体上时会被弹开的问题
检查被踩物体的碰撞组件Collision那一栏的CanCharacterStepOn是否是Yes,如果不是请更改之,如果没效那就是其他的碰撞问题
2023-05-25 14:46:59 559
原创 UE4、5不让贴花影响Mesh
如果不想让贴花影响某些在移动中的物体穿过它也会受到影响,例如人、车之类的,可以把mesh里的Receives Decals选项去掉
2023-03-02 11:38:25 1467
原创 UE4 常用类型转换
FString to FName 互转//FString To FNameFString Str = TEXT("TestString");FName Name = FName(*Str);//FName To FStringFString TargetFString = Name.ToString();FString to FText 互转//FString to FTextFText MyText = FText::FromString(Str1);//FText to FS
2022-05-23 16:31:02 3313
原创 UE4 C++获取StaticMesh详细信息
.hUFUNCTION(BlueprintCallable, Category = "FunTool") void GetStaticMeshDetails(UStaticMesh* Staticmesh, TMap<FName,FString>& StaticmeshDetails);.cppvoid UExportSixViewsSub::GetStaticMeshDetails(UStaticMesh* Staticmesh, TMap<FName, FStri.
2022-05-12 14:19:24 1843 4
原创 UE4 制作导出Content目录下某个文件夹内所有模型的六视图并将模型资源文件复制到指定文件夹的插件
一、新建空白插件在Bulid.cs内加入两个模块,"EditorSubsystem","UnrealEd",PublicDependencyModuleNames.AddRange( new string[] { "Core", "EditorSubsystem", "UnrealEd", // ... add other public dependencies that you statically
2022-05-12 09:33:47 1389
原创 UE4 C++ Editor模式下GetWorld
一、在Build.cs加入UnrealEd模块二、创建函数暴露给蓝图.hpublic: //获取World UFUNCTION(BlueprintPure, Category = "FunTool") UWorld* GetContextWorld();.cppUWorld* UExportSixViewsSub::GetContextWorld(){ UWorld* World = GEditor->GetEditorWorldContext().World();
2022-05-11 15:48:30 1129
原创 Python 读取某个目录下所有png图片导入Excel
一、安装xlsxwriter库pip3 install xlsxwriter二、代码import xlsxwriter, osimage = []# 打包前路径:os.path.abspath(__file__)# 打包后路径:os.path.realpath(sys.executable))# 获取文件目录下所有的.png图片def GetImgPathFromFolder(): for root, dirs, files in os.walk(os.path.dirna
2022-04-28 17:23:29 2019
原创 UE4 C++创建继承于UEditorSubsystem类时报错
使用UEditorSubsystem需要在Build.cs里加上EditorSubsystem模块的引用,因为这是编辑器模块if (Target.bBuildEditor){ PublicDependencyModuleNames.AddRange(new string[] { "EditorSubsystem" });}
2022-04-20 11:33:36 553
原创 UE4 C++ 编辑器模式下属性被修改时触发对应事件
#pragma once#include "CoreMinimal.h"#include "GameFramework/Actor.h"#include "TestActors.generated.h"UCLASS()class TESTACTOR_API ATestActors : public AActor{ GENERATED_BODY()public: // Sets default values for this actor's properties ATestAct.
2022-03-23 14:37:52 1522 2
原创 UE4 C++ 对结构体数组内元素进行排序
对结构体数组排序需要两个必要条件,一是结构体定义内重写<操作符,二是元素内必须要有可以用来排序的属性例如int、float类型的变量案例:.hUENUM(BlueprintType)enum class EOrient : uint8{ North, East, South, West,};USTRUCT(BlueprintType)struct FATestActor{ GENERATED_USTRUCT_BODY()public: UPROPERTY(E
2022-03-16 15:15:19 2243
原创 UE4 UPROPERTY属性修饰符用bool变量控制变量是否可编辑
meta = (EditCondition = bool变量)UPROPERTY(EditAnyWhere, BlueprintReadWrite, Category = "UPROPERTY Test") bool A; UPROPERTY(EditAnyWhere, BlueprintReadWrite, meta = (EditCondition = A), Category = "UPROPERTY Test") bool B; UPROPERTY(EditAnyWhere, Bl
2022-03-16 11:30:48 681
原创 UE4 C++ 在C++声明动态多播参数类型为TArray时,蓝图绑定报错
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FMultiDelegate, TArray<FATestActor>, out);解决办法,传入数组引用DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FMultiDelegate, const TArray<FATestActor>&, out);
2022-03-16 11:10:08 977 1
原创 UE4 C++ 自定义Log输出类别
.h//自定义日志类型的声明DECLARE_LOG_CATEGORY_EXTERN(MyLog, Warning, All);.cpp//自定义日志类型的使用(注册)DEFINE_LOG_CATEGORY(MyLog);//自定义日志类型输出UE_LOG(MyLog, Warning, TEXT("XX物体被创建"));
2022-03-16 10:50:27 1171
原创 UE4 C++ 结构体数组使用AddUnique方法添加元素报错
当使用TArray的AddUnique方法给结构体数组添加元素时,如果结构体没有重写==操作符时就会报错,那么为什么会报这个错呢?因为AddUnique方法在添加元素前会将传入的元素在数组内搜索一遍,也就是Find()函数,在Find函数内部用到了==操作符,但是结构体是自定义的数据类型,所以必须重写==操作符才不会报错。示例:.h// Fill out your copyright notice in the Description page of Project Settin
2022-03-11 16:48:50 1819
原创 UE4 C++ FString乱码显示问号
如果以"xxx"这种形式并且xxx为中文时,直接赋值给FString的变量会丢失数据导致系统无法识别,因此需要做特殊处理。第一种解决办法:引号前加L表示将字符串转为unicode的字符串,也就是每个字符占用两个字节FString str = L"小明";第二种解决办法:UTF8_TO_TCHAR,也就是将字符串以UTF8格式保存转为TCHAR,TCHAR再tring为FString。FString str = UTF8_TO_TCHAR("小明");如果以上没有解决问题那就是VS编码
2022-03-11 16:21:16 3500
原创 C++ 解决rand()函数生成的随机数每次都一样的问题
C++的随机数函数rand是一个伪随机数,从固定的初始种子计算得出。所以每次运行获取到的随机数序列是相同的。要解决这一问题,需要设置一个随机数种子,一般用当前时间作为种子 srand((unsigned)time(NULL)); int n =rand() % 100; cout << n << endl;...
2022-03-04 10:56:35 6583
原创 UE4 实时更新天气和时间状态
本文主要讲解如何将获取的实时天气状态在UE4内展示出来,并且根据时间切换白天黑夜状态用到的插件:第一个是免费的,第二个自行购买或者通过其他路径获取请先阅读这篇文章, 实时获取天气信息文章地址:UE4 实时获取天气信息_sky丶blue的博客-CSDN博客一、将插件添加到你的项目内1.将红框里的文件夹复制粘贴到你项目的Content目录下,注意一定是Content目录下2.项目路径下新建Plugins文件夹,将红框内的插件复制粘贴到你的项目3.将红框内的两个蓝图直接丢.
2021-11-16 16:51:42 4383 9
原创 UE4 蓝图内全局搜索变量或函数在哪调用过
左键点击要查找的变量或者函数然后右键→FindReferences→点击右下脚就会出来一个弹窗显示找到的引用
2021-11-04 16:51:22 2211 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人