虚拟环境中的瞄准镜显示方法、设备及存储介质与流程

文档序号:15937924发布日期:2018-11-14 02:41阅读:244来源:国知局
虚拟环境中的瞄准镜显示方法、设备及存储介质与流程

本申请实施例涉及虚拟环境领域,特别涉及一种虚拟环境中的瞄准镜显示方法、设备及存储介质。



背景技术:

很多基于三维虚拟环境的应用程序中提供有射击元素。处于三维虚拟环境中的虚拟对象使用虚拟枪械进行射击。虚拟枪械上安装有瞄准镜时,虚拟对象使用瞄准镜对目标物进行瞄准。

反射式瞄准镜是与光学瞄准镜不同的瞄准镜,反射式瞄准镜会在瞄准镜上产生一个无限远的虚像(比如红点),且该虚像永远指向瞄准的目标物。相关技术中在三维虚拟环境中,会将虚拟对象对应的摄像机模型、反射式瞄准镜的镜筒、反射式瞄准镜的镜头三者之间的位置绑定,也即在开镜模式下不论虚拟对象的视角方向如何改变,反射式瞄准镜的镜筒和镜头都会显示在屏幕的中央位置保持不变。

由于上述模拟过程并不符合现实环境中的反射式瞄准镜特性,因此相关技术中的瞄准镜显示方法不够真实,显示效果较差。



技术实现要素:

本申请实施例提供了一种虚拟环境中的瞄准镜显示方法、设备及存储介质,可以解决相关技术中模拟的反射式瞄准镜并不符合现实环境中的反射式瞄准镜特性,因此显示效果不够真实且较差的问题。所述技术方案如下:

一个方面,提供了一种虚拟环境中的瞄准镜显示方法,所述方法包括:

显示第一虚拟环境画面,所述第一虚拟环境画面包括虚拟对象使用反射式瞄准镜观察所述虚拟环境的第一瞄准镜画面,所述第一虚拟环境画面中所述反射式瞄准镜的瞄准镜镜筒位于第一位置;

控制所述虚拟对象在所述虚拟环境中进行活动;

显示第二虚拟环境画面,所述第二虚拟环境画面包括所述虚拟对象使用所述反射式瞄准镜观察所述虚拟环境的第二瞄准镜画面,所述第二虚拟环境画面中的所述瞄准镜镜筒位于第二位置;

其中,所述瞄准镜镜筒中的瞄准点在所述第一虚拟环境画面和所述第二虚拟环境画面中的位置相同。

另一方面,提供了一种虚拟环境中的瞄准镜显示装置,所述装置包括:

显示模块,用于显示第一虚拟环境画面,所述第一虚拟环境画面包括虚拟对象使用反射式瞄准镜观察所述虚拟环境的第一瞄准镜画面,所述第一虚拟环境画面中所述反射式瞄准镜的瞄准镜镜筒位于第一位置;

控制模块,用于控制所述虚拟对象在所述虚拟环境中进行活动;

所述显示模块,用于显示第二虚拟环境画面,所述第二虚拟环境画面包括所述虚拟对象使用所述反射式瞄准镜观察所述虚拟环境的第二瞄准镜画面,所述第二虚拟环境画面中的所述瞄准镜镜筒位于第二位置;

其中,所述瞄准镜镜筒中的瞄准点在所述第一虚拟环境画面和所述第二虚拟环境画面中的位置相同。

另一方面,提供了一种电子设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的虚拟环境中的瞄准镜显示方法。

另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的虚拟环境中的瞄准镜显示方法。

另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上所述的虚拟环境中的瞄准镜显示方法。

本申请实施例提供的技术方案带来的有益效果至少包括:

通过虚拟对象在虚拟环境中进行活动后,显示与第一虚拟环境画面不同的第二虚拟环境画面,瞄准镜镜筒在两个虚拟环境画面中的位置是不同的,但瞄准点在两个虚拟环境画面中的位置是相同的,能够对现实环境中的反射式瞄准镜进行更为真实的仿真,从而实现更为真实的显示效果,增强用户对虚拟环境的沉浸感。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是现实世界中的反射式瞄准镜的原理示意图;

图2是现实世界中的反射式瞄准镜在不同角度观察时的瞄准点位置图;

图3是在虚拟环境中对反射式瞄准镜进行模拟时的结构示意图;

图4是相关技术中采用反射式瞄准镜对虚拟环境进行观察时的画面示意图;

图5是本申请一个示例性实施例提供的电子设备的框图;

图6是本申请另一个示例性实施例提供的计算机系统的框图;

图7是本申请一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的流程图;

图8是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的界面示意图;

图9是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的流程图;

图10是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的界面示意图;

图11是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的原理示意图;

图12是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的界面示意图;

图13是本申请另一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的界面示意图;

图14是本申请一个示例性实施例提供的虚拟环境中的瞄准镜显示装置的框图;

图15是本申请一个示例性的实施例提供的电子设备的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

首先,对本申请实施例中涉及的若干个名词进行介绍:

虚拟环境:是应用程序在设备上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的环境,还可以是纯虚构的环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境和三维虚拟环境中的任意一种。下述实施例以虚拟环境是三维虚拟环境来举例说明,但对此不加以限定。可选地,该虚拟环境还用于进行至少两个虚拟角色之间的虚拟环境对战。比如,该虚拟环境用于至少两个虚拟角色之间使用虚拟枪械进行对战;又比如,该虚拟环境用于至少两个虚拟角色在指定地理区域内使用虚拟枪械进行对战,且该指定地理区域随着虚拟时间的增加而不断缩小。

虚拟对象:是指在虚拟环境中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在三维虚拟环境中显示的人物、动物、植物、油桶、墙壁、石块等。可选地,虚拟对象是基于动画骨骼技术创建的三维立体模型。每个虚拟对象在三维虚拟环境中具有自身的形状和体积,占据三维虚拟环境中的一部分空间。

视角方向:以虚拟对象的第一人称视角或第三人称视角在虚拟环境中进行观察时的观察方向。可选地,当第一人称视角时,视角方向是在虚拟环境中通过摄像机模型对虚拟对象的前方进行观察时的方向;当第三人称视角时,视角方向是在虚拟环境中通过位于虚拟对象周围(比如脑后)的摄像机模型进行观察时的方向。

可选地,摄像机模型在虚拟环境中对虚拟对象进行自动跟随,即,当虚拟对象在虚拟环境中的位置发生改变时,摄像机模型跟随虚拟对象在虚拟环境中的位置同时发生改变,且该摄像机模型在虚拟环境中始终处于虚拟对象的预设距离范围内。可选地,在自动跟随过程中,摄像头模型和虚拟对象的相对位置不发生变化。

摄像机模型:摄像机模型是在三维虚拟环境中位于虚拟对象周围的三维模型,当采用第一人称视角时,该摄像机模型位于虚拟对象的头部附近或者位于虚拟对象的头部,当采用第三人称视角时,该摄像机模型可以位于虚拟对象的后方并与虚拟对象进行绑定,也可以位于与虚拟对象相距预设距离的任意位置,通过该摄像机模型可以从不同角度对位于三维虚拟环境中的虚拟对象进行观察,可选地,该第三人称视角又称“第一人称的过肩视角”,摄像机模型位于虚拟对象(比如虚拟人物的头肩部)的后方。可选地,该摄像机模型在三维虚拟环境中不会进行实际显示,即,在用户界面显示的三维虚拟环境中无法识别到该摄像机模型。

图1示出了现实世界中的反射式瞄准镜100的原理示意图。反射式瞄准镜100可以是红点瞄准镜或全息瞄准镜。以反射式瞄准镜100是全息瞄准镜为例,该反射式瞄准镜100包括激光器11、平面反射镜12、准直反射镜13、全息光栅14和全息底片15。该激光器11用于生成瞄准点对应的激光束,激光器11发出的激光束依次经过平面反射镜12、准直反射镜13、全息光栅14的反射后,经过全息底片15的折射后射出。最终射出的光线和反射式瞄准镜100所观察到的环境光线平行叠加,从而在观察者的视线远方形成瞄准点。

反射式瞄准镜100具有如下特征:当观察者的视线方向与反射式瞄准镜100的光轴平行时,瞄准镜在镜头中的显示位置处于正中状态,如图2中(1)所示;当观察者的视线方向不与反射式瞄准镜100的光轴平行时,反射式瞄准镜100中的瞄准点会发生一些偏移,也即瞄准点在镜头中的显示位置不处于正中状态,如图2中(2)、(3)、(4)所示。

图3示出了相关技术中对反射式瞄准镜进行模拟时的原理示意图。在三维虚拟环境300中设置有三维形式的虚拟对象320和反射式瞄准镜340。该虚拟对象320可以手持有虚拟枪械,该虚拟枪械上装配有反射式瞄准镜340。反射式瞄准镜340包括瞄准镜镜筒342和瞄准镜片344。瞄准镜片344上贴附有镜片材质,该镜片材质345是贴附在瞄准镜片344上用于呈现瞄准点的材质。示意性的,该镜片材质345是贴附在瞄准镜片344上的绘制有瞄准点的图像,该图像除瞄准点之外的部分可以为透明图像或半透明图像。

通常,瞄准镜片344是装配在瞄准镜镜筒342的凹槽343上,绘制有瞄准点的镜片材质345是贴附在瞄准镜片344上的。

在相关技术中,瞄准镜镜筒342、瞄准镜片344和镜片材质345的相对位置是保持不变的。也即在开镜模式下,不论虚拟对象在虚拟环境中如何移动,瞄准镜镜筒342和镜片材质345中的瞄准点都是位于虚拟环境画面的中心位置保持不变的,虚拟环境画面是以虚拟对象320使用反射式瞄准镜340观察虚拟环境的瞄准镜画面,如图4所示,不论虚拟对象如何运动,相关技术中的瞄准镜镜筒342和瞄准点40均位于屏幕中央位置保持不变。

但在现实环境中,人物在持枪状态下的手臂动作是略慢于躯体动作的。也即人物在左右转向时,手臂上所持枪械以略慢的速度进行转向,此时人物观察到的瞄准点相对于瞄准镜镜筒的位置是存在一点偏移的。本申请实施例提供了一种虚拟环境中的瞄准镜显示方法、设备及存储介质,能够对反射式瞄准镜提供更为真实的仿真效果。

请参考图5,其示出了本申请一个示例性实施例提供的电子设备的结构框图。该电子设备包括:操作系统520和应用程序522。

操作系统520是为应用程序522提供对计算机硬件的安全访问的基础软件。

应用程序522是支持虚拟环境的应用程序。可选地,应用程序522是支持三维虚拟环境的应用程序。该应用程序522可以是虚拟现实应用程序、三维地图程序、军事仿真程序、第三人称射击游戏(Third-Personal Shooting Game,TPS)、第一人称射击游戏(First-person shooting game,FPS)、MOBA游戏、多人枪战类生存游戏中的任意一种。该应用程序522可以是单机版的应用程序,比如单机版的3D游戏程序。

请参考图6,其示出了本申请一个示例性实施例提供的计算机系统的结构框图。该计算机系统600包括:第一设备620、服务器640和第二设备660。

第一设备620安装和运行有支持虚拟环境的应用程序。该应用程序可以是虚拟现实应用程序、三维地图程序、军事仿真程序、TPS游戏、FPS游戏、MOBA游戏、多人枪战类生存游戏中的任意一种。第一设备620是第一用户使用的设备,第一用户使用第一设备620控制位于虚拟环境中的第一虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物角色或动漫人物角色。

第一设备620通过无线网络或有线网络与服务器640相连。

服务器640包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器640用于为支持三维虚拟环境的应用程序提供后台服务。可选地,服务器640承担主要计算工作,第一设备620和第二设备660承担次要计算工作;或者,服务器640承担次要计算工作,第一设备620和第二设备660承担主要计算工作;或者,服务器640、第一设备620和第二设备660三者之间采用分布式计算架构进行协同计算。

第二设备660安装和运行有支持虚拟环境的应用程序。该应用程序可以是虚拟现实应用程序、三维地图程序、军事仿真程序、FPS游戏、MOBA游戏、多人枪战类生存游戏中的任意一种。第二设备660是第二用户使用的设备,第二用户使用第二设备660控制位于虚拟环境中的第二虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物角色或动漫人物角色。

可选地,第一虚拟人物和第二虚拟人物处于同一虚拟环境中。可选地,第一虚拟人物和第二虚拟人物可以属于同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选地,第一虚拟人物和第二虚拟人物也可以属于不同队伍、不同组织、或具有敌对性的两个团体。

可选地,第一设备620和第二设备660上安装的应用程序是相同的,或两个设备上安装的应用程序是不同控制系统平台的同一类型应用程序。第一设备620可以泛指多个设备中的一个,第二设备660可以泛指多个设备中的一个,本实施例仅以第一设备620和第二设备660来举例说明。第一设备620和第二设备660的设备类型相同或不同,该设备类型包括:游戏主机、台式计算机、智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器和膝上型便携计算机中的至少一种。以下实施例以设备是台式计算机来举例说明。

本领域技术人员可以知晓,上述设备的数量可以更多或更少。比如上述设备可以仅为一个,或者上述设备为几十个或几百个,或者更多数量。本申请实施例对设备的数量和设备类型不加以限定。

请参考图7,其示出了本申请一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的流程图。本实施例以该方法应用于图5所示的电子设备、图6所示的第一设备和/或图6所示的第二设备中来举例说明,该方法包括:

步骤702,显示第一虚拟环境画面,第一虚拟环境画面包括虚拟对象使用反射式瞄准镜观察虚拟环境的第一瞄准镜画面,第一虚拟环境画面中反射式瞄准镜的瞄准镜镜筒位于第一位置;

可选地,虚拟对象是三维形式的。该虚拟对象是仿真人物、卡通人物、动漫人物和游戏人物中的任意一种。

可选地,第一虚拟环境画面上还可以叠加有各种控件,这些控件包括:移动方向控制控件、开火控件、投弹控件、主武器槽位控件、辅武器槽位控件、小地图控件、地图方位指引控件、队友/敌方单位指示标识中的至少一种。

第一瞄准镜画面是指采用反射式瞄准镜所观察到的虚拟环境的画面。若反射式瞄准镜的镜头是圆形,则第一瞄准镜画面为圆形。在虚拟对象活动前,第一瞄准镜画面中的瞄准镜镜筒位于第一位置,该第一位置可以是第一虚拟环境画面中的正中央位置。

步骤704,控制虚拟对象在虚拟环境中进行活动;

设备控制虚拟对象在虚拟环境的活动空间中活动。其中,活动空间是虚拟环境中虚拟对象可以活动的范围,例如,在虚拟环境中,可以设定虚拟对象在群山环绕的平原进行活动,该平原就是虚拟对象的活动空间,而环绕在该平原周围的群山就是虚拟对象不能活动的区域。

本申请实施例中的活动,是指虚拟对象的躯干动作会带动手臂(以及该手臂持有的虚拟枪械和反射式瞄准镜)改变位置的运动。该活动包括:控制虚拟对象进行平移、控制虚拟对象在左/右方向上转向、控制虚拟对象在俯视状态和平视状态之间切换、控制虚拟对象在仰视状态和平视状态之间切换中的至少一种。

可选地,设备控制虚拟对象在虚拟环境中以第一速度进行活动,且控制反射式瞄准镜的瞄准镜镜筒在虚拟环境中以第二速度进行活动,第一速度大于第二速度。

步骤706,显示第二虚拟环境画面,第二虚拟环境画面包括虚拟对象使用反射式瞄准镜观察虚拟环境的第二瞄准镜画面,第二虚拟环境画面中的瞄准镜镜筒位于第二位置。

可选地,第二虚拟环境画面上还可以叠加有各种控件,这些控件包括:移动方向控制控件、开火控件、投弹控件、主武器槽位控件、辅武器槽位控件、小地图控件、地图方位指引控件、队友/敌方单位指示标识中的至少一种。

第二瞄准镜画面是指采用反射式瞄准镜所观察到的虚拟环境的画面。若反射式瞄准镜的镜头是圆形,则第二瞄准镜画面为圆形。在虚拟对象活动后,第二虚拟环境画面中的瞄准镜镜筒位于第二位置,该第二位置可以是第二虚拟环境画面的非正中央位置。可选地,第二位置与第一位置之间的偏移与虚拟对象的活动关联。也即,第二位置与第一位置之间的偏移方向与虚拟对象的活动方向相反,第二位置与第一位置之间的偏移距离与虚拟对象的活动距离呈正相关关系。

示意性的,图8中的上图示出了第一虚拟环境画面81,该第一虚拟环境画面81中的反射式瞄准镜的瞄准镜镜筒342和瞄准点40均位于第一虚拟环境画面81的正中央位置。瞄准镜镜筒342中包括圆形的第一瞄准镜画面42,瞄准点40在第一瞄准镜画面42的圆心位置;图8中的下图示出了第二虚拟环境画面82,受虚拟对象在虚拟环境中向右转向的影响,该第二虚拟环境画面82中的反射式瞄准镜的瞄准镜镜筒342会略晚于虚拟对象的躯干动作,因此瞄准镜镜筒342与瞄准点40之间的相对位置发生了偏移,其中瞄准点40仍然在第二虚拟环境画面82的正中央位置,但是瞄准镜镜筒342以及第二瞄准镜画面44不处于正中央位置,而是处于中央偏左侧的位置。

综上所述,本实施例提供的瞄准镜显示方法,通过虚拟对象在虚拟环境中进行活动后,显示与第一虚拟环境画面不同的第二虚拟环境画面,瞄准镜镜筒在两个虚拟环境画面中的位置是不同的,但瞄准点在两个虚拟环境画面中的位置是相同的,能够对现实环境中的反射式瞄准镜进行更为真实的仿真,从而实现更为真实的显示效果,增强用户对虚拟环境的沉浸感。

请参考图9,其示出了本申请一个示例性实施例提供的虚拟环境中的瞄准镜显示方法的流程图。本实施例以该方法应用于图5所示的电子设备、图6所示的第一设备和/或图6所示的第二设备中来举例说明,本实施例能够对采用反射式瞄准镜对虚拟环境进行观察的场景进行仿真模拟。该方法包括:

步骤901,显示第一虚拟环境画面,第一虚拟环境画面包括虚拟对象使用反射式瞄准镜观察虚拟环境的第一瞄准镜画面,第一虚拟环境画面中反射式瞄准镜的瞄准镜镜筒位于第一位置;

可选地,虚拟对象是三维形式的。该虚拟对象是仿真人物、卡通人物、动漫人物和游戏人物中的任意一种。

设备具有控制虚拟环境中的一个或多个虚拟对象的能力。以设备是控制一个虚拟对象为例,在虚拟环境中存在与该虚拟对象对应的摄像机模型,该摄像机模型用于采集以虚拟对象的第一视角或第三视角对虚拟环境进行观察时的画面。可选地,当虚拟对象使用反射式瞄准镜时,该摄像机模型可以采用反射式瞄准镜对虚拟环境进行观察得到第一虚拟环境画面,该第一虚拟环境画面上包括有反射式瞄准镜对虚拟环境进行观察的第一瞄准镜画面。

可选地,第一虚拟环境画面上还可以叠加有各种控件,这些控件包括:移动方向控制控件、开火控件、投弹控件、主武器槽位控件、辅武器槽位控件、小地图控件、地图方位指引控件、队友/敌方单位指示标识中的至少一种。

第一瞄准镜画面是指采用反射式瞄准镜所观察到的虚拟环境的画面。若反射式瞄准镜的镜头是圆形,则第一瞄准镜画面为圆形。在虚拟对象活动前,第一虚拟环境画面中的瞄准镜镜筒位于第一位置,该第一位置可以是第一虚拟环境画面的正中央位置。

如图10所示,第一虚拟环境画面50上显示有采用虚拟对象的摄像机模型对虚拟环境进行观察时的画面,该画面50中还包括采用反射式瞄准镜51对虚拟环境进行观察时的第一瞄准镜画面52。该第一瞄准镜画面52可以是圆形的画面,该第一瞄准镜画面52中观察到的虚拟环境是未放大的,或者按照预设比例(1.0、2.0、4.0、8.0或15.0)放大后的。第一虚拟环境画面50中的瞄准镜镜筒51位于第一位置,比如正中心位置。

步骤902,控制虚拟对象在虚拟环境中以第一速度进行活动,且控制反射式瞄准镜的瞄准镜镜筒在虚拟环境中以第二速度进行活动,第一速度大于第二速度;

可选地,设备根据用户触发的控制信号,控制虚拟对象在虚拟环境中以第一速度进行活动。当该设备为带有触摸显示屏的手机或平板时,该控制信号可以是用户通过对交互控件进行触摸并拖动而产生的,交互控件包括:控制虚拟对象平移的控件、控制虚拟对象旋转的控件、控制虚拟对象仰视/俯视的控件、控制虚拟对象跳跃的控件、控制虚拟对象爬行的控件中的至少一种;当该终端为台式电脑、便携式膝上电脑时,该拖动操作可以是用户通过外部设备对该交互控件进行拖动产生的,如:用户通过鼠标点击交互控件并进行拖动。

本申请实施例中的活动,是指虚拟对象的躯干动作会带动手臂(以及该手臂持有的虚拟枪械和反射式瞄准镜)改变位置的运动。该活动包括:控制虚拟对象进行平移、控制虚拟对象在左/右方向上转向、控制虚拟对象在俯视状态和平视状态之间切换、控制虚拟对象在仰视状态和平视状态之间切换中的至少一种。

出于更真实的仿真目的,在虚拟对象活动时,躯干部分的滑动速度应该大于手臂部分的滑动速度,也即手臂上的运动会略微迟滞一下,再跟随躯干部分进行相同或相应的滑动。因此,设备控制虚拟对象在虚拟环境中以第一速度进行活动,且控制反射式瞄准镜的瞄准镜镜筒在虚拟环境中以第二速度进行活动,第一速度大于第二速度。可选地,第一速度和第二速度之间的差值小于阈值。

步骤903,获取虚拟对象对应的摄像机模型的镜头朝向;

摄像机模型在虚拟环境中具有自身的三维坐标和镜头朝向。可选地,该镜头朝向采用镜头朝向矢量来表征。该镜头朝向矢量可以是具有方位角、俯仰角与翻滚角的单位矢量。

步骤904,将反射式瞄准镜的镜片材质的瞄准点位置移动到镜头朝向的延长线上;

在虚拟环境中,反射式瞄准镜的结构可以参考图3所示。

设备会将镜片材质的瞄准点位置移动到摄像机模型的镜头朝向延长线上,也即让瞄准点位置一直处于第一/第二虚拟环境画面的正中央位置。同时,保持瞄准镜片与瞄准镜镜筒的相对位置不发生变化。可选地,本步骤包括如下子步骤:

1、将镜头朝向矢量与距离参数相乘得到材质位移值,距离参数用于指示瞄准镜片相对于摄像机模型的距离;

2、将摄像机模型在虚拟环境中的坐标与材质位移值相加,得到镜片材质的位置坐标;

3、根据位置坐标设置镜片材质在虚拟环境中的位置。

结合参考图11的左图,假设虚拟对象61在活动前采用反射式瞄准镜对虚拟环境进行观察,此时虚拟对象的摄像机模型的镜头朝向、反射式瞄准镜的瞄准镜镜筒62的瞄准镜朝向均为第一方向63,瞄准镜片65的中心以及镜片材质66的中心均位于瞄准镜朝向的延长线上;当虚拟对象在活动后,虚拟对象的摄像机模型的镜头朝向为第二方向64,则此时需要控制镜片材质66的中心点(也即瞄准点)位于镜头朝向的延长线上。设摄像机模型的镜头朝向矢量为V,摄像机模型的镜头与瞄准镜片之间的距离为L,摄像机模型在三维虚拟环境中的坐标为S1,则:

镜片材质的位置坐标S2=V*L+S1。

设备根据位置坐标,将镜片材质在虚拟环境中进行移动。也即,镜片材质跟随瞄准镜片进行移动。同时,设备还保持瞄准镜镜筒和瞄准镜片的相对位置不发生变化。

可选地,由于镜片材质是贴附在瞄准镜片上的,不应当超出瞄准镜片所在位置范围。因此设备在计算得到材质偏移值时,还检测材质偏移值是否大于最大偏移值。若材质偏移值大于最大偏移值时,将材质偏移值更新为最大偏移值,以保证偏移后的镜片材质不超出瞄准镜片的位置范围。可选地,该最大偏移值等于瞄准镜片的半径。

步骤905,根据镜头朝向、瞄准镜镜筒、瞄准镜片和镜片材质生成第二虚拟环境画面;

设备根据摄像机模型的镜头朝向进行摄像头取景,根据虚拟环境经过瞄准镜镜筒、瞄准镜片和镜片材质后在取景框中形成画面,生成第二虚拟环境画面。

步骤906,显示第二虚拟画面,第二虚拟环境画面包括虚拟对象使用反射式瞄准镜观察虚拟环境的第二瞄准镜画面,第二虚拟环境画面中的瞄准镜镜筒位于第二位置。

设备将生成的第二虚拟环境画面进行显示。瞄准镜镜筒中的瞄准点在所述第一虚拟环境画面和所述第二虚拟环境画面中的位置相同,比如瞄准点在第一虚拟环境画面和第二虚拟环境画面中均位于画面中心位置。

在一个示意性的例子中,当虚拟对象向右转向时,第二虚拟环境画面如图12所示,瞄准镜镜筒的转向略晚于虚拟人物的右转向,因此瞄准镜镜筒的位置偏左;在另一个示意性的例子中,当虚拟对象向左转向时,第二虚拟环境画面如图13所示,瞄准镜镜筒的转向略晚于虚拟人物的左转向,因此瞄准镜镜筒的位置偏右。

由于虚拟对象在虚拟环境中的活动可能是持续的,上述步骤903和步骤906可以执行多次,比如每秒执行24次、每秒执行60次等等。

综上所述,本实施例提供的瞄准镜显示方法,通过虚拟对象在虚拟环境中进行活动后,显示与第一虚拟环境画面不同的第二虚拟环境画面,瞄准镜镜筒在两个虚拟环境画面中的位置是不同的,但瞄准点在两个虚拟环境画面中的位置是相同的,能够对现实环境中的反射式瞄准镜进行更为真实的仿真,从而实现更为真实的显示效果,增强用户对虚拟环境的沉浸感。

本实施例提供的瞄准镜显示方法,通过控制虚拟对象在虚拟环境中以第一速度进行旋转,且控制反射式瞄准镜在虚拟环境中以第二速度进行旋转,使得虚拟对象的躯干动作略快于手臂动作,更符合现实环境中的物体规律,提供更真实的人物动画。

本实施例提供的瞄准镜显示方法,通过根据镜头朝向矢量、距离参数和摄像机模型的坐标来生成瞄准镜片的位置,即便反射式瞄准镜的瞄准镜镜筒在虚拟环境画面中发生移动,也能够使得瞄准镜片上的瞄准点一直位于虚拟环境画面中的正中心,从而减少用户在观看虚拟环境画面时的三维眩晕感。

本实施例提供的瞄准镜显示方法,通过当材质偏移值大于最大偏移值时,将材质偏移值更新为最大偏移值,能够避免第二虚拟环境画面中出现穿帮错误,保证了第二虚拟环境画面的真实性。

以下为本申请的装置实施例,对于装置实施例中未详细描述的细节,可以参考上述一一对应的方法实施例。

图14是本申请一个示例性实施例提供的虚拟环境中的瞄准镜显示装置的框体。该瞄准镜显示装置可以通过软件、硬件或者两者的结合实现成为电子设备的全部或一部分。该装置包括:显示模块620和控制模块640。

显示模块620,用于显示第一虚拟环境画面,所述第一虚拟环境画面包括虚拟对象使用反射式瞄准镜观察所述虚拟环境的第一瞄准镜画面,所述第一虚拟环境画面中所述反射式瞄准镜的瞄准镜镜筒位于第一位置;

控制模块640,用于控制所述虚拟对象在所述虚拟环境中进行活动;

所述显示模块620,用于显示第二虚拟环境画面,所述第二虚拟环境画面包括所述虚拟对象使用所述反射式瞄准镜观察所述虚拟环境的第二瞄准镜画面,所述第二虚拟环境画面中的所述瞄准镜镜筒位于第二位置。其中,所述瞄准镜镜筒中的瞄准点在所述第一虚拟环境画面和所述第二虚拟环境画面中的位置相同。

在一个可选的实施例中,所述反射式瞄准镜还包括瞄准镜片和镜片材质,所述镜片材质是贴附在所述瞄准镜片上用于呈现所述瞄准点的材质。

所述显示模块620,用于获取所述虚拟对象对应的摄像机模型的镜头朝向;将所述反射式瞄准镜的镜片材质的瞄准点位置移动到所述镜头朝向的延长线上;根据所述镜头朝向、所述瞄准镜镜筒、所述瞄准镜片和所述镜片材质生成并显示所述第二瞄准镜画面。

在一个可选的实施例中,所述镜头朝向采用镜头朝向矢量表示;

所述显示模块620,用于将所述镜头朝向矢量与距离参数相乘计算得到材质位移值,所述距离参数用于指示所述镜片材质相对于所述摄像机模型的距离;将所述摄像机模型在所述虚拟环境中的坐标与所述材质位移值相加,得到所述镜片材质的位置坐标;根据所述位置坐标设置所述镜片材质在所述虚拟环境中的位置。

在一个可选的实施例中,所述显示模块620,还用于将所述瞄准镜片的镜片朝向设置为与所述镜头朝向的反方向。

在一个可选的实施例中,所述控制模块640,还用于控制所述虚拟对象在所述虚拟环境中以第一速度进行活动,且控制所述反射式瞄准镜的所述瞄准镜镜筒在所述虚拟环境中以第二速度进行活动,所述第一速度大于所述第二速度。

在一个可选的实施例中,所述瞄准点在所述第一虚拟环境画面和所述第二虚拟环境画面中均位于画面中心位置。

图15示出了本发明一个示例性实施例提供的电子设备1500的结构框图。该电子设备1500可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备1500还可能被称为用户设备、便携式电子设备、膝上型电子设备、台式电子设备等其他名称。

通常,电子设备1500包括有:处理器1501和存储器1502。

处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行以实现本申请中方法实施例提供的虚拟环境中的枪械装配方法。

在一些实施例中,电子设备1500还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频电路1504、触摸显示屏1505、摄像头1506、音频电路1507、定位组件1508和电源1509中的至少一种。

外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。在一些实施例中,处理器1501、存储器1502和外围设备接口1503被集成在同一芯片或电路板上;在一些其他实施例中,处理器1501、存储器1502和外围设备接口1503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1504可以通过至少一种无线通信协议来与其它电子设备进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1505可以为一个,设置电子设备1500的前面板;在另一些实施例中,显示屏1505可以为至少两个,分别设置在电子设备1500的不同表面或呈折叠设计;在再一些实施例中,显示屏1505可以是柔性显示屏,设置在电子设备1500的弯曲表面上或折叠面上。甚至,显示屏1505还可以设置成非矩形的不规则图形,也即异形屏。显示屏1505可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。

摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。通常,前置摄像头设置在电子设备的前面板,后置摄像头设置在电子设备的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备1500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1501或射频电路1504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1507还可以包括耳机插孔。

定位组件1508用于定位电子设备1500的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1508可以是基于美国的GPS(Global Positioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。

电源1509用于为电子设备1500中的各个组件进行供电。电源1509可以是交流电、直流电、一次性电池或可充电电池。当电源1509包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,电子设备1500还包括有一个或多个传感器1510。该一个或多个传感器1510包括但不限于:加速度传感器1511、陀螺仪传感器1512、压力传感器1513、指纹传感器1514、光学传感器1515以及接近传感器1516。

加速度传感器1511可以检测以电子设备1500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1511可以用于检测重力加速度在三个坐标轴上的分量。处理器1501可以根据加速度传感器1511采集的重力加速度信号,控制触摸显示屏1505以横向视图或纵向视图进行用户界面的显示。加速度传感器1511还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1512可以检测电子设备1500的机体方向及转动角度,陀螺仪传感器1512可以与加速度传感器1511协同采集用户对电子设备1500的3D动作。处理器1501根据陀螺仪传感器1512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1513可以设置在电子设备1500的侧边框和/或触摸显示屏1505的下层。当压力传感器1513设置在电子设备1500的侧边框时,可以检测用户对电子设备1500的握持信号,由处理器1501根据压力传感器1513采集的握持信号进行左右手识别或快捷操作。当压力传感器1513设置在触摸显示屏1505的下层时,由处理器1501根据用户对触摸显示屏1505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1514用于采集用户的指纹,由处理器1501根据指纹传感器1514采集到的指纹识别用户的身份,或者,由指纹传感器1514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1514可以被设置电子设备1500的正面、背面或侧面。当电子设备1500上设置有物理按键或厂商Logo时,指纹传感器1514可以与物理按键或厂商Logo集成在一起。

光学传感器1515用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1515采集的环境光强度,控制触摸显示屏1505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1505的显示亮度;当环境光强度较低时,调低触摸显示屏1505的显示亮度。在另一个实施例中,处理器1501还可以根据光学传感器1515采集的环境光强度,动态调整摄像头组件1506的拍摄参数。

接近传感器1516,也称距离传感器,通常设置在电子设备1500的前面板。接近传感器1516用于采集用户与电子设备1500的正面之间的距离。在一个实施例中,当接近传感器1516检测到用户与电子设备1500的正面之间的距离逐渐变小时,由处理器1501控制触摸显示屏1505从亮屏状态切换为息屏状态;当接近传感器1516检测到用户与电子设备1500的正面之间的距离逐渐变大时,由处理器1501控制触摸显示屏1505从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图15中示出的结构并不构成对电子设备1500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

本申请还提供一种计算机可读存储介质,存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述方法实施例提供的虚拟环境中的瞄准镜显示方法。

本申请还提供了一种计算机程序产品,当其在电子设备上运行时,使得电子设备执行上述各个方法实施例的虚拟环境中的瞄准镜显示方法。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1