当前位置: 首页 > news >正文

知名网站名称wordpress原生封装app

知名网站名称,wordpress原生封装app,商丘seo教程,做网站需不需要云数据库Unreal Engine 中 Actor 数据的 JSON 序列化 在游戏开发过程中#xff0c;经常需要将游戏世界中的实体#xff08;Actors#xff09;信息导出到其他格式以便于分析、存储或交互。在Unreal Engine中#xff0c;我们可以通过序列化这些实体的数据为JSON格式来实现这一目的。…Unreal Engine 中 Actor 数据的 JSON 序列化 在游戏开发过程中经常需要将游戏世界中的实体Actors信息导出到其他格式以便于分析、存储或交互。在Unreal Engine中我们可以通过序列化这些实体的数据为JSON格式来实现这一目的。以下是在Unreal Engine项目中实现Actor数据序列化为JSON对象的技术细节概述。 FActorData 结构体 FActorData结构体用于存储Actor的相关信息包括名称、ID、类型、标签、用户数据以及子Actor信息。此结构体还包含一个方法ToJsonObject用于将FActorData实例转换为JSON对象。 struct FActorData {FString Name;FString ID;//...TSharedPtrFJsonObject ToJsonObject() const;// 其他成员和方法的定义... }; ToJsonObject方法将FActorData的每个字段转换为JSON格式并处理子Actor数据的递归序列化。 CreateActorData 函数 CreateActorData函数用于提取给定Actor的数据并将其封装在FActorData结构体中。该函数检查Actor的标签以确定其类型并递归收集子Actor的数据。 FActorData CreateActorData(AActor* Actor); 在实现中如果Actor的标签包含Thing则将类型设置为Thing否则使用Actor的类名作为类型。此外该函数还会收集Actor的标签和用户数据这些数据由UUnrealUtils::GetUserData提供假设该函数返回TMapFString, FString类型的数据。 ParseWorldActorsToJson 函数 ParseWorldActorsToJson函数遍历Unreal Engine世界中的所有Actors使用CreateActorData函数为每个Actor创建FActorData实例并将这些实例序列化为JSON数组。 TArrayTSharedPtrFJsonValue ParseWorldActorsToJson(UWorld* World); 该函数假设传入的UWorld对象是有效的并且所有Actors都已经加载到世界中。它返回一个JSON值数组每个值都是一个表示Actor数据的JSON对象。 技术细节 在Unreal Engine中将Actor数据序列化为JSON涉及到几个关键步骤包括定义数据结构、提取Actor信息、转换为JSON格式以及处理复杂数据类型。以下是这些步骤的详细说明和相关代码示例。 1. 定义数据结构FActorData FActorData结构体用于表示Actor的数据模型。它包含了Actor的名称、唯一标识符、类型、标签列表、用户自定义数据以及子Actor的列表。 struct FActorData {FString Name;FString ID;FString Type;TArrayFString Tags;TMapFString, FString UserData;TArrayFActorData Children;// ... 其他成员和方法的定义 ... }; 2. 提取Actor信息CreateActorData CreateActorData函数负责遍历Actor及其子Actor提取相关信息并填充到FActorData结构体实例中。这个过程包括检查Actor的标签来确定其类型并收集用户自定义数据。 FActorData CreateActorData(AActor* Actor) {FActorData Data;if (Actor ! nullptr){Data.Name Actor-GetActorLabel();Data.ID Actor-GetName();// ... 标签检查和类型确定的逻辑 ...Data.UserData UUnrealUtils::GetUserData(Actor);// ... 收集子Actor数据的逻辑 ...}return Data; } 3. 转换为JSON格式ToJsonObject ToJsonObject方法负责将FActorData实例转换为JSON对象。它使用Unreal Engine的JSON API来创建和填充JSON对象。 TSharedPtrFJsonObject FActorData::ToJsonObject() const {TSharedPtrFJsonObject JsonObject MakeShareable(new FJsonObject);// ... 设置基本字段 ...// 序列化UserData为JSON对象TSharedPtrFJsonObject JsonUserData MakeShareable(new FJsonObject);for (const auto Elem : UserData){JsonUserData-SetStringField(Elem.Key, Elem.Value);}JsonObject-SetObjectField(TEXT(UserData), JsonUserData);// ... 序列化子Actor ...return JsonObject; } 4. 处理复杂数据类型 在FActorData中UserData字段是一个TMapFString, FString类型它需要特殊处理来转换为JSON对象。同样子Actor列表也需要递归地转换为JSON数组。 // 序列化UserData为JSON对象 TSharedPtrFJsonObject JsonUserData MakeShareable(new FJsonObject); for (const auto Elem : UserData) {JsonUserData-SetStringField(Elem.Key, Elem.Value); } JsonObject-SetObjectField(TEXT(UserData), JsonUserData);// 序列化子Actor为JSON数组 TArrayTSharedPtrFJsonValue JsonChildren; for (const FActorData ChildData : Children) {JsonChildren.Add(MakeShareable(new FJsonValueObject(ChildData.ToJsonObject()))); } JsonObject-SetArrayField(TEXT(Children), JsonChildren); 结论 通过以上步骤我们可以将Unreal Engine中的Actor数据序列化为JSON格式。这个过程不仅包括基本类型的转换还涉及到复杂数据类型的处理如映射和数组。最终我们能够生成一个完整的JSON对象它准确地反映了Actor的状态和属性可以用于数据存储、分析或与外部系统的交互
http://www.sadfv.cn/news/27193/

相关文章:

  • 网站运营代理代理公司注册价格
  • 如何判断网站html5大连服务公司 网站
  • canvas效果网站WordPress网站hym地图
  • 电商加盟网站建设vc 做网站源码
  • 网站代码免费下载公司起名参考大全
  • 怎么检查网站死链有免费的微网站是什么
  • 做网站和网页有区别吗dedecms企业网站模板
  • 腾讯云wed服务器做网站网站开发如何使用微信登录
  • 工艺品商城网站建设欧米茄官方手表
  • IC 网站建设如何利用个人nas做网站
  • 用wordpress框架建站兰州网站建设怎么选
  • 石家庄平山网站推广优化iis网站出乱码
  • 郑州电力高等专科学校面试问题博爱seo排名优化培训
  • 网站运营需要学什么python基础教程网易
  • 外贸视频网站核桃编程免费100课
  • 网站开发团队人员配置厦门商城网站建设
  • 找人做网站做小程序品牌营销策略分析
  • 江苏通力建设官方网站html特效网站
  • 在线商城网站怎么做企业系统包括哪些系统
  • 网站建设与优化及覆盖率方案Wordpress源码下载站
  • 统计网站的代码商城网站建设公司
  • 珠海建设网站wordpress用的编辑器外接
  • 搭建网站 开源软件wordpress注册账号
  • 百度云服务器做asp网站东莞网站制作实力乐云seo
  • 北京网站备案拍照地址鼓楼建设工程信息网一体化平台
  • 网站做要钱医院设计
  • 网站建设实验感想3d房屋建筑设计软件
  • 关于建设工程招标的网站亚马逊雨林生存游戏
  • 如何在网站申请做co苏州网站建设选苏州梦易行
  • 少儿戏曲知识 网站建设北京seo加盟