CN112451969A - 虚拟对象控制方法、装置、计算机设备及存储介质 - Google Patents
虚拟对象控制方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112451969A CN112451969A CN202011413036.4A CN202011413036A CN112451969A CN 112451969 A CN112451969 A CN 112451969A CN 202011413036 A CN202011413036 A CN 202011413036A CN 112451969 A CN112451969 A CN 112451969A
- Authority
- CN
- China
- Prior art keywords
- distance
- coordinate
- physical
- sliding operation
- virtual scene
- 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
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/837—Shooting of targets
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请是关于一种虚拟对象控制方法、装置、计算机设备及存储介质,涉及虚拟场景技术领域。所述方法包括:展示虚拟场景对应的虚拟场景画面;响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;获取所述第一坐标距离对应的第一物理距离;基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。通过上述方法,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
Description
技术领域
本申请涉及虚拟场景技术领域,特别涉及一种虚拟对象控制方法、装置、计算机设备及存储介质。
背景技术
目前,在射击类游戏类应用程序中,比如,在第一人称射击类游戏中,为了提高用户在射击或移动时较为方便的选择方向,用户可以通过对手机屏幕的触摸或对鼠标、触摸板等指针输入设备的移动,实现用户视角的转动。
在相关技术中,为了实现为了提高用户在转动视角时的精确性,用户可以在游戏类应用的设置界面中选择视角旋转的灵敏度,用户可以手动选择最适合自己的灵敏度,以提高用户在旋转视角时的准确性。
然而,相关技术中用户使用不同的设备进行视角旋转时,旋转角度差别较大,视角旋转准确性较低。
发明内容
本申请实施例提供了一种虚拟对象控制方法、装置、计算机设备及存储介质,可以根据用户滑动操作的距离控制目标虚拟对象的转动,提高目标虚拟对象对应的视角旋转的准确性,该技术方案如下:
一方面,提供了一种虚拟对象控制方法,所述方法包括:
展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;所述第一坐标距离是所述滑动操作的起始点和结束点之间的像素坐标之间的距离;
获取所述第一坐标距离对应的第一物理距离;所述第一物理距离是所述滑动操作滑动的物理距离;
基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。
又一方面,提供了一种虚拟对象控制方法,所述方法包括:
展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
响应于在虚拟场景画面上的滑动操作,基于所述滑动操作滑动的物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动;
其中,在屏幕尺寸和分辨率不同的终端中,在相同物理距离的滑动操作控制下,所述目标虚拟对象在所述虚拟场景中转动的角度相同。
再一方面,提供了一种虚拟对象控制装置,所述装置包括:
虚拟场景画面展示模块,用于展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
第一坐标距离获取模块,用于响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;所述第一坐标距离是所述滑动操作的起始点和结束点之间的像素坐标之间的距离;
第一物理距离获取模块,用于获取所述第一坐标距离对应的第一物理距离;所述第一物理距离是所述滑动操作滑动的物理距离;
虚拟对象转动模块,用于基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。
在一种可能的实现方式中,所述装置还包括:
分辨率获取模块,用于获取所述虚拟场景画面的渲染分辨率,以及展示所述虚拟场景画面的显示屏幕的物理分辨率;
所述第一坐标距离获取模块,用于,
响应于在所述虚拟场景画面上的滑动操作,基于所述渲染分辨率以及所述物理分辨率,获取所述第一坐标距离。
在一种可能的实现方式中,所述渲染分辨率与所述物理分辨率相同;
所述第一坐标距离获取模块,用于,
响应于接收到所述滑动操作,且所述渲染分辨率与所述物理分辨率相同,基于所述物理分辨率获取所述第一坐标距离。
在一种可能的实现方式中,所述第一坐标距离获取模块,包括:
位置坐标获取单元,用于获取所述滑动操作在所述物理分辨率下的第一位置坐标与第二位置坐标;所述第一位置坐标是所述滑动操作的起始点的物理像素坐标;所述第二位置坐标是所述滑动操作的结束点的物理像素坐标;
第一坐标距离获取单元,用于将所述第一位置坐标与所述第二位置坐标之间的像素距离,获取为所述第一坐标距离。
在一种可能的实现方式中,所述第一坐标距离获取模块,包括:
第二坐标距离获取单元,用于响应于接收到所述滑动操作,且所述渲染分辨率小于所述物理分辨率,基于所述渲染分辨率,获取所述滑动操作对应的第二坐标距离;
缩放比值获取单元,用于基于所述渲染分辨率与所述物理分辨率,获取缩放比值;
第一坐标距离获取单元,用于基于所述第二坐标距离与所述缩放比值,获取所述第一坐标距离。
在一种可能的实现方式中,所述第二坐标距离获取单元,包括:
位置坐标获取子单元,用于获取所述滑动操作在所述渲染分辨率下的第三位置坐标与第四位置坐标;所述第三位置坐标是所述滑动操作的起始点的渲染像素坐标;所述第四位置坐标是所述滑动操作的结束点的渲染像素坐标;
坐标距离获取子单元,用于将所述第三位置坐标与所述第四位置坐标之间的像素距离,获取为所述第二坐标距离。
在一种可能的实现方式中,所述装置还包括:
像素密度获取模块,用于获取展示所述虚拟场景画面的显示屏幕的像素密度;所述像素密度用于指示终端的像素值与尺寸的对应关系;
第一物理距离获取模块,用于将所述第一坐标距离与所述像素密度的比值,获取为所述第一坐标距离对应的所述第一物理距离。
在一种可能的实现方式中,所述第一物理距离获取模块,用于:
响应于所述第一坐标距离与坐标距离阈值之间的关系满足指定条件,获取所述第一坐标距离对应的所述第一物理距离。
在一种可能的实现方式中,所述坐标距离阈值包括第一坐标距离阈值;所述装置还包括:
第一指定条件确定模块,用于响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
在一种可能的实现方式中,所述坐标距离阈值包括第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;所述装置还包括:
第二指定条件确定模块,用于响应于所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
在一种可能的实现方式中,所述坐标距离阈值包括第一坐标距离阈值与第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;
所述装置还包括:
第三指定条件确定模块,用于响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,且所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
又一方面,提供了一种虚拟对象控制装置,所述装置包括:
场景画面展示模块,用于展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
虚拟对象控制模块,用于响应于在虚拟场景画面上的滑动操作,基于所述滑动操作滑动的物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动;
其中,在屏幕尺寸和分辨率不同的终端中,在相同物理距离的滑动操作控制下,所述目标虚拟对象在所述虚拟场景中转动的角度相同。
另一方面,提供了一种计算机设备,计算机设备包含处理器和存储器,所述存储器中存储由至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述虚拟对象控制方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述虚拟对象控制方法。
又一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行虚拟对象控制方法。
本申请实施例提供的技术方案的有益效果至少包括:
用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1示出了本申请一个示例性实施例提供的实施环境的示意图;
图2示出了本申请一个示例性实施例提供的虚拟场景的显示界面示意图;
图3示出了本申请一个示例性实施例提供的虚拟对象控制方法的流程图;
图4示出了本申请一个示例性实施例示出的虚拟对象控制方法的流程图;
图5示出了图4所示实施例涉及的一种有效操作选择流程图;
图6示出了图4所示实施例涉及的一种高分辨率终端画面转动示意图;
图7示出了图4所示实施例涉及的一种低分辨率终端画面目标虚拟对象转动示意图;
图8是根据一示例性实施例示出的一种虚拟对象控制流程示意图;
图9示出了本申请一个示例性实施例提供的虚拟对象控制方法的流程图;
图10示出了本申请一示例性实施例提供的虚拟对象控制装置的方框图;
图11示出了本申请一示例性实施例提供的虚拟对象控制装置的方框图;
图12是根据一示例性实施例示出的计算机设备的结构框图;
图13是根据一示例性实施例示出的计算机设备的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
为了便于理解,下面对本申请涉及的几个名词进行解释。
1)虚拟场景
虚拟场景是应用程序在终端上运行时显示(或提供)的虚拟的场景。该虚拟场景可以是对真实世界的仿真环境场景,也可以是半仿真半虚构的三维环境场景,还可以是纯虚构的三维环境场景。虚拟场景可以是二维虚拟场景、2.5维虚拟场景和三维虚拟场景中的任意一种,下述实施例以虚拟场景是三维虚拟场景来举例说明,但对此不加以限定。可选地,该虚拟场景还可用于至少两个虚拟角色之间的虚拟场景对战。可选地,该虚拟场景还可用于至少两个虚拟角色之间使用虚拟枪械进行对战。可选地,该虚拟场景还可用于在目标区域范围内,至少两个虚拟角色之间使用虚拟枪械进行对战,该目标区域范围会随虚拟场景中的时间推移而不断变小。
虚拟场景通常由终端等计算机设备中的应用程序生成基于终端中的硬件(比如屏幕)进行展示。该终端可以是智能手机、平板电脑或者电子书阅读器等移动终端;或者,该终端也可以是笔记本电脑或者固定式计算机的个人计算机设备。
2)虚拟对象
虚拟对象是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、虚拟载具中的至少一种。可选地,当虚拟场景为三维虚拟场景时,虚拟对象是基于动画骨骼技术创建的三维立体模型。每个虚拟对象在三维虚拟场景中具有自身的形状、体积以及朝向,并占据三维虚拟场景中的一部分空间。
3)虚拟道具
虚拟道具是指虚拟对象在虚拟环境中能够使用的道具,包括手枪、步枪、狙击枪、匕首、刀、剑、斧子等能够对其他虚拟对象发起伤害的虚拟武器,子弹等补给道具,快速弹夹、瞄准镜、消声器等安装在指定虚拟武器上,可以为虚拟武器提供部分属性加成到的虚拟挂件,以及盾牌、盔甲、装甲车等防御道具。
4)第一人称射击游戏
第一人称射击游戏是指用户能够以第一人称视角进行的射击游戏,游戏中的虚拟环境的画面是以第一虚拟对象的视角对虚拟环境进行观察的画面。在游戏中,至少两个虚拟对象在虚拟环境中进行单局对战模式,虚拟对象通过躲避其他虚拟对象发起的伤害和虚拟环境中存在的危险(比如,毒气圈、沼泽地等)来达到在虚拟环境中存活的目的,当虚拟对象在虚拟环境中的生命值为零时,虚拟对象在虚拟环境中的生命结束,最后存活在虚拟环境中的虚拟对象是获胜方。可选地,该对战以第一个客户端加入对战的时刻作为开始时刻,以最后一个客户端退出对战的时刻作为结束时刻,每个客户端可以控制虚拟环境中的一个或多个虚拟对象。可选地,该对战的竞技模式可以包括单人对战模式、双人小组对战模式或者多人大组对战模式,本申请实施例对对战模式不加以限定。
图1示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境可以包括:第一终端110、服务器120和第二终端130。
第一终端110安装和运行有支持虚拟环境的应用程序111,该应用程序111可以是多人在线对战程序。当第一终端运行应用程序111时,第一终端110的屏幕上显示应用程序111的用户界面。该应用程序111可以是军事仿真程序、多人在线战术竞技游戏(Multiplayer Online Battle Arena Games,MOBA)、大逃杀射击游戏、模拟战略游戏(Simulation Game,SLG)的任意一种。在本实施例中,以该应用程序111是FPS(FirstPerson Shooting Game,第一人称射击游戏)来举例说明。第一终端110是第一用户112使用的终端,第一用户112使用第一终端110控制位于虚拟环境中的第一虚拟对象进行活动,第一虚拟对象可以称为第一用户112的主控虚拟对象。第一虚拟对象的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷、释放技能中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物或动漫人物。
第二终端130安装和运行有支持虚拟环境的应用程序131,该应用程序131可以是多人在线对战程序。当第二终端130运行应用程序131时,第二终端130的屏幕上显示应用程序131的用户界面。该客户端可以是军事仿真程序、MOBA游戏、大逃杀射击游戏、SLG游戏中的任意一种,在本实施例中,以该应用程序131是FPS游戏来举例说明。第二终端130是第二用户132使用的终端,第二用户132使用第二终端130控制位于虚拟环境中的第二虚拟对象进行活动,第二虚拟对象可以称为第二用户132的主控虚拟角色。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物或动漫人物。
可选地,第一虚拟对象和第二虚拟对象处于同一虚拟世界中。可选地,第一虚拟对象和第二虚拟对象可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟对象和第二虚拟对象可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。
可选地,第一终端110和第二终端130上安装的应用程序是相同的,或两个终端上安装的应用程序是不同操作系统平台(安卓或IOS)上的同一类型应用程序。第一终端110可以泛指多个终端中的一个,第二终端130可以泛指多个终端中的另一个,本实施例仅以第一终端110和第二终端130来举例说明。第一终端110和第二终端130的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、膝上型便携计算机和台式计算机中的至少一种。
图1中仅示出了两个终端,但在不同实施例中存在多个其它终端可以接入服务器120。可选地,还存在一个或多个终端是开发者对应的终端,在该终端上安装有支持虚拟环境的应用程序的开发和编辑平台,开发者可在该终端上对应用程序进行编辑和更新,并将更新后的应用程序安装包通过有线或无线网络传输至服务器120,第一终端110和第二终端130可从服务器120下载应用程序安装包实现对应用程序的更新。
第一终端110、第二终端130以及其它终端通过无线网络或有线网络与服务器120相连。
服务器120包括一台服务器、多台服务器组成的服务器集群、云计算平台和虚拟化中心中的至少一种。服务器120用于为支持三维虚拟环境的应用程序提供后台服务。可选地,服务器120承担主要计算工作,终端承担次要计算工作;或者,服务器120承担次要计算工作,终端承担主要计算工作;或者,服务器120和终端之间采用分布式计算架构进行协同计算。
在一个示意性的例子中,服务器120包括存储器121、处理器122、用户账号数据库123、对战服务模块124、面向用户的输入/输出接口(Input/Output Interface,I/O接口)125。其中,处理器122用于加载服务器120中存储的指令,处理用户账号数据库123和对战服务模块124中的数据;用户账号数据库123用于存储第一终端110、第二终端130以及其它终端所使用的用户账号的数据,比如用户账号的头像、用户账号的昵称、用户账号的战斗力指数,用户账号所在的服务区;对战服务模块124用于提供多个对战房间供用户进行对战,比如1V1对战、3V3对战、5V5对战等;面向用户的I/O接口125用于通过无线网络或有线网络和第一终端110和/或第二终端130建立通信交换数据。
其中,虚拟场景可以是三维虚拟场景,或者,虚拟场景也可以是二维虚拟场景。以虚拟场景是三维虚拟场景为例,请参考图2,其示出了本申请一个示例性的实施例提供的虚拟场景的显示界面示意图。如图2所示,虚拟场景的显示界面包含场景画面200,该场景画面200中包括当前控制的虚拟对象210、三维虚拟场景的环境画面220、以及虚拟对象240。其中,虚拟对象240可以是其它终端对应用户控制的虚拟对象或者应用程序控制的虚拟对象。
在图2中,当前控制的虚拟对象210与虚拟对象240是在三维虚拟场景中的三维模型,在场景画面200中显示的三维虚拟场景的环境画面为当前控制的虚拟对象210的视角所观察到的物体,示例性的,如图2所示,在当前控制的虚拟对象210的视角观察下,显示的三维虚拟场景的环境画面220为大地224、天空225、地平线223、小山221以及厂房222。
当前控制的虚拟对象210可以在用户的控制下进行技能释放或者虚拟道具的使用,移动以及执行指定动作,在用户的控制下虚拟场景中的虚拟对象可以展示不同的三维模型,比如,终端的屏幕支持触控操作,且虚拟场景的场景画面200中包含虚拟控件,则用户触控该虚拟控件时,当前控制的虚拟对象210可以在虚拟场景执行指定动作并且展示当前对应的三维模型。
图3示出了本申请一个示例性实施例提供的虚拟对象控制方法的流程图。该虚拟对象控制方法可以由计算机设备执行,该计算机设备可以是终端,也可以是服务器,或者该计算机设备也可以包含上述终端和服务器。如图3所示,该虚拟对象控制方法,包括:
步骤301,展示虚拟场景对应的虚拟场景画面;该虚拟场景中包含目标虚拟对象。
在一种可能的实现方式中,该虚拟场景画面是以目标虚拟对象的视角观察虚拟场景的画面。
在一种可能的实现方式中,虚拟对象在虚拟场景中的朝向方位可以是该虚拟对象面朝的方向,以该虚拟场景为三维虚拟场景为例,计算机设备可以通过获取虚拟对象在三维坐标系中的水平方向上的投影方向确定该虚拟对象的朝向方位,比如,当虚拟对象在虚拟场景中处于站立、下蹲、跳跃或漂浮等姿态时,该虚拟对象的朝向方位即为该虚拟对象面向的正前方。或者,该虚拟对象的朝向方位可以是从虚拟对象的脚指向虚拟对象的头的方向,比如,当虚拟对象处于趴下、游泳、飞行等姿态时,该虚拟对象的朝向方位是从虚拟对象的脚指向虚拟对象的头的方向在三维水平坐标系中水平方向上的投影方向。当虚拟场景为二维虚拟场景时,该虚拟对象的朝向方位即为该虚拟对象的面朝方向。本申请实施例以该虚拟场景为三维虚拟场景为例进行说明。
在一种可能的实现方式中,该虚拟场景画面上叠加有开火控件、跳跃控件、移动控件、俯卧控件中的至少一者。
其中,响应于接收到对开火控件的触发操作,虚拟对象通过虚拟对象手中的虚拟道具(即虚拟枪械)对目标位置执行开火操作;跳跃控件用于触发虚拟对象的跳跃操作;移动控件用于触发控制该虚拟对象根据移动控件对应的控件滑动信息,向该控件滑动信息对应的方向移动;俯卧控件用于触发虚拟对象的俯卧操作。
在一种可能的实现方式中,俯卧控件还可以通过用户的操作方式不同控制该虚拟对象执行不同的操作。例如,当接收到用户对该俯卧控件的单击操作时,控制该虚拟对象执行蹲下操作;当接收到用户对该俯卧控件的长按操作时,控制该虚拟对象执行俯卧操作;其中该长按操作是用户触发该控件的持续时间大于触发阈值的操作。
步骤302,响应于在该虚拟场景画面上的滑动操作,获取该滑动操作对应的第一坐标距离;该第一坐标距离是该滑动操作的起始点和结束点之间的像素坐标之间的距离。
在一种可能的实现方式中,当该终端为移动设备时,该滑动操作可以是用户在该虚拟场景画面上的触摸滑动操作。即用户可以对终端上显示的虚拟场景画面点击实现触控,在保持与该终端上显示的虚拟场景画面的触控状态的情况下,移动该用户与终端上显示的虚拟场景画面的触控位置,实现对该虚拟场景画面的触摸滑动操作,此时该第一坐标距离与该用户对该移动设备的触摸滑动操作的滑动距离对应,也就是与该用户在虚拟场景画面的触动位置的滑动距离对应。
在一种可能的实现方式中,当该终端是PC(Personal Computer,个人计算机)时,该滑动操作可以用户是基于鼠标或触摸板等指针设备实现的触发滑动操作。
在一种可能的实现方式中,该触发滑动操作可以是用户基于鼠标或触摸板等指针设备,触发PC设备中指针的移动指令实现的触发滑动操作,即用户可以通过控制鼠标或触摸板等指针设备的滑动,触发对虚拟场景画面的滑动操作,获取滑动操作对应的第一坐标距离,此时该第一坐标距离与该鼠标或触摸板等指针设备的滑动距离对应。
在一种可能的实现方式中,响应于对该虚拟场景画面指定区域的滑动操作,获取该滑动操作对应的第一坐标距离。
其中,虚拟场景画面中可能包含多个不同的区域;对该虚拟场景画面中各个不同区域的滑动操作可以触发该虚拟场景画面的发生不同的变化。
例如,以该虚拟场景画面中包含第一区域与第二区域,该第一区域为该虚拟场景画面的右半侧为例,当响应于对该虚拟场景画面中第一区域的滑动操作时,将该虚拟场景画面根据该滑动操作旋转;此时该第二区域为该虚拟场景画面的左半侧,当响应于对该虚拟场景画面中第一区域的滑动操作时,将该虚拟场景画面根据该滑动操作平移。
步骤303,获取该第一坐标距离对应的第一物理距离;该第一物理距离是该滑动操作滑动的物理距离。
在一种可能的实现方式中,第一坐标距离是该虚拟场景画面对应的终端的像素坐标距离值,该第一物理距离是用户执行该滑动操作,在虚拟场景画面对应的终端设备上移动该像素坐标距离所需要移动的物理距离。
步骤304,基于该第一物理距离以及该滑动操作的滑动方向,控制该目标虚拟对象在该虚拟场景中转动。
其中,第一物理距离是用户根据第一坐标距离确定的用户实际移动的物理距离,终端根据用户实际移动的物理距离,转动该目标虚拟对象。
综上所述,本申请提供的虚拟对象控制方法,用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
图4示出了本申请一个示例性实施例示出的虚拟对象控制方法的流程图。该虚拟画面展示方法可以由计算机设备执行,该计算机设备可以是终端,也可以是服务器,或者该计算机设备也可以包含上述终端和服务器。如图4所示,该虚拟对象控制方法,包括:
步骤401,展示虚拟场景对应的虚拟场景画面。
在一种可能的实现方式中,该虚拟场景界面中还包括该虚拟场景界面对应的虚拟对象手持的虚拟枪械。
当该虚拟场景界面中包含以该虚拟角色为第一视角获取的该虚拟场景的虚拟场景画面时,在该虚拟场景中,通常在该虚拟角色的肩部位置设置虚拟摄像机,通过该虚拟摄像机获取到的三维画面作为该虚拟角色第一视角所捕捉到的虚拟场景画面。
在一种可能的实现方式中,该虚拟场景界面的中心区域包含该虚拟枪械对应的准心标尺。
其中,该准心标尺显示在该虚拟角色为第一视角所捕捉的虚拟场景画面的中心区域,以便用户在操控不开镜状态下的虚拟角色时也可以一定程度的提高开的准确性,提高了用户体验。
在一种可能的实现方式中,该虚拟场景画面还包括第一区域与第二区域。其中第一区域是该虚拟场景画面的右半侧区域,第二区域是该虚拟场景画面的左半侧区域。
其中,该第一区域用于根据用户的滑动操作,触发该虚拟角色对应的视角转动。
在一种可能的实现方式中,该第一区域内显示有视角控件,当用户对该视角控件执行滑动操作时,终端获取该视角控件对应的滑动操作的滑动方向以及滑动大小,根据该滑动方向以及滑动大小确定该虚拟角色对应的虚拟摄像机的角度转动大小,以获取虚拟摄像机视角转动后捕捉到的虚拟场景画面。
在另一种可能的实现方式中,该第一区域内存在隐藏的视角控件,当用户在该第一区域内,不存在其他控件的位置执行滑动操作时,该视角控件捕捉到该用户的滑动操作的滑动方向以及滑动大小,根据该滑动方向以及滑动大小确定该虚拟角色对应的虚拟摄像机的角度转动大小,以获取虚拟摄像机视角转动后捕捉到的虚拟场景画面。
该第二区域用于根据用于的滑动操作,触发该虚拟角色对应的移动操作。
在一种可能的实现方式中,该第二区域内显示有移动控件,根据该用户对该移动控件的持续触发操作的触发位置,控制该虚拟角色执行该触发位置对应的方向的移动操作。
在一种可能的实现方式中,该第二区域内显示有移动控件,根据该用户对该移动控件的滑动操作对应的滑动方向,以及滑动操作后的持续按压操作的操作时间,分别确定该虚拟角色执行移动操作的移动方向以及执行该移动操作的持续时间。
在一种可能的实现方式中,该第一区域是该虚拟场景界面的右半侧区域。
步骤402,获取该虚拟场景画面的渲染分辨率,以及展示该虚拟场景画面的显示屏幕的物理分辨率。
其中,终端显示屏幕的物理分辨率也称为标准分辨率,是终端的显示屏幕的固有参数,无法进行调节。物理分辨率指的是该显示屏幕最高可以显示的像素点数量(即最小显示单元数量),即在物理分辨率下,终端通过显示屏幕中的最小像素点(最小显示单元)作为一个显示单元实现图像的显示。
而虚拟场景画面的渲染分辨率,是将虚拟场景画面对应的数据通过终端的GPU(Graphics Processing Unit,图形处理单元)进行图像处理后,输出在终端的显示屏幕的虚拟场景画面的真实分辨率。也就是说,虚拟场景画面的渲染分辨率,是终端的显示屏幕的虚拟场景画面输出的分辨率,通常情况下,虚拟场景画面的渲染分辨率小于终端的显示屏幕的物理分辨率。
在一种可能的实现方式中,虚拟场景画面的渲染分辨率与终端的显示屏幕的物理分辨率相同时,此时代表该虚拟场景画面是通过该终端的最小显示单元作为像素点,实现该虚拟场景画面的显示的。
在另一种可能的实现方式中,虚拟场景画面的渲染分辨率小于终端的显示屏幕的物理分辨率时,此时GPU输出的虚拟场景画面对应的像素点数小于终端的最小显示单元数,若直接将终端的显示屏幕的最小显示单元数作为虚拟场景画面的像素点,则该虚拟场景画面只能显示与在该终端的显示屏幕的部分区域。因此在需要显示虚拟场景画面的应用程序,特别是游戏类应用程序中,GPU在输出虚拟场景画面后,通常会根据虚拟场景画面的渲染分辨率与终端的显示屏幕的物理分辨率,对该虚拟场景画面进行拉伸显示,通过多个终端的最小显示单元显示一个虚拟场景画面的像素点,实现较小的渲染分辨率的虚拟场景画面可以正常显示在较大物理分辨率的显示屏幕上。
步骤403,响应于在该虚拟场景画面上的滑动操作,基于该渲染分辨率以及该物理分辨率,获取该第一坐标距离。
在一种可能的实现方式中,该渲染分辨率与该物理分辨率相同;响应于接收到该滑动操作,且该渲染分辨率与该物理分辨率相同,基于该物理分辨率获取该第一坐标距离。
当渲染分辨率与物理分辨率相同时,通过终端的显示屏幕的最小显示单元作为像素点,实现该虚拟场景画面的图像显示,即该虚拟场景画面的像素点个数与该显示屏幕的最小显示单元个数相同。此时,用户在终端的显示屏幕上执行的滑动操作所对应的像素点坐标距离,既是渲染分辨率对应的像素点坐标距离,也是物理分辨率对应的最小显示单元对应的坐标距离。
在一种可能的实现方式中,获取该滑动操作在该物理分辨率下的第一位置坐标与第二位置坐标;该第一位置坐标是该滑动操作的起始点的物理像素坐标;该第二位置坐标是该滑动操作的结束点的物理像素坐标;将该第一位置坐标与该第二位置坐标之间的像素距离,获取为该第一坐标距离。
当该渲染分辨率与物理分辨率相同时,可以直接获取该滑动操作对应的虚拟场景画面的渲染分辨率下的第一位置坐标与第二位置坐标,由于渲染分辨率与物理分辨率相同,可以直接将该渲染分辨率下的第一位置坐标与第二位置坐标获取为物理分辨率下的第一位置坐标与第二位置坐标,并根据第一位置坐标与第二位置坐标之间的像素距离获取第一坐标距离。
在一种可能的实现方式中,响应于接收到该滑动操作,且该渲染分辨率小于该物理分辨率,基于该渲染分辨率,获取该滑动操作对应的第二坐标距离;基于该渲染分辨率与该物理分辨率,获取缩放比值;基于该第二坐标距离与该缩放比值,获取该第一坐标距离。
当渲染分辨率小于物理分辨率时,也就是渲染分辨率与物理分辨率不同时,此时通过虚拟场景画面对应的API接口获取到的坐标距离是渲染分辨率对应的第二坐标距离,通过渲染分辨率与物理分辨率的比值关系,可以获取虚拟场景画面在更大的物理分辨率的显示屏幕上的拉伸大小(即缩放比值),根据该缩放比值以及该第二坐标距离,可以获取物理分辨率实际对应的第一坐标距离。
在一种可能的实现方式中,获取该滑动操作在该渲染分辨率下的第三位置坐标与第四位置坐标;该第三位置坐标是该滑动操作的起始点的渲染像素坐标;该第四位置坐标是该滑动操作的结束点的渲染像素坐标;将该第三位置坐标与该第四位置坐标之间的像素距离,获取为该第二坐标距离。
当渲染分辨率小于物理分辨率时,此时可以通过虚拟场景画面独有的API接口获取该滑动操作对应的第三位置坐标与第四位置坐标,并根据该第三位置坐标与第四位置坐标的关系,获取该渲染分辨率对应的第二坐标距离。
步骤404,获取展示该虚拟场景画面的显示屏幕的像素密度;该像素密度用于指示终端的像素值与尺寸的对应关系。
其中,像素密度(PPI,Pixels Per Inch)为终端的显示屏幕中每英寸所拥有的像素数量。终端的显示屏幕的PPI数值越高,代表该显示屏能够以越高的密度显示图像。
由于PPI代表显示屏幕中每英寸所拥有的像素数量,且显示屏幕的物理分辨率为显示屏幕的最小显示单元数量,当每个最小显示单元作为一个像素时,该物理分辨率即代表该显示屏幕的像素数量,因此根据显示屏幕的PPI、物理分辨率、以及终端的显示屏幕的尺寸中的任意二者,都可以获得该显示屏幕的另外一者的数值。
步骤405,将该第一坐标距离与该像素密度的比值,获取为该第一坐标距离对应的该第一物理距离。
在一种可能的实现方式中,在移动相同的物理距离下,所转换成的旋转幅度要近似相等。物理距离的计算方式可以通过设备的PPI与设备的物理尺寸信息所获得。比如当物理分辨率与渲染分辨率相同时,该触摸滑动操作移动的距离为x(第一坐标距离,以像素为单位),屏幕的分辨率为Screen.Height*Screen.Width,且已知屏幕的PPI,其中Screen.Height为屏幕的像素高度,Screen.Width为屏幕的像素宽度。那么移动的距离(以英寸为单位)为:
其中设备尺寸的计算方式如下:
将设备尺寸对应的公式代入移动距离对应的公式即可求得:
即移动的物理距离可以通过设备的PPI与移动的设备像素大小获得。
在一种可能的实现方式中,当物理分辨率与渲染分辨率不相同时,上述公式并不能直接使用适用,首先Screen.Width与Screen.Height都是屏幕分辨率,而Touch.position(触摸滑动操作对应的像素坐标值,第三位置坐标与第四位置坐标)是渲染分辨率下的值。由于不同画质有可能改变渲染分辨率。所以渲染分辨率与设备的分辨率不一定是一个相等的值。我们在保证在移动相同的物理距离的情况下,得到的需要进行转换的旋转值一致。所以我们需要通过Touch.position、Screen.Width与Screen.Height与设备PPI求移动距离。两帧之间的Touch.Position差就是DeltaPosition(触摸滑动操作对应的渲染分辨率下的像素坐标距离,即第二坐标距离)。也就是说,在获取移动的物理距离之前,需要先通过渲染分辨率下的第二坐标距离获取物理分辨率下的第一坐标距离,如下所示:
其中,Rendering.Height为渲染分辨率下的终端的像素高度,Rendering.Width为渲染分辨率下的终端的像素宽度。通过上述公式获取的移动设备像素,将渲染分辨率下的第二坐标距离DeltaPosition,通过渲染分辨率与物理分辨率的像素点比值(即缩放比值),获取物理分辨率下的第一坐标距离(即移动的设备像素)。
因此,移动的物理距离可以如下所示:
在一种可能的实现方式中,响应于该第一坐标距离与坐标距离阈值之间的关系满足指定条件,获取该第一坐标距离对应的该第一物理距离。
在获取到物理分辨率下的第一坐标距离时,可以先根据该坐标距离阈值对该第一坐标距离进行判定,确定其是否为满足指定条件,当该第一坐标距离满足指定条件之后,获取第一坐标距离对应的物理距离。
当该第一坐标距离不满足指定条件时,则说明该第一坐标距离对应的触摸滑动操作可能是无效操作,此时将该第一坐标距离置零,且将该触摸滑动操作确定为无效操作,终端忽略该触摸滑动操作。
在一种可能的实现方式中,响应于该第一坐标距离的模长大于该第一坐标距离阈值,确定该第一坐标距离与该坐标距离阈值之间的关系满足该指定条件。
当该第一坐标距离的模长不大于该第一坐标距离阈值时,则该第一坐标距离对应的用户的触摸滑动操作距离过小,此时该第一坐标距离可能不是用户主动触发的触摸滑动操作所产生的坐标距离,而是由于用户的抖动或终端误差所引起的终端获取的坐标距离值,此时不满足指定条件,即终端忽略该第一坐标距离,并将该第一坐标距离对应的操作确定为无效操作。
在一种可能的实现方式中,响应于该第一横坐标距离与该第一纵坐标距离小于该第二坐标距离阈值,确定该第一坐标距离与该坐标距离阈值之间的关系满足该指定条件。
其中,第一横坐标距离可以是第一坐标距离中的X轴坐标距离值,第一纵坐标距离可以为第一坐标距离中的Y轴坐标距离值;当X轴坐标距离值与Y轴坐标距离值均小于第二坐标距离阈值时,说明该触摸滑动操作是用户主动触发的操作;当该X轴坐标距离值与Y轴坐标距离值中至少存在一个不小于第二坐标距离阈值时,则说明该X轴或Y轴上至少存在一个方位,该第一坐标距离大于正常触摸滑动操作对应的坐标距离值,即该第一坐标距离是用户收到外界干扰下的触摸滑动操作产生的,此时不满足指定条件,并将该第一坐标距离对应的触摸滑动操作(即滑动操作)确认为无效操作。
在一种可能的实现方式中,响应于该第一坐标距离的模长大于该第一坐标距离阈值,且该第一横坐标距离与该第一纵坐标距离小于该第二坐标距离阈值,将该第一坐标距离获取为该有效坐标距离。
当该滑动操作对应的第一坐标距离的模长大于该第一坐标距离阈值,且第一横坐标距离与第一纵坐标距离均小于第二坐标距离阈值时,则认为该滑动操作是有效操作,满足指定条件,并根据该第一坐标距离获取对应的物理距离。
请参考图5,其示出了本申请实施例涉及的一种有效操作选择流程图。如图5所示,以该第一坐标距离是终端通过连续两帧的用户按键位置获取的为例,终端在每一帧都会根据Touch.position(终端获取的触摸位置)记录当前的按键位置为currentTounchPosition(当前触摸位置),并且每一帧都会更新前一帧的按键位置为preTounchPosition(前一帧触摸位置)。由于Touch.Position的值是一个二维向量,即可以表示为(x,y),其中x为横坐标,y为纵坐标。可以根据这两帧的向量来进行判断当前的按键输入是否是一个有效输入。
S501,终端通过游戏的API(Application Programming Interface,应用程序接口),记录用户上一帧的按键位置。S502,终端再通过游戏的API接口记录用户当前帧的按键位置。S503,终端比较该两帧按键位置之间的向量模值的大小,当该向量模值过小(小于阈值)时则说明该连续两帧按键位置的滑动不属于正常情况下的用户操控滑动,可能是由于用户的抖动或是设备误差所导致的向量模值扰动,此时将该连续两帧按键位置的滑动确定为无效输入,并将该帧的位置更新为上一帧的按键位置;当该连续两帧的按键位置之间的向量模值差距较大(大于阈值),则说明该连续两帧按键位置的滑动可能属于正常情况下用户的操控滑动,进行下一步判定。S504,终端比较该两帧按键位置之间的X轴向差距,当连续两帧按键位置的X轴向坐标差距过大(大于阈值),则说明该连续两帧按键位置的滑动也不属于正常情况下的用户操控滑动,可能是由于用户受到外力撞击而引起的滑动屏幕速度过快,此时将该连续两帧按键位置的滑动确定为无效输入,并将该帧的位置更新为上一帧的按键位置;当该连续两帧的按键位置之间的X轴向差距不大(小于阈值),则说明该连续两帧按键位置的滑动在X轴向的数据表现正常,可能处于正常情况下用户的滑动操作,并进行下一步判定。S505,终端比较该两帧按键位置之间的Y轴向坐标差距,当连续两帧按键位置的Y轴向坐标差距过大(大于阈值),则说明该连续两帧按键位置的滑动也不属于正常情况下的用户操控滑动,可能是由于用户受到外力撞击而引起的滑动屏幕速度过快,此时将该连续两帧按键位置的滑动确定为无效输入,并将该帧的位置更新为上一帧的按键位置;当该连续两帧的按键位置之间的Y轴向坐标差距不大(小于阈值),则说明该连续两帧按键位置的滑动在Y轴向的数据表现正常,此时该连续两帧按键位置的滑动数据均正常,根据该连续两帧按键位置的滑动数据,获取该连续两帧按键位置滑动对应的有效的第一坐标距离,再根据该第一坐标距离获取对应的用户移动的物理距离,并将当前帧对应的按键位置更新为上一帧的按键位置,以便于对下一帧的按键位置进行判定。
步骤406,基于该第一物理距离以及该滑动操作的滑动方向,控制该目标虚拟对象在该虚拟场景中转动。
在一种可能的实现方式中,基于该第一物理距离,以及该距离转动参数,获取转动角度,基于该转动角度,控制该目标虚拟对象在虚拟场景中转动。
该第一距离是用户在终端的显示屏幕上滑动的物理距离,根据该物理距离以及转动参数,终端可以确定对应该物理距离的转动角度。
在一种可能的实现方式中,该转动参数可以是该虚拟场景画面对应的应用程序的管理人员预先设置的。
在另一种可能的实现方式中,终端对应的用户可以通过设置界面对该转动参数进行设置。
在游戏类应用程序中,用户可以通过虚拟场景界面中的设置界面,通过设置界面中的灵敏度控件,确定该转动参数的大小。
该转动角度是基于用户在终端对应的显示屏幕上滑动的物理距离确定的,因此该目标虚拟对象的转动角度,也与该用户在终端对应的显示屏幕上滑动的物理距离有关。因此,采用同一设置的用户(即转动系数相同的用户)在不同屏幕分辨率上,采用不同的渲染分辨率进行目标虚拟对象的转动时,当滑动的物理距离相同时,其目标虚拟对象观察到的虚拟场景画面的转动角度也应该相同。
在一种可能的实现方式中,获取滑动操作在该物理分辨率下的第一位置坐标与第二位置坐标;根据该第一位置坐标与该第二位置坐标的横向坐标距离与纵向坐标距离,确定该滑动操作的滑动方向。
在一种可能的实现方式中,该滑动方向可以根据用户滑动操作的两个位置坐标(第一位置坐标与第二位置坐标)获取,且根据该用户滑动操作的两个位置坐标,以及两个位置坐标的时间差,可以获取该用户滑动操作在单位时间内的速度向量趋势,根据该速度向量的趋势,确定目标虚拟对象的转动角度。
请参考图6,其示出了本申请实施例涉及的一种高分辨率终端画面转动示意图。如图6所示,600是该高分辨率的终端(终端的显示屏幕的物理分辨率较高)在目标虚拟对象转动前展示的虚拟场景画面,其中,准心标尺601叠加展示在该虚拟场景画面的中心区域,在该目标虚拟对象转动前展示的虚拟场景画面中,用户的触摸滑动操作位置为602,用户从该触摸滑动操作位置602开始触摸滑动操作,使得该虚拟场景画面600变为该高分辨率的终端在目标虚拟对象转动后展示的虚拟场景画面610。
在目标虚拟对象转动后展示的虚拟场景画面610中,同样存在叠加显示在该虚拟场景画面中心区域的准心标尺611,在该目标虚拟对象转动后展示的虚拟场景画面610中,随着用户的触摸滑动操作到达触摸滑动操作位置612,该中心区域的准心标尺611也相应的目标虚拟对象转动的固定距离。
请参考图7,其示出了本申请实施例涉及的一种低分辨率终端画面目标虚拟对象转动示意图。如图7所示,700是低分辨率的终端(即终端的显示屏幕的物理分辨率较低)在目标虚拟对象转动前展示的虚拟场景画面,其中该虚拟场景画面与图6中600是在同一虚拟场景中,在同一位置显示的同意方位的虚拟画面,由于图7是较低屏幕分辨率的虚拟场景画面,且在该较低屏幕分辨率中虚拟场景画面对应的渲染分辨率也较低,因此该虚拟场景画面中的像素点比图6显示的虚拟场景画面中的像素点少,因此其显示的画面内容更少。
对于图7,700是该低分辨率的终端(即终端的显示屏幕的物理分辨率较低)在目标虚拟对象转动前展示的虚拟场景画面,其中,准心标尺701叠加展示在该虚拟场景画面的中心区域,在该目标虚拟对象转动前展示的虚拟场景画面中,用户的触摸滑动操作位置为702,用户从该触摸滑动操作位置702开始触摸滑动操作,触发目标虚拟对象转动,使得该虚拟场景画面700变为该高分辨率的终端在目标虚拟对象转动后展示的虚拟场景画面710。
在目标虚拟对象转动后展示的虚拟场景画面710中,同样存在叠加显示在该虚拟场景画面中心区域的准心标尺711,在该目标虚拟对象转动后展示的虚拟场景画面710中,随着用户的触摸滑动操作到达触摸滑动操作位置712,该中心区域的准心标尺711也相应的目标虚拟对象转动的固定距离。
在图6与图7中,用户在不同的物理分辨率的屏幕上的移动距离相同,且由图6与图7转动标尺与周围建筑物的相对位置可知,在不同物理分辨率的屏幕上的移动距离相同时,转动标尺的转动角度也相同。即图6与图7示出了本申请实施例所需要实现的,在不同物理分辨率的屏幕上,移动相同的物理距离,可以实现相同角度的屏幕转动。在第一人称射击类游戏中,瞄准是射击游戏的核心,如何能够精确瞄准更是所有射击玩家的难以掌握的核心技巧。在电脑端,玩家可以通过鼠标在足够宽广的区域进行操作。而由于手机端的操作区域受限,玩家的瞄准体验也受到了极大限制。
而转动视角是实现瞄准的唯一方式,为了解决手机端各个场景转动视角的困扰,针对滑动屏幕的速度映射做的一系列的算法设计,受到各式各样尺寸、分辨率的设备影响,最终的划屏的效果无法按照算法设计的方式进行,通过本申请实施例所示方案,在不同的物理分辨率、不同尺寸的屏幕上,移动相同物理距离时画面转动的角度相同,实现了不同设备镜头转动的统一化,提高了用户体验,并且用户可以通过在终端的显示屏幕上滑动的距离,准确地判断镜头转动的角度,提高了用户与终端互动的精准性。
本申请实施例所示方案可以满足以下几点:筛除无效划屏输入、保证不同设备的划屏体验、划屏转向符合玩家的操作预期。
其中,筛除无效输入的意义在于,玩家的手在屏幕上不是稳定的状态,时长会伴随着一定频率的抖动,如果不过滤这种输入的话,玩家的镜头将伴随高强度的抖动,最终影响玩家游戏体验保证不同设备的划屏体验,即本申请实施例所示方案能正确的在不同设备中生效,能够轻松地一划镜头就能旋转90度,那么无论是在小屏幕手机还是大屏幕的平板电脑上,移动相同的物理距离也会旋转90度。划屏转向符合玩家的操作预期,即镜头视角的旋转需要和玩家的操作行为一一对应,提供精确的操作反馈。
综上所述,本申请提供的虚拟对象控制方法,用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
请参考图8,其是根据一示例性实施例示出的一种虚拟对象控制流程示意图。如图8所示,以该游戏应用客户端为移动端设备的游戏应用客户端为例。S801,获取两帧之间的坐标距离,即终端可以通过API接口获取虚拟场景画面连续两帧用户的滑动触摸操作对应的坐标,并根据连续两帧用户的滑动触摸操作对应的坐标,获取两帧之间的触摸滑动操作对应的坐标距离,并通过图5所示的有效操作判定,确定连续两帧之间的触摸滑动操作为有效操作。S802,当确定连续两帧之间的触摸滑动操作为有效操作后,获取设备显示像素信息,包括设备的物理分辨率以及该虚拟场景画面对应的渲染分辨率。S803,获取该终端对应的设备PPI。S804,根据设备的物理分辨率、渲染分辨率、设备PPI,以及连续两帧触摸滑动对应的坐标距离(即像素距离),可以获取连续两帧触摸滑动操作对应的物理距离(即用户在屏幕上滑动的实际距离)。S805,根据该触摸滑动操作对应的物理距离与滑动系数的乘积,确定该物理距离对应的虚拟场景画面的旋转角度,并根据该旋转角度旋转目标虚拟对象,以实现目标虚拟对象观察到的虚拟场景画面的变动。
图9示出了本申请一个示例性实施例提供的虚拟对象控制方法的流程图。该虚拟对象控制方法可以由计算机设备执行,该计算机设备可以是终端,也可以是服务器,或者该计算机设备也可以包含上述终端和服务器。如图9所示,该虚拟对象控制方法,包括:
步骤901,展示虚拟场景对应的虚拟场景画面;该虚拟场景中包含目标虚拟对象。
步骤902,响应于在虚拟场景画面上的滑动操作,基于该滑动操作滑动的物理距离以及该滑动操作的滑动方向,控制该目标虚拟对象在该虚拟场景中转动;
其中,在屏幕尺寸和分辨率不同的终端中,在相同物理距离的滑动操作控制下,该目标虚拟对象在该虚拟场景中转动的角度相同。
综上所述,本申请提供的虚拟对象控制方法,用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
图10示出了本申请一示例性实施例提供的虚拟对象控制装置的方框图。该虚拟对象控制装置可以应用于计算机设备中,该计算机设备可以是终端,也可以是终端和服务器,其中,上述终端可以是图1所示的终端。如图10所示,该虚拟对象控制装置包括:
虚拟场景画面展示模块1001,用于展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
第一坐标距离获取模块1002,用于响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;所述第一坐标距离是所述滑动操作的起始点和结束点之间的像素坐标之间的距离;
第一物理距离获取模块1003,用于获取所述第一坐标距离对应的第一物理距离;所述第一物理距离是所述滑动操作滑动的物理距离;
虚拟对象转动模块1004,用于基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。
在一种可能的实现方式中,所述装置还包括:
分辨率获取模块,用于获取所述虚拟场景画面的渲染分辨率,以及展示所述虚拟场景画面的显示屏幕的物理分辨率;
所述第一坐标距离获取模块1002,用于,
响应于在所述虚拟场景画面上的滑动操作,基于所述渲染分辨率以及所述物理分辨率,获取所述第一坐标距离。
在一种可能的实现方式中,所述渲染分辨率与所述物理分辨率相同;
所述第一坐标距离获取模块1002,用于,
响应于接收到所述滑动操作,且所述渲染分辨率与所述物理分辨率相同,基于所述物理分辨率获取所述第一坐标距离。
在一种可能的实现方式中,所述第一坐标距离获取模块1002,包括:
位置坐标获取单元,用于获取所述滑动操作在所述物理分辨率下的第一位置坐标与第二位置坐标;所述第一位置坐标是所述滑动操作的起始点的物理像素坐标;所述第二位置坐标是所述滑动操作的结束点的物理像素坐标;
第一坐标距离获取单元,用于将所述第一位置坐标与所述第二位置坐标之间的像素距离,获取为所述第一坐标距离。
在一种可能的实现方式中,所述第一坐标距离获取模块1002,包括:
第二坐标距离获取单元,用于响应于接收到所述滑动操作,且所述渲染分辨率小于所述物理分辨率,基于所述渲染分辨率,获取所述滑动操作对应的第二坐标距离;
缩放比值获取单元,用于基于所述渲染分辨率与所述物理分辨率,获取缩放比值;
第一坐标距离获取单元,用于基于所述第二坐标距离与所述缩放比值,获取所述第一坐标距离。
在一种可能的实现方式中,所述第二坐标距离获取单元,包括:
位置坐标获取子单元,用于获取所述滑动操作在所述渲染分辨率下的第三位置坐标与第四位置坐标;所述第三位置坐标是所述滑动操作的起始点的渲染像素坐标;所述第四位置坐标是所述滑动操作的结束点的渲染像素坐标;
坐标距离获取子单元,用于将所述第三位置坐标与所述第四位置坐标之间的像素距离,获取为所述第二坐标距离。
在一种可能的实现方式中,所述装置还包括:
像素密度获取模块,用于获取展示所述虚拟场景画面的显示屏幕的像素密度;所述像素密度用于指示终端的像素值与尺寸的对应关系;
第一物理距离获取模块1003,用于将所述第一坐标距离与所述像素密度的比值,获取为所述第一坐标距离对应的所述第一物理距离。
在一种可能的实现方式中,所述第一物理距离获取模块,用于:
响应于所述第一坐标距离与坐标距离阈值之间的关系满足指定条件,获取所述第一坐标距离对应的所述第一物理距离。
在一种可能的实现方式中,所述坐标距离阈值包括第一坐标距离阈值;所述装置还包括:
第一指定条件确定模块,用于响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
在一种可能的实现方式中,所述坐标距离阈值包括第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;所述装置还包括:
第二指定条件确定模块,用于响应于所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
在一种可能的实现方式中,所述坐标距离阈值包括第一坐标距离阈值与第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;
所述装置还包括:
第三指定条件确定模块,用于响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,且所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
综上所述,本申请提供的虚拟对象控制方法,用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
图11示出了本申请一示例性实施例提供的虚拟对象控制装置的方框图。该虚拟对象控制装置可以应用于计算机设备中,该计算机设备可以是终端,也可以是终端和服务器,其中,上述终端可以是图1所示的终端。如图11所示,该虚拟对象控制装置包括:
场景画面展示模块1101,用于展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
虚拟对象控制模块1102,用于响应于在虚拟场景画面上的滑动操作,基于所述滑动操作滑动的物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动;
其中,在屏幕尺寸和分辨率不同的终端中,在相同物理距离的滑动操作控制下,所述目标虚拟对象在所述虚拟场景中转动的角度相同。
综上所述,本申请提供的虚拟对象控制方法,用户在虚拟场景画面对应的终端上采取滑动操作,终端获取到该滑动操作对应的距离参数,并根据该距离参数确定用户在终端屏幕上采取滑动操作的滑动的物理距离,并基于物理距离进行目标虚拟对象的转动。通过上述方案,终端根据用虚拟场景画面上的坐标距离值,计算坐标距离值对应的用户手动操作的物理距离,根据该物理距离确定目标虚拟对象的转动角度,使得在目标虚拟对象的转动角度与用户的手动操作的物理距离对应,用户可以根据可以操作的物理距离预估目标虚拟对象旋转后视角转动的角度,提高目标虚拟对象对应的视角旋转的准确性。
图12是根据一示例性实施例示出的计算机设备1200的结构框图。该计算机设备可以实现为本申请上述方案中的服务器。
所述计算机设备1200包括中央处理单元(Central Processing Unit,CPU)1201、包括随机存取存储器(Random Access Memory,RAM)1202和只读存储器(Read-OnlyMemory,ROM)1203的系统存储器1204,以及连接系统存储器1204和中央处理单元1201的系统总线1205。所述计算机设备1200还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(Input/Output系统,I/O系统)1206,和用于存储操作系统1213、应用程序1214和其他程序模块1215的大容量存储设备1207。
所述基本输入/输出系统1206包括有用于显示信息的显示器1208和用于用户输入信息的诸如鼠标、键盘之类的输入设备1209。其中所述显示器1208和输入设备1209都通过连接到系统总线1205的输入输出控制器1210连接到中央处理单元1201。所述基本输入/输出系统1206还可以包括输入输出控制器1210以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1210还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1207通过连接到系统总线1205的大容量存储控制器(未示出)连接到中央处理单元1201。所述大容量存储设备1207及其相关联的计算机可读介质为计算机设备1200提供非易失性存储。也就是说,所述大容量存储设备1207可以包括诸如硬盘或者只读光盘(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读寄存器(Erasable Programmable Read Only Memory,EPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-OnlyMemory,EEPROM)闪存或其他固态存储其技术,CD-ROM、数字多功能光盘(DigitalVersatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1204和大容量存储设备1207可以统称为存储器。
根据本公开的各种实施例,所述计算机设备1200还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1200可以通过连接在所述系统总线1205上的网络接口单元1211连接到网络1212,或者说,也可以使用网络接口单元1211来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集存储于存储器中,中央处理器1201通过执行该至少一条指令、至少一段程序、代码集或指令集来实现上述各个实施例所示的虚拟对象控制方法的流程图中的全部或者部分步骤。
图13是根据一示例性实施例示出的计算机设备1300的结构框图。该计算机设备1300可以是终端,比如智能手机、平板电脑、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。计算机设备1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,计算机设备1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本申请中方法实施例提供的虚拟对象控制方法。
在一些实施例中,计算机设备1300还可选包括有:外围设备接口1303和至少一个外围设备。处理器1301、存储器1302和外围设备接口1303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1303相连。具体地,外围设备包括:射频电路1304、显示屏1305、摄像头组件1306、音频电路1307、定位组件1308和电源1309中的至少一种。
外围设备接口1303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1305用于显示UI(UserInterface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置计算机设备1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在计算机设备1300的不同表面或呈折叠设计;在再一些实施例中,显示屏1305可以是柔性显示屏,设置在计算机设备1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图形,也即异形屏。显示屏1305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(OrganicLight-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1306用于采集图像或视频。可选地,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
定位组件1308用于定位计算机设备1300的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1308可以是基于美国的GPS(Global Positioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1309用于为计算机设备1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,计算机设备1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
加速度传感器1311可以检测以计算机设备1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1312可以检测计算机设备1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对计算机设备1300的3D动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1313可以设置在计算机设备1300的侧边框和/或显示屏1305的下层。当压力传感器1313设置在计算机设备1300的侧边框时,可以检测用户对计算机设备1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在显示屏1305的下层时,由处理器1301根据用户对显示屏1305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置计算机设备1300的正面、背面或侧面。当计算机设备1300上设置有物理按键或厂商Logo时,指纹传感器1314可以与物理按键或厂商Logo集成在一起。
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制显示屏1305的显示亮度。具体地,当环境光强度较高时,调高显示屏1305的显示亮度;当环境光强度较低时,调低显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
接近传感器1316,也称距离传感器,通常设置在计算机设备1300的前面板。接近传感器1316用于采集用户与计算机设备1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与计算机设备1300的正面之间的距离逐渐变小时,由处理器1301控制显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与计算机设备1300的正面之间的距离逐渐变大时,由处理器1301控制显示屏1305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对计算机设备1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括至少一条指令、至少一段程序、代码集或指令集的存储器,上述至少一条指令、至少一段程序、代码集或指令集可由处理器执行以完成上述图3、图4或图9对应实施例所示的方法的全部或者部分步骤。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在一示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图3、图4或图9对应实施例所示方法的全部或部分步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种虚拟对象控制方法,其特征在于,所述方法包括:
展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;所述第一坐标距离是所述滑动操作的起始点和结束点之间的像素坐标之间的距离;
获取所述第一坐标距离对应的第一物理距离;所述第一物理距离是所述滑动操作滑动的物理距离;
基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。
2.根据权利要求1所述的方法,其特征在于,所述响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离之前,还包括:
获取所述虚拟场景画面的渲染分辨率,以及展示所述虚拟场景画面的显示屏幕的物理分辨率;
所述响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离,包括:
响应于在所述虚拟场景画面上的滑动操作,基于所述渲染分辨率以及所述物理分辨率,获取所述第一坐标距离。
3.根据权利要求2所述的方法,其特征在于,所述渲染分辨率与所述物理分辨率相同;
所述响应于在所述虚拟场景画面上的滑动操作,基于所述渲染分辨率以及所述物理分辨率,获取所述第一坐标距离,包括:
响应于接收到所述滑动操作,且所述渲染分辨率与所述物理分辨率相同,基于所述物理分辨率获取所述第一坐标距离。
4.根据权利要求3所述的方法,其特征在于,所述响应于接收到所述滑动操作,且所述渲染分辨率与所述物理分辨率相同,基于所述物理分辨率获取所述第一坐标距离,包括:
获取所述滑动操作在所述物理分辨率下的第一位置坐标与第二位置坐标;所述第一位置坐标是所述滑动操作的起始点的物理像素坐标;所述第二位置坐标是所述滑动操作的结束点的物理像素坐标;
将所述第一位置坐标与所述第二位置坐标之间的像素距离,获取为所述第一坐标距离。
5.根据权利要求2所述的方法,其特征在于,所述响应于在所述虚拟场景画面上的滑动操作,基于所述渲染分辨率以及所述物理分辨率,获取所述第一坐标距离,包括:
响应于接收到所述滑动操作,且所述渲染分辨率小于所述物理分辨率,基于所述渲染分辨率,获取所述滑动操作对应的第二坐标距离;
基于所述渲染分辨率与所述物理分辨率,获取缩放比值;
基于所述第二坐标距离与所述缩放比值,获取所述第一坐标距离。
6.根据权利要求5所述的方法,其特征在于,所述响应于接收到所述滑动操作,且所述渲染分辨率小于所述物理分辨率,基于所述渲染分辨率,获取所述滑动操作对应的第二坐标距离,包括:
获取所述滑动操作在所述渲染分辨率下的第三位置坐标与第四位置坐标;所述第三位置坐标是所述滑动操作的起始点的渲染像素坐标;所述第四位置坐标是所述滑动操作的结束点的渲染像素坐标;
将所述第三位置坐标与所述第四位置坐标之间的像素距离,获取为所述第二坐标距离。
7.根据权利要求1所述的方法,其特征在于,所述获取所述第一坐标距离对应的第一物理距离之前,还包括:
获取展示所述虚拟场景画面的显示屏幕的像素密度;所述像素密度用于指示终端的像素值与尺寸的对应关系;
所述获取所述第一坐标距离对应的第一物理距离,包括:
将所述第一坐标距离与所述像素密度的比值,获取为所述第一坐标距离对应的所述第一物理距离。
8.根据权利要求1所述的方法,其特征在于,所述获取所述第一坐标距离对应的第一物理距离,包括:
响应于所述第一坐标距离与坐标距离阈值之间的关系满足指定条件,获取所述第一坐标距离对应的所述第一物理距离。
9.根据权利要求8所述的方法,其特征在于,所述坐标距离阈值包括第一坐标距离阈值;
所述获取所述第一坐标距离对应的第一物理距离之前,还包括:
响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
10.根据权利要求8所述的方法,其特征在于,所述坐标距离阈值包括第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;
所述获取所述第一坐标距离对应的第一物理距离之前,还包括:
响应于所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
11.根据权利要求8所述的方法,其特征在于,所述坐标距离阈值包括第一坐标距离阈值与第二坐标距离阈值;所述第一坐标距离包括第一横坐标距离与第一纵坐标距离;
所述获取所述第一坐标距离对应的第一物理距离之前,还包括:
响应于所述第一坐标距离的模长大于所述第一坐标距离阈值,且所述第一横坐标距离与所述第一纵坐标距离小于所述第二坐标距离阈值,确定所述第一坐标距离与所述坐标距离阈值之间的关系满足所述指定条件。
12.一种虚拟对象控制方法,其特征在于,所述方法用于终端,所述方法包括:
展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
响应于在虚拟场景画面上的滑动操作,基于所述滑动操作滑动的物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动;
其中,在屏幕尺寸和分辨率不同的终端中,在相同物理距离的滑动操作控制下,所述目标虚拟对象在所述虚拟场景中转动的角度相同。
13.一种虚拟对象控制装置,其特征在于,所述装置包括:
虚拟场景画面展示模块,用于展示虚拟场景对应的虚拟场景画面;所述虚拟场景中包含目标虚拟对象;
第一坐标距离获取模块,用于响应于在所述虚拟场景画面上的滑动操作,获取所述滑动操作对应的第一坐标距离;所述第一坐标距离是所述滑动操作的起始点和结束点之间的像素坐标之间的距离;
第一物理距离获取模块,用于获取所述第一坐标距离对应的第一物理距离;所述第一物理距离是所述滑动操作滑动的物理距离;
虚拟对象转动模块,用于基于所述第一物理距离以及所述滑动操作的滑动方向,控制所述目标虚拟对象在所述虚拟场景中转动。
14.一种计算机设备,其特征在于,计算机设备包含处理器和存储器,所述存储器中存储由至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至12任一所述的虚拟对象控制方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至12任一所述的虚拟对象控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011413036.4A CN112451969B (zh) | 2020-12-04 | 2020-12-04 | 虚拟对象控制方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011413036.4A CN112451969B (zh) | 2020-12-04 | 2020-12-04 | 虚拟对象控制方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112451969A true CN112451969A (zh) | 2021-03-09 |
CN112451969B CN112451969B (zh) | 2023-04-21 |
Family
ID=74800113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011413036.4A Active CN112451969B (zh) | 2020-12-04 | 2020-12-04 | 虚拟对象控制方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112451969B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113838170A (zh) * | 2021-08-18 | 2021-12-24 | 网易(杭州)网络有限公司 | 目标虚拟对象的处理方法、装置、存储介质和电子装置 |
WO2023020125A1 (zh) * | 2021-08-19 | 2023-02-23 | 腾讯科技(深圳)有限公司 | 虚拟环境画面的显示方法、装置、终端、介质及程序产品 |
CN113633976B (zh) * | 2021-08-16 | 2023-06-20 | 腾讯科技(深圳)有限公司 | 操作控制方法、装置、设备及计算机可读存储介质 |
CN117679745A (zh) * | 2024-02-01 | 2024-03-12 | 南京维赛客网络科技有限公司 | 多角度动态检测控制虚拟人物朝向的方法、系统及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101763234A (zh) * | 2009-12-29 | 2010-06-30 | 广东威创视讯科技股份有限公司 | 一种模拟各种屏幕分辨率的方法及其装置 |
CN110652725A (zh) * | 2019-09-29 | 2020-01-07 | 网易(杭州)网络有限公司 | 游戏中瞄准方向的控制方法、装置、电子设备及存储介质 |
CN111679739A (zh) * | 2020-06-04 | 2020-09-18 | 京东方科技集团股份有限公司 | 可读存储介质、虚拟现实设备及其控制方法、控制装置 |
US20200316470A1 (en) * | 2018-04-27 | 2020-10-08 | Tencent Technology (Shenzhen) Company Limited | Method and terminal for displaying distance information in virtual scene |
CN111970454A (zh) * | 2020-09-10 | 2020-11-20 | 青岛鳍源创新科技有限公司 | 一种拍摄画面的展示方法、装置、设备及储存介质 |
-
2020
- 2020-12-04 CN CN202011413036.4A patent/CN112451969B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101763234A (zh) * | 2009-12-29 | 2010-06-30 | 广东威创视讯科技股份有限公司 | 一种模拟各种屏幕分辨率的方法及其装置 |
US20200316470A1 (en) * | 2018-04-27 | 2020-10-08 | Tencent Technology (Shenzhen) Company Limited | Method and terminal for displaying distance information in virtual scene |
CN110652725A (zh) * | 2019-09-29 | 2020-01-07 | 网易(杭州)网络有限公司 | 游戏中瞄准方向的控制方法、装置、电子设备及存储介质 |
CN111679739A (zh) * | 2020-06-04 | 2020-09-18 | 京东方科技集团股份有限公司 | 可读存储介质、虚拟现实设备及其控制方法、控制装置 |
CN111970454A (zh) * | 2020-09-10 | 2020-11-20 | 青岛鳍源创新科技有限公司 | 一种拍摄画面的展示方法、装置、设备及储存介质 |
Non-Patent Citations (1)
Title |
---|
吃饱就睡: "unity设备dpi的作用(手指滑动物理距离计算)", 《HTTPS://WWW.CNBLOGS.COM/CHIBAOJIUSHUI/P/12585695.HTML》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113633976B (zh) * | 2021-08-16 | 2023-06-20 | 腾讯科技(深圳)有限公司 | 操作控制方法、装置、设备及计算机可读存储介质 |
CN113838170A (zh) * | 2021-08-18 | 2021-12-24 | 网易(杭州)网络有限公司 | 目标虚拟对象的处理方法、装置、存储介质和电子装置 |
WO2023020125A1 (zh) * | 2021-08-19 | 2023-02-23 | 腾讯科技(深圳)有限公司 | 虚拟环境画面的显示方法、装置、终端、介质及程序产品 |
CN117679745A (zh) * | 2024-02-01 | 2024-03-12 | 南京维赛客网络科技有限公司 | 多角度动态检测控制虚拟人物朝向的方法、系统及介质 |
CN117679745B (zh) * | 2024-02-01 | 2024-04-12 | 南京维赛客网络科技有限公司 | 多角度动态检测控制虚拟人物朝向的方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112451969B (zh) | 2023-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109529319B (zh) | 界面控件的显示方法、设备及存储介质 | |
CN110694261B (zh) | 控制虚拟对象进行攻击的方法、终端及存储介质 | |
CN108815851B (zh) | 在虚拟环境中射击时的界面显示方法、设备及存储介质 | |
WO2019153750A1 (zh) | 用于对虚拟环境进行视角切换的方法、装置、设备及存储介质 | |
CN112169325B (zh) | 虚拟道具控制方法、装置、计算机设备及存储介质 | |
CN111589142A (zh) | 虚拟对象的控制方法、装置、设备及介质 | |
CN111921197B (zh) | 对局回放画面的显示方法、装置、终端及存储介质 | |
CN110694273A (zh) | 控制虚拟对象使用道具的方法、装置、终端及存储介质 | |
CN112451969B (zh) | 虚拟对象控制方法、装置、计算机设备及存储介质 | |
CN113398571B (zh) | 虚拟道具的切换方法、装置、终端及存储介质 | |
CN111035918A (zh) | 基于虚拟环境的侦察界面显示方法、装置及可读存储介质 | |
CN110755841A (zh) | 虚拟环境中道具的切换方法、装置、设备及可读存储介质 | |
CN111420402B (zh) | 虚拟环境画面的显示方法、装置、终端及存储介质 | |
CN108786110B (zh) | 虚拟环境中的瞄准镜显示方法、设备及存储介质 | |
CN111659117B (zh) | 虚拟对象展示方法、装置、计算机设备及存储介质 | |
CN111481934B (zh) | 虚拟环境画面的显示方法、装置、设备及存储介质 | |
CN110448908B (zh) | 虚拟环境中瞄准镜的应用方法、装置、设备及存储介质 | |
CN111672106B (zh) | 虚拟场景显示方法、装置、计算机设备及存储介质 | |
CN111475029B (zh) | 虚拟道具的操作方法、装置、设备及存储介质 | |
CN112569596B (zh) | 视频画面展示方法、装置、计算机设备及存储介质 | |
CN108744511B (zh) | 虚拟环境中的瞄准镜显示方法、设备及存储介质 | |
CN112169330B (zh) | 虚拟环境的画面显示方法、装置、设备及介质 | |
CN111013136B (zh) | 虚拟场景中的移动控制方法、装置、设备及存储介质 | |
CN112330823A (zh) | 虚拟道具的显示方法、装置、设备及可读存储介质 | |
CN111330278A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40041007 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |