CN108037827A - 面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 - Google Patents
面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 Download PDFInfo
- Publication number
- CN108037827A CN108037827A CN201711297132.5A CN201711297132A CN108037827A CN 108037827 A CN108037827 A CN 108037827A CN 201711297132 A CN201711297132 A CN 201711297132A CN 108037827 A CN108037827 A CN 108037827A
- Authority
- CN
- China
- Prior art keywords
- initial velocity
- virtual
- handle
- dimensional
- throwing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Input By Displaying (AREA)
Abstract
本发明公开了一种面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统。其中,该方法包括如下步骤:获取手柄松开操作键时,被掷虚拟物品所获得的三维方向上的初始速度和角速度;将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度值;根据虚拟环境中的三维方向上的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹;将虚拟物品根据所述抛掷轨迹显示出来。本发明采用多种方式获取抛掷物体的初始速度和角速度,能够准确模拟抛掷物体的运动轨迹,很好地满足虚拟现实应用中实现最佳抛掷虚拟效果的需求。
Description
技术领域
本发明涉及一种面向虚拟现实环境的虚拟物品抛掷仿真方法,同时涉及相应的虚拟物品抛掷仿真系统,属于虚拟现实技术领域。
背景技术
虚拟现实(Virtual Reality,简称为VR)技术是指采用计算机技术为核心的现代高科技手段生成虚拟环境,用户借助特殊的输入/输出设备,与虚拟世界中的物体进行自然的交互,从而通过视觉、听觉和触觉等获得与真实世界相同的感受。
目前,人们正在开发新的虚拟现实装置,以便更加方便、自然地与智能设备(例如VR头戴式显示器)进行交互,例如游戏手柄/摇杆、3D数据手套、位置追踪器、眼动仪、动作捕捉器等。在现有的虚拟现实应用中,很多用户用来玩游戏,例如利用手柄抛出球体等。在这些游戏中,为了能将用户的手部动作真实地反应到虚拟场景中,使用户得到更好的体验,则需要得到最佳的抛掷虚拟效果。
在申请号为200910047359.3的中国专利申请中,公开了一种虚拟物体抓取与抛掷的人机交互方法及系统。该方法的具体工作步骤包括:1)头部、手部数据的获取,2)实现基于视觉感知的抓取识别,3)实现基于磁力跟踪的抛掷识别,4)实现抛体实时旋转。该技术方案将抓取和抛掷这一连贯性动作结合在一起作为一种交互手段,并运用增强现实技术将虚拟物体作为抓取和抛掷的对象,使用户能够直接感知场景的震撼效果、并且具有操作自然、实时性强和经济实用的优点。
发明内容
针对现有技术的不足,本发明所要解决的首要技术问题在于提供一种面向虚拟现实环境的虚拟物品抛掷仿真方法。
本发明所要解决的另一技术问题在于提供一种面向虚拟现实环境的虚拟物品抛掷仿真系统。
为实现上述发明目的,本发明采用下述的技术方案:
根据本发明实施例的第一方面,提供一种面向虚拟现实环境的虚拟物品抛掷仿真方法,包括如下步骤:
获取手柄松开操作键时,被掷虚拟物品所获得的三维方向上的初始速度和角速度;
将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度值;
根据虚拟环境中的三维方向上的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹;
将虚拟物品根据所述抛掷轨迹显示出来。
其中较优地,获取被掷虚拟物品所获得的三维方向上的初始速度和角速度时,采用摄像机定位、激光定位、传感器定位中的任意一种。
其中较优地,所述传感器是由三轴陀螺仪和三轴角速度计组成的六轴传感器,或者由三轴陀螺仪、三轴角速度计、三轴地磁计组成的九轴传感器中的一种。
其中较优地,采用摄像机定位方式时,进一步包括如下步骤:
在摄像机定位系统中,获取相邻两帧深度图像;
根据深度图像中手柄的位置计算手柄的三维位移值;
获取相邻两帧深度图像的时间间隔;
根据手柄的三维位移值和相邻两帧深度图像的时间间隔计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度。
其中较优地,采用激光定位方式时,进一步包括如下步骤:
在激光定位系统中,计算相邻两个信号接收周期内手柄在三维测量坐标系中的两组三维坐标:
分别计算手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值;
获取激光定位系统中的信号接收周期;
根据手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值和信号接收周期计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度。
其中较优地,采用传感器定位方式时,进一步包括如下步骤:
在手柄内安装可获取三轴方向速度和角速度的传感器;
手柄松开操作键时,传感器分别获得操作键松开瞬间手柄在三维方向上的初始速度和角速度。
其中较优地,将获得的初始速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度,包括如下步骤:
将定位基站设定的定位坐标系中三维方向上的初始速度分别按照虚拟环境中坐标系的三维方向进行分解;
获得虚拟环境中坐标系的每个方向上的三个初始速度分量;
将所述三个初始速度分量求和,得到虚拟环境中坐标系的三维方向上的初始速度。
根据本发明实施例的第二方面,提供一种面向虚拟现实环境的虚拟物品抛掷仿真系统,包括操作模块、信号接收模块、数据处理模块、显示模块;
其中,所述操作模块用于触发所述信号接收模块;
信号接收模块收到所述操作模块的触发后,获取被掷虚拟物品三维方向上的初始速度和角速度,并将该初始速度和角速度发送到所述数据处理模块;
所述数据处理模块将接收的初始速度和角速度进行处理,结合重力加速度因素,得到虚拟环境中的抛掷轨迹,并将该抛掷轨迹发送到所述显示模块;
所述显示模块在虚拟现实应用中显示所述抛掷轨迹。
其中较优地,所述信号接收模块为设置在手柄内部的传感器,通过传感器获取被掷虚拟物品获得的三维方向上的初始速度和角速度。
其中较优地,所述信号接收模块为在手柄内部的处理器,收到所述操作模块的触发后,获取手柄在X轴、Y轴、Z轴的位移值以及移动时间,根据获取的信息计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度,并将该初始速度和角速度发送到所述数据处理模块。
本发明所提供的虚拟物品抛掷仿真方法及其系统,通过多种方式获取抛掷物体的初始速度和角速度,将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度值;根据虚拟环境中的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹;可以准确得到抛掷物体的运动轨迹,很好地满足在虚拟现实应用中实现最佳抛掷虚拟效果的需求。
附图说明
图1为本发明所提供的虚拟物品抛掷仿真方法的流程图。
具体实施方式
下面结合附图和具体实施例对本发明的技术内容进行详细具体的说明。
如图1所示,本发明所提供的虚拟物品抛掷仿真方法,包括如下步骤:首先,获取手柄松开操作键时,被掷虚拟物品所获得的三维方向上的初始速度和角速度;其次,将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度值;根据虚拟环境中的初始速度和角速度,结合重力因素,计算虚拟环境中的抛掷轨迹;最后,将虚拟物品根据抛掷轨迹显示出运动轨迹。。下面对上述处理过程进行详细说明。
S1,获取松开操作键时,被掷虚拟物品所获得的三维方向上的初始速度和角速度。
在本发明所提供的实施例中,操作键可以是扳机键、触摸键或者按压键等具有操作功能的按键,手柄在操作键按下时,显示抓住虚拟物品,在操作键松开后,显示松开虚拟物品,虚拟物品进行抛物线运动。为了获取抛物线的运行轨迹,需要知道抛出的瞬间虚拟物品的速度和角速度。获取手柄松开操作键时被掷虚拟物品获得的初始速度和角速度,可以采用摄像机定位方式、激光定位方式、传感器定位方式中的任意一种。
其中,以操作键松开的T1时刻为终点,松开前一瞬间的T0时刻为始点,通过终点和始点的位移值和时间值,获得在X、Y、Z三个轴上的速度。
具体地,采用摄像机定位方式,获取手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度,包括如下步骤:
S101,在摄像机定位系统中,获取相邻两帧深度图像;
S102,根据深度图像中手柄的位置计算手柄的三维位移值;
S103,获取相邻两帧深度图像的时间间隔;
S104,根据手柄的三维位移值和相邻两帧深度图像的时间间隔计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度。
手柄松开操作键时被掷虚拟物品获得的初始速度v0为:
v0=s/t;
其中,S为手柄的三维位移值;t为相邻两帧深度图像的时间间隔。对于X轴、Y轴、Z轴均可以采用上述方法获得手柄松开操作键时被掷虚拟物品获得的初始速度vx0、vy0、vz0。
在手柄内安装了惯性传感器(IMU),根据IMU可获得手柄在一个时刻的姿态值,为一个四元数q=q0+q1i+q2j+q3k,其中,q0、q1、q2、q3为实数,通过四元数计算即可获得手柄松开操作键时被掷虚拟物品获得的角速度。
具体计算公式如下:
其中,为q对t求导,q*为q三维共轭形式;Wx为X轴方向的角速度,Wy为Y轴方向的角速度,Wz为Z轴方向的角速度。
和分别为松开手柄扳机键之前一刻的手柄IMU获得的四元数和松开手柄扳机按键这一刻的手柄IMU获得的四元数。
另一方面,采用激光定位方式,获取松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度,包括如下步骤:
S111,在激光定位系统中,计算相邻两个信号接收周期内手柄在三维测量坐标系中的两组三维坐标:
在激光定位系统中,可以通过相邻两个信号接收周期内手柄的位置变化值获取,进而得到定位基站设定的定位坐标系的X轴的位移值、Y轴的位移值、Z轴的位移值。
其中,第一个信号接收周期内手柄在三维测量坐标系中的三维坐标采用如下过程获得:
S1111,当定位基站与手柄同步基准时刻后,且手柄检测到第一激光平面信号、第二激光平面信号以及超声波信号时,根据定位基站发送第一激光平面信号的第一参考时刻、定位基站发送第二激光平面信号的第二参考时刻、手柄检测到第一激光平面信号的第一时刻以及检测到第二激光平面信号的第二时刻,确定第一旋转角度以及第二旋转角度;
其中,第一旋转角度为第一时刻第一激光平面信号相对于第一旋转轴和第二旋转轴所确定平面的角度,第二旋转角度为第二时刻第二激光平面信号相对于第一旋转轴和第二旋转轴所确定平面的角度,第一参考时刻为定位基站发送的第一激光平面信号相对于第一旋转轴与第二旋转轴所确定平面的角度为第一参考角度的时刻,第二参考时刻为定位基站发送的第二激光平面信号相对于第一旋转轴与第二旋转轴所确定平面的角度为第二参考角度的时刻。
具体而言,通过同步定位基站和待定位标记设备的基准时刻,确保定位基站和手柄的时钟同步,以确保后续进行的计算基于相同的基准。根据定位基站发送第一激光平面信号的第一参考时刻以及第一参考信号检测到第一激光平面信号的第一时刻,确定第一时刻与第一参考时刻之间的关系,根据第一时刻与第一参考时刻之间的关系以及第一参考时刻对应的第一参考角度,确定第一旋转角度;
根据定位基站发送第二激光平面信号的第二参考时刻以及手柄检测到第二激光平面信号的第二时刻,确定第二时刻与第二参考时刻之间的关系,根据第二时刻与第二参考时刻之间的关系以及第二参考时刻对应的第二参考角度,确定第二旋转角度。
其中,在本发明所提供的实施例中,第一参考时刻等于第二参考时刻,第一参考角度等于第二参考角度。然而,本实施例对此并不限定。
另外,第一旋转轴与第二旋转轴所确定的平面包括以下情况:当第一旋转轴与第二旋转轴能够相交时,第一旋转轴与第二旋转轴所确定的平面即为第一旋转轴与第二旋转轴唯一确定的平面;当第一旋转轴与第二旋转轴不相交时,第一旋转轴与第二旋转轴所确定的平面指第一旋转轴与第二旋转轴确定的一对平行平面。
S11112,根据定位基站发送超声波信号的发送时刻以及手柄检测到超声波信号的时刻,确定手柄与定位基站之间的距离。
根据定位基站发送超声波信号的发送时刻以及手柄检测到超声波信号的时刻确定超声波信号从定位基站到手柄的传输时长,根据传输时长以及声音在空气中的传输速度,确定手柄与定位基站之间的距离。
S11113,根据第一旋转角度、第二旋转角度以及手柄与定位基站之间的距离,确定手柄在三维测量坐标系中的三维坐标。
当三维测量坐标系为笛卡尔坐标系,第一旋转轴为X轴,第二旋转轴为Y轴时,根据下式求解得到手柄在该三维测量坐标系中的三维坐标:
Y0×tanα=X0×tanβ=Z′0;
其中,(X0,Y0,Z0)表示手柄在三维测量坐标系中的三维坐标,L为手柄与定位基站之间的距离,α为第一旋转角度,β为第二旋转角度。
获取第一个信号接收周期内手柄在三维测量坐标系中的三维坐标之后,采用与上述过程相同的步骤获取相邻信号接收周期内手柄在三维测量坐标系中的三维坐标,即可得到在激光定位系统中,相邻两个信号接收周期内手柄在三维测量坐标系中的两组三维坐标。
S112,分别计算手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值;
将上述步骤S111中获得的两组三维坐标进行减法运算,即可得到手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值。
S113,获取激光定位系统中的信号接收周期;
在激光定位系统中,信号定期发送,例如一秒钟激光信号转60转,则一个信号周期为16.7ms,得到三维方向上的速度和角速度值。
S114,根据手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值和信号接收周期计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度。
获得定位基站设定的定位坐标系的X轴的位移值、Y轴的位移值、Z轴的位移值以及信号接收周期后,根据基本物理知识即可得到手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度。其计算方法与采用摄像机定位方式中三维方向上的初始速度和角速度的计算方法相同,在此便不再赘述了。
采用传感器,获取手柄松开操作键时被掷虚拟物品获得的初始速度和角速度,包括如下步骤:
S121,在手柄内安装可获取三轴方向速度和角速度的传感器;
S122,手柄松开操作键时,传感器分别获得操作键松开瞬间手柄在三维方向上的初始速度和角速度。该传感器可以是由三轴陀螺仪和三轴角速度计组成的六轴传感器,也可以是由三轴陀螺仪、三轴角速度计、三轴地磁计组成的九轴传感器,手柄在三维方向上的初始速度和角速度即为手柄松开操作键时被掷虚拟物品获得的初始速度和角速度。
S2,将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度。
对于通过摄像机定位方式获取被掷虚拟物品获得的初始速度和角速度来说,在手柄操作键按下时,抓握起游戏中相应的虚拟物品,在手柄操作键松开后,手柄将获得的被掷虚拟物品获得的初始速度和角速度通过直接或间接的方式传送给计算机的数据处理模块,计算机的数据处理模块根据接收到的摄像机设定的定位坐标系的初始速度和角速度,对应于虚拟场景中定义的坐标系的三维方向上的初始速度和角速度值。
对于通过激光定位方式获取被掷虚拟物品获得的初始速度和角速度来说,在手柄操作键按下时,抓握起游戏中相应的虚拟物品,在手柄操作键松开后,手柄将获得的被掷虚拟物品获得的初始速度和角速度通过直接或间接的方式传送给计算机的数据处理模块,计算机的数据处理模块根据接收到的定位基站设定的定位坐标系的初始速度和角速度,将获得的三维方向上的初始速度角速度值对应于虚拟场景中定义的坐标系的三维方向上的初始速度和角速度值。
具体地,在定位基站设定的定位坐标系和虚拟场景中的坐标系进行对应,从而将定位坐标系的坐标方向转化为虚拟场景中的坐标方向;在坐标方向确定之后,将获得的虚拟场景中定义的坐标系的三维方向上的初始速度和角速度值附加给抓握的虚拟物品的刚体组件上,通过游戏引擎中的物理引擎模块,在模拟的重力和读取到的虚拟物品的初始速度和角速度的共同作用下,确定出抛掷的轨迹。
其中,将获得的初始速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度,包括如下步骤:
将定位基站设定的定位坐标系中三维方向上的初始速度分别按照虚拟环境中坐标系的三个轴进行分解;
虚拟环境中坐标系的每个轴得到三个初始速度分量;
将所述三个初始速度分量求和,得到虚拟环境中坐标系的三维方向上的初始速度。
将获得的角速度转化为对应虚拟环境中坐标系的三维方向的角速度的具体过程,与上述将获得的初始速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度的过程相似,在此便不再赘述了。
在本发明所提供的实施例中,在定位基站设定的定位坐标系中直接计算初始速度和角速度,然后再将定位基站设定的定位坐标系中的初始速度和角速度转化成虚拟环境中坐标系的三维方向上的初始速度和角速度,只需将定位基站设定的定位坐标系中的初始速度和角速度按照虚拟环境中坐标系的三维方向进行分解,即可得到虚拟环境中坐标系的三维方向上的初始速度和角速度,降低了计算的复杂度。
对于摄像机定位和激光定位方法来获取被掷虚拟物品获得的初始速度和角速度,手柄操作键松开后,需要一定的时间间隔后,才显示松开虚拟物品,并将获得的被掷虚拟物品获得的初始速度和角速度通过直接或间接的方式传送给计算机的数据处理模块。因为无论摄像机定位还是激光定位,在手柄操作键松开后,还需要根据图像或者定位数据来计算得出被掷虚拟物品获得的初始速度和角速度,该计算过程需要一个运行时间,所以需要根据数据处理速度设定一个合理的间隔时间,在该间隔时间后,才显示松开虚拟物品,并将获得的被掷虚拟物品获得的初始速度和角速度通过直接或间接的方式传送给计算机的数据处理模块。
对于通过传感器定位方式获取被掷虚拟物品获得的初始速度和角速度来说,在手柄操作键按下时,抓握起游戏中相应的虚拟物品,在手柄操作键松开后,手柄即将获得的被掷虚拟物品获得的初始速度和角速度通过直接或间接的方式传送给计算机的数据处理模块,计算机的数据处理模块根据接收到的根据大地坐标系获取的初始速度和角速度,对应于虚拟场景中定义的坐标系的三维方向上的初始速度和角速度值。
S3,根据虚拟环境中的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹。
根据虚拟环境中的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹S。
其中,S为虚拟环境中的抛掷轨迹,t为虚拟物品运动的时间。v0为虚拟物品的初始速度,a’为虚拟环境中重力加速度。
S4,让虚拟物品根据抛物线进行运动,并将运动轨迹显示出来。
游戏引擎根据抛掷轨迹,逐帧计算出游戏物体的位置和姿态,再把这些位置和姿态进行固定频率渲染出来,整个抛掷轨迹就显示在虚拟现实应用如VR游戏中。
从上述实施例可以看出,如果要获得虚拟物品的精确抛掷轨迹,需要准确掌握重力加速度因素带来的影响。但是,在虚拟现实应用如VR游戏中,游戏主人公可能会上天入地,甚至在不同星球上活动,在这种情况下如果要实现虚拟环境的精确模拟,需要对重力加速度因素进行动态修正。具体采用的动态修正方式包括如下几种:第一是预先获得地球上各个经纬度的重力加速度数值并制作成相应表格,在虚拟现实应用如VR游戏中根据游戏主人公的运动轨迹推算出他的当前经纬度坐标,从而通过查表方式获得当前位置的重力加速度数值,从而对抛掷轨迹进行修正。第二是将地球视为一个质点,利用万有引力的计算原理随时计算游戏主人公所在位置的万有引力数值,作为当前的重力加速度数值,进而对抛掷轨迹进行修正。第二种方式对于模拟太空飞行之类的VR游戏特别适用。
进一步地,本发明还提供了一种虚拟物品抛掷仿真系统,包括操作模块、信号接收模块、数据处理模块、显示模块。
在本发明的实施例中,操作模块可以为手柄扳机键、触摸板、按压键,用于触发信号接收模块。
信号接收模块为设置在手柄内部的处理器,该处理器例如可以为BNO-055芯片。收到操作模块的触发后,获取手柄在X轴、Y轴、Z轴的位移值以及移动时间,根据获取的信息计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度,并将该初始速度和角速度发送到数据处理模块。在其它实施例中,信号接收模块还可以为手柄内部的传感器。通过传感器直接获取手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度,并将该初始速度和角速度发送到数据处理模块。
数据处理模块为计算机,用于将接收的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹,并将该抛掷轨迹发送到显示模块。
显示模块为显示屏,用于将整个抛掷轨迹显示在虚拟现实应用如VR游戏中。该显示屏可以是计算机上的显示屏,还可以是头戴显示设备的显示屏。
综上所述,本发明所提供的虚拟物品抛掷仿真方法及其系统,可以采用多种方式获取抛掷物体的初始速度和角速度,准确得到抛掷物体的运动轨迹,很好地满足虚拟现实应用中实现最佳抛掷虚拟效果的需求。
另外,本发明在定位基站设定的定位坐标系中直接计算初始速度和角速度,再将定位基站设定的定位坐标系中的初始速度和角速度转化成虚拟环境中坐标系的三维方向上的初始速度和角速度,只需将定位基站设定的定位坐标系中的初始速度和角速度按照虚拟环境中坐标系的三维方向进行分解,即可得到虚拟环境中坐标系的三维方向上的初始速度和角速度,显著降低了计算的复杂度。
上面对本发明所提供的面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
Claims (10)
1.一种面向虚拟现实环境的虚拟物品抛掷仿真方法,其特征在于包括如下步骤:
获取手柄松开操作键时,被掷虚拟物品所获得的三维方向上的初始速度和角速度;
将获得的初始速度和角速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度和角速度值;
根据虚拟环境中的三维方向上的初始速度和角速度,结合重力加速度因素,计算虚拟环境中的抛掷轨迹;
将虚拟物品根据所述抛掷轨迹显示出来。
2.如权利要求1所述的虚拟物品抛掷仿真方法,其特征在于:
获取被掷虚拟物品所获得的三维方向上的初始速度和角速度时,采用摄像机定位、激光定位、传感器定位中的任意一种。
3.如权利要求2所述的虚拟物品抛掷仿真方法,其特征在于:
所述传感器是由三轴陀螺仪和三轴角速度计组成的六轴传感器,或者由三轴陀螺仪、三轴角速度计、三轴地磁计组成的九轴传感器中的一种。
4.如权利要求2所述的虚拟物品抛掷仿真方法,其特征在于采用摄像机定位方式时,进一步包括如下步骤:
在摄像机定位系统中,获取相邻两帧深度图像;
根据深度图像中手柄的位置计算手柄的三维位移值;
获取相邻两帧深度图像的时间间隔;
根据手柄的三维位移值和相邻两帧深度图像的时间间隔计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度。
5.如权利要求2所述的虚拟物品抛掷仿真方法,其特征在于采用激光定位方式时,进一步包括如下步骤:
在激光定位系统中,计算相邻两个信号接收周期内手柄在三维测量坐标系中的两组三维坐标:
分别计算手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值;
获取激光定位系统中的信号接收周期;
根据手柄在相邻两个信号接收周期内X轴、Y轴和Z轴的位移值和信号接收周期计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度。
6.如权利要求2所述的虚拟物品抛掷仿真方法,其特征在于采用传感器定位方式时,进一步包括如下步骤:
在手柄内安装可获取三轴方向速度和角速度的传感器;
手柄松开操作键时,传感器分别获得操作键松开瞬间手柄在三维方向上的初始速度和角速度。
7.如权利要求1所述的虚拟物品抛掷仿真方法,其特征在于将获得的初始速度转化为对应于虚拟环境中坐标系的三维方向上的初始速度,包括如下步骤:
将定位基站设定的定位坐标系中三维方向上的初始速度分别按照虚拟环境中坐标系的三维方向进行分解;
获得虚拟环境中坐标系的每个方向上的三个初始速度分量;
将所述三个初始速度分量求和,得到虚拟环境中坐标系的三维方向上的初始速度。
8.一种面向虚拟现实环境的虚拟物品抛掷仿真系统,其特征在于包括操作模块、信号接收模块、数据处理模块、显示模块;
其中,所述操作模块用于触发所述信号接收模块;
信号接收模块收到所述操作模块的触发后,获取被掷虚拟物品三维方向上的初始速度和角速度,并将该初始速度和角速度发送到所述数据处理模块;
所述数据处理模块将接收的初始速度和角速度进行处理,结合重力加速度因素,得到虚拟环境中的抛掷轨迹,并将该抛掷轨迹发送到所述显示模块;
所述显示模块在虚拟现实应用中显示所述抛掷轨迹。
9.如权利要求8所述的虚拟物品抛掷仿真系统,其特征在于:
所述信号接收模块为设置在手柄内部的传感器,通过传感器获取被掷虚拟物品获得的三维方向上的初始速度和角速度。
10.如权利要求8所述的虚拟物品抛掷仿真系统,其特征在于:
所述信号接收模块为在手柄内部的处理器,收到所述操作模块的触发后,获取手柄在X轴、Y轴、Z轴的位移值以及移动时间,根据获取的信息计算手柄松开操作键时被掷虚拟物品获得的三维方向上的初始速度和角速度,并将该初始速度和角速度发送到所述数据处理模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711297132.5A CN108037827A (zh) | 2017-12-08 | 2017-12-08 | 面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711297132.5A CN108037827A (zh) | 2017-12-08 | 2017-12-08 | 面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108037827A true CN108037827A (zh) | 2018-05-15 |
Family
ID=62101714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711297132.5A Pending CN108037827A (zh) | 2017-12-08 | 2017-12-08 | 面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108037827A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108837507A (zh) * | 2018-05-29 | 2018-11-20 | 网易(杭州)网络有限公司 | 虚拟道具控制方法及装置、电子设备、存储介质 |
CN109200582A (zh) * | 2018-08-02 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 控制虚拟对象与投掷物交互的方法、装置及存储介质 |
CN110262660A (zh) * | 2019-06-20 | 2019-09-20 | 淮阴师范学院 | 基于Kinect体感设备虚拟抛掷盛接系统 |
CN110721473A (zh) * | 2019-10-10 | 2020-01-24 | 深圳市瑞立视多媒体科技有限公司 | 物体抛出方法、装置、设备及计算机可读存储介质 |
WO2020024726A1 (zh) * | 2018-08-02 | 2020-02-06 | 腾讯科技(深圳)有限公司 | 虚拟道具移动控制方法、终端及存储介质 |
CN110770670A (zh) * | 2018-08-23 | 2020-02-07 | 深圳市大疆创新科技有限公司 | 云台控制方法、云台和云台控制系统 |
CN111025935A (zh) * | 2019-12-23 | 2020-04-17 | 北京世纪联信科技有限公司 | 一种基于机器视觉的抛射物落点实景仿真系统及方法 |
CN112847374A (zh) * | 2021-01-20 | 2021-05-28 | 湖北师范大学 | 一种抛物-接物机械人系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001175883A (ja) * | 1999-12-16 | 2001-06-29 | Sony Corp | バーチャルリアリティ装置 |
CN101383870A (zh) * | 2008-10-13 | 2009-03-11 | 深圳市同洲电子股份有限公司 | 一种移动终端及其数据发送方法、系统及网络系统 |
CN101515198A (zh) * | 2009-03-11 | 2009-08-26 | 上海大学 | 一种虚拟物体抓取与抛掷的人机交互方法及系统 |
CN101832756A (zh) * | 2009-03-10 | 2010-09-15 | 深圳迈瑞生物医疗电子股份有限公司 | 测量图像中目标位移以及应变与应变率成像的方法和装置 |
CN103877726A (zh) * | 2014-04-10 | 2014-06-25 | 北京蚁视科技有限公司 | 一种虚拟现实组件系统 |
CN106526537A (zh) * | 2015-12-23 | 2017-03-22 | 北京凌宇智控科技有限公司 | 一种三维空间定位方法及系统 |
-
2017
- 2017-12-08 CN CN201711297132.5A patent/CN108037827A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001175883A (ja) * | 1999-12-16 | 2001-06-29 | Sony Corp | バーチャルリアリティ装置 |
CN101383870A (zh) * | 2008-10-13 | 2009-03-11 | 深圳市同洲电子股份有限公司 | 一种移动终端及其数据发送方法、系统及网络系统 |
CN101832756A (zh) * | 2009-03-10 | 2010-09-15 | 深圳迈瑞生物医疗电子股份有限公司 | 测量图像中目标位移以及应变与应变率成像的方法和装置 |
CN101515198A (zh) * | 2009-03-11 | 2009-08-26 | 上海大学 | 一种虚拟物体抓取与抛掷的人机交互方法及系统 |
CN103877726A (zh) * | 2014-04-10 | 2014-06-25 | 北京蚁视科技有限公司 | 一种虚拟现实组件系统 |
CN106526537A (zh) * | 2015-12-23 | 2017-03-22 | 北京凌宇智控科技有限公司 | 一种三维空间定位方法及系统 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108837507A (zh) * | 2018-05-29 | 2018-11-20 | 网易(杭州)网络有限公司 | 虚拟道具控制方法及装置、电子设备、存储介质 |
CN109200582A (zh) * | 2018-08-02 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 控制虚拟对象与投掷物交互的方法、装置及存储介质 |
WO2020024726A1 (zh) * | 2018-08-02 | 2020-02-06 | 腾讯科技(深圳)有限公司 | 虚拟道具移动控制方法、终端及存储介质 |
US11752439B2 (en) | 2018-08-02 | 2023-09-12 | Tencent Technology (Shenzhen) Company Limited | Virtual item movement control method, terminal, and storage medium |
US11819763B2 (en) | 2018-08-02 | 2023-11-21 | Tencent Technology (Shenzhen) Company Limited | Predictive display of thrown projectile |
CN110770670A (zh) * | 2018-08-23 | 2020-02-07 | 深圳市大疆创新科技有限公司 | 云台控制方法、云台和云台控制系统 |
CN110262660A (zh) * | 2019-06-20 | 2019-09-20 | 淮阴师范学院 | 基于Kinect体感设备虚拟抛掷盛接系统 |
CN110262660B (zh) * | 2019-06-20 | 2023-05-23 | 淮阴师范学院 | 基于Kinect体感设备虚拟抛掷盛接系统 |
CN110721473A (zh) * | 2019-10-10 | 2020-01-24 | 深圳市瑞立视多媒体科技有限公司 | 物体抛出方法、装置、设备及计算机可读存储介质 |
CN111025935A (zh) * | 2019-12-23 | 2020-04-17 | 北京世纪联信科技有限公司 | 一种基于机器视觉的抛射物落点实景仿真系统及方法 |
CN112847374A (zh) * | 2021-01-20 | 2021-05-28 | 湖北师范大学 | 一种抛物-接物机械人系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108037827A (zh) | 面向虚拟现实环境的虚拟物品抛掷仿真方法及其系统 | |
CN102667672B (zh) | 一种加速度动作识别系统及其方法 | |
CN104699247B (zh) | 一种基于机器视觉的虚拟现实交互系统及方法 | |
US9317108B2 (en) | Hand-held wireless electronic device with accelerometer for interacting with a display | |
CN101286188B (zh) | 一种虚拟仿真系统中力觉反馈的计算方法 | |
CN107301370A (zh) | 一种基于Kinect三维骨架模型的肢体动作识别方法 | |
CN106055090A (zh) | 利用移动装置的虚拟现实和增强现实控制 | |
JP2009535173A (ja) | 3次元入力制御システム、方法、及び装置 | |
CN105551059A (zh) | 光学和惯性体感数据融合的变电仿真人体运动捕捉方法 | |
CN101178615A (zh) | 姿态及运动感应系统及使用该系统的便携式电子设备 | |
CN107168515A (zh) | 一种vr一体机中手柄的定位方法和装置 | |
CN110610547A (zh) | 基于虚拟现实的座舱实训方法、系统及存储介质 | |
TW200900123A (en) | Self-contained inertial navigation system for interactive control using movable controllers | |
CN110262667B (zh) | 一种虚拟现实设备及定位方法 | |
WO2020110659A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP6796197B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2015205072A (ja) | 情報処理装置、情報処理方法及びコンピュータプログラム | |
CN109844600A (zh) | 信息处理设备、信息处理方法和程序 | |
WO2016033717A1 (zh) | 一种组合式运动捕捉系统 | |
RU2662399C1 (ru) | Система и способ для захвата движений и положения тела человека и частей тела человека | |
WO2016061153A1 (en) | Image based ground weight distribution determination | |
CN109003300B (zh) | 一种基于人体质心位移计算算法的虚拟现实系统 | |
JP4779123B2 (ja) | 人体動作を感知可能な電子ゲームコントローラ | |
CN111420391A (zh) | 一种头戴显示系统及其空间定位方法 | |
US12011647B2 (en) | Surface interactions in a virtual reality (VR) environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200512 Address after: 518118 East 301, building b5b, Yingzhan Electronic Technology (Shenzhen) Co., Ltd., Longtian community, Pingshan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen Yongjia Electronic Technology Co., Ltd Address before: 100092 Beijing Haidian District, Haidian District, Zhuang North Road, Zhongguancun Dongsheng international pioneer park 1 Building 2 floor Applicant before: NOLO Co.,Ltd. |
|
TA01 | Transfer of patent application right |