一种对Unity3D程序进行全景视频录制方法及系统技术方案

技术编号:16176461 阅读:35 留言:0更新日期:2017-09-09 03:46
本发明专利技术涉及视频制作领域,尤其涉及一种对Unity3D程序进行全景视频录制方法及系统。本发明专利技术通过当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。实现对于未开发录制全景视频功能的游戏系统,无需修改游戏系统的源码即可新增该功能。

【技术实现步骤摘要】
一种对Unity3D程序进行全景视频录制方法及系统
本专利技术涉及视频制作领域,尤其涉及一种对Unity3D程序进行全景视频录制方法及系统。
技术介绍
Unity3D是由UnityTechnologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。现有的3D游戏大多使用Unity3D引擎开发。随着信息技术的发展,目前新开发的3D游戏中大多自带有录制全景视频的功能,使录制的视频不受特定视角的限制,可完整还原三维空间的完整场景。但是,早期开发的3D游戏大部分没有录制全景视频的功能,若要在没有录制全景视频功能的3D游戏中添加该功能,需要通过修改源码的方式实现。然而,游戏的源码量大多比较庞大,且早期开发该游戏的程序人员可能早已调离其它项目组,新的工程师对该游戏的源码进行修改需要耗费大量不必要的时间和精力。
技术实现思路
本专利技术所要解决的技术问题是:提供一种对Unity3D程序进行全景视频录制方法及系统,实现对于未开发录制全景视频功能的游戏系统,无需修改游戏系统的源码即可新增该功能。为了解决上述技术问题,本专利技术采用的技术方案为:本专利技术提供一种对Unity3D程序进行全景视频录制方法,包括:当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。本专利技术还提供一种对Unity3D程序进行全景视频录制系统,包括:挂载模块,用于当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;添加模块,用于执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;截取模块,用于当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;制作模块,用于执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。本专利技术的有益效果在于:通过向处于运行时状态的Unity3D引擎,添加六个以上摄像机对象至三维场景捕获不同角度的场景图片,并根据场景图片制作全景视频,实现无需在游戏系统的开发阶段往Unity3D程序中加入录制脚本,就能够实现对三维场景的全景录制,从而使得原不具有录制全景视频功能的游戏系统在无需修改源码的情况下,实现游戏过程中的全景视频录制,极大程度上减少了为不具有录制全景视频功能的游戏系统添加全景视频录制功能所需耗费的时间和精力。附图说明图1为本专利技术提供的一种对Unity3D程序进行全景视频录制方法的具体实施方式的流程框图;图2为本专利技术提供的一种对Unity3D程序进行全景视频录制系统的具体实施方式的结构框图;图3为本专利技术提供的一种对Unity3D程序进行全景视频录制方法实施例的流程框图;图4为本专利技术提供的一种对Unity3D程序进行全景视频录制系统实施例的结构框图;标号说明:1、挂载模块;2、添加模块;3、截取模块;4、制作模块;41、第一合成单元;42、第二合成单元;5、第一绑定模块;6、解绑模块;7、第二绑定模块;8、设置模块。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:通过向处于运行时状态的Unity3D引擎,添加六个以上摄像机对象至三维场景捕获不同角度的场景图片,并根据场景图片制作全景视频,实现对于未开发录制全景视频功能的游戏系统,无需修改游戏系统的源码即可新增该功能。请参照图1至图4:如图1所示,本专利技术提供一种对Unity3D程序进行全景视频录制方法,包括:当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。进一步地,还包括:执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第一角色对象的操作。由上述描述可知,当第一角色对象移动时,摄像机对象也随之移动,实现以三维场景中一角色对象为中心录制全景视频。进一步地,还包括:执行所述全景视频录制脚本中解绑所述摄像机对象与所述第一角色对象的操作;执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第二角色对象的操作。由上述描述可知,实现在录制过程中可切换录制视角,以另一角色对象为中心录制全景视频。进一步地,还包括:执行所述全景视频录制脚本中设置所述六个以上摄像机对象朝向预设多面体的不同面的操作。由上述描述可知,将六个以上摄像机绑定在同一角色对象上之后,设置六个以上摄像机对象分别朝向预设多面体的不同面,使得六个以上摄像机对象截取到的场景图片可构成全景帧。进一步地,根据所述场景图片制作全景视频,具体为:合成同一时刻不同所述摄像机对象截取的所述场景图片,得到全景帧;按时序合成所述全景帧,得到全景视频。由上述描述可知,实现将摄像机对象获取到的场景图片合成全景视频。如图2所示,本专利技术还提供一种对Unity3D程序进行全景视频录制系统,包括:挂载模块1,用于当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;添加模块2,用于执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;截取模块3,用于当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;制作模块4,用于执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。进一步地,还包括:第一绑定模块5,用于执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第一角色对象的操作。进一步地,还包括:解绑模块6,用于执行所述全景视频录制脚本中解绑所述摄像机对象与所述第一角色对象的操作;第二绑定模块7,用于执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第二角色对象的操作。进一步地,还包括:设置模块8,用于执行所述全景视频录制脚本中设置所述六个以上摄像机对象朝向预设多面体的不同面的操作。进一步地,所述制作模块包括:第一合成单元41,用于合成同一时刻不同所述摄像机对象截取的所述场景图片,得到全景帧;第二合成单元42,用于按时序合成所述全景帧,得到全景视频。由上述描述可知,本专利技术提供的对Unity3D程序进行全景视频录制系统,实现对于未开发录制全景视频功能的游戏系统,无需修改游戏系统的源码即可新增该功能。如图3所示,本专利技术的实施例一为:S1、当本文档来自技高网
...
一种对Unity3D程序进行全景视频录制方法及系统

【技术保护点】
一种对Unity3D程序进行全景视频录制方法,其特征在于,包括:当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。

【技术特征摘要】
1.一种对Unity3D程序进行全景视频录制方法,其特征在于,包括:当Unity3D引擎处于运行时状态时,通过HOOK技术在Unity3D引擎的内部函数上挂载预设的全景视频录制脚本;所述内部函数为刷新三维场景时需调用的函数;执行所述全景视频录制脚本中添加六个以上摄像机对象至所述三维场景的操作;当Unity3D引擎刷新所述三维场景时,执行所述全景视频录制脚本中触发所述摄像机对象截取场景图片的操作;执行所述全景视频录制脚本中根据所述场景图片制作全景视频的操作。2.根据权利要求1所述的对Unity3D程序进行全景视频录制方法,其特征在于,还包括:执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第一角色对象的操作。3.根据权利要求2所述的对Unity3D程序进行全景视频录制方法,其特征在于,还包括:执行所述全景视频录制脚本中解绑所述摄像机对象与所述第一角色对象的操作;执行所述全景视频录制脚本中绑定所述摄像机对象与所述三维场景中的第二角色对象的操作。4.根据权利要求1所述的对Unity3D程序进行全景视频录制方法,其特征在于,还包括:执行所述全景视频录制脚本中设置所述六个以上摄像机对象朝向预设多面体的不同面的操作。5.根据权利要求1所述的对Unity3D程序进行全景视频录制方法,其特征在于,根据所述场景图片制作全景视频,具体为:合成同一时刻不同所述摄像机对象截取的所述场景图片,得到全景帧;按时序合成所述全景帧,得到全景视频。6.一种对Unity3D程序进行全景视频录制系统,其特征在于,包括:...

【专利技术属性】
技术研发人员:刘德建曾少彬方振华郭玉湖
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:福建,35

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

1