找回密码
 立即注册
查看: 681|回复: 6

UE5_官方Json插件来了!

[复制链接]
发表于 2023-1-17 09:52 | 显示全部楼层 |阅读模式
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,进行读取。这也是一种用法。

今天给大家的介绍就到这里。希望能给大家提供一些帮助。
如果觉得这篇文章对你有所帮助,点个赞同和喜欢吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2023-1-17 09:55 | 显示全部楼层
看了下和商城免费Json 的区别不大,感觉VAREST 使用上更优雅,子系统方便访问,VAREST还有网络请求、BASE64 MD5 Sha1等工具
 楼主| 发表于 2023-1-17 10:03 | 显示全部楼层
这个比varest解析效率高,你可以试试
 楼主| 发表于 2023-1-17 10:10 | 显示全部楼层
这个插件可以索取直播弹幕吗,如果可以能说下思路吗?
发表于 2023-1-17 10:10 | 显示全部楼层
这个可能得先获得弹幕数据,然后就可以用这个解析
发表于 2023-1-17 10:11 | 显示全部楼层
对我而言,缺少了对网络接口的请求一部分,API的GET和POST可以实现吗?
发表于 2023-1-17 10:20 | 显示全部楼层
设置json处理插件,不是http处理插件
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-12-4 01:49 , Processed in 0.096373 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表