三维视觉效果模拟方法及装置与流程

文档序号:11922374阅读:236来源:国知局
三维视觉效果模拟方法及装置与流程

本发明涉及信息技术领域,尤其涉及一种三维视觉效果模拟方法及装置。



背景技术:

显示技术中的三维(3Dimensional,3D)视觉效果,是模拟人观看实物产生的立体视觉效果。

在现有的利用二维显示屏进行3D视觉效果模拟的过程中,通常需要利用专用的3D建模软件,这些3D建模软件为专门开发的,通过将二维的图像进行3维仿真或建模,显示出3D模拟效果。

采用这种3D视觉效果模拟方法,需要开发并安装专用的3D建模软件,软件开发难度大、建模过程中数据处理量大、消耗的设备的处理器CPU或内存等资源多。



技术实现要素:

有鉴于此,本发明实施例期望提供一种三维视觉效果模拟方法及装置,以减少三维视觉效果显示过程中的计算量和消耗的资源。

为达到上述目的,本发明的技术方案是这样实现的:

本发明实施例提供例一种三维视觉果模拟方法,包括:

检测在显示平面内视点移动距离;

根据所述视点移动距离,分别确定第一图形元素在所述显示平面内的第一移动距离和第二图形元素在所述显示平面内的第二移动距离;其中,所述第一移动距离不等于所述第二移动距离;

根据所述第一移动距离,改变所述第一图形元素在所述显示平面内的位置,并根据所述第二移动距离改变所述第二图形元素在所述显示平面内的位置。

基于上述方案,所述检测在显示平面内视点移动距离,包括:

检测所述显示平面内指示光标的移动距离。

基于上述方案,所述根据所述视点移动距离,分别确定第一图形元素在所述显示平面内的第一移动距离和第二图形元素在所述显示平面内的第二移动距离,包括:

依据如下公式分别确定所述第一移动距离和所述第二移动距离;

D=Dmax*(M/Mmax);

其中,所述M为所述视点移动距离;所述Mmax为最大的视点移动距离;当所述Dmax为第一图形元素的最大移动距离时,所述D为所述第一移动距离;当所述Dmax为第二图形元素的最大移动距离时,所述D为所述第二移动距离。

基于上述方案,所述Mmax等于所述第一图形元素和所述第二图像元素所在显示窗口的宽度。

基于上述方案,当所述显示屏幕内的图形元素还包括所述第一图形元素和所述第二图形元素以外的一个或多个其他图形元素时,所述方法还包括:

根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离。

基于上述方案,所述根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离,包括:

依据公式Dmax(m)=Dmax(1)*[Z(m)/Z(Screen)]+Dmax(n)计算任意一个所述第三移动距离;

其中,当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第二图形元素的最大移动距离;当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第一图形元素的最大移动距离;所述m的取值范围2到所述n之间的正整数;所述n为不小于3的正整数;

所述Z(m)为第m个图形元素在垂直于所述显示屏幕内的Z轴上的坐标;所述Z(Screen)为所述显示平面内在所述Z轴上的坐标。

基于上述方案,当所述第一图形元素与所述显示平面内在Z轴上的距离,大于所述第二图形元素与所述显示平面在所述Z轴上的距离时,所述第一移动距离小于所述第二移动距离;其中,所述Z轴垂直于所述显示平面。

基于上述方案,所述方法还包括:

根据所述第一图形元素和所述第二图形元素的图层叠加顺序,分别确定所述第一图形元素和所述第二图形元素在所述Z轴上的坐标。

基于上述方案,所述方法还包括:

当所述第一移动距离,大于在预设移动方向上所述第一图形元素的原始位置与显示区域边缘之间的第一边缘距离时,计算所述第一移动距离和所述第一边缘距离之间的第一比例;所述显示区域为位于所述显示平面内所述第一图形元素和第二图形元素的显示范围;

根据所述第一比例等比缩小所述第一移动距离和所述第二移动距离;

或者,

当所述第二移动距离,大于在预设移动方向上所述第二图形元素的原始位置与所述显示区域边缘之间的第二边缘距离时,计算所述第二移动距离和所述第二边缘距离之间的第二比例;

根据所述第二比例等比缩小所述第一移动距离和所述第二移动距离。

本发明实施例第二方面提供一种三维视觉效果模拟装置,包括:

检测单元,用于检测在显示平面内视点移动距离;

确定单元,用于根据所述视点移动距离,分别确定第一图形元素在所述显示平面内的第一移动距离和第二图形元素在所述显示平面内的第二移动距离;其中,所述第一移动距离不等于所述第二移动距离;

改变单元,用于根据所述第一移动距离,改变所述第一图形元素在所述显示平面内的位置,并根据所述第二移动距离改变所述第二图形元素在所述显示平面内的位置。

基于上述方案,所述检测在显示平面内视点移动距离,包括:

检测所述显示平面内指示光标的移动距离。

基于上述方案,所述确定单元,具体用于依据如下公式分别确定所述第一移动距离和所述第二移动距离;

D=Dmax*(M/Mmax);

其中,所述M为所述视点移动距离;所述Mmax为最大的视点移动距离;当所述Dmax为第一图形元素的最大移动距离时,所述D为所述第一移动距离;当所述Dmax为第二图形元素的最大移动距离时,所述D为所述第二移动距离。

基于上述方案,所述Mmax等于所述第一图形元素和所述第二图像元素所在显示窗口的宽度。

基于上述方案,所述确定单元,还用于当所述显示屏幕内的图形元素还包括所述第一图形元素和所述第二图形元素以外的一个或多个其他图形元素时,根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离。

基于上述方案,所述确定单元,还具体用于依据公式Dmax(m)=Dmax(1)*[Z(m)/Z(Screen)]+Dmax(n)计算任意一个所述第三移动距离;

其中,当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第二图形元素的最大移动距离;当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第一图形元素的最大移动距离;所述m的取值范围2到所述n之间的正整数;所述n为不小于3的正整数;

所述Z(m)为第m个图形元素在垂直于所述显示屏幕内的Z轴上的坐标;所述Z(Screen)为所述显示平面内在所述Z轴上的坐标。

基于上述方案,当所述第一图形元素与所述显示平面内在Z轴上的距离,大于所述第二图形元素与所述显示平面在所述Z轴上的距离时,所述第一移动距离小于所述第二移动距离;其中,所述Z轴垂直于所述显示平面。

基于上述方案,所述确定单元,还用于根据所述第一图形元素和所述第二图形元素的图层叠加顺序,分别确定所述第一图形元素和所述第二图形元素在所述Z轴上的坐标。

基于上述方案,所述确定单元,具体用于当所述第一移动距离,大于在预设移动方向上所述第一图形元素的原始位置与显示区域边缘之间的第一边缘距离时,计算所述第一移动距离和所述第一边缘距离之间的第一比例;所述显示区域为位于所述显示平面内所述第一图形元素和第二图形元素的显示范围;

根据所述第一比例等比缩小所述第一移动距离和所述第二移动距离;

或者,

当所述第二移动距离,大于在预设移动方向上所述第二图形元素的原始位置与所述显示区域边缘之间的第二边缘距离时,计算所述第二移动距离和所述第二边缘距离之间的第二比例;

根据所述第二比例等比缩小所述第一移动距离和所述第二移动距离。

本发明实施例提供的三维视觉效果模拟方法及装置,会检测视点移动距离,根据视点移动距离,计算出第一图形元素和第二图形元素的第一移动距离和第二移动距离,再根据第一移动距离和第二移动距离的不同,反映不同的视角差,从而实现三维视觉效果的体现。在本实施例中,第一移动距离和第二移动距离都仅是在显示平面内的距离计算,且与试点移动距离之间的关联关系,也非常简单,显然相对于3D建模,通过二维与三维之间的映射,计算出在三维空间内各个方向的移动距离,再映射到二维视图上来的三维视觉模拟效果,大大减少计算量,减少了计算所消耗的处理器和/或内存等资源。

附图说明

图1为本发明实施例提供的第一种三维视觉效果模拟方法的流程示意图;

图2A为本发明实施例提供的一种图形元素在三维坐标的显示示意图;

图2B为图2A中图形元素,在不同观测点上形成的二维显示示意图;

图3为本发明实施例提供的一种视角差的示意图;;

图4为本发明实施例提供的另一种图形元素在三维坐标的显示示意图;

图5A为利用本发明实施例提供的三维视觉效果模拟方法执行的显示变化图一;

图5B为利用本发明实施例提供的三维视觉效果模拟方法执行的显示变化图二;

图6为本发明实施例提供的一种三维视觉效果模拟装置的结构示意图;

图7为发明实施例提供的第二种三维视觉效果模拟方法的流程示意图;

图8为本发明实施例提供的另一种三维视觉效果模拟装置的结构示意图。

具体实施方式

以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐述。

如图1所示,本实施例提供一种三维视觉效果模拟方法,包括:

步骤S110:检测在显示平面内视点移动距离;

步骤S120:根据所述视点移动距离,分别确定第一图形元素在所述显示平面内的第一移动距离和第二图形元素在所述显示平面内的第二移动距离;其中,所述第一移动距离不等于所述第二移动距离;

步骤S130:根据所述第一移动距离,改变所述第一图形元素在所述显示平面内的位置,并根据所述第二移动距离改变所述第二图形元素在所述显示平面内的位置。

在本实施例中所述三维(3D)视觉模拟效果可为应用于各种显示设备中的显示方法,例如,应用于手机、平板电脑或可穿戴式设备等各种具有显示屏的显示设备。所述显示平面可为显示屏的显示面所在的屏幕。

在本实施例中首先会检测视点移动距离,在本实施例中所述视点为用户在所述显示平面内的关注点。例如,用户眼睛盯住的位置。在所述步骤S110中,可以通过瞳孔定位或眼动仪的眼动追踪,确定出所述视点在一个时间片内的移动距离,从而获得所述视点移动距离,但是具体实现时,不局限于上述方式。例如,一个所述时间片可为一个检查周期,例如,0.1秒等。

在步骤S120中将会根据视点移动距离,分别确定出所述第一图形元素和第二图形元素在显示平面内的移动。例如,如图2A所示,所述显示平面为X轴和Y轴构成的平面,则所述第一图形元素和第二图形元素,在步骤S120中计算出的第一移动距离和第二移动距离,都是在X轴和Y轴构成的平面的移动距离。图2A中的元素一相当于前述的第一图形元素,元素二可相当于前述的元素二。

在所述步骤S130中,根据第一移动距离改变所述第一图形元素在显示屏幕内的位置,可包括:将所述第一图形元素在所述显示平面内移动所述第一移动距离。在本实施例中所述第一图形元素和所述第二图形元素的移动距离不同,相当于就会使得用户产生三维视觉效果。在具体实现时,所述第一图形元素和所述第二图形元素的移动方向可相同也可以不同,例如,两个所述图形元素的移动方向相反。在具体实现时,所述第一图形元素和所述第二图形元素的移动方向,与所述视点的移动方向关联。例如,预先建立好了视点的移动方向与各个图形元素的移动方向的映射关系,在移动所述第一图形元素和所述第二图形元素时,将结合视点的移动方向及映射关系,确定各个图形元素的移动方向。

针对图2A立体空间内的图形元素,从不同的观测点去观测时,在二维平面(对应于所述显示平面)内,观测到两个元素之间的距离是不一样的。具体可如图2B所示,在A观测点和观测点C,元素一覆盖较多的元素二;在观测点C和观测点D覆盖了较少的元素二。这里的观测点,即为前述的视点。显然不同给的观测点,看到了两个图形元素在显示平面内的距离发生了本变化。在本实施例中利用了该特点,根据视点移动距离来改变至少两个图形元素位置,且改变的移动距离的不一致来呈现三维视觉效果。

同样地,图3所示为视差形成3D视觉效果的图示。从有一定距离的两个点上观察同一个目标所产生的方向差异。从目标看两个点之间的夹角,叫做这两个点的视差角,两点之间的距离称作基线。视差是人类产生立体视觉的前提。基线固定的情况下,目标越远,视差角越小。通俗的理解,在运动中观察,离得近的物体移动快,离得远的物体移动慢。在图3中显示的树,位置不同,离用户眼睛的距离不同,从而视角差不同,从而将产生不同的视觉效果。在本实施例中利用该特点,将两个不同的图形元素,进行不同距离,相当于将两个图形元素置于不同的视角差内移动,从而实现三维视觉效果的显示。

在步骤S130中的移动,可为将第一图形元素从原始位置开始移动第一移动距离,将第二图形元素从原始位置开始移动第二移动距离。这里的原始位置都可为未移动之前的图形元素的显示位置。

在步骤S120中所述第一移动距离和第二移动距离的计算,都可根据所述视点距离进行的线性计算,且所述第一移动距离和所述第二移动距离都是位于显示平面内的移动,仅需要计算图形元素在一个平面内的位置的改动,相对于现有技术中的3D建模,每一个元素在三维空间内移动距离的计算,大大的减少了计算量,节省了计算资源,提升计算效果,提升了三维视觉效果的响应速度。

在有些实施例中,所述步骤S110可包括:检测所述显示平面内指示光标的移动距离。

在本实施例中所述指示光标可为鼠标光标,键盘光标。鼠标移动一般是基于用户操作,若用户移动鼠标,那么用户的目光自然追随者鼠标进行移动。故在本实施例中,可以通过指示光标的移动来反映用户在显示平面内的视点的移动距离。所述视点的移动距离简称为视点移动距离。例如,所述步骤S110还可包括:检测焦点的移动距离,作为所述视点移动距离。所述焦点可为被选中的控件,具体的定义可参见现有技术,在此就不重复了。

在有些实施例中,所述步骤S120可包括:

依据如下公式分别确定所述第一移动距离和所述第二移动距离;

D=Dmax*(M/Mmax);

其中,所述M为所述视点移动距离;所述Mmax为最大的视点移动距离;当所述Dmax为第一图形元素的最大移动距离时,所述D为所述第一移动距离;当所述Dmax为第二图形元素的最大移动距离时,所述D为所述第二移动距离。

在本实施例中Mmax和所述Dmax可为预先设置的,也可以为从其他设备中接收的。例如,每一张图片中的需要提供三维视觉效果的图形元素,都在图形元素的描述信息里定义了所述Mmax和Dmax,这样的话,在计算所述第一移动距离或所述第二移动距离时,可以通过读取所述描述信息即可知。

当然以上仅是提供了一种计算方法,在具体实现时还可以是其他方法。从上述计算函数可知,显然第一移动距离和第二移动距离的计算方式简单,计算量少。

进一步地,所述Mmax等于所述第一图形元素和所述第二图像元素所在显示窗口的宽度。在显示过程中,很多时候都是基于窗口显示的。窗口可分为全屏窗口和小窗口。小窗口的显示面积小于全屏窗口的显示面积。一般情况下全屏窗口的显示面积等于显示平面内显示屏的显示面积。进行图形元素的移动时,不能超出各个图形元素原本的显示窗口,故在本实施例中为了确保显示正常,所述Mmax等于所述第一图形元素和所述第二图形元素所在显示窗口的宽度。当然,这里的Mmax所等于的宽度,为所述第一图形元素和第二图形元素的移动方向上的宽度。不同的移动方向,所述Mmax不同,则所述D的最终取值也不同。

在有些实施例中,当所述显示屏幕内的图形元素还包括所述第一图形元素和所述第二图形元素以外的一个或多个其他图形元素时,所述方法还包括:

根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离。

在本实施例中用于产生三维视觉效果的图形元素可能不止一个,可能包括第3、4、5个等元素。在本实施例中,将根据所述视点移动距离和所述第一移动距离和所述第二移动距离,计算每一个其他移动元素的移动距离,这样确保各个图形元素移动距离的统一性,同时避免单独计算每一个第三移动距离。

如图4所示,图4中的元素三、元素四即相当于前述的其他图形元素。

具体地如,所述根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离,包括:

依据公式Dmax(m)=Dmax(1)*[Z(m)/Z(Screen)]+Dmax(n)计算任意一个所述第三移动距离;

其中,当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第二图形元素的最大移动距离;当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第一图形元素的最大移动距离;所述m的取值范围2到所述n之间的正整数;所述n为不小于3的正整数;

所述Z(m)为第m个图形元素在垂直于所述显示屏幕内的Z轴上的坐标;所述Z(Screen)为所述显示平面内在所述Z轴上的坐标。

所述Z(m)和所述Z(Screen)都可以预先设置。当然,所述Z(m)可为设备自动生成,例如,根据各个产生三维视觉效果的图形元素的显示面积,自动确定。例如,假设显示面积与所述Z(m)的取值相关,显示面积越大,所述Z(m)与显示平面在Z轴上之间的距离就越小,以上仅是一个举例,具体实现时,不局限于上述任意一个方法。

例如,当所述第一图形元素与所述显示平面内在Z轴上的距离,大于所述第二图形元素与所述显示平面在所述Z轴上的距离时,所述第一移动距离小于所述第二移动距离;其中,所述Z轴垂直于所述显示平面。这样的话,可以从用户角度来看,远景的移动距离小,近景的移动大,从而能够产生三维视觉效果。

在有些实施例中,所述方法还包括:

根据所述第一图形元素和所述第二图形元素的图层叠加顺序,分别确定所述第一图形元素和所述第二图形元素在所述Z轴上的坐标。

例如,有些图像是有多个图层叠加而成的,不同的图形元素可能位于不同的图层,在本实施例中可以根据图形元素所在的图层,确定其在Z轴上的坐标,从而相当于确定了与显示平面在Z轴上的距离。当然以上仅是距离。当然,在具体实现时,还可以根据图形元素之间的覆盖关系,来确定在Z轴上坐标。例如,被覆盖的图形元素与显示平面之间在Z轴上的距离远,未被覆盖的图形元素与显示平面在Z轴上的距离近。当然以上仅是提供几种可实现的方式。

在具体实现时,所述方法还包括:

当所述第一移动距离,大于在预设移动方向上所述第一图形元素的原始位置与显示区域边缘之间的第一边缘距离时,计算所述第一移动距离和所述第一边缘距离之间的第一比例;所述显示区域为位于所述显示平面内所述第一图形元素和第二图形元素的显示范围;

根据所述第一比例等比缩小所述第一移动距离和所述第二移动距离;

或者,

当所述第二移动距离,大于在预设移动方向上所述第二图形元素的原始位置与所述显示区域边缘之间的第二边缘距离时,计算所述第二移动距离和所述第二边缘距离之间的第二比例;

根据所述第二比例等比缩小所述第一移动距离和所述第二移动距离。

这里的显示区域相当于所述第一图形元素和第二图形元素在所述显示平面内的可移动区域,为了避免移动超范围的问题,例如,移动超出显示窗口的边界。这里的显示窗口可为所述显示区域的一种,在本实施例中通过第一比例的计算,再通过等比缩小,再移动对应的图形元素,同样可以实现三维视觉效果,且视觉效果不会减弱。

图5A和图5B展示的为利用本发明实施例的方法,基于鼠标光标的移动距离改变两个图形元素之间的距离的显示效果图。图5A和图5B中显示位置发生改变的图形元素可包括圆环图形元素及文本图形元素“网络广告烦,关不尽”的图形的距离。在图5A和图5B的右图中虚线箭头表示鼠标光标原始位置,实线箭头表示鼠标光标移动后的位置。对比图5A和图5B可知,鼠标光标的移动距离,与图形元素之间的相对位置的改变量正相关。

如图6所示,本实施例提供一种三维视觉效果模拟装置,包括:

检测单元110,用于检测在显示平面内视点移动距离;

确定单元120,用于根据所述视点移动距离,分别确定第一图形元素在所述显示平面内的第一移动距离和第二图形元素在所述显示平面内的第二移动距离;其中,所述第一移动距离不等于所述第二移动距离;

改变单元130,用于根据所述第一移动距离,改变所述第一图形元素在所述显示平面内的位置,并根据所述第二移动距离改变所述第二图形元素在所述显示平面内的位置。

本实施例所述装置可为应用于各种显示设备中的信息处理结构。所述显示设备可为手机、平板、可穿戴式设备、台式电脑、笔记本电脑或电子书等各种显示终端。

所述检测单元110、所述确定单元120及改变单元130,都可对应于处理器或处理电路。所述处理器可包括中央处理器、微处理器、数字信号处理器、应用处理器、或可编程阵列等。所述处理电路可包括专用集成电路。

所述处理器或处理电路可通过指定代码的执行,实现上述功能。

在一些实施例中,所述检测单元110,具体用于检测所述显示平面内指示光标的移动距离。所述检测单元110可包括鼠标或检测面板等检测指示光标移动操作的结构。

进一步地,所述确定单元120,具体用于依据如下公式分别确定所述第一移动距离和所述第二移动距离;

D=Dmax*(M/Mmax);

其中,所述M为所述视点移动距离;所述Mmax为最大的视点移动距离;当所述Dmax为第一图形元素的最大移动距离时,所述D为所述第一移动距离;当所述Dmax为第二图形元素的最大移动距离时,所述D为所述第二移动距离。

本实施例所述确定单元120对应于计算器或计算电路或具有计算功能的处理器或处理电路,可用于计算出所述第一移动距离或第二移动距离。

可选地,所述Mmax等于所述第一图形元素和所述第二图像元素所在显示窗口的宽度。

在另一些实施例中,所述确定单元120,还用于当所述显示屏幕内的图形元素还包括所述第一图形元素和所述第二图形元素以外的一个或多个其他图形元素时,根据所述视点移动距离、所述第一移动距离和所述第二移动距离,计算所述其他图形元素的第三移动距离。

在本实施例中为了避免单独计算每一个图形元素的距离,导致移动距离没有一致性,在本实施例中将根据第一图形元素和第二图形元素的移动距离来确定。

进一步地,所述确定单元120,还具体用于依据公式Dmax(m)=Dmax(1)*[Z(m)/Z(Screen)]+Dmax(n)计算任意一个所述第三移动距离;

其中,当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第二图形元素的最大移动距离;当所述Dmax(1)为所述第一图形元素的最大移动距离时,所述Dmax(n)为所述第一图形元素的最大移动距离;所述m的取值范围2到所述n之间的正整数;所述n为不小于3的正整数;

所述Z(m)为第m个图形元素在垂直于所述显示屏幕内的Z轴上的坐标;所述Z(Screen)为所述显示平面内在所述Z轴上的坐标。

总之,本实施例确定单元120可根据上述函数关系进行计算,但是不限于上述函数关系。

此外,当所述第一图形元素与所述显示平面内在Z轴上的距离,大于所述第二图形元素与所述显示平面在所述Z轴上的距离时,所述第一移动距离小于所述第二移动距离;其中,所述Z轴垂直于所述显示平面。这样的话,就能够实现远景移动距离小,近景移动距离大,从而产生三维视觉效果。

各个图形元素在Z轴上的坐标有多种确定结构有中,例如,确定单元120可由于根据人机交互接口获取的操作指示来确定。在本实施例中所述确定单元120,还用于根据所述第一图形元素和所述第二图形元素的图层叠加顺序,分别确定所述第一图形元素和所述第二图形元素在所述Z轴上的坐标。

此外,所述确定单元120,具体用于当所述第一移动距离,大于在预设移动方向上所述第一图形元素的原始位置与显示区域边缘之间的第一边缘距离时,计算所述第一移动距离和所述第一边缘距离之间的第一比例;所述显示区域为位于所述显示平面内所述第一图形元素和第二图形元素的显示范围;根据所述第一比例等比缩小所述第一移动距离和所述第二移动距离;或者,当所述第二移动距离,大于在预设移动方向上所述第二图形元素的原始位置与所述显示区域边缘之间的第二边缘距离时,计算所述第二移动距离和所述第二边缘距离之间的第二比例;根据所述第二比例等比缩小所述第一移动距离和所述第二移动距离。

以下结合上述任意一个实施例提供几个具体示例:

示例一:

如图7所示,本示例提供一种3D视觉效果展示方法,包括:

步骤S1:静态展示;这里的静态展示可为将图像或图像元素静态展示在网页中或应用的应用界面中。例如,在游戏网页中,在游戏未开始之前静态展示游戏页面的各种图形元素;再比如,在微信的显示界面,静态展示一个社交图片。

步骤S2:判断鼠标是否位于窗口内,若是,进入步骤S3,若否,则进入步骤S5。这里的窗口可为整个显示屏的显示窗口,也可以为3D视觉模拟的显示窗口内。这里的鼠标实质上可对应于鼠标光标,通常鼠标光标是用户视觉所关注的焦点,即用户的视点所在位置。在具体执行步骤S2时,还可以是判断触控点或用户瞳孔定位等对应的视点是否位于所述窗口中,这里的窗口可为显示有可呈现动态的图形元素的显示界面或显示区域。

步骤S3:视差计算。这里的视差计算可对应于前述的步骤S120。当鼠标位于窗口内,即表示用户的视点位于所述窗口,这个时候需要执行视差计算。具体可包括检测鼠标光标的移动距离,根据移动距离计算窗口内至少两个图形元素的移动距离。

步骤S4:模拟3D视觉,可对应于步骤S130的不同图形元素的移动。计算出鼠标光标的移动距离之后,根据计算得到的移动距离,分别移动每一个图形元素,由于至少两个图形元素的移动距离不相等,这样就会产生三维视觉的效果。如图5A和图5B所示,鼠标光标移动前圆环形图形元素和文本图形元素“网络广告烦,关不尽”之间的距离相对较远,在移动之后,这两个图形元素的距离变近了。这样就会让用户产生远景移动距离近,近景移动距离远的三维视觉效果。比对图5A和图5B可知,两个图形元素之间的距离的改变,与鼠标光标的移动距离相关,即与视点的移动距离相关。

步骤S5:静态展示。当鼠标光标移动出窗口,即表示用户的视点移动出窗口,用户不在关注该窗口的显示区域,为了简化设备的操作,窗口恢复到静态显示,不在进行视点距离计算及图形元素的移动,减少对设备的计算资源和处理资源的占用,避免增加设备的负荷,从而使得设备有更多的资源来响应其他操作,提高设备执行其他操作的响应速率。

值得注意的是本示例提供的方法,可以应用于各种显示场景,在本示例中优先为应用于第一视角显示场景,这里的第一视角为用户的视点移动而移动显示场景和/或内容的显示模式。例如,游戏场景,用户移动光标,转换游戏场景的显示场景。视频显示则为非第一视角显示场景的另一种显示视角。

以下以鼠标光标移动为例,具体可以利用如下公式,来计算模拟3D视觉中的各个元素的移动距离。

观测点移动距离相同的情况下,近景(元素一)移动快,远景(元素二)移动慢。移动的距离可以根据下列公式计算

D=Dmax*(M/Mmax)

Dmax:最大移动距离

M:观测点移动距离

Mmax:观测点最大移动距离

观测点移动距离(M)就是鼠标移动距离,观测点最大移动距离(Mmax)就是展示窗口大小。计算移动距离(D)的关键在于找到合适的Dmax。近景需要较大的Dmax,远景需要较小的Dmax。于是3D视觉模拟转化为Dmax的选择。观测点即为前述视点。

根据应用场景不一样,Dmax有不同的选择方案。电脑管家弹窗推荐窗口使用了两幅静态图片进行模拟,场景比较简单,移动距离可以固定。近景和远景的Dmax直接人工指定为10个像素l和5像素。

在更加复杂的场景里,视觉元素可能有n个,观测点移动过程中,离屏幕越近的元素移动越快。第m个元素的Dmax(m)可以通过下面的公式计算:

Dmax(m)=Dmax(1)*[Z(m)/Z(Screen)]+Dmax(n)

Dmax(1):最近(第1个)元素最大移动距离

Dmax(n):最远(第n个)元素最大移动距离

Z(m):第m个元素的z轴坐标

Z(Screen):屏幕的z轴坐标

示例二:

如图8所示,本示例提供一种三维视觉效果模拟装置的一个可选的硬件结构示意图,包括处理器11、输入/输出接口13(例如显示屏、触摸屏、扬声器),存储介质14以及网络接口12,组件可以经系统总线15连接通信。相应地,存储介质14中均存储有用于执行本发明实施例记载的服务处理方法的可执行指令。图8中示出的各硬件模块可根据需要部分实施、全部实施或实施其他的硬件模块,各类型硬件模块的数量可以为一个或多个,各硬件模块可以在同一地理位置实施,或者分布在不同的地理位置实施,可以用于执行上述图1、图5及图8所示的三维视觉效果模拟方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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