买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】控制虚拟场景中物体运动的方法和装置_网易(杭州)网络有限公司_201810169066.1 

申请/专利权人:网易(杭州)网络有限公司

申请日:2018-02-28

公开(公告)日:2021-04-27

公开(公告)号:CN108245890B

主分类号:A63F13/428(20140101)

分类号:A63F13/428(20140101);A63F13/55(20140101)

优先权:

专利状态码:有效-授权

法律状态:2021.04.27#授权;2018.07.31#实质审查的生效;2018.07.06#公开

摘要:本发明公开了一种控制虚拟场景中物体运动的方法和装置。其中,该方法包括:获取控制设备转动的第一角度,其中,控制设备用于控制目标对象在虚拟场景中运动;根据第一角度确定第二角度,其中,在第一角度为小于预设角度的情况下,第二角度随第一角度的增大而增大,在第一角度大于等于预设角度的情况下,第二角度随第一角度的增大而减小;根据第一角度控制目标对象在虚拟场景中的移动速度,并根据第二角度控制目标对象在虚拟场景中的转动角度。本发明解决了现有技术中,基于3Dof的手柄对物体的控制采用直线控制,只能实现物体的移动而无法实现转动导致体验较差的技术问题。

主权项:1.一种控制虚拟场景中物体运动的方法,其特征在于,包括:获取控制设备转动的第一角度,其中,所述控制设备用于控制目标对象在虚拟场景中运动;根据所述第一角度确定第二角度,其中,在所述第一角度为小于预设角度的情况下,所述第二角度随所述第一角度的增大而增大,在所述第一角度大于等于所述预设角度的情况下,所述第二角度随所述第一角度的增大而减小;根据所述第一角度控制所述目标对象在所述虚拟场景中的移动速度,并根据所述第二角度控制所述目标对象在所述虚拟场景中的转动角度。

全文数据:控制虚拟场景中物体运动的方法和装置技术领域[0001]本发明涉及软件技术领域,具体而言,涉及一种控制虚拟场景中物体运动的方法和装置。背景技术[0002]VRVirtualReality,即虚拟现实,简称VR,是由美国VPL公司创建人拉尼尔JaronLanier在20世纪80年代初提出的。其具体内涵是:综合利用计算机图形系统和各种现实及控制等接口设备,在计算机上生成的、可交互的三维环境中提供沉浸感觉的技术。其中,计算机生成的、可交互的三维环境称为虚拟环境(g卩VirtualEnvironment,简称VE。虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统的技术。它利用计算机生成一种模拟环境,利用多源信息融合的交互式三维动态视景和实体行为的系统仿真使用户沉浸到该环境中。[0003]现阶段移动端VR控制器主要是使用旋转3自由度的手柄,即分别为方向角Yaw、俯仰角Pitch和倾斜角Roll,如图1所示。这3个角度就可以确定操作手柄即VR控制器)的空间指向。虽然各大厂商在自己的移动端VR开发套件中都提供了手臂模拟模型,来模拟操作手柄在这3个角度发生变化时的空间位置,但是这些都只是简单的模拟,无法实现PC端例如,HTCVive、PSVR等准确的6自由度的手柄位置、姿态定位,因此这样就产生一个问题,如何使用一个3自由度的手柄来与虚拟场景中的物体进行交互,以及如何在各种机关中使用手柄进行物体的拖拽、转动控制,成为亟待解决的问题。[0004]针对上述现有技术中,基于3Dof的手柄对物体的控制采用直线控制,只能实现物体的移动而无法实现转动导致体验较差的问题,目前尚未提出有效的解决方案。发明内容[0005]本发明实施例提供了一种控制虚拟场景中物体运动的方法和装置,以至少解决现有技术中,基于3Dof的手柄对物体的控制采用直线控制,只能实现物体的移动而无法实现转动导致体验较差的技术问题。[0006]根据本发明实施例的一个方面,提供了一种控制虚拟场景中物体运动的方法,包括:获取控制设备转动的第一角度,其中,控制设备用于控制目标对象在虚拟场景中运动;根据第一角度确定第二角度,其中,在第一角度为小于预设角度的情况下,第二角度随第一角度的增大而增大,在第一角度大于等于预设角度的情况下,第二角度随第一角度的增大而减小;根据第一角度控制目标对象在虚拟场景中的移动速度,并根据第二角度控制目标对象在虚拟场景中的转动角度。[0007]进一步地,获取控制设备转动的第一角度,包括:确定控制设备转动前的第一朝向;获取控制设备转动后的第二朝向,并根据第二朝向和第一朝向确定第一角度。[000S]进一步地,移动速度与第一角度成正比,转动角度等于第二角度。[0009]进一步地,通过如下公式确定第二角度:b=ArcsinSina*k;其中,a为第一角度,b为第二角度,k为常数,〇P3和向量p〇-Pl之间的夹角a计算出一个角度b,并将P3_P0向量旋转角度b得到,通过调节其中a、b角度对应关系,以及P0_pl、p3-p2向量长度来得到不同形状的3阶Bezier曲线,从而更好地模拟显不出来的曲线,赋予曲线弹性,从而获得更好地力量感。容易注意的是,P〇_pl、p3_p2向量的长度是可以自定义设置的,用户可以根据需要自行调整到效果最好的长度。[0047]容易注意的是,在基于3阶Bezier曲线模拟拖拽目标对象的拖拽曲线控制三维虚拟场景中目标对象运动移动和或转动的过程中,上述角度a和b不能是简单的正比或反比关系,这是因为,当a随着拖拽由锐角一直增大钝角,如果根据a与b是简单的正比或反比关系,那么b也会变为钝角,那么曲线画出来就是如图4所示的形状。[0048]作为一种可选的实施例,本申请将第一角度与第二角度的大小关系限定为公式2所示的关系:[0049]b=ArcsinSina*k;⑵[0050]其中,a为第一角度,b为第二角度,k为常数,0P1为手柄的朝向,由图4和图5所示的内容可知,角P1P0P3即第一角度随手柄的朝向改变而改变,所以是在0〜180度之间变化,角P〇P3P2即第二角度始终为锐角,并且当角P1P0P3即第一角度为锐角时,角P0P3P2即第二角度随角P1P0P3即第一角度的增大而增大;当角P1P0P3即第一角度为钝角时,角P〇P3P2即第二角度随角P1P0P3的增大而缩小,这样就获得两种变化类型角度,这两个角可以分别用来操作物体的不同运动。[0054]其中,在控制三维虚拟场景中的目标对象移动时,由于角P1P0P3跟随手柄变化,且随着手转动手柄的角度越大,角P1P0P3也是越来越大,这个角可以用来控制物体的移动,最简单的是使用速度与角度呈正比移动,假设角P1P0P3的角度值为a,则物体的移动速度可以表示为:v=a*k,(k为常数,取值范围为〇P2的朝向作为目标对象的移动方向。而如果目标对象有一个个固定的轨道来限制,即有一个固定的移动方向,那么就可以通过判断向量P3-P2在平面(与其移动方向平行而和直线P0-P3垂直的平面上的投影v,v和目标对象的移动方向的角度小于一定值时就可以让该目标对象沿着其设定的移动方向移动。[0055]在控制三维虚拟场景中的目标对象移动时,与控制目标对象移动不同,转动的时候物体不会发生位置变化,如果使用角P1P0P3这样会一直变大的角度来控制转动角度的话,那么物体会在手柄移动到朝向后方即角pirop为钝角时,物体会依然在随角pipop3的变大而转动,甚至会出现速度更快的情况,为了解决这个问题,本申请使用角P0P3P2来进行控制,当角P0P3P2从0开始变大,当角P1P0P3为锐角时,角P0P3P2随角P1P0P3的变大而变大,物体转动角度也随之增大,当角P1P0P3位钝角时,角P0P3P2随P1P0P3的增大而减小,物体转动角度也随之变小,这样在视觉上看起来更加正常。[0056]通过本申请上述实施例,使用Bezier曲线的不同角度来控制物体的移动与转动,可以使物体的移动、转动更加符合人的认知,更有真实感。使用3阶Bezier曲线模拟拖拽曲线,赋予曲线弹性,使曲线看起来更加有力量感,可以增加玩家在VR中的沉浸感。[0057]根据本发明实施例,还提供了一种用于实现上述控制虚拟场景中物体运动的方法的装置实施例,图7是根据本发明实施例的一种控制虚拟场景中物体运动的装置示意图,如图7所示,该装置包括:获取单元701、确定单元703和控制单元705。[0058]其中,获取单元701,用于获取控制设备转动的第一角度,其中,控制设备用于控制目标对象在虚拟场景中运动;[0059]确定单元703,用于根据第一角度确定第二角度,其中,在第一角度为小于预设角度的情况下,第二角度随第一角度的增大而增大,在第一角度大于等于预设角度的情况下,第二角度随第一角度的增大而减小;[0060]控制单元705,用于根据第一角度控制目标对象在虚拟场景中移动的移动速度,并根据第二角度控制目标对象在虚拟场景中转动的转动角度。[0061]此处需要说明的是,上述获取单元7〇1、确定单元703和控制单元705对应于方法实施例中的步骤S202至S2〇6,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述方法实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。[0062]由上可知,在本申请上述实施中,将用于控制三维虚拟场景中与目标对象进行交互的控制设备转动的角度即第一角度控制目标对象在三维虚拟场景中的移动速度,并将根据第一角度确定的第二角度控制目标对象在三维虚拟场景中的转动角度,容易注意的是,当第一角度小于预设角度的情况下,第二角度随着第一角度的增大而增大;当第一角度大于预设角度的情况下,第二角度随着第一角度的增大而减小,达到了通过控制设备控制三维虚拟场景中物体进行移动或转动并对物体的移动曲线进行更真实地模拟的目的,从而实现了提高用户沉浸于三维虚拟场景的用户体验的技术效果,进而解决了现有技术中,基于3Dof的手柄对物体的控制采用直线控制,只能实现物体的移动而无法实现转动导致体验较差的技术问题。[0063]在一种可选的实施例中,上述获取单元可以包括:第一确定模块,用于确定控制设备转动前的第一朝向;第二确定模块,用于获取控制设备转动后的第二朝向,并根据第二朝向和第一朝向确定第一角度。[0064]在一种可选的实施例中,上述移动速度与第一角度成正比,转动角度等于第二角度。[0065]在一种可选的实施例中,上述确定单元还用于通过如下公式确定第二角度:b=ArcsinSina*k;其中,a为第一角度,b为桌一角度,k为常数,0kl。[0066]在一种可选的实施例中,上述第一角度的取值范围为0彡a180度,第二角度的取值范围为〇b彡90度,预设角度为9〇度。[0067]基于上述任意一种可选的装置实施例,一种可选的实施例中,上述基于三次贝塞尔Bezier曲线控制目标对象在虚拟场景中的移动和或转动。[0068]根据本发明实施例,还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述方法实施例中任意一项可选的或优选的控制虚拟场景中物体运动的方法。[0069]根据本发明实施例,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述方法实施例中任意一项可选的或优选的控制虚拟场景中物体运动的方法。[0070]根据本发明实施例,还提供了一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行上述方法实施例中任意一项可选的或优选的控制虚拟场景中物体运动的方法。[0071]本申请提供了一种VR中使用Bezier曲线控制物体旋转与移动方法,利用第一角度控制物体移动的速度,利用第二角度控制物体转到的角度,其中,第一角度随着手柄转动的角度的增大而越来越大,第二角度在处于锐角时,随着手柄转动的角度的增大而越来越大,在处于钝角时,随着手柄转动的角度的增大而越来越小,从而更好地模拟显示出来的曲线,赋予曲线弹性,从而获得更好地力量感。[0072]上述的装置可以包括处理器和存储器,上述单元均可以作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。[0073]存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器RAM和或非易失性内存等形式,如只读存储器ROM或闪存flashRAM,存储器包括至少一个存储芯片。[0074]上述本申请实施例的顺序不代表实施例的优劣。[0075]在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解至IJ,所揭露的技术内容,可通过其它的方式实现。[0076]其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。[0077]另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。[0078]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备可为个人计算机、服务器或者网络设备等执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器R0M,Read-0nlyMemory、随机存取存储器RAM,RandomAccessMemory、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。[0079]以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

权利要求:1.一种控制虚拟场景中物体运动的方法,其特征在于,包括:获取控制设备转动的第一角度,其中,所述控制设备用于控制目标对象在虚拟场景中运动;根据所述第一角度确定第二角度,其中,在所述第一角度为小于预设角度的情况下,所述第二角度随所述第一角度的增大而增大,在所述第一角度大于等于所述预设角度的情况下,所述第二角度随所述第一角度的增大而减小;根据所述第一角度控制所述目标对象在所述虚拟场景中的移动速度,并根据所述第二角度控制所述目标对象在所述虚拟场景中的转动角度。2.根据权利要求1所述的方法,其特征在于,获取控制设备转动的第一角度,包括:确定所述控制设备转动前的第一朝向;获取所述控制设备转动后的第二朝向,并根据所述第二朝向和所述第一朝向确定所述第一角度。3.根据权利要求1所述的方法,其特征在于,所述移动速度与所述第一角度成正比,所述转动角度等于所述第二角度。4.根据权利要求1所述的方法,其特征在于,通过如下公式确定第二角度:b=ArcsinSina*k;其中,a为第一角度,b为第二角度,k为常数,0kl。5.根据权利要求4所述的方法,其特征在于,所述第一角度的取值范围为0a矣180度,所述第二角度的取值范围为〇b90度,所述预设角度为90度。6.根据权利要求1至5中任意一项所述的方法,其特征在于,基于三次贝塞尔Bezier曲线控制所述目标对象在所述虚拟场景中的移动和或转动。7.—种控制虚拟场景中物体运动的装置,其特征在于,包括:获取单元,用于获取控制设备转动的第一角度,其中,所述控制设备用于控制目标对象在虚拟场景中运动;确定单元,用于根据所述第一角度确定第二角度,其中,在所述第一角度为小于预设角度的情况下,所述第二角度随所述第一角度的增大而增大,在所述第一角度大于等于所述预设角度的情况下,所述第二角度随所述第一角度的增大而减小;控制单元,用于根据所述第一角度控制目标对象在所述虚拟场景中移动的移动速度,并根据第二角度控制所述目标对象在所述虚拟场景中转动的转动角度。8.—种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7任意一项所述的控制虚拟场景中物体运动的方法。9.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至7中任意一项所述的控制虚拟场景中物体运动的方法。10.—种终端,其特征在于,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行权利要求1至7中任意一项所述的控制虚拟场景中物体运动的方法。

百度查询: 网易(杭州)网络有限公司 控制虚拟场景中物体运动的方法和装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。