UE5_官方Json插件来了!

UE5_官方Json插件来了!

UE5官方的蓝图支持Json插件来啦!!!!

一直以来,在UE4中处理Json要么使用VaRest插件,要么去C++里写。

使用VaRest插件会出现UObject超过数量上限的错误!

商城里的其他Json插件,我使用下来或多或少都有些不满意的地方,本来还打算计划自己写一个。

现在看到UE5中有个Json支持插件,就想来试一试。

跟着脚步我们一起去探探究竟吧。

一、打开插件

搜索并打开插件:json Blueprint Utilities

二、在蓝图中使用

2.1Json相关节点

一共只有8个节点。【别看数量少,但是已经能满足大部分的需求了】

读取Json数据

LoadJson from File、LoadJson from String

直接从文件或者字符串得到JsonObject对象

获得键-值信息

GetFieldNames、HasField、GetField

等下着重讲一讲GetField【非常重要】

设置键-值信息

SetField

保存键值对

GetJsonString、SaveJsonToFile

2.2Json节点使用情况

2.2.0 字符串转换到Json

Json对象字符串转换到Json

Json对象数组转换到Json

创建一个JsonObject数组变量,将变量组合到一个对象的Key下,再去获取Json中的Value

2.2.1读取键值对

读取JsonObject中字符串值

经过测试GetField的Key不分大小写,此处写"aa"也是能找到值

读取JsonObject中数值

创建一个float变量,连接到GetField上,GetField的输出自动变为float

返回123.123457

读取JsonObject中的Json对象

创建一个JsonObject变量,连接到GetField上,GetField的输出自动变为JsonObject,后续还能再次获取值

读取JsonObject中的bool对象

创建一个bool变量,连接到GetField上,GetField的输出自动变为bool

2.2.2读取数组

读取JsonObject中的字符串数组

创建一个String数组变量,连接到GetField上,GetField的输出自动变为String数组

数值数组、bool数组、对象数组同上

2.2.3文件操作Json

从文件中读取Json

将JsonObject保存到文件中

2.2.4 设置键值对

设置string数组

其他字符串、数值、bool值、对象、对象数组等都是同理

2.2.5其他特殊值

GetField和SetField中Value的类型是不固定的。我们连什么类型到Value上,Value就是什么类型。

所以上诉所有GetField中都是先创建数据类型再去

对SetField使用make,发现Value可传入的值不只有string、JsonObject、float等,还能是。。。。。

向量、旋转、四元数、Box等等

测试一个向量看看

可以把坐标传到Json值中,那么就可以再将Json存到文件中【还能是旋转、变换等等】

还能提供给UE4,进行读取。这也是一种用法。



今天给大家的介绍就到这里。希望能给大家提供一些帮助。

如果觉得这篇文章对你有所帮助,点个赞同和喜欢吧

编辑于 2022-07-28 14:00

文章被以下专栏收录