一种通过web技术生成增强现实应用的制作系统的制作方法

文档序号:22075840发布日期:2020-09-01 19:01阅读:108来源:国知局
一种通过web技术生成增强现实应用的制作系统的制作方法
本发明实施例涉及增强现实
技术领域
,更具体地,涉及一种通过web技术生成增强现实应用的制作系统。
背景技术
:增强现实(augmentedreality,简称为ar)技术,是一种将真实世界信息与虚拟世界信息“无缝”结合的技术。它通过实时计算摄影机相对于影像的位置及角度,再加上相应图像、视频、3d模型,把原本在现实世界的一定时间空间范围内很难体验到的实体信息,通过模拟仿真后再叠加,将虚拟信息应用到真实世界,被人类感官所感知。目前,随着计算机计算能力的进一步提高,移动智能手机的日益发展,增强现实技术渐渐进入到了人们的生活当中。然而开发这类应用的门槛过高,需要的前期知识很多,导致很多人(尤其是美术工作者)有创意的想法,却没有办法实现。现在已有的一些ar编辑器、ar在线生成工具解决了部分开发问题,无需代码经验和技术积累的人也只需要通过简单的拖拽,就可以生成有趣的ar应用。尽管这已经解决了大部分的技术问题,比如虚拟信息和真实物体的对位,插入图文、视频、模型等虚拟信息,但生成逻辑过于简单,仅仅只能用于展示信息,缺少交互,并且不同的ar识别图之间相互没有关联,设计者如果想要创建关联就只能从真实的环境入手,这让开发的内容有很大的局限性。技术实现要素:本发明实施例提供了一种克服上述问题或者至少部分地解决上述问题的通过web技术生成增强现实应用的制作系统。本发明实施例提供了一种通过web技术生成增强现实应用的制作系统,包括可视化编辑工具和移动客户端;其中,所述可视化编辑工具设置在web端,用于制作多个ar作品,并将所述多个ar作品转化为数据包,再将所述数据包发送至所述移动客户端;所述移动客户端用于接收所述数据包,并解析所述数据包得到ar应用。进一步地,所述可视化编辑工具包括ar展示模式设置模块,用于为每个ar作品设置对应的ar展示模式;其中,所述ar展示模式包括识别弹出模式、全景展示模式、ar射击模式以及ar收集模式。进一步地,当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述识别弹出模式时,将所述数据包中ar作品对应的type值记为1。进一步地,当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述全景展示模式时,将所述数据包中ar作品对应的type值记为2。进一步地,当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述ar射击模式时,将所述数据包中ar作品对应的type值记为3。进一步地,当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述ar收集模式时,将所述数据包中ar作品对应的type值记为4。进一步地,所述可视化编辑工具包括ar作品串联模块,用于将多个相互关联的ar作品串联。进一步地,所述ar作品串联模块具体用于:将所述多个相互关联的ar作品对应的多个编号按预设顺序记录在taskline链表中。进一步地,所述移动客户端包括定位模块,用于对所述多个ar作品分别进行定位。本发明实施例提供的一种通过web技术生成增强现实应用的制作系统,能够让不懂技术的用户快速上手,开始开发自己的增强现实应用程序,且在降低开发和调试时间的同时,也让内存的使用效率最大化,避免出现重复性性工作。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种通过web技术生成增强现实应用的制作系统的结构框图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明实施例提供的一种通过web技术生成增强现实应用的制作系统的结构框图,如图1所述,包括可视化编辑工具101和移动客户端102。其中:所述可视化编辑工具101设置在web端,用于制作多个ar作品,并将所述多个ar作品转化为数据包,再将所述数据包发送至所述移动客户端;所述移动客户端102用于接收所述数据包,并解析所述数据包得到ar应用。具体地,该系统分为一个web端的可视化编辑工具和一个用于运行的移动端应用程序(移动客户端)。在移动客户端中,把所有可变的参数从程序中剥离出来,形成一个数据层。用户可以通过web端的可视化编辑工具设计自己的ar应用,然后由编辑工具生成一套完整的数据包,发送给客户端。最后系统把数据包和客户端绑在一起,提供给系统使用者,完成他们的ar应用制作。需要说明的是,本发明实施例使用three.js来完成web端的可视化技术,最后生成15张二维表,通过代码对表格进行完整性检查,最后把表格和美术资源一起打包放在服务器,并把下载地址发送给客户端,客户端启动的时候自动下载所有的数据,并根据数据表现出系统使用者们所希望的样子。本发明实施例使用unity引擎完成手机版客户端的开发,使用assetbundle对资源进行加密打包,同时进行版本校验等工作。本发明实施例提供的一种通过web技术生成增强现实应用的制作系统,能够让不懂技术的用户快速上手,开始开发自己的增强现实应用程序,且在降低开发和调试时间的同时,也让内存的使用效率最大化,避免出现重复性性工作。在上述实施例中,所述可视化编辑工具包括ar展示模式设置模块,用于为每个ar作品设置对应的ar展示模式;其中,所述ar展示模式包括识别弹出模式、全景展示模式、ar射击模式以及ar收集模式。具体地,用户可以制作四种ar展示模式,分别是“识别弹出”、“全景展示”、“ar射击”和“ar收集”,其中“全景展示”、“ar射击”和“ar收集”需要在装有陀螺仪的智能手机上才可以运行。“识别弹出”是指,用手机摄像头拍摄到的内容作为画面的背景,当手机摄像头拍摄到预置的识别图时,在识别图相应的位置上叠加设计好的虚拟物品,可以叠加的物品有图片、文字、视频或透明视频、模型或3d动画。用手机在不同角度和距离观察识别图时,也可以在相应的角度和距离观察到虚拟物品。“全景展示”是指,使用陀螺仪跟踪手机的旋转运动,使用摄像头拍摄到的内容或预置的全景图片作为背景,在相对于手机相应的位置上叠加上述虚拟物品,只要手机的内存足够,各物品的叠加数量不限。用户只需要旋转手机即可看到处于空间中不同位置的虚拟物体。“ar射击”和“全景展示”类似,也是用陀螺仪跟踪手机的旋转运动,使用摄像头拍摄到的内容或预置的全景图片作为背景,但叠加的虚拟物品只能是模型。不同的地方在于,这些模型是可以射击的,这类似于第一人称射击游戏(fps游戏),只需要旋转手机,把手机的准心对准虚拟物体,再点击屏幕开枪即可。“ar射击”可以添加不同的模型作为射击目标,每一种模型可以放置多个,模型如果带有攻击、移动和死亡动画,还可以四处游走,攻击玩家,最后死亡。“ar收集”则类似于“ar射击”,不同的地方在于“ar收集”不再是用枪来消灭目标,而是用抛球的方式来碰撞目标,进而把目标收到球里。抛出的收集球按抛物线规律运动,碰到“地面”会反弹并继续向前滚动,“地面”是手机陀螺仪感受到的水平面,该面处于手机下方一米左右的位置。在上述实施例中,当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述识别弹出模式时,将所述数据包中ar作品对应的type值记为1。当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述全景展示模式时,将所述数据包中ar作品对应的type值记为2。当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述ar射击模式时,将所述数据包中ar作品对应的type值记为3。当所述ar展示模式设置模块为ar作品设置的对应的ar展示模式为所述ar收集模式时,将所述数据包中ar作品对应的type值记为4。具体地,设置好了这些ar展示模式,用户只需要选择使用哪一种模式,就可以开始编辑创建他们的ar作品了。每一个ar作品在数据包中对应一个唯一id,用来索引该作品的展示模式(type)。type值为1,代表该小作品使用“识别弹出”来展示内容,则用户需要设置一张设别图,再选择添加需要的虚拟物品,上传即可。可以添加的虚拟物品有图片(jpg或png文件)、文字、视频或透明视频(h.264编码的mp4文件)、模型或3d动画(fbx文件),通过web可视化编辑工具把这些内容设置在相对于识别图相应的位置,以识别图的中心作为世界坐标的中心,设置好以后,web工具就会给每一个物品保存一组数据,其中包括物品名称、唯一id,物品类型、所在小作品的id、位置坐标(pos_x,pos_y,pos_z)、角度坐标(rot_x,rot_y,rot_z)和尺度坐标(scale_x,scale_y,scale_z)等,fbx文件如果带动画还要输入动画的名称。type值为2,代表该小作品使用“全景展示”模式。如果设置了全景图作为背景,数据包中的skybox位就会指向上传的那张全景照片,如果没有设置,则默认使用摄像机捕获到的内容作为背景。与“识别弹出”不同的地方在于,不需要设置识别图,世界坐标的中心在手机上,虚拟物品只需要围绕手机摆放即可,系统使用者可以自由设计。type值为3时,代表该小作品使用“ar射击”模式。同样使用陀螺仪来追踪设备的旋转,如果加入了全景图当背景,设备就不会打开摄像头了。与“全景展示”不同的地方在于,“ar射击”只能添加模型作为射击目标,但每一种模型可以在一个范围内随机散落,只需要设置刷怪位置的坐标(pos_x,pos_y,pos_z)、刷怪区域(length,weight,hight)即可和刷怪数量num即可。如果模型带有走路、攻击和死亡动画,还可以让模型随机游走、攻击主角、最后死亡。我们通过改变射击目标的数值即可改变它的行为,这些数值包括攻击距离、攻击力、最大血量、行走速度、寻敌范围、追击距离、攻击时候随机奔跑的时间、发现玩家状态运行时间、空闲时候发呆的时间、攻击几次休息乱跑一下、被攻击几次就乱跑一下等。例如,如表1所示,当下面这些数值被设置为第一列时,怪物的行为是主动攻击类型,而当这些数值被设置为第二列是,怪物的行为是被动攻击类型。表1参数名称第一列第二列seekrange700minattackdistance300maxattackdistance500chasedistance10000attackruntime100findtargettime10idleruntime11idletime15changeattackcount10changehitcount10runspeed22chasespeed22attackrunspeed22leavehomedistance5030数值的搭配是一件很专业的事情,本发明实施例会设置好一些行为数值供系统使用者们去直接调用,当然使用者也可以通过这些数值定制他们需要的行为。type值为4时,代表该小作品使用“ar收集”模式。这与“ar射击”模式几乎一样,只是消灭怪物的方式不一样。与“ar射击”相同的地方在于,一旦所有怪物都被消灭掉以后,任务就会完成,并且会获得相应的奖励。奖励再web端也是可以设置的,但目前只能设置虚拟物品奖励。在上述实施例中,所述可视化编辑工具包括ar作品串联模块,用于将多个相互关联的ar作品串联。进一步地,所述ar作品串联模块具体用于:将所述多个相互关联的ar作品对应的多个编号按预设顺序记录在taskline链表中。具体地,当我们有很多ar作品以后,只需要把他们串联起来就可以了。数据包中有一条taskline链表,按顺序记录着每一条路线中用到的ar作品编号,系统使用者可以修改这条链表以达到ar作品的剧情串联。在上述实施例中,所述移动客户端包括定位模块,用于对所述多个ar作品分别进行定位。具体地,本发明实施例的移动客户端还带有地图和gps定位功能,本系统把gps的火星坐标系映射到游戏内的坐标中,所以系统使用者还可以设置整条路线的范围区域,定制自己的地图地图,同时为每一个ar小作品设计一个启动区域,只有用户在到达了这个区域以后才可以启动相应的ar小作品。下一个启动区域会显示在地图上。ar小作品的4中模式中,只有“ar射击”和“ar收集”需要干掉所有目标才能完成任务到达下一步,“全景展示”只需要进入并返回即可进入下一步,而“识别弹出”只需要扫描成功就可以进入下一步了。系统使用者还可以通过编辑dialog链表来设置每一步的对话者和对话内容,通过设计每一步的剧情,提示用户下一个ar场景在哪,怎么操作,或者做一些更有创意的事情。综上,有了本发明实施例提供的系统,用户可以更快、更方便的创造出更多、更有意思的ar应用了,该平台在一般ar生成工具的基础上增加了一些交互功能,如射击和收集。还增加了剧情串联功能和gps定位功能,让平台使用者们有更多的手段去创造他们心中的ar应用。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1