一种基于UE4平台的Prefab开发系统及创建方法技术方案

技术编号:26342037 阅读:30 留言:0更新日期:2020-11-13 20:29
本发明专利技术公开了一种基于UE4平台的Prefab开发系统及其创建方法,该Prefab开发系统由序列化、反序列化、编辑器三大模块构成,其中序列化、反序列化是整个系统的核心技术,并且联系较大。本发明专利技术中数据序列化和反序列化中最重要的一点就是要用到反射技术。UE4本身提供了非常好的反射技术支持,任何标记为UCLASS的C++类和USTRUCT的C++结构体都可以支持反射,任何标记为UPROPERTY的成员变量都能通过反射来获取变量名并且取到变量值。根据这些特性就可以找到所有的类和结构体并序列化为数据流。

【技术实现步骤摘要】
一种基于UE4平台的Prefab开发系统及创建方法
本专利技术涉及计算机软件开发
,具体为一种基于UE4平台的Prefab开发系统及创建方法。
技术介绍
目前在UE4平台上的可复用的模块化的工作方式主要是依靠Blueprint(蓝图)的方式,而Blueprint其实是一种可视化的代码,其继承、重载的方式与传统的面向对象的编码方式一致。但是Blueprint有个比较大的缺点:Blueprint的基础是Actor(UE4中的可存在于场景中的基本物体),但是在Blueprint中只允许根物体是Actor,其他物体只能是组件;但是UE4的场景是以多个Actor组成的,Actor于Actor之间可以有层级关系,如果用Blueprint做模块化就无法实现多层Actor的预制物体。现有的主流VR/AR开发平台主要是UE4和Unity,而Unity的开发效率比UE4要高很多,其中很大一部分原因是:Unity具有简单易用的Prefab(预制体,模块化)工作流程,而UE4里类似的功能还是按照传统的继承、重载的思维方式构建的。所以开发者迫切需要在UE4本文档来自技高网...

【技术保护点】
1.一种基于UE4平台的Prefab开发系统创建方法,其特征在于,其具体步骤如下:/n第一步,启动UE4程序UE4Editor.exe,选择工程文件夹并创建工程,创建工程成功之后会在文件夹中生成子目录Content,然后关闭此UE4工程程序;/n第二步,在所述Content文件夹的同一个目录下新建文件,并夹命名为Plugins,复制上述创建工程的文件夹到所述Plugins文件夹下;/n第三步,重新打开UE4工程程序,此时系统会提示是否需要重新编译,选择是,待编译完成之后自动进入场景;/n第四步,创建Prefab系统,在上述打开的场景里创建多个Actor,并修改Actor的层级,保证层级的最上层...

【技术特征摘要】
1.一种基于UE4平台的Prefab开发系统创建方法,其特征在于,其具体步骤如下:
第一步,启动UE4程序UE4Editor.exe,选择工程文件夹并创建工程,创建工程成功之后会在文件夹中生成子目录Content,然后关闭此UE4工程程序;
第二步,在所述Content文件夹的同一个目录下新建文件,并夹命名为Plugins,复制上述创建工程的文件夹到所述Plugins文件夹下;
第三步,重新打开UE4工程程序,此时系统会提示是否需要重新编译,选择是,待编译完成之后自动进入场景;
第四步,创建Prefab系统,在上述打开的场景里创建多个Actor,并修改Actor的层级,保证层级的最上层只有一个Actor,然后用该最上层的Actor来创建Prefab系统;
第五步,修改Prefab系统,当在场景中修改了Prefab和子对象中的元素的属性之后,实际上只是修改了场景中创建的实例,而原始的PrefabAsset的数据并没有变化,如果继续这样使用就导致再次创建的实例并不是最新的数据;所以我们在修改了Prefab属性数据之后需要保存数据,点击LGUITools/Prefab/ApplyPrefab就可以保存数据到PrefabAsset;
第六步,编辑器中加载Prefab系统,在场景中选择一个Actor作为父对象,从ContentBrowser中找到需要加载的PrefabAsset,选中并拖拽到场景中的任意位置,然后此Prefab将会显示在场景中;
第七步,运行时加载Prefab,首先需要获取PrefabAsset的引用并准备父对象的SceneComponent,使用c++代码或蓝图调用LoadPrefab接口并传入参数,然后此Prefab就加载到场景中。


2.根据权利要求1所述基于UE4平台的Prefab开发系统创建方法,其特征在于,创建所述的Prefab的方式有两种:第一种方式,选择工具栏上的LGUITools/Prefab/CreatePrefab;第二种方式,在场景大纲SceneOutliner的扩展栏上选择Pre...

【专利技术属性】
技术研发人员:刘飞郑昊
申请(专利权)人:上海珀立信息科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1