CN109542222A - 三维视角控制方法、装置、设备以及可读存储介质 - Google Patents
三维视角控制方法、装置、设备以及可读存储介质 Download PDFInfo
- Publication number
- CN109542222A CN109542222A CN201811351827.1A CN201811351827A CN109542222A CN 109542222 A CN109542222 A CN 109542222A CN 201811351827 A CN201811351827 A CN 201811351827A CN 109542222 A CN109542222 A CN 109542222A
- Authority
- CN
- China
- Prior art keywords
- view angle
- dimensional view
- control
- control terminal
- dimensional
- 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.)
- Granted
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
-
- 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/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/015—Force feedback applied to a joystick
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)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维视角控制方法及装置、设备和可读存储介质,该方法包括:接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;基于各所述三维坐标数据判断所述控制端是否正在移动;若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;基于各所述位置变化数据对显示终端中的三维视角进行转换。本发明解决了三维场景画面移动时容易给用户带来眩晕感的技术问题。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种三维视角控制方法、装置、设备以及计算机可读存储介质。
背景技术
现有的智能终端设备中,对于用户界面的操作,没有实现真正的三维操作,即使在三维场景中,也是用二维操作来进行模拟替代三维的体验。但是,套用传统二维设备进行三维操作会具有诸多的局限性,容易给用户带来操作不直观,不好用的感知效果,并且在使用传统二维设备进行三维场景画面移动时,很容易给用户带来眩晕感,因此,如何有效防止画面移动带来的眩晕感成为目前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种三维视角控制方法、装置、设备和计算机存储介质,旨在解决三维场景画面移动时容易给用户带来眩晕感的技术问题。
为实现上述目的,本发明提供一种三维视角控制方法,其特征在于,所述三维视角控制方法包括以下步骤:
接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;
基于各所述三维坐标数据判断所述控制端是否正在移动;
若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
基于各所述位置变化数据对显示终端中的三维视角进行转换。
可选地,所述基于各所述位置变化数据对显示终端中的三维视角进行转换的步骤,包括:
获取显示终端中的调节因子,并基于所述调节因子和所述位置变化数据确定三维视角的调节幅度;
基于各所述调节幅度对显示终端中的三维视角进行转换。
可选地,所述所述基于各所述调节幅度对显示终端中的三维视角进行转换的步骤,包括:
获取三维视角的初始视角位置,并获取所述初始视角位置和所述调节幅度之间的向量和值;
基于所述向量和值确定所述三维视角的目标视角位置,并基于所述目标视角位置对显示终端中的三维视角进行转换。
可选地,所述基于所述目标视角位置对显示终端中的三维视角进行转换的步骤,包括:
获取三维视角对应的原始虚拟场景和所述目标视角位置对应的目标虚拟场景;
基于所述位置变化数据及所述调节幅度将所述原始虚拟场景转换为所述目标虚拟场景。
可选地,所述若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤,包括:
若各所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景,并判断所述控制场景内是否存在障碍物;
若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
若所述控制场景内存在障碍物,则自动将获取到的所述有效三维坐标数据丢弃,直到所述场景内不存在障碍物。
可选地,所述若所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景的步骤,包括:
若所述控制端正在移动,则基于各所述三维坐标数据确定所述控制端移动方向的移动角度;
并基于所述移动角度获取控制端移动方向预设距离内的控制场景。
可选地,所述若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤,包括:
若所述控制场景内不存在障碍物,则在各所述三维坐标数据中获取所述控制端移动前的第一坐标数据和控制端移动后的第二坐标数据;
获取所述第二坐标数据和所述第一坐标数据之间的向量差值,并将所述向量差值作为所述控制端的位置变化数据。
此外,为实现上述目的,本发明还提供一种三维视角控制装置,所述三维视角控制装置包括:
接收模块,接收位置调整指令,获取控制端的各三维坐标数据;
判断模块,基于各所述三维坐标数据判断控制端是否正在移动;
获取模块,若所述控制端正在移动,则在各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
转换模块,基于各所述位置变化数据对显示终端中的三维视角进行转换。
此外,为实现上述目的,本发明还提供一种移动终端;
所述移动终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的三维视角控制方法的步骤。
此外,为实现上述目的,本发明还提供计算机存储介质;
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的三维视角控制方法的步骤。
本发明通过接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;基于各所述三维坐标数据判断所述控制端是否正在移动;若所述控制端正在移动,则在各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;基于各所述位置变化数据对显示终端中的三维视角进行转换。通过判断控制端是否在移动来确定显示终端中的三维视角是否进行转换,并且由于控制端的移动是受用户控制的,可以进行任意方向的移动,从而能够完美地满足用户对显示终端中三维视角的三个维度的操作,并且这种操作方式能够符合用户在真实世界的操作感觉,提高了用户的使用体验感,而且由于控制端的移动方向、移动速度可以随用户自己的控制任意操作,完全符合用户大脑的思维方式,也可以有效地避免由于用户动作和显示的场景不协调所带来的眩晕感。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端\装置结构示意图;
图2为本发明三维视角控制方法第一实施例的流程示意图;
图3为本发明三维视角控制方法第二实施例的流程示意图;
图4为本发明三维视角控制设备一实施例的系统结构示意图;
图5为本发明三维视角控制方法中的控制端与三维视角交互示意图;
图6为本发明三维视角控制方法中的控制端运动的三维场景图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端为三维视角控制设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在终端设备移动到耳边时,关闭显示屏和/或背光。当然,终端设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及三维视角控制程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的三维视角控制程序,并执行以下操作:
接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;
基于各所述三维坐标数据判断所述控制端是否正在移动;
若所述控制端正在移动,则在各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
基于各所述位置变化数据对显示终端中的三维视角进行转换。
参照图2,本发明提供一种三维视角控制方法,在三维视角控制方法第一实施例中,三维视角控制方法包括以下步骤:
步骤S10,接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;
控制端可以是具有三维输入的设备,如具有三维六自由度的操控手柄,带有射线功能,也可以是具有三维输入的移动终端,。本发明实施例将以具有三维六自由度的操控手柄为例进行说明,但应当明确这种说明仅仅是示例性,不作为对实际应用中控制端的形态、规格的具体限制。
在显示终端中接收位置调整指令可以是通过在操控手柄上的预设位置来采集位置调整指令。在虚拟现实操作过程中,用户可以通过在手柄预设位置上触发位置调整指令,并将射线点向空间(射线指向的方向没有可操作模型),通过左右上下移动手柄来实现虚拟场景的左右上下的移动或者旋转功能,并当用户将手柄向手柄的前方移动时,其虚拟场景就会被拉进,但是当用户将手柄向手柄的后方移动时,其虚拟场景就会被放远,并且场景的变换速度和手势的移动速度一致。当在显示终端中接收到控制端发送过来的位置调整指令后,会随时监控控制端的三维空间距离坐标,从而得到控制端的有效三维坐标数据。
其中,在操控手柄的预设位置采集位置调整指令可以是在手柄的按键区域中预设专用按键,也可以是将按键区域中已有的按键用作指令触发,还可以是在手柄中预设用于触发位置调整指令的按键组合等等。
对于上述预设专用按键的方式,为使用户得到清晰的手感反馈,可以设置物理按键;当考虑到简化手柄体积时,也可以设置虚拟按键,例如电阻式触控按键或者电容式触控按键;为进一步减少触发按键带来的不便,还可以使用传感器代替按键,例如光线传感器、压力传感器或者是热敏传感器等等。
当在显示终端中接收到位置调整指令后,系统会自动地根据此位置调整指令时刻获取控制端的各个三维坐标数据,以此来确定用户是否正在移动控制端,并直到用户关闭位置调整指令,则停止获取控制端的三维坐标数据。
步骤S20,基于各所述三维坐标数据判断控制端是否正在移动;
在显示终端中,通过判断各个三维坐标数据的大小来确定是否存在与其它三维数据不相同的数据,从而来确定控制端是否正在进行左右上下等方向的移动。例如,当手柄以手柄纵轴或者横轴为中心轴向左、向右、向前、向后翻转,或者以垂直于手柄的Z轴为中心轴进行左右旋转。在实际应用中,控制端可以通过其内置的重力加速度传感器(例如陀螺仪)监测控制端,从而获取到控制端的有效三维坐标数据和移动方向,也可以通过红外线空间监测技术或者声波检测技术监测控制端的三维坐标数据的变化来确定有效三维坐标数据,并确定出控制端移动的方向,在本实施例中,不对控制端获取到有效三维坐标数据和控制端移动方向的手段进行具体限制。当经过判断发现控制端正在移动时,则会自动确定控制端前方是否存在障碍物,并当控制端前方没有障碍物时,就会自动控制显示终端中的三维视角进行同样速度的转换;但是,当经过判断发现控制端没有进行移动时,则保持当前三维视角不变。
为辅助理解判断控制端是否正在移动,现进行举例说明。
例如,如图6所示,当控制端为手柄,整个系统已触发位置调整指令,并且默认手柄未移动前的三维空间坐标点为原点时,即三维坐标数据为(0,0,0),当检测到手柄中的任意一个轴(可以是X轴,也可以是Y轴,还可以是Z轴)上的坐标数据不为0时,则可以认为此手柄已进行移动。
步骤S30,若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
位置变化数据可以包括控制端移动的时间、移动的实际距离和移动方向。当经过判断发现,控制端处于正在移动的状态时,还需要自动获取控制端移动的前方是否存在障碍物,并当确定出控制端移动的前方不存在障碍物时,则会自动计算各个三维坐标数据的向量差值,即变化量,以此来确定控制端的位置变化数据,并跟据此位置变化数据确定出控制端移动的方向。其中,在计算各个三维坐标数据的向量差值时,还需要将这些三维坐标数据进行平滑处理和阀值处理,以获取到有效的三维坐标数据,再从这些有效的三维坐标数据中计算出控制端的位置变化数据。其中,平滑处理就是当前数据的值加上之前的值,各取一定的比重后得到的值;阀值处理就是指当发现当前数据和前一个数据跳动太大的时候,就忽略掉当前数据而保留当前数据。
其中,控制端在移动时的任意时刻,都是将控制端当前的位置和控制端在开始移动时的初始位置进行比较,而不需要和上一个位置进行比较,从而有利于避免中间的无操作数据,增加了用户的使用体验感。
步骤S40,基于各所述位置变化数据对显示终端中的三维视角进行转换。
当获取到控制端移动的各个位置变化数据后,还需要根据位置变化数据中的移动方向、移动时间和移动距离来对显示终端中的三维视角进行转换,也就是获取用户提前在显示终端中设置的调节因子,然后根据调节因子和位置变化数据来确定三维视角转换的距离和方向,当调节因子为大于零的任意一个数值时,三维视角移动的方向和控制端移动的方向相同;但是当调节因子小于零时,三维视角移动的方向和控制端移动的方向就相反。其中控制端移动的时间和三维视角移动的时间相同,即是同步运行的。
为辅助理解本发明中手柄(即控制端)和显示终端的虚拟场景进行交互,现采用以下案例进行举例说明。
例如,如图5所示,当整套系统包含三维输入模块、逻辑处理模块和场景渲染模块时,当通过三维输入模块获取到手柄的按键状态和坐标数据时,需要将按键状态和坐标数据传递到逻辑处理模块中,并在逻辑处理模块中判断用户是否进入移动视角操作。即当手柄中的某个按键被按住并且手柄射线指示方向没有任何互动物体(以防止用户是在操作物体的无操作),并记录当前手柄的空间坐标Os和场景的视角位置Vs。再持续获取手柄的当前空间坐标Oc,并做一定的平滑处理和阀值处理,过滤掉无效数据。最终获取到手柄相对于开始操作时的位置变化数据Do=Oc(当前空间坐标数据)-Os(当前坐标数据),并应用于场景视角的切换Vc(场景视角的当前位置)=Vs(当前视角位置)+Do(位置变化数据)*r(调节因子)。其中r是比例和方向调节因子,用来标识手柄的移动和真实场景移动的比例和相互连带关系。当场景渲染模块接收到逻辑处理模块的计算结果时,会按当前用户视角的位置Vc渲染场景。其中,当经过判断发现用户没有按住按键或者手柄的射线前方预设距离内有障碍物时,会自动丢弃数据。
再例如,用户通过三维显示器和三维手柄来浏览一个城市三维模型时,可以很简洁直观地通过左右和前后移动控制端,来让用户在城市中穿梭,如同二维鼠标可以做到的一样,上下移动可以让用户的视角在高度上变化,以俯瞰的角度来观察城市。
本发明通过接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;基于各所述三维坐标数据判断所述控制端是否正在移动;若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;基于各所述位置变化数据对显示终端中的三维视角进行转换。通过判断控制端是否在移动来确定显示终端中的三维视角是否进行转换,并且由于控制端的移动是受用户控制的,可以进行任意方向的移动,从而能够完美地满足用户对显示终端中三维视角的三个维度的操作,并且这种操作方式能够符合用户在真实世界的操作感觉,提高了用户的使用体验感,而且由于控制端的移动方向可以随用户自己的控制任意操作,完全符合用户大脑的思维方式,也可以有效地避免由于用户动作和显示的场景不协调所带来的眩晕感。
进一步地,在本发明第一实施例的基础上,提出了本发明三维视角控制方法的第二实施例,本实施例是本发明第一实施例的步骤S40,基于各所述位置变化数据对显示终端中的三维视角进行转换的步骤的细化,参照图3,包括:
步骤S41,获取显示终端中的调节因子,并基于所述调节因子和所述位置变化数据确定三维视角的调节幅度;
调节因子是用来标识手柄的移动和真实场景移动的比例和相互连带关系。例如由于手柄的操作是有范围的,当场景比较大时,我们需要较小的手柄移动来实现较大的场景移动效果,此时调节因子就起放大作用。再例如,用户需要在某个维度场景下,手柄向左移动的时候,虚拟场景是往右移动,此时调节因子在此维度场景就起反向效果作用。
当在显示终端系统中计算出控制端的位置变化数据后,需要判断在当前场景条件下,显示终端中的虚拟场景的转换方向是否和控制端移动的方向相同,其移动的距离是否手柄移动的距离相同,再基于这些判断条件获取显示终端中的调节因子,再计算此调节因子和位置变化数据的乘积,并根据此乘积确定三维视角的调节幅度。其中,调节幅度可以是三维视角需要移动的方向和距离。
步骤S42,基于各所述调节幅度对显示终端中的三维视角进行转换。
当计算出显示终端中的三维视角的调节幅度后,需要采用和控制端相同的时间来对显示终端中的三维视角进行转换,其中三维视角移动的距离和控制端移动的距离成比例关系。
在本实施例中,通过采用调节因子来确定控制端的移动距离和移动方向和显示终端中的三维视角移动距离和移动方向的关系,从而保证了控制端与显示终端中的三维视角转换的协调性,有效地避免由于动作和显示的场景不协调所带来的眩晕感。
具体地,基于各所述调节幅度对显示终端中的三维视角进行转换的步骤,包括:
步骤S421,获取三维视角的初始视角位置,并获取所述初始视角位置和所述调节幅度之间的向量和值;
在显示终端中的虚拟场景环境中,获取三维视角的初始视角位置,即三维视角在未进行此次转换前的视角位置,然后再将原先获取到的三维视角待移动的距离和初始视角位置相加从而得到其向量和值,并确定出三维视角接下来需要移动的方向。
步骤S422,基于所述向量和值确定所述三维视角的目标视角位置,并基于所述目标视角位置对显示终端中的三维视角进行转换。
当确定出三维视角的初始视角位置和待移动的距离之间的向量和值后,则可以将此向量和值作为三维视角待移动的目标视角位置,即确定出三维视角接下来是向哪个方向移动,并且需要移动到哪一个位置,此时显示终端中的虚拟场景也会跟着三维视角的转换而改变。
在本实施例中,通过获取三维视角的初始视角位置来确定出三维视角需要移动的目标视角位置,从而提高了三维视角移动的准确性,提高了用户的使用体验感。
具体地,基于所述目标视角位置对显示终端中的三维视角进行转换的步骤,包括:
步骤A11,获取三维视角对应的原始虚拟场景和所述目标视角位置对应的目标虚拟场景;
当在显示终端中已确定三维视角需要进行转换的方向,目标视角位置和转换速度后,还需要获取三维视角对应的原始虚拟场景,即三维视角在此次需要转换的过程中,最开始未转换的虚拟场景,然后再需要获取目标视角位置对应的目标虚拟场景,即三维视角在此次需要转换的过程中,已转换完成的场景。
步骤A12,基于所述位置变化数据及所述调节幅度将所述原始虚拟场景转换为所述目标虚拟场景。
由于原先步骤获取到的控制端的位置变化数据包括控制端移动的时间,调节幅度包括三维视角需要移动的距离和移动的方向。并且原始虚拟场景转换为目标虚拟场景所采用的时间和控制端移动的时间相同,并且由于将原始虚拟场景转换为目标虚拟场景的方向和距离已确定,所以可以同步地在控制端移动的同时,虚拟场景也随之转换,并当控制端移动到目标地点停止下来时,其虚拟场景也已从原始虚拟场景移动到目标虚拟场景,并随之停止。但是,当控制端继续运动时,其虚拟场景也会随之转换。
在本实施例中,通过将三维视角对应的原始虚拟场景转换为目标视角位置对应的目标虚拟场景,即用户通过操作控制端移动,三维视角对应的场景也会随之变化,从而达到浏览导航的目的,提高了用户的使用体验感。
进一步地,在本发明第一至第三实施例任意一个的基础上,提出了本发明三维视角控制方法的第三实施例,本实施例是本发明第一实施例的步骤S30,若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤的细化,包括:
步骤S31,若各所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景,并判断所述控制场景内是否存在障碍物;
预设距离可以是用户提前设置的一个固定距离。当经过判断发现控制端正在进行移动时,则会自动获取控制端移动方向预设距离内的控制场景,并在获取到的控制场景中判断是否存在障碍物,并当发现控制场景中存在障碍物时,会自动将获取到的控制端移动后的三维坐标数据丢弃,即此时,虽然控制端处于移动状态,但是显示终端中的三维视角对应的虚拟场景不会改变,还会保留原来的状态。但是,当发现控制场景中不存在障碍物时,则会将获取到的有效三维坐标数据经过算法处理来确定显示终端中虚拟场景移动的距离,并控制显示终端中的三维视角进行同样速度的转换,即手柄移动的速度和显示终端中的虚拟场景转换的速度相同。
步骤S32,若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
当经过判断发现,获取到的控制场景中不存在障碍物时,则会在各个三维坐标数据中,自动地计算出各个三维坐标数据的向量差值,以此来确定控制端的位置变化数据,并跟据此位置变化数据确定出控制端移动的方向。
步骤S33,若所述控制场景内存在障碍物,则自动将获取到的所述有效三维坐标数据丢弃,直到所述场景内不存在障碍物。
但是,当经过判断发现在获取到的控制场景内存在障碍物时,就会自动地将此时的控制端的三维坐标数据丢弃,直到发现获取到的场景内不存在障碍物时,才不在丢弃获取到的控制端的三维坐标数据。
在本实施例中,通过判断控制端前方预设距离内是否有障碍物来确定是否丢弃获取到的控制端的三维坐标数据,从而停止三维视角的转换,避免了用户因为对虚拟环境过于入迷,而忽略现实环境的状态,提高了用户的安全性,并且也能够防止用户在移动整套设备时,因为对控制端的误操作而导致三维视角的错误转换,提高了用户的使用体验感。
具体地,若所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景的步骤,包括:
步骤S311,若所述控制端正在移动,则基于各所述三维坐标数据确定所述控制端移动方向的移动角度;
步骤S312,并基于所述移动角度获取控制端移动方向预设距离内的控制场景。
当控制端处于移动状态时,由于不同数值的三维坐标数据其所在的方向位置不同,则可以根据获取到的各个三维坐标数据来确定控制端移动方向上的移动角度,然后再根据控制端移动方向上的移动角度来获取控制端前方预设距离内的控制场景,并当发现控制场景中存在障碍物时,就自动丢弃获取到的三维坐标数据,与此同时,三维视角也会随之停止转换。
在本实施例中,通过确定出控制端的移动方向上的移动角度,来确定出需要获取到的控制场景,从而在保证用户的安全的同时,也能节约系统资源,提高了用户的使用体验感。
具体地,若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤,包括:
步骤S321,若所述控制场景内不存在障碍物,则在各所述三维坐标数据中获取所述控制端移动前的第一坐标数据和控制端移动后的第二坐标数据;
当经过判断发现控制场景内不存在障碍物时,则可以在各个三维坐标数据中,获取控制端在本次没有进行移动前的第一坐标数据和控制端停止移动后的第二坐标数据。
步骤S322,获取所述第二坐标数据和所述第一坐标数据之间的向量差值,并将所述向量差值作为所述控制端的位置变化数据。
在显示终端中将第二坐标数据减去第一坐标数据,以获取两者之间的差值,并将此差值作为控制端在进行此次移动的位置变化数据。其中,再获取差值时,第二坐标数据和第一坐标数据均需要是有用的数据,即需要是经过平滑处理和阀值处理的数据。
在本实施例中,通过计算控制端移动后的坐标数据和移动前的坐标数据来确定控制端的位置变化数据,从而保障了控制端移动距离的准确性,提高了用户的使用体验感。
此外,参照图5,本发明实施例还提出一种三维视角控制装置,所述三维视角控制装置包括:
接收模块,接收位置调整指令,获取控制端的各三维坐标数据;
判断模块,基于各所述三维坐标数据判断控制端是否正在移动;
获取模块,若所述控制端正在移动,则在各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
转换模块,基于各所述位置变化数据对显示终端中的三维视角进行转换。
可选地,所述转换模块,包括:
获取显示终端中的调节因子,并基于所述调节因子和所述位置变化数据确定三维视角的调节幅度;
基于各所述调节幅度对显示终端中的三维视角进行转换。
可选地,所述转换模块,还包括:
获取三维视角的初始视角位置,并获取所述初始视角位置和所述调节幅度之间的向量和值;
基于所述向量和值确定所述三维视角的目标视角位置,并基于所述目标视角位置对显示终端中的三维视角进行转换。
可选地,所述转换模块,还包括:
获取三维视角对应的原始虚拟场景和所述目标视角位置对应的目标虚拟场景;
基于所述位置变化数据及所述调节幅度将所述原始虚拟场景转换为所述目标虚拟场景。
可选地,所述获取模块,包括:
若各所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景,并判断所述控制场景内是否存在障碍物;
若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
若所述控制场景内存在障碍物,则自动将获取到的所述有效三维坐标数据丢弃,直到所述场景内不存在障碍物。
可选地,所述获取模块,还包括:
若所述控制端正在移动,则基于各所述三维坐标数据确定所述控制端移动方向的移动角度;
并基于所述移动角度获取控制端移动方向预设距离内的控制场景。
可选地,所述获取模块,还包括:
若所述控制场景内不存在障碍物,则在各所述三维坐标数据中获取所述控制端移动前的第一坐标数据和控制端移动后的第二坐标数据;
获取所述第二坐标数据和所述第一坐标数据之间的向量差值,并将所述向量差值作为所述控制端的位置变化数据。
其中,三维视角控制装置的各个功能模块实现的步骤可参照本发明三维视角控制方法的各个实施例,此处不再赘述。
本发明还提供一种终端,所述终端包括:存储器、处理器、通信总线以及存储在所述存储器上的三维视角控制程序:
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述三维视角控制程序,以实现上述三维视角控制方法各实施例的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述三维视角控制方法各实施例的步骤。
本发明计算机可读存储介质具体实施方式与上述三维视角控制方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种三维视角控制方法,其特征在于,所述三维视角控制方法包括以下步骤:
接收位置调整指令,基于所述位置调整指令获取控制端的各三维坐标数据;
基于各所述三维坐标数据判断所述控制端是否正在移动;
若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
基于各所述位置变化数据对显示终端中的三维视角进行转换。
2.如权利要求1所述的三维视角控制方法,其特征在于,所述基于各所述位置变化数据对显示终端中的三维视角进行转换的步骤,包括:
获取显示终端中的调节因子,并基于所述调节因子和所述位置变化数据确定三维视角的调节幅度;
基于各所述调节幅度对显示终端中的三维视角进行转换。
3.如权利要求2所述的三维视角控制方法,其特征在于,所述基于各所述调节幅度对显示终端中的三维视角进行转换的步骤,包括:
获取三维视角的初始视角位置,并获取所述初始视角位置和所述调节幅度之间的向量和值;
基于所述向量和值确定所述三维视角的目标视角位置,并基于所述目标视角位置对显示终端中的三维视角进行转换。
4.如权利要求3所述的三维视角控制方法,其特征在于,所述基于所述目标视角位置对显示终端中的三维视角进行转换的步骤,包括:
获取三维视角对应的原始虚拟场景和所述目标视角位置对应的目标虚拟场景;
基于所述位置变化数据及所述调节幅度将所述原始虚拟场景转换为所述目标虚拟场景。
5.如权利要求1所述的三维视角控制方法,其特征在于,所述若所述控制端正在移动,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤,包括:
若各所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景,并判断所述控制场景内是否存在障碍物;
若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
若所述控制场景内存在障碍物,则自动将获取到的所述有效三维坐标数据丢弃,直到所述场景内不存在障碍物。
6.如权利要求5所述的三维视角控制方法,其特征在于,所述若所述控制端正在移动,则获取所述控制端移动方向预设距离内的控制场景的步骤,包括:
若所述控制端正在移动,则基于各所述三维坐标数据确定所述控制端移动方向的移动角度;
并基于所述移动角度获取控制端移动方向预设距离内的控制场景。
7.如权利要求5所述的三维视角控制方法,其特征在于,所述若所述控制场景内不存在障碍物,则基于各所述三维坐标数据的变化量,获取所述控制端的位置变化数据的步骤,包括:
若所述控制场景内不存在障碍物,则在各所述三维坐标数据中获取所述控制端移动前的第一坐标数据和控制端移动后的第二坐标数据;
获取所述第二坐标数据和所述第一坐标数据之间的向量差值,并将所述向量差值作为所述控制端的位置变化数据。
8.一种三维视角控制装置,其特征在于,所述三维视角控制装置包括:
接收模块,接收位置调整指令,获取控制端的各三维坐标数据;
判断模块,基于各所述三维坐标数据判断控制端是否正在移动;
获取模块,若所述控制端正在移动,则在各所述三维坐标数据的变化量,获取所述控制端的位置变化数据;
转换模块,基于各所述位置变化数据对显示终端中的三维视角进行转换。
9.一种三维视角控制设备,其特征在于,所述三维视角控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的三维视角控制程序,所述三维视角控制程序被所述处理器执行时实现如权利要求1至7中任一项所述的三维视角控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有三维视角控制程序,所述三维视角控制程序被处理器执行时实现如权利要求1至7中任一项所述的三维视角控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811351827.1A CN109542222B (zh) | 2018-11-13 | 2018-11-13 | 三维视角控制方法、装置、设备以及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811351827.1A CN109542222B (zh) | 2018-11-13 | 2018-11-13 | 三维视角控制方法、装置、设备以及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109542222A true CN109542222A (zh) | 2019-03-29 |
CN109542222B CN109542222B (zh) | 2021-12-14 |
Family
ID=65847118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811351827.1A Active CN109542222B (zh) | 2018-11-13 | 2018-11-13 | 三维视角控制方法、装置、设备以及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109542222B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158469A (zh) * | 2019-12-12 | 2020-05-15 | 广东虚拟现实科技有限公司 | 视角切换方法、装置、终端设备及存储介质 |
CN111309236A (zh) * | 2020-02-13 | 2020-06-19 | 微幻科技(北京)有限公司 | 一种三维场景视角变换方法及装置 |
CN111787156A (zh) * | 2020-07-07 | 2020-10-16 | 北京中科深智科技有限公司 | 一种基于智能手机的六自由度跟踪器 |
CN113835607A (zh) * | 2021-08-19 | 2021-12-24 | 南京奥拓电子科技有限公司 | 一种显示终端内场景查看方法、装置及存储介质 |
CN115098005A (zh) * | 2022-06-24 | 2022-09-23 | 北京华建云鼎科技股份公司 | 一种控制目标对象移动的数据处理系统 |
WO2022252150A1 (zh) * | 2021-06-02 | 2022-12-08 | 陈盈吉 | 避免动晕症发生的虚拟实境控制方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100201790A1 (en) * | 2009-02-11 | 2010-08-12 | Hyeonho Son | Method of controlling view of stereoscopic image and stereoscopic image display using the same |
CN102323829A (zh) * | 2011-07-29 | 2012-01-18 | 青岛海信电器股份有限公司 | 一种显示屏视角调整方法及显示设备 |
WO2013039273A1 (en) * | 2011-09-16 | 2013-03-21 | Lg Electronics Inc. | Driving apparatus and method using 3d sensor |
CN104460330A (zh) * | 2014-11-04 | 2015-03-25 | 宁波工程学院 | 一种基于室内定位与电子罗盘的增强现实与远程控制方法 |
US20150356358A1 (en) * | 2013-02-21 | 2015-12-10 | Sharp Kabushiki Kaisha | Obstacle detection device and obstacle detection method |
CN105148514A (zh) * | 2015-09-06 | 2015-12-16 | 骆凌 | 一种游戏视角控制装置和方法 |
CN105975061A (zh) * | 2016-04-26 | 2016-09-28 | 乐视控股(北京)有限公司 | 虚拟现实场景的控制方法、装置及手柄 |
CN206350095U (zh) * | 2016-05-30 | 2017-07-21 | 青岛量子智能科技有限公司 | 一种基于人体动态跟踪的三维影像系统 |
CN108211342A (zh) * | 2018-01-19 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 视角调整方法和装置、存储介质及电子装置 |
CN108245887A (zh) * | 2018-02-09 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 虚拟对象控制方法、装置、电子装置及存储介质 |
CN108245890A (zh) * | 2018-02-28 | 2018-07-06 | 网易(杭州)网络有限公司 | 控制虚拟场景中物体运动的方法和装置 |
-
2018
- 2018-11-13 CN CN201811351827.1A patent/CN109542222B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100201790A1 (en) * | 2009-02-11 | 2010-08-12 | Hyeonho Son | Method of controlling view of stereoscopic image and stereoscopic image display using the same |
CN102323829A (zh) * | 2011-07-29 | 2012-01-18 | 青岛海信电器股份有限公司 | 一种显示屏视角调整方法及显示设备 |
WO2013039273A1 (en) * | 2011-09-16 | 2013-03-21 | Lg Electronics Inc. | Driving apparatus and method using 3d sensor |
US20150356358A1 (en) * | 2013-02-21 | 2015-12-10 | Sharp Kabushiki Kaisha | Obstacle detection device and obstacle detection method |
CN104460330A (zh) * | 2014-11-04 | 2015-03-25 | 宁波工程学院 | 一种基于室内定位与电子罗盘的增强现实与远程控制方法 |
CN105148514A (zh) * | 2015-09-06 | 2015-12-16 | 骆凌 | 一种游戏视角控制装置和方法 |
CN105975061A (zh) * | 2016-04-26 | 2016-09-28 | 乐视控股(北京)有限公司 | 虚拟现实场景的控制方法、装置及手柄 |
CN206350095U (zh) * | 2016-05-30 | 2017-07-21 | 青岛量子智能科技有限公司 | 一种基于人体动态跟踪的三维影像系统 |
CN108211342A (zh) * | 2018-01-19 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 视角调整方法和装置、存储介质及电子装置 |
CN108245887A (zh) * | 2018-02-09 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 虚拟对象控制方法、装置、电子装置及存储介质 |
CN108245890A (zh) * | 2018-02-28 | 2018-07-06 | 网易(杭州)网络有限公司 | 控制虚拟场景中物体运动的方法和装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158469A (zh) * | 2019-12-12 | 2020-05-15 | 广东虚拟现实科技有限公司 | 视角切换方法、装置、终端设备及存储介质 |
CN111309236A (zh) * | 2020-02-13 | 2020-06-19 | 微幻科技(北京)有限公司 | 一种三维场景视角变换方法及装置 |
CN111309236B (zh) * | 2020-02-13 | 2021-06-29 | 微幻科技(北京)有限公司 | 一种三维场景视角变换方法及装置 |
CN111787156A (zh) * | 2020-07-07 | 2020-10-16 | 北京中科深智科技有限公司 | 一种基于智能手机的六自由度跟踪器 |
WO2022252150A1 (zh) * | 2021-06-02 | 2022-12-08 | 陈盈吉 | 避免动晕症发生的虚拟实境控制方法 |
CN113835607A (zh) * | 2021-08-19 | 2021-12-24 | 南京奥拓电子科技有限公司 | 一种显示终端内场景查看方法、装置及存储介质 |
CN113835607B (zh) * | 2021-08-19 | 2024-01-16 | 南京奥拓电子科技有限公司 | 一种显示终端内场景查看方法、装置及存储介质 |
CN115098005A (zh) * | 2022-06-24 | 2022-09-23 | 北京华建云鼎科技股份公司 | 一种控制目标对象移动的数据处理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109542222B (zh) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542222A (zh) | 三维视角控制方法、装置、设备以及可读存储介质 | |
KR102358363B1 (ko) | 가상 객체 이동 제어 방법 및 장치, 전자 장치, 그리고 저장 매체 | |
US11049329B2 (en) | Method and apparatus for controlling placement of virtual character and storage medium | |
JP5945100B2 (ja) | 入力処理プログラム、入力処理装置、入力処理方法および入力処理システム | |
US20150067603A1 (en) | Display control device | |
US11194400B2 (en) | Gesture display method and apparatus for virtual reality scene | |
WO2019057150A1 (zh) | 信息交互方法、装置、存储介质和电子装置 | |
CN105975061A (zh) | 虚拟现实场景的控制方法、装置及手柄 | |
CA2921056C (en) | Three-dimensional virtualization | |
CN107583271A (zh) | 在游戏中选择目标的交互方法和装置 | |
JP2014235596A (ja) | 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法 | |
KR20120095084A (ko) | 포인터를 사용하지 않는 가상 터치 장치 및 방법 | |
CN109725782B (zh) | 一种实现虚拟现实的方法、装置及智能设备、存储介质 | |
JP2017514192A (ja) | 応用素子の代替的グラフィック表示の事前の生成による入力に対する低レイテンシの視覚的応答およびグラフィック処理ユニットの入力処理 | |
KR20200138349A (ko) | 화상 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 | |
JP2004280496A (ja) | 操作パネル装置 | |
CN102622081A (zh) | 一种实现体感交互的方法和系统 | |
WO2020199821A1 (zh) | 用于模拟盲人感受的物体显示方法、装置及存储介质 | |
CN110575671A (zh) | 游戏中视角的控制方法、装置及电子设备 | |
CN110448898A (zh) | 游戏中虚拟角色的控制方法及装置、电子设备 | |
CN108905198A (zh) | 一种虚拟对象跳跃的控制方法和装置 | |
JP6270495B2 (ja) | 情報処理装置、情報処理方法、コンピュータプログラム、及び記憶媒体 | |
JP2007506165A (ja) | バーチャルリアリティ・グラフィックシステムの機能選択による制御のための三次元空間ユーザインタフェース | |
CN113713372B (zh) | 虚拟角色的控制方法和装置、存储介质及电子设备 | |
CN104142736B (zh) | 视频监控设备控制方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |