CN114307145A - 画面显示方法、装置、终端、存储介质及程序产品 - Google Patents

画面显示方法、装置、终端、存储介质及程序产品 Download PDF

Info

Publication number
CN114307145A
CN114307145A CN202210003178.6A CN202210003178A CN114307145A CN 114307145 A CN114307145 A CN 114307145A CN 202210003178 A CN202210003178 A CN 202210003178A CN 114307145 A CN114307145 A CN 114307145A
Authority
CN
China
Prior art keywords
target position
virtual
role
frame
virtual camera
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
Application number
CN202210003178.6A
Other languages
English (en)
Other versions
CN114307145B (zh
Inventor
范斯丹
杨睿涵
林孔伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210003178.6A priority Critical patent/CN114307145B/zh
Priority to CN202311037085.6A priority patent/CN116983628A/zh
Publication of CN114307145A publication Critical patent/CN114307145A/zh
Priority to PCT/CN2022/127196 priority patent/WO2023130809A1/zh
Priority to US18/340,676 priority patent/US20230330532A1/en
Application granted granted Critical
Publication of CN114307145B publication Critical patent/CN114307145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5372Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for tagging characters, objects or locations in the game scene, e.g. displaying a circle under the character controlled by the player
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种画面显示方法、装置、终端、存储介质及程序产品,涉及计算机和互联网技术领域。所述方法包括:显示第一画面帧;在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定虚拟跟踪对象的目标位置;根据虚拟跟踪对象的目标位置,确定虚拟相机的目标位置和目标朝向;根据虚拟相机的目标位置和目标朝向,以及虚拟相机在第一画面帧中的实际位置和实际朝向,插值得到虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;基于虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示第二画面帧。本申请提升了自动运镜场景下的画面显示效果。

Description

画面显示方法、装置、终端、存储介质及程序产品
技术领域
本申请实施例涉及计算机和互联网技术领域,特别涉及一种画面显示方法、装置、终端、存储介质及程序产品。
背景技术
目前,一些游戏应用程序提供有三维虚拟环境,用户控制虚拟角色在该三维虚拟环境中执行各种操作,从而给用户提供更加逼真的游戏环境。
在相关技术中,如果用户在三维虚拟环境中锁定了一个目标虚拟角色(以下称为“锁定角色”),则游戏应用程序会控制虚拟相机以用户自身控制的虚拟角色(以下称为“自身角色”)为视觉焦点,朝向锁定角色进行观察,并将该虚拟相机拍摄得到的画面呈现给用户。这样,会尽可能地保证虚拟相机拍摄得到的画面中包含自身角色和锁定角色。
然而,这种方式容易导致自身角色对锁定角色的遮挡,从而影响画面的显示效果。
发明内容
本申请实施例提供了一种画面显示方法、装置、终端、存储介质及程序产品。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种画面显示方法,所述方法包括:
显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置;
根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;其中,所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离;
根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;
基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
根据本申请实施例的一个方面,提供了一种画面显示方法,所述方法包括:
显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧;其中,所述虚拟相机的目标位置和目标朝向是根据所述虚拟跟踪对象的目标位置确定的,且所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
根据本申请实施例的一个方面,提供了一种画面显示装置,所述装置包括:
画面显示模块,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
对象位置确定模块,用于在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置;
相机位置确定模块,用于根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;其中,所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离;
单帧位置确定模块,用于根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;
所述画面显示模块,还用于基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
根据本申请实施例的一个方面,提供了一种画面显示装置,所述装置包括:
画面显示模块,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
所述画面显示模块,还用于在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧;其中,所述虚拟相机的目标位置和目标朝向是根据所述虚拟跟踪对象的目标位置确定的,且所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
根据本申请实施例的一个方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现上述画面显示方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述画面显示方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。终端的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该终端执行上述画面显示方法。
本申请实施例提供的技术方案可以包括如下有益效果:
通过以三维虚拟环境中的虚拟跟踪对象作为虚拟相机的视觉焦点,在角色锁定状态下,基于自身角色和锁定角色的位置信息,确定虚拟跟踪对象的位置信息,然后基于该虚拟跟踪对象的位置信息,更新虚拟相机的位置和朝向;由于在确定虚拟跟踪对象的位置信息时,兼顾了自身角色和锁定角色的位置信息,从而使得确定出的虚拟跟踪对象的位置信息更加合理准确,进而保证在虚拟相机以该虚拟跟踪对象作为视觉焦点拍摄的画面中,自身角色和锁定角色能够以一个更加合理清晰的方式呈现给用户,提升了画面的显示效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的方案实施环境的示意图;
图2是本申请一个实施例提供的画面显示方法的流程图;
图3是本申请一个实施例提供的确定虚拟跟踪对象的待定目标位置的示意图;
图4是本申请一个实施例提供的自身角色的背后夹角区域的示意图;
图5是本申请一个实施例提供的以虚拟跟踪对象为视觉焦点拍摄得到的画面的示意图;
图6是本申请一个实施例提供的虚拟相机所在的旋转轨道的示意图;
图7是本申请一个实施例提供的确定虚拟相机的目标位置和目标朝向的示意图;
图8是本申请一个实施例提供的第一距离和第一插值系数之间的关系示意图;
图9是本申请一个实施例提供的第二距离和第二插值系数之间的关系示意图;
图10是本申请一个实施例提供的确定虚拟相机的单帧目标朝向的示意图;
图11是本申请一个实施例提供的在角色锁定状态下对锁定角色进行切换的流程图;
图12是本申请一个实施例提供的预锁定角色确定和标记的示意图;
图13是本申请一个实施例提供的在非角色锁定状态下虚拟相机的更新过程的流程图;
图14是本申请一个实施例提供的在非角色锁定状态下虚拟相机的更新过程的示意图;
图15是本申请一个实施例提供的虚拟相机的更新过程的流程图;
图16是本申请另一个实施例提供的画面显示方法的流程图;
图17是本申请一个实施例提供的画面显示装置的框图;
图18是本申请一个实施例提供的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行介绍说明之前,首先对本申请中涉及的相关名词进行解释说明。
1.虚拟环境
虚拟环境是应用程序(如游戏应用程序)的客户端在终端上运行时显示(或提供)的环境,该虚拟环境是指营造出的供虚拟对象进行活动(如游戏竞技)的环境,如可以是虚拟房屋、虚拟岛屿、虚拟地图等。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的环境,还可以是纯虚构的环境。在本申请实施例中,虚拟环境是三维的,即由长、宽、高三个维度所构成的空间,因此称之为“三维虚拟环境”。
2.虚拟角色
虚拟角色是指用户帐号在应用程序中控制的角色。以应用程序为游戏应用程序为例,虚拟角色是指用户帐号在游戏应用程序中控制的游戏角色。虚拟角色可以是人物形态,可以是动物、卡通或者其它形态,本申请实施例对此不作限定。在本申请实施例中,虚拟角色同样是三维的,因此称之为“三维虚拟角色”。
在不同的游戏应用程序中,用户帐号控制虚拟角色所能执行的操作也可能有所不同。例如,在射击类游戏应用程序中,用户帐号可以控制虚拟角色执行射击、投掷虚拟物品、奔跑、跳跃、施放技能等操作。
当然,除了游戏类应用程序之外,其它类型的应用程序中也可以向用户展示虚拟角色,并给虚拟角色提供相应的功能。例如,AR(Augmented Reality,增强现实)类应用程序、社交类应用程序、互动娱乐类应用程序等,本申请实施例对此不作限定。另外,对于不同的应用程序来说,其所提供的虚拟角色的形态也会有所不同,且相应的功能也会有所不同,这都可以根据实际需求预先进行配置,本申请实施例对此不作限定。
请参考图1,其示出了本申请一个实施例提供的方案实施环境的示意图。该方案实施环境可以包括:终端10和服务器20。
终端10可以是诸如手机、平板电脑、游戏主机、多媒体播放设备、PC(PersonalComputer,个人计算机)、车载终端、智能电视等电子设备。终端10中可以安装目标应用程序的客户端,例如游戏应用程序的客户端。示例性地,提供三维虚拟环境的游戏应用程序包括但不限于:三维动作游戏(3D Action Game,简称“3D ACT”)、三维射击类游戏、三维MOBA(Multiplayer Online Battle Arena,多人在线战术竞技游戏)类游戏等。
服务器20用于为终端10中的目标应用程序的客户端提供后台服务。例如,服务器20可以是上述目标应用程序的后台服务器。服务器20可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。
终端10和服务器20之间可通过网络30进行互相通信。该网络30可以是有线网络,也可以是无线网络。
请参考图2,其示出了本申请一个实施例提供的画面显示方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端10,如各步骤的执行主体可以是目标应用程序的客户端。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“客户端”进行介绍说明。该方法可以包括如下几个步骤(210~250):
步骤210,显示第一画面帧,第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对三维虚拟环境进行拍摄得到的画面。
客户端在将三维虚拟环境中的内容呈现给用户时,会显示一个个画面帧,该画面帧是通过虚拟相机对三维虚拟环境进行拍摄得到的图像。在三维虚拟环境中,会包括虚拟角色,如用户自身控制的虚拟角色(本申请实施例中称之为“自身角色”),以及其他用户或者系统(如AI(Artificial Intelligence,人工智能))控制的虚拟角色。可选地,三维虚拟环境中还可以包括一些其他的虚拟物品,如虚拟房屋、虚拟载具、虚拟树木等,本申请对此不作限定。
在本申请实施例中,虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,该虚拟跟踪对象是一个非可见的对象。例如,该虚拟跟踪对象并不是一个虚拟角色或虚拟物品,也没有外形,其可以看作是三维虚拟环境中的一个点。该虚拟跟踪对象在三维虚拟环境中,会随着自身角色(可选地还包括其他虚拟角色)的位置变化,相应地发生位置变化。虚拟相机则会跟随该虚拟跟踪对象进行移动,从而将三维虚拟环境中位于该虚拟跟踪对象周围的内容拍摄下来,呈现在画面帧中提供给用户。
步骤220,在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定虚拟跟踪对象的目标位置。
角色锁定状态是指自身角色以某一个其他虚拟角色为锁定目标的状态,该其他虚拟角色可以是其他用户或者系统控制的虚拟角色。在角色锁定状态下,虚拟相机的位置和朝向,需要随着自身角色和锁定角色的位置变化而变化,从而尽可能地在虚拟相机拍摄的画面帧中包含自身角色和锁定角色,让用户能够在画面帧中查看到自身角色和锁定角色。
在本申请实施例中,由于虚拟相机的视觉焦点是虚拟跟踪对象,虚拟相机的位置和朝向会随着虚拟跟踪对象的位置变化而变化,而虚拟跟踪对象的位置,则会随着自身角色和锁定角色的位置变化而变化。
在本申请实施例中,仅以自身角色的锁定目标为第一锁定角色为例,对虚拟相机在角色锁定状态下的更新过程进行介绍说明,该第一锁定角色可以是自身角色锁定的任意一个其他虚拟角色。
在一些实施例中,步骤220包括如下几个子步骤:
1.在角色锁定状态下,以自身角色的目标位置为跟随目标,在目标直线上确定虚拟跟踪对象的待定目标位置;其中,目标直线垂直于自身角色的目标位置和第一锁定角色的目标位置之间的连线。
在角色锁定状态下,一方面,虚拟跟踪对象仍然需要以自身角色为跟随目标,跟随自身角色的移动而移动,另一方面,为了让画面帧中呈现出当前锁定的第一锁定角色,虚拟跟踪对象的目标位置还需要考虑第一锁定角色的目标位置。
在本申请实施例中,目标位置可以理解为一个规划位置,是指所要或期望移动至的位置。例如,自身角色的目标位置是指自身角色所要或期望移动至的位置,第一锁定角色的目标位置是指该第一锁定角色所要或期望移动至的位置。自身角色的目标位置可以根据用户对自身角色的控制操作所确定。第一锁定角色的目标位置可以根据系统或其他用户对该第一锁定角色的控制操作所确定。
如图3所示,其示例性示出了一种确定虚拟跟踪对象31的待定目标位置的示意图。自身角色32的目标位置在图3中以点A表示,第一锁定角色33的目标位置在图3中以点B表示,目标直线CD垂直于直线AB,在目标直线CD上确定虚拟跟踪对象31的待定目标位置,如图3中点O所示。在图3中,目标直线CD垂直于直线AB且经过点A的直线,也即目标直线垂直于自身角色32的目标位置(点A)和第一锁定角色33的目标位置(点B)之间的连线,且目标直线经过自身角色32的目标位置(点A)。在一些其他实施例中,目标直线CD也可以是垂直于直线AB,但不经过点A的直线。
2.若虚拟跟踪对象的待定目标位置满足条件,则将虚拟跟踪对象的待定目标位置,确定为虚拟跟踪对象的目标位置。
3.若虚拟跟踪对象的待定目标位置不满足条件,则对虚拟跟踪对象的待定目标位置进行调整,得到虚拟跟踪对象的目标位置。
在本申请实施例中,在确定出虚拟跟踪对象的待定目标位置之后,需要判断该待定目标位置是否满足条件,在满足条件的情况下,将该待定目标位置确定为虚拟跟踪对象的目标位置。另外,在不满足条件的情况下,需要对该待定目标位置进行调整,得到虚拟跟踪对象的目标位置,该调整得到的目标位置满足上述条件。该条件的设定是为了让虚拟跟踪对象的目标位置在一个比较合适的位置,虚拟相机以该虚拟跟踪对象为视觉焦点进行拍摄时,能够将自身对象和第一锁定对象都拍摄进画面中,且自身对象和第一锁定对象的位置不存在重叠,从而提升画面显示效果。
可选地,上述条件包括:虚拟跟踪对象的待定目标位置相对于自身角色的目标位置的偏移距离小于或等于最大偏移量。若虚拟跟踪对象的待定目标位置相对于自身角色的目标位置的偏移距离大于最大偏移量,则以最大偏移量为基准,对虚拟跟踪对象的待定目标位置进行调整,得到虚拟跟踪对象的目标位置;其中,虚拟跟踪对象的目标位置相对于自身角色的目标位置的偏移距离,小于或等于最大偏移量。可选地,该最大偏移量可以是一个大于0的数值。可选地,该最大偏移量可以是一个固定值,也可以是一个根据虚拟相机的位置动态确定的数值。例如,如图3所示,假设线段CA的长度为最大偏移量,如果线段OA的长度大于线段CA的长度,则将点C确定为虚拟跟踪对象31的目标位置;如果线段OA的长度小于或等于线段CA的长度,则将点O确定为虚拟跟踪对象31的目标位置。通过上述方式,能够避免虚拟跟踪对象与自身对象之间的距离过远,导致虚拟相机拍摄的画面帧中不包含自身对象的情况发生。
可选地,上述条件还包括:虚拟跟踪对象的待定目标位置相对于自身角色的目标位置的偏移距离大于最小偏移量。若虚拟跟踪对象的待定目标位置相对于自身角色的目标位置的偏移距离小于或等于最小偏移量,则以该最小偏移量为基准,对虚拟跟踪对象的待定目标位置进行调整,得到虚拟跟踪对象的目标位置;其中,虚拟跟踪对象的目标位置相对于自身角色的目标位置的偏移距离,大于最小偏移量。可选地,该最小偏移量的取值可以是0,也可以是一个大于0的数值,本申请对此不作限定。另外,最小偏移量小于上文介绍的最大偏移量。可选地,该最小偏移量可以是一个固定值,也可以是一个根据虚拟相机的位置动态确定的数值。例如,如图3所示,如果点O和点A重合,则将点O沿点C的方向移动一定距离后得到虚拟跟踪对象31的目标位置;如果点O和点A不重合,则将点O确定为虚拟跟踪对象31的目标位置。通过上述方式,能够避免虚拟跟踪对象在自身对象和第一锁定对象的连线上,从而导致虚拟相机拍摄的画面帧中第一锁定对象被自身对象遮挡的情况发生。
可选地,上述条件还包括:虚拟跟踪对象的待定目标位置位于自身角色的背后夹角区域之内。若虚拟跟踪对象的待定目标位置位于自身角色的背后夹角区域之外,则以自身角色的背后夹角区域为基准,对虚拟跟踪对象的待定目标位置进行调整,得到虚拟跟踪对象的目标位置;其中,虚拟跟踪对象的目标位置位于自身角色的背后夹角区域之内。其中,自身角色的背后夹角区域是指以经过自身角色的目标位置和第一锁定对象的目标位置的直线为中轴线,且朝向第一锁定对象的相反方向的夹角区域。在本申请实施例中,对该背后夹角区域的大小不作限定,例如其可以是90度、120度、150度、180度等,这可以根据实际需求进行设定。如图4所示,其示例性示出了一种背后夹角区域的示意图。自身角色32的目标位置在图4中以点A表示,第一锁定角色33的目标位置在图4中以点B表示,自身角色32的背后夹角区域以角α表示。如果虚拟跟踪对象31的待定目标位置O位于角α之外,则将该点O移动至角α的边上得到虚拟跟踪对象31的目标位置;如果虚拟跟踪对象31的待定目标位置O位于角α之内,则将该点O确定为虚拟跟踪对象31的目标位置。通过上述方式,能够保证自身角色相比于第一锁定角色更加地靠近虚拟相机,使得用户能够通过近大远小的显示效果直观地区分自身角色和第一锁定角色。
如图5所示,其示例性示出了采用上述方式确定出满足条件的虚拟跟踪对象的目标位置之后,采用虚拟相机以该虚拟跟踪对象为视觉焦点,对三维虚拟环境进行拍摄得到的画面。从图5中可以看出,一方面自身角色32和第一锁定角色33都在画面中,且自身角色32并不会遮挡第一锁定角色33,另一方面自身角色32相比于第一锁定角色33距离虚拟相机更近,自身角色32的尺寸大于第一锁定角色33的尺寸,使得用户可以更加直观地区分这两个角色。
步骤230,根据虚拟跟踪对象的目标位置,确定虚拟相机的目标位置和目标朝向;其中,虚拟相机的目标位置与虚拟跟踪对象的目标位置之间的距离,小于虚拟相机的目标位置与第一锁定角色的目标位置之间的距离。
在确定出虚拟跟踪对象的目标位置之后,便可以确定出虚拟相机的目标位置和目标朝向。在本申请实施例中,虚拟相机的目标位置与虚拟跟踪对象的目标位置之间的距离,小于虚拟相机的目标位置与第一锁定角色的目标位置之间的距离,从而实现在虚拟相机的视野范围内,虚拟跟踪对象相比于第一锁定角色更加地靠近虚拟相机。
在一些实施例中,步骤230包括如下几个子步骤:
1.根据虚拟跟踪对象的目标位置,确定虚拟相机所在的旋转轨道;其中,旋转轨道所在的平面与三维虚拟环境的参考平面平行,且旋转轨道的中轴线经过虚拟跟踪对象的目标位置;
如图6所示,虚拟跟踪对象31的目标位置以点O表示,自身对象32的目标位置以点A表示,上述虚拟跟踪对象31的目标位置(即点O)和自身对象32的目标位置(即点A)位于三维虚拟环境的参考平面中。虚拟相机34所在的旋转轨道35所在的平面与三维虚拟环境的参考平面平行,且旋转轨道35的中轴线36经过虚拟跟踪对象31的目标位置(即点O)。其中,三维虚拟环境的参考平面可以是三维虚拟环境的水平面(如地平面),三维虚拟环境中的虚拟对象在该参考平面之上,虚拟相机34所在的旋转轨道35所在的平面也在该参考平面之上,从而以一定的俯视视角对三维虚拟环境中的内容进行拍摄。
2.根据虚拟跟踪对象的目标位置和第一锁定角色的目标位置,在旋转轨道上确定虚拟相机的目标位置和目标朝向。
如果第一锁定角色的目标位置和虚拟跟踪对象的目标位置是在三维虚拟环境的参考平面中标定的,可选地,虚拟相机的目标位置在三维虚拟环境的参考平面中的投影点,位于第一锁定角色的目标位置和虚拟跟踪对象的目标位置所在的直线上,且虚拟跟踪对象的目标位置位于上述投影点和第一锁定角色的目标位置之间。
如图7所示,虚拟跟踪对象31的目标位置以点O表示,自身对象32的目标位置以点A表示,第一锁定角色33的目标位置以点B表示,在旋转轨道35上,能够唯一确定出一个点K,该点K在三维虚拟环境的参考平面中的投影点记为点K’,该点K’在直线OB上,且点O位于点K’和点B之间。将该点K确定为虚拟相机34的目标位置,将射线KO的朝向确定为虚拟相机34的目标朝向。上述点K在参考平面中的投影点K’,是指作一条经过点K且垂直于参考平面的直线,该直线与参考平面的交点即为投影点K’。
步骤240,根据虚拟相机的目标位置和目标朝向,以及虚拟相机在第一画面帧中的实际位置和实际朝向,插值得到虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向。
在确定出虚拟相机的目标位置之后,结合虚拟相机在第一画面帧中的实际位置,通过第一插值算法可以得到虚拟相机在第二画面帧中的单帧目标位置。该第一插值算法的目标是让虚拟相机的位置逐渐(或者说平滑地)靠近虚拟相机的目标位置。
类似地,在确定出虚拟相机的目标朝向之后,结合虚拟相机在第一画面帧中的实际朝向,通过第二插值算法可以得到虚拟相机在第二画面帧中的单帧目标朝向。该第二插值算法的目标是让虚拟相机的朝向逐渐(或者说平滑地)靠近虚拟相机的目标朝向。
在一些实施例中,确定虚拟相机在第二画面帧中的单帧目标位置的过程如下:根据第一距离确定第一插值系数,第一距离是指第一锁定角色与自身角色之间的距离,第一插值系数用于确定虚拟相机的位置的调整量;根据虚拟相机的目标位置、虚拟相机在第一画面帧中的实际位置和第一插值系数,确定虚拟相机在第二画面帧中的单帧目标位置。
可选地,第一插值系数与第一距离呈正相关关系。示例性地,如图8所示,其示出了第一距离和第一插值系数之间的关系曲线81。基于该关系曲线81,可以根据第一距离确定出第一插值系数。例如,第一插值系数可以是一个取值在[0,1]之间的数值。可选地,计算虚拟相机的目标位置和虚拟相机在第一画面帧中的实际位置之间的距离,将该距离与第一插值系数相乘,得到位置调整量,然后将虚拟相机在第一画面帧中的实际位置向虚拟相机的目标位置的方向平移上述位置调整量,得到虚拟相机在第二画面帧中的单帧目标位置。通过上述方式确定虚拟相机位置相关的插值系数,在自身角色与锁定角色距离变化较为大幅时,虚拟相机的位移变化也相应较大,在自身角色与锁定角色距离变化较为小幅时,虚拟相机的位移变化也相应较小,从而保证自身角色和锁定角色尽可能地都不脱离视野,且画面内容平滑变化。
在一些实施例中,确定虚拟相机在第二画面帧中的单帧目标朝向的过程如下:根据第二距离确定第二插值系数,第二距离是指第一锁定角色与画面中轴线之间的距离,第二插值系数用于确定虚拟相机的朝向的调整量;根据虚拟相机的目标朝向、虚拟相机在第一画面帧中的实际朝向和第二插值系数,确定虚拟相机在第二画面帧中的单帧目标朝向。
可选地,第二插值系数与第二距离呈正相关关系。示例性地,如图9所示,其输出了第二距离和第二插值系数之间的关系示意图。在图9中,自身角色以32表示,第一锁定角色以33表示,画面中轴线以91表示。例如,第二插值系数可以是一个取值在[0,1]之间的数值。当第一锁定角色33与画面中轴线91之间的距离越小,第二插值系数越接近于0;当第一锁定角色33与画面中轴线91之间的距离越大,第二插值系数越接近于1。可选地,如图10所示,计算虚拟相机34的目标朝向和虚拟相机34在第一画面帧中的实际朝向之间的夹角θ,将该夹角θ与第二插值系数相乘,得到朝向调整量γ,然后将实际朝向向目标朝向的方向偏转上述朝向调整量γ,得到虚拟相机34在第二画面帧中的单帧目标朝向。通过上述方式确定虚拟相机朝向相关的插值系数,当锁定角色靠近画面中轴线时,朝向改变较小,即便是锁定角色有频繁急促的位移,虚拟相机也不会大幅度晃动;当锁定角色远离画面中轴线时,朝向改变较大,即便锁定角色以很快的速度朝着视野范围外冲刺,虚拟相机也能够及时做出响应,保证锁定角色不脱离视野范围。
步骤250,基于虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示第二画面帧。
客户端在确定出虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向之后,便可控制虚拟相机按照上述单帧目标位置和单帧目标朝向进行放置,并以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对三维虚拟环境进行拍摄,得到第二画面帧,然后将该第二画面帧进行显示。
可选地,第二画面帧可以是第一画面帧的下一个画面帧,可以在显示完第一画面帧之后,显示第二画面帧。
另外,在本申请实施例中,仅与第一画面帧到第二画面帧的切换过程为例,对在角色锁定状态下的画面切换过程进行了介绍说明,应当理解的是,在角色锁定状态下任意两个画面帧之间的切换过程,均可按照上文介绍的第一画面帧到第二画面帧的切换过程进行实现。
综上所述,本申请实施例提供的技术方案,通过以三维虚拟环境中的虚拟跟踪对象作为虚拟相机的视觉焦点,在角色锁定状态下,基于自身角色和锁定角色的位置信息,确定虚拟跟踪对象的位置信息,然后基于该虚拟跟踪对象的位置信息,更新虚拟相机的位置和朝向;由于在确定虚拟跟踪对象的位置信息时,兼顾了自身角色和锁定角色的位置信息,从而使得确定出的虚拟跟踪对象的位置信息更加合理准确,进而保证在虚拟相机以该虚拟跟踪对象作为视觉焦点拍摄的画面中,自身角色和锁定角色能够以一个更加合理清晰的方式呈现给用户,提升了画面的显示效果。
在一些实施例中,如图11所示,还可以支持在角色锁定状态下,对锁定角色进行切换。该过程可以包括如下几个步骤(1110~1130):
步骤1110,在角色锁定状态下,响应于针对自身角色的视野调整操作,控制虚拟相机绕虚拟跟踪对象进行旋转。
在角色锁定状态下,假设当前锁定的是第一锁定角色。用户可以通过执行针对自身角色的视野调整操作,控制虚拟相机绕虚拟跟踪对象进行旋转,以切换锁定角色。其中,虚拟相机的旋转轨道可以参见上文实施例中的介绍说明,此处不再赘述。虚拟相机的旋转方向和旋转速度,可以根据视野调整操作来确定。以视野调整操作是用户手指在屏幕中的滑动操作为例,可以根据该滑动操作的方向确定虚拟相机的旋转方向,根据该滑动操作的滑动速度或滑动距离确定虚拟相机的旋转速度。
在一些实施例中,在角色锁定状态下,响应于针对自身角色的视野调整操作,客户端从角色锁定状态切换至非角色锁定状态,在非角色锁定状态下,根据视野调整操作控制虚拟相机绕虚拟跟踪对象进行旋转。
可选地,角色锁定状态和非角色锁定状态,具有分别对应的虚拟相机。为了便于描述,将角色锁定状态下使用的虚拟相机称为第一虚拟相机,将非角色锁定状态使用的虚拟相机称为第二虚拟相机。在角色锁定状态下,第一虚拟相机处于工作状态,第二虚拟相机处于非工作状态,客户端可以按照上文图2所述实施例介绍的方法流程,对第一虚拟相机的位置和朝向进行更新。在角色锁定状态下,响应于针对自身角色的视野调整操作,客户端从角色锁定状态切换至非角色锁定状态,并且控制当前使用的虚拟相机从第一虚拟相机切换为第二虚拟相机,根据视野调整操作控制第二虚拟相机绕虚拟跟踪对象进行旋转。可选地,第一虚拟相机和第二虚拟相机的旋转轨道的尺寸以及相较于参考平面的位置相同,从而保证第一虚拟相机和第二虚拟相机实现无缝切换,让用户从画面中感受不到相机切换过程,从而提升了虚拟相机的切换效率以及用户体验。
步骤1120,在旋转的过程中,确定三维虚拟环境中的预锁定角色,显示第三画面帧,第三画面帧中显示有预锁定角色以及预锁定角色对应的预锁定标记;
在虚拟相机进行旋转的过程中,第一锁定角色不再被锁定,客户端此时处于非角色锁定状态,此时的非角色锁定状态也可以称为预锁定状态。在预锁定状态下,客户端根据三维虚拟环境中各个虚拟角色的位置,以及虚拟相机的位置和朝向等信息,确定出三维虚拟环境中的预锁定角色,预锁定角色是指即将被锁定的虚拟角色或者说有可能被锁定的虚拟角色。与此同时,在预锁定状态下,如果存在预锁定角色,客户端显示的画面帧中会显示与该预锁定角色对应的预锁定标记,以提示用户当前哪个虚拟角色处于被预锁定。
步骤1130,响应于针对预锁定角色的锁定确认操作,将预锁定角色确定为第二锁定角色,显示第四画面帧,第四画面帧中显示有第二锁定角色以及第二锁定角色对应的锁定标记。
锁定确认操作是指用户执行的触发将预锁定角色确定为锁定角色的操作。仍然以上述视野调整操作是用户手指在屏幕中的滑动操作为例,如果用户手指离开屏幕,滑动操作结束,则将该滑动操作结束的操作确定为锁定确认操作。在滑动操作结束时,将预锁定角色确定为第二锁定角色。
可选地,客户端在将预锁定角色确定为第二锁定角色之后,还会从非角色锁定状态(或者说预锁定状态)切换至角色锁定状态,在角色锁定状态下,按照上文图2所述实施例介绍的方法流程,对虚拟相机的位置和朝向进行更新。
可选地,如果角色锁定状态和非角色锁定状态,具有分别对应的虚拟相机。那么客户端在从非角色锁定状态(或者说预锁定状态)切换至角色锁定状态的同时,还会控制当前使用的虚拟相机从第二虚拟相机切换为第一虚拟相机,然后按照上文图2所述实施例介绍的方法流程,对第一虚拟相机的位置和朝向进行更新。
另外,锁定标记是用于将锁定角色和其他非锁定角色进行区分的标记。锁定标记可以不同于预锁定标记,从而能够让用户基于不同的标记,区分虚拟角色是预锁定角色还是锁定角色。
示例性地,如图12所示,在图12的(a)部分示出的角色锁定状态下,自身角色32锁定第一锁定角色33,画面帧中显示有第一锁定角色33对应的锁定标记41。此时,用户通过在屏幕上执行滑动操作,可以触发对自身角色的视野进行调整。在滑动操作的过程中,客户端根据该滑动操作的方向和位移等信息,控制虚拟相机绕虚拟跟踪对象进行旋转,在旋转的过程中,客户端会预测三维虚拟环境中的预锁定角色。如图12的(b)部分所示,在确定出预锁定角色38之后,客户端会在画面帧中显示该预锁定角色38对应的预锁定标记42,用户可以基于该预锁定标记42获知当前哪个虚拟角色处于预锁定的状态。如果当前的预锁定角色38符合用户的预期,那么用户可以停止执行滑动操作,如控制手指离开屏幕,此时客户端将预锁定角色38确定为第二锁定角色,并在画面帧中显示与该第二锁定角色对应的锁定标记41,如图12的(c)部分所示。
在本申请实施例中,还通过在角色锁定状态下,支持对自身角色的视野调整,从而实现对锁定角色的切换。另外,在切换过程中,通过客户端自动预测出预锁定角色,并显示与该预锁定角色对应的预锁定标记,使得用户能够直观而又清晰地看到当前哪个虚拟角色处于预锁定的状态,从而方便用户精准而又高效地切换锁定角色。
在一些实施例中,如图13所示,在非角色锁定状态下,虚拟相机的更新过程可以包括如下几个步骤(1310~1350):
步骤1310,在非角色锁定状态下,以自身角色为跟随目标,以插值方式更新虚拟跟踪对象的位置,得到虚拟跟踪对象在第五画面帧中的单帧目标位置。
在非角色锁定状态下,虚拟相机的视觉焦点仍然是虚拟跟踪对象,此时由于不存在锁定角色,因此虚拟跟踪对象的位置更新,仅需考虑自身角色的位置变化,而无需考虑锁定角色的位置变化。可选地,在非角色锁定状态下,通过第三插值算法确定虚拟跟踪对象的单帧目标位置,该第三插值算法的目标是让虚拟跟踪对象平滑地跟随自身角色。
可选地,在非角色锁定状态下,根据第三距离确定第三插值系数,第三距离是指自身角色与虚拟跟踪对象之间的距离,第三插值系数用于确定虚拟跟踪对象的位置的调整量;其中,第三插值系数和第三距离呈正相关关系;根据自身角色在第一画面帧中的实际位置、虚拟跟踪对象在第一画面帧中的实际位置和第三插值系数,确定虚拟跟踪对象在第五画面帧中的单帧目标位置。示例性地,第三插值系数也可以是一个取值在[0,1]之间的数值,计算自身角色在第一画面帧中的实际位置和虚拟跟踪对象在第一画面帧中的实际位置之间的距离,将该距离与第三插值系数相乘,得到位置调整量,然后将虚拟跟踪对象在第一画面帧中的实际位置向自身角色的方向平移上述位置调整量,得到虚拟跟踪对象在第五画面帧中的单帧目标位置。第五画面帧可以是第一画面帧的下一个画面帧。通过上述方式,当自身角色离虚拟跟踪对象较远时,虚拟跟踪对象的跟随速度较快;当自身角色离虚拟跟踪对象较近时,虚拟跟踪对象的跟随速度较慢。由于虚拟跟踪对象在三维虚拟环境中缓慢跟随自身角色,即便自身角色出现不规则位移或是与其他虚拟角色发生大幅度的错位,虚拟相机也会平滑移动。
步骤1320,根据虚拟跟踪对象在第五画面帧中的单帧目标位置,确定虚拟相机在第五画面帧中的单帧目标位置。
有了虚拟跟踪对象在第五画面帧中的单帧目标位置之后,根据虚拟相机和虚拟跟踪对象之间既定的位置关系,便可以确定出虚拟相机在第五画面帧中的单帧目标位置。
示例性地,如图14所示,在非角色锁定状态下,以自身角色32为跟随目标,以插值方式更新虚拟跟踪对象31的位置,得到虚拟跟踪对象31的单帧目标位置,然后根据虚拟跟踪对象31的单帧目标位置,进一步确定出虚拟相机34的单帧目标位置。
步骤1330,在未获取到针对自身角色的视野调整操作的情况下,将虚拟相机在第一画面帧中的实际朝向,确定为虚拟相机在所述第五画面帧中的单帧目标朝向。
在非角色锁定状态下,如果用户没有执行针对自身角色的视野调整操作来调整视野朝向,那么客户端保持虚拟相机在上一帧中的朝向。
步骤1340,在获取到针对自身角色的视野调整操作的情况下,根据视野调整操作对虚拟相机在第一画面帧中的实际朝向进行调整,得到虚拟相机在第五画面帧中的单帧目标朝向。
在非角色锁定状态下,如果用户执行针对自身角色的视野调整操作来调整视野朝向,那么客户端需要更新虚拟相机的朝向。可选地,客户端根据视野调整操作来更新虚拟相机的朝向。例如,以视野调整操作是针对屏幕的滑动操作为例,客户端可以根据该滑动操作的方向和位移等信息,确定虚拟相机的朝向的调整方向和调整角度,然后结合上一帧中的朝向,确定出在下一帧中的目标朝向。
步骤1350,基于虚拟相机在第五画面帧中的单帧目标位置和单帧目标朝向,生成并显示第五画面帧。
客户端在确定出虚拟相机在第五画面帧中的单帧目标位置和单帧目标朝向之后,便可控制虚拟相机按照上述单帧目标位置和单帧目标朝向进行放置,并以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对三维虚拟环境进行拍摄,得到第五画面帧,然后将该第五画面帧进行显示。
在本申请实施例中,还通过在非角色锁定状态下,通过控制虚拟跟踪对象跟随自身角色平滑移动,然后虚拟相机以虚拟跟踪对象为视觉焦点拍摄得到画面,由于虚拟跟踪对象在三维虚拟环境中缓慢跟随自身角色,即便自身角色出现不规则位移或是与其他虚拟角色发生大幅度的错位,虚拟相机也会平滑移动,避免画面内容出现剧烈抖动等现象,提升了用户观看体验。
下面,结合图15对本申请技术方案进行概述说明。
如图15所示,在开始更新虚拟相机之后,客户端首先判断是否处于角色锁定状态。如果处于角色锁定状态,则进一步判断在角色锁定状态下,用户是否执行视野调整操作。如果在角色锁定状态下,用户是否执行视野调整操作。如果用户未执行视野调整操作,则客户端根据自身角色的目标位置和第一锁定角色的目标位置,确定虚拟跟踪对象的目标位置。然后判断虚拟跟踪对象的目标位置相对于自身角色的目标位置的偏移距离,是否超出最大偏移量。如果超出最大偏移量,则调整虚拟跟踪对象的目标位置;如果未超出最大偏移量,则保持虚拟相机的位置和朝向。进一步地,判断虚拟跟踪对象的目标位置是否位于自身角色的背后夹角区域之外。如果位于背后夹角区域之外,则调整虚拟跟踪对象的目标位置;如果位于背后夹角范围之内,则根据虚拟跟踪对象的目标位置,确定虚拟相机的目标位置和目标朝向。然后,基于该虚拟相机的目标位置和目标朝向,以及虚拟相机当前的实际位置和实际朝向,插值得到虚拟相机的单帧目标位置和单帧目标朝向。这样就在角色锁定状态下,对虚拟相机更新完成。
在角色锁定状态下,如果用户执行视野调整操作,则客户端控制虚拟相机绕虚拟跟踪对象进行旋转,确定预锁定角色。这样就在预锁定状态下,对虚拟相机更新完成。
在非角色锁定状态下,以自身角色为跟随目标,以插值方式更新虚拟跟踪对象的位置。然后判断用户是否执行视野调整操作。如果执行视野调整操作,则根据视野调整操作确定单帧目标朝向;如果未执行视野调整操作,则将虚拟相机当前的实际朝向确定为单帧目标朝向。这样就在非角色锁定状态下,对虚拟相机更新完成。
在客户端运行过程中,虚拟相机的位置和朝向需要在每一帧都进行更新,然后基于更新后的位置和朝向,并以虚拟跟踪对象的视觉焦点,对三维虚拟环境进行拍摄,得到画面帧显示给用户。
请参考图16,其示出了本申请另一个实施例提供的画面显示方法的流程图。该方法各步骤的执行主体可以是图1所示方案实施环境中的终端10,如各步骤的执行主体可以是目标应用程序的客户端。在下文方法实施例中,为了便于描述,仅以各步骤的执行主体为“客户端”进行介绍说明。该方法可以包括如下几个步骤(1610~1620):
步骤1610,显示第一画面帧,第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对三维虚拟环境进行拍摄得到的画面。
步骤1620,在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示第二画面帧;其中,虚拟相机的目标位置和目标朝向是根据虚拟跟踪对象的目标位置确定的,且虚拟相机的目标位置与虚拟跟踪对象的目标位置之间的距离,小于虚拟相机的目标位置与第一锁定角色的目标位置之间的距离。
在角色锁定状态下,由于自身角色和第一锁定角色的位置都有可能发生移动,因此需要随着自身角色和第一锁定角色的位置变化,适应性地调整虚拟相机的位置和朝向,从而尽可能地在虚拟相机拍摄的画面帧中包含自身角色和锁定角色。
在示例性实施例中,步骤1620可以包括如下几个子步骤:
1.在角色锁定状态下,响应于自身角色和所述第一锁定角色中的至少之一的移动,确定自身角色的目标位置和第一锁定角色的目标位置;
2.根据自身角色的目标位置和第一锁定角色的目标位置,确定虚拟跟踪对象的目标位置;
3.根据虚拟跟踪对象的目标位置,确定虚拟相机的目标位置和目标朝向;
4.根据虚拟相机的目标位置和目标朝向,以及虚拟相机在第一画面帧中的实际位置和实际朝向,插值得到虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;
5.基于虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示第二画面帧。
可选地,本申请实施例还可以支持在角色锁定状态下,对锁定角色进行切换。该方法还包括:
在角色锁定状态下,响应于针对自身角色的视野调整操作,控制虚拟相机绕虚拟跟踪对象进行旋转;
在旋转的过程中,确定三维虚拟环境中的预锁定角色,显示第三画面帧,该第三画面帧中显示有预锁定角色以及预锁定角色对应的预锁定标记;
响应于针对预锁定角色的锁定确认操作,将预锁定角色确定为第二锁定角色,显示第四画面帧,该第四画面帧中显示有第二锁定角色以及第二锁定角色对应的锁定标记。
可选地,在非角色锁定状态下,虚拟相机的更新过程可以包括如下步骤:
在非角色锁定状态下,以自身角色为跟随目标,更新虚拟跟踪对象的位置,得到虚拟跟踪对象在第五画面帧中的单帧目标位置;
基于虚拟相机在第五画面帧中的单帧目标位置和单帧目标朝向,显示第五画面帧;其中,虚拟相机在第五画面帧中的单帧目标位置是根据虚拟跟踪对象在第五画面帧中的单帧目标位置确定的,虚拟相机在第五画面帧中的单帧目标朝向是根据虚拟相机在第一画面帧中的实际朝向确定的。
对于本实施例中未详细说明的细节,和参见上文其他方法实施例中的介绍说明。
综上所述,本申请实施例提供的技术方案,通过以三维虚拟环境中的虚拟跟踪对象作为虚拟相机的视觉焦点,在角色锁定状态下,基于自身角色和锁定角色的位置信息,确定虚拟跟踪对象的位置信息,然后基于该虚拟跟踪对象的位置信息,更新虚拟相机的位置和朝向;由于在确定虚拟跟踪对象的位置信息时,兼顾了自身角色和锁定角色的位置信息,从而使得确定出的虚拟跟踪对象的位置信息更加合理准确,进而保证在虚拟相机以该虚拟跟踪对象作为视觉焦点拍摄的画面中,自身角色和锁定角色能够以一个更加合理清晰的方式呈现给用户,提升了画面的显示效果。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参考图17,其示出了本申请一个实施例提供的画面显示装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的终端,也可以设置在终端中。如图17所示,该装置1700可以包括:画面显示模块1710、对象位置确定模块1720、相机位置确定模块1730和单帧位置确定模块1740。
画面显示模块1710,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面。
对象位置确定模块1720,用于在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置。
相机位置确定模块1730,用于根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;其中,所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
单帧位置确定模块1740,用于根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向。
所述画面显示模块1710,还用于基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
在一些实施例中,所述单帧位置确定模块1740,用于:
根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机所在的旋转轨道;其中,所述旋转轨道所在的平面与所述三维虚拟环境的参考平面平行,且所述旋转轨道的中轴线经过所述虚拟跟踪对象的目标位置;
根据所述虚拟跟踪对象的目标位置和所述第一锁定角色的目标位置,在所述旋转轨道上确定所述虚拟相机的目标位置和目标朝向。
在一些实施例中,所述单帧位置确定模块1740,用于:
根据第一距离确定第一插值系数,所述第一距离是指所述第一锁定角色与所述自身角色之间的距离,所述第一插值系数用于确定所述虚拟相机的位置的调整量;
根据所述虚拟相机的目标位置、所述虚拟相机在所述第一画面帧中的实际位置和所述第一插值系数,确定所述虚拟相机在所述第二画面帧中的单帧目标位置;
根据第二距离确定第二插值系数,所述第二距离是指所述第一锁定角色与画面中轴线之间的距离,所述第二插值系数用于确定所述虚拟相机的朝向的调整量;
根据所述虚拟相机的目标朝向、所述虚拟相机在所述第一画面帧中的实际朝向和所述第二插值系数,确定所述虚拟相机在所述第二画面帧中的单帧目标朝向。
在一些实施例中,所述第一插值系数与所述第一距离呈正相关关系,所述第二插值系数与所述第二距离呈正相关关系。
在一些实施例中,所述对象位置确定模块1720,用于:
在所述角色锁定状态下,以所述自身角色的目标位置为跟随目标,在目标直线上确定所述虚拟跟踪对象的待定目标位置;其中,所述目标直线垂直于所述自身角色的目标位置和所述第一锁定角色的目标位置之间的连线;
若所述虚拟跟踪对象的待定目标位置满足条件,则将所述虚拟跟踪对象的待定目标位置,确定为所述虚拟跟踪对象的目标位置;
若所述虚拟跟踪对象的待定目标位置不满足所述条件,则对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置。
可选地,所述条件包括:所述虚拟跟踪对象的待定目标位置相对于所述自身角色的目标位置的偏移距离小于或等于最大偏移量。所述对象位置确定模块1720,用于若所述虚拟跟踪对象的待定目标位置相对于所述自身角色的目标位置的偏移距离大于所述最大偏移量,则以所述最大偏移量为基准,对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置;其中,所述虚拟跟踪对象的目标位置相对于所述自身角色的目标位置的偏移距离,小于或等于所述最大偏移量。
可选地,所述条件包括:所述虚拟跟踪对象的待定目标位置位于所述自身角色的背后夹角区域之内。所述对象位置确定模块1720,用于若所述虚拟跟踪对象的待定目标位置位于所述自身角色的背后夹角区域之外,则以所述自身角色的背后夹角区域为基准,对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置;其中,所述虚拟跟踪对象的目标位置位于所述自身角色的背后夹角区域之内。
在一些实施例中,所述相机位置确定模块1730,还用于在所述角色锁定状态下,响应于针对所述自身角色的视野调整操作,控制所述虚拟相机绕所述虚拟跟踪对象进行旋转。
所述画面显示模块1710,还用于在旋转的过程中,确定所述三维虚拟环境中的预锁定角色,显示第三画面帧,所述第三画面帧中显示有所述预锁定角色以及所述预锁定角色对应的预锁定标记。
所述画面显示模块1710,还用于响应于针对所述预锁定角色的锁定确认操作,将所述预锁定角色确定为第二锁定角色,显示第四画面帧,所述第四画面帧中显示有所述第二锁定角色以及所述第二锁定角色对应的锁定标记。
在一些实施例中,所述对象位置确定模块1720,还用于在非角色锁定状态下,以所述自身角色为跟随目标,以插值方式更新所述虚拟跟踪对象的位置,得到所述虚拟跟踪对象在第五画面帧中的单帧目标位置。
所述单帧位置确定模块1740,还用于根据所述虚拟跟踪对象在所述第五画面帧中的单帧目标位置,确定所述虚拟相机在所述第五画面帧中的单帧目标位置;在未获取到针对所述自身角色的视野调整操作的情况下,将所述虚拟相机在所述第一画面帧中的实际朝向,确定为所述虚拟相机在所述第五画面帧中的单帧目标朝向;在获取到针对所述自身角色的视野调整操作的情况下,根据所述视野调整操作对所述虚拟相机在所述第一画面帧中的实际朝向进行调整,得到所述虚拟相机在所述第五画面帧中的单帧目标朝向。
所述画面显示模块1710,还用于基于所述虚拟相机在所述第五画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第五画面帧。
可选地,所述对象位置确定模块1720,用于:
在所述非角色锁定状态下,根据第三距离确定第三插值系数,所述第三距离是指所述自身角色与所述虚拟跟踪对象之间的距离,所述第三插值系数用于确定所述虚拟跟踪对象的位置的调整量;其中,所述第三插值系数和所述第三距离呈正相关关系;
根据所述自身角色在所述第一画面帧中的实际位置、所述虚拟跟踪对象在所述第一画面帧中的实际位置和所述第三插值系数,确定所述虚拟跟踪对象在所述第五画面帧中的单帧目标位置。
综上所述,本申请实施例提供的技术方案,通过以三维虚拟环境中的虚拟跟踪对象作为虚拟相机的视觉焦点,在角色锁定状态下,基于自身角色和锁定角色的位置信息,确定虚拟跟踪对象的位置信息,然后基于该虚拟跟踪对象的位置信息,更新虚拟相机的位置和朝向;由于在确定虚拟跟踪对象的位置信息时,兼顾了自身角色和锁定角色的位置信息,从而使得确定出的虚拟跟踪对象的位置信息更加合理准确,进而保证在虚拟相机以该虚拟跟踪对象作为视觉焦点拍摄的画面中,自身角色和锁定角色能够以一个更加合理清晰的方式呈现给用户,提升了画面的显示效果。
本申请另一示例性实施例还提供了一种画面显示装置,如图17所示,该装置1700可以包括:画面显示模块1710。
所述画面显示模块1710,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面。
所述画面显示模块1710,还用于在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧;其中,所述虚拟相机的目标位置和目标朝向是根据所述虚拟跟踪对象的目标位置确定的,且所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
在一些实施例中,如图17所示,该装置1700还可以包括:对象位置确定模块1720、相机位置确定模块1730和单帧位置确定模块1740。
所述对象位置确定模块1720,用于在所述角色锁定状态下,响应于所述自身角色和所述第一锁定角色中的至少之一的移动,确定所述自身角色的目标位置和所述第一锁定角色的目标位置;根据所述自身角色的目标位置和所述第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置。
所述相机位置确定模块1730,用于根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向。
所述单帧位置确定模块1740,用于根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向。
所述画面显示模块1710,用于基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
在一些实施例中,所述相机位置确定模块1730,还用于在所述角色锁定状态下,响应于针对所述自身角色的视野调整操作,控制所述虚拟相机绕所述虚拟跟踪对象进行旋转。
所述画面显示模块1710,还用于在旋转的过程中,确定所述三维虚拟环境中的预锁定角色,显示第三画面帧,所述第三画面帧中显示有所述预锁定角色以及所述预锁定角色对应的预锁定标记。
所述画面显示模块1710,还用于响应于针对所述预锁定角色的锁定确认操作,将所述预锁定角色确定为第二锁定角色,显示第四画面帧,所述第四画面帧中显示有所述第二锁定角色以及所述第二锁定角色对应的锁定标记。
在一些实施例中,所述对象位置确定模块1720,还用于在非角色锁定状态下,以所述自身角色为跟随目标,更新所述虚拟跟踪对象的位置,得到所述虚拟跟踪对象在第五画面帧中的单帧目标位置。
所述画面显示模块1710,还用于基于所述虚拟相机在所述第五画面帧中的单帧目标位置和单帧目标朝向,显示所述第五画面帧;其中,所述虚拟相机在所述第五画面帧中的单帧目标位置是根据虚拟跟踪对象在所述第五画面帧中的单帧目标位置确定的,所述虚拟相机在所述第五画面帧中的单帧目标朝向是根据所述虚拟相机在所述第一画面帧中的实际朝向确定的。
综上所述,本申请实施例提供的技术方案,通过以三维虚拟环境中的虚拟跟踪对象作为虚拟相机的视觉焦点,在角色锁定状态下,基于自身角色和锁定角色的位置信息,确定虚拟跟踪对象的位置信息,然后基于该虚拟跟踪对象的位置信息,更新虚拟相机的位置和朝向;由于在确定虚拟跟踪对象的位置信息时,兼顾了自身角色和锁定角色的位置信息,从而使得确定出的虚拟跟踪对象的位置信息更加合理准确,进而保证在虚拟相机以该虚拟跟踪对象作为视觉焦点拍摄的画面中,自身角色和锁定角色能够以一个更加合理清晰的方式呈现给用户,提升了画面的显示效果。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图18,其示出了本申请一个实施例提供的终端1800的结构框图。该终端1800可以是图1所示实施环境中的终端10,用于实施上述实施例中提供的画面显示方法。具体来讲:
通常,终端1800包括有:处理器1801和存储器1802。
处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储计算机程序,所述计算机程序经配置以由一个或者一个以上处理器执行,以实现上述画面显示方法。
在一些实施例中,终端1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、显示屏1805、音频电路1807和电源1808中的至少一种。
本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在一示例性实施例中,还提供了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序在被处理器执行时以实现上画面显示方法。
可选地,该计算机可读存储介质可以包括:ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、SSD(Solid State Drives,固态硬盘)或光盘等。其中,随机存取存储器可以包括ReRAM(Resistance Random Access Memory,电阻式随机存取存储器)和DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
在一示例性实施例中,还提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中。终端的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器执行所述计算机指令,使得所述终端执行上述画面显示方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (19)

1.一种画面显示方法,其特征在于,所述方法包括:
显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置;
根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;其中,所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离;
根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;
基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
2.根据权利要求1所述的方法,其特征在于,所述根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向,包括:
根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机所在的旋转轨道;其中,所述旋转轨道所在的平面与所述三维虚拟环境的参考平面平行,且所述旋转轨道的中轴线经过所述虚拟跟踪对象的目标位置;
根据所述虚拟跟踪对象的目标位置和所述第一锁定角色的目标位置,在所述旋转轨道上确定所述虚拟相机的目标位置和目标朝向。
3.根据权利要求1所述的方法,其特征在于,所述根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,包括:
根据第一距离确定第一插值系数,所述第一距离是指所述第一锁定角色与所述自身角色之间的距离,所述第一插值系数用于确定所述虚拟相机的位置的调整量;
根据所述虚拟相机的目标位置、所述虚拟相机在所述第一画面帧中的实际位置和所述第一插值系数,确定所述虚拟相机在所述第二画面帧中的单帧目标位置;
根据第二距离确定第二插值系数,所述第二距离是指所述第一锁定角色与画面中轴线之间的距离,所述第二插值系数用于确定所述虚拟相机的朝向的调整量;
根据所述虚拟相机的目标朝向、所述虚拟相机在所述第一画面帧中的实际朝向和所述第二插值系数,确定所述虚拟相机在所述第二画面帧中的单帧目标朝向。
4.根据权利要求3所述的方法,其特征在于,所述第一插值系数与所述第一距离呈正相关关系,所述第二插值系数与所述第二距离呈正相关关系。
5.根据权利要求1所述的方法,其特征在于,所述在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置,包括:
在所述角色锁定状态下,以所述自身角色的目标位置为跟随目标,在目标直线上确定所述虚拟跟踪对象的待定目标位置;其中,所述目标直线垂直于所述自身角色的目标位置和所述第一锁定角色的目标位置之间的连线;
若所述虚拟跟踪对象的待定目标位置满足条件,则将所述虚拟跟踪对象的待定目标位置,确定为所述虚拟跟踪对象的目标位置;
若所述虚拟跟踪对象的待定目标位置不满足所述条件,则对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置。
6.根据权利要求5所述的方法,其特征在于,所述条件包括:所述虚拟跟踪对象的待定目标位置相对于所述自身角色的目标位置的偏移距离小于或等于最大偏移量;
所述若所述虚拟跟踪对象的待定目标位置不满足所述条件,则对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置,包括:
若所述虚拟跟踪对象的待定目标位置相对于所述自身角色的目标位置的偏移距离大于所述最大偏移量,则以所述最大偏移量为基准,对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置;
其中,所述虚拟跟踪对象的目标位置相对于所述自身角色的目标位置的偏移距离,小于或等于所述最大偏移量。
7.根据权利要求5所述的方法,其特征在于,所述条件包括:所述虚拟跟踪对象的待定目标位置位于所述自身角色的背后夹角区域之内;
所述若所述虚拟跟踪对象的待定目标位置不满足所述条件,则对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置,包括:
若所述虚拟跟踪对象的待定目标位置位于所述自身角色的背后夹角区域之外,则以所述自身角色的背后夹角区域为基准,对所述虚拟跟踪对象的待定目标位置进行调整,得到所述虚拟跟踪对象的目标位置;
其中,所述虚拟跟踪对象的目标位置位于所述自身角色的背后夹角区域之内。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述角色锁定状态下,响应于针对所述自身角色的视野调整操作,控制所述虚拟相机绕所述虚拟跟踪对象进行旋转;
在旋转的过程中,确定所述三维虚拟环境中的预锁定角色,显示第三画面帧,所述第三画面帧中显示有所述预锁定角色以及所述预锁定角色对应的预锁定标记;
响应于针对所述预锁定角色的锁定确认操作,将所述预锁定角色确定为第二锁定角色,显示第四画面帧,所述第四画面帧中显示有所述第二锁定角色以及所述第二锁定角色对应的锁定标记。
9.根据权利要求1所述的方法,其特征在于,所述显示第一画面帧之后,还包括:
在非角色锁定状态下,以所述自身角色为跟随目标,以插值方式更新所述虚拟跟踪对象的位置,得到所述虚拟跟踪对象在第五画面帧中的单帧目标位置;
根据所述虚拟跟踪对象在所述第五画面帧中的单帧目标位置,确定所述虚拟相机在所述第五画面帧中的单帧目标位置;
在未获取到针对所述自身角色的视野调整操作的情况下,将所述虚拟相机在所述第一画面帧中的实际朝向,确定为所述虚拟相机在所述第五画面帧中的单帧目标朝向;
在获取到针对所述自身角色的视野调整操作的情况下,根据所述视野调整操作对所述虚拟相机在所述第一画面帧中的实际朝向进行调整,得到所述虚拟相机在所述第五画面帧中的单帧目标朝向;
基于所述虚拟相机在所述第五画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第五画面帧。
10.根据权利要求9所述的方法,其特征在于,所述在非角色锁定状态下,以所述自身角色为跟随目标,以插值方式更新所述虚拟跟踪对象的位置,得到所述虚拟跟踪对象在第五画面帧中的单帧目标位置,包括:
在所述非角色锁定状态下,根据第三距离确定第三插值系数,所述第三距离是指所述自身角色与所述虚拟跟踪对象之间的距离,所述第三插值系数用于确定所述虚拟跟踪对象的位置的调整量;其中,所述第三插值系数和所述第三距离呈正相关关系;
根据所述自身角色在所述第一画面帧中的实际位置、所述虚拟跟踪对象在所述第一画面帧中的实际位置和所述第三插值系数,确定所述虚拟跟踪对象在所述第五画面帧中的单帧目标位置。
11.一种画面显示方法,其特征在于,所述方法包括:
显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧;其中,所述虚拟相机的目标位置和目标朝向是根据所述虚拟跟踪对象的目标位置确定的,且所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
12.根据权利要求11所述的方法,其特征在于,所述在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧,包括:
在所述角色锁定状态下,响应于所述自身角色和所述第一锁定角色中的至少之一的移动,确定所述自身角色的目标位置和所述第一锁定角色的目标位置;
根据所述自身角色的目标位置和所述第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置;
根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;
根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向;
基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
13.根据权利要求11所述的方法,其特征在于,所述方法还包括:
在所述角色锁定状态下,响应于针对所述自身角色的视野调整操作,控制所述虚拟相机绕所述虚拟跟踪对象进行旋转;
在旋转的过程中,确定所述三维虚拟环境中的预锁定角色,显示第三画面帧,所述第三画面帧中显示有所述预锁定角色以及所述预锁定角色对应的预锁定标记;
响应于针对所述预锁定角色的锁定确认操作,将所述预锁定角色确定为第二锁定角色,显示第四画面帧,所述第四画面帧中显示有所述第二锁定角色以及所述第二锁定角色对应的锁定标记。
14.根据权利要求11所述的方法,其特征在于,所述显示第一画面帧之后,还包括:
在非角色锁定状态下,以所述自身角色为跟随目标,更新所述虚拟跟踪对象的位置,得到所述虚拟跟踪对象在第五画面帧中的单帧目标位置;
基于所述虚拟相机在所述第五画面帧中的单帧目标位置和单帧目标朝向,显示所述第五画面帧;其中,所述虚拟相机在所述第五画面帧中的单帧目标位置是根据虚拟跟踪对象在所述第五画面帧中的单帧目标位置确定的,所述虚拟相机在所述第五画面帧中的单帧目标朝向是根据所述虚拟相机在所述第一画面帧中的实际朝向确定的。
15.一种画面显示装置,其特征在于,所述装置包括:
画面显示模块,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
对象位置确定模块,用于在角色锁定状态下,根据自身角色的目标位置和第一锁定角色的目标位置,确定所述虚拟跟踪对象的目标位置;
相机位置确定模块,用于根据所述虚拟跟踪对象的目标位置,确定所述虚拟相机的目标位置和目标朝向;其中,所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离;
单帧位置确定模块,用于根据所述虚拟相机的目标位置和目标朝向,以及所述虚拟相机在所述第一画面帧中的实际位置和实际朝向,插值得到所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向;
所述画面显示模块,还用于基于所述虚拟相机在所述第二画面帧中的单帧目标位置和单帧目标朝向,生成并显示所述第二画面帧。
16.一种画面显示装置,其特征在于,所述装置包括:
画面显示模块,用于显示第一画面帧,所述第一画面帧是通过虚拟相机以三维虚拟环境中的虚拟跟踪对象为视觉焦点,对所述三维虚拟环境进行拍摄得到的画面;
所述画面显示模块,还用于在角色锁定状态下,响应于自身角色和第一锁定角色中的至少之一的移动,基于所述虚拟相机在第二画面帧中的单帧目标位置和单帧目标朝向,显示所述第二画面帧;其中,所述虚拟相机的目标位置和目标朝向是根据所述虚拟跟踪对象的目标位置确定的,且所述虚拟相机的目标位置与所述虚拟跟踪对象的目标位置之间的距离,小于所述虚拟相机的目标位置与所述第一锁定角色的目标位置之间的距离。
17.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至14任一项所述的画面显示方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如上述权利要求1至14任一项所述的画面显示方法。
19.一种计算机程序产品或计算机程序,其特征在于,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现如权利要求1至14任一项所述的画面显示方法。
CN202210003178.6A 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质 Active CN114307145B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202210003178.6A CN114307145B (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质
CN202311037085.6A CN116983628A (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质
PCT/CN2022/127196 WO2023130809A1 (zh) 2022-01-04 2022-10-25 画面显示方法、装置、终端、存储介质及程序产品
US18/340,676 US20230330532A1 (en) 2022-01-04 2023-06-23 Methods, terminal device, and storage medium for picture display

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210003178.6A CN114307145B (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311037085.6A Division CN116983628A (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN114307145A true CN114307145A (zh) 2022-04-12
CN114307145B CN114307145B (zh) 2023-06-27

Family

ID=81022336

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311037085.6A Pending CN116983628A (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质
CN202210003178.6A Active CN114307145B (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202311037085.6A Pending CN116983628A (zh) 2022-01-04 2022-01-04 画面显示方法、装置、终端及存储介质

Country Status (3)

Country Link
US (1) US20230330532A1 (zh)
CN (2) CN116983628A (zh)
WO (1) WO2023130809A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023130809A1 (zh) * 2022-01-04 2023-07-13 腾讯科技(深圳)有限公司 画面显示方法、装置、终端、存储介质及程序产品

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017059212A (ja) * 2015-09-14 2017-03-23 株式会社コロプラ 視線誘導のためのコンピュータ・プログラム
CN107050859A (zh) * 2017-04-07 2017-08-18 福州智永信息科技有限公司 一种基于unity3D的拖动相机在场景中位移的方法
JP2018120519A (ja) * 2017-01-27 2018-08-02 株式会社コロプラ 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
CN110548289A (zh) * 2019-09-18 2019-12-10 网易(杭州)网络有限公司 一种三维控件显示的方法和装置
CN111603770A (zh) * 2020-05-21 2020-09-01 腾讯科技(深圳)有限公司 虚拟环境画面的显示方法、装置、设备及介质
CN111803946A (zh) * 2020-07-22 2020-10-23 网易(杭州)网络有限公司 游戏中的镜头切换方法、装置和电子设备
CN112169330A (zh) * 2020-09-25 2021-01-05 腾讯科技(深圳)有限公司 虚拟环境的画面显示方法、装置、设备及介质
CN112473138A (zh) * 2020-12-10 2021-03-12 网易(杭州)网络有限公司 游戏的显示控制方法及装置、可读存储介质、电子设备
CN113101658A (zh) * 2021-03-29 2021-07-13 北京达佳互联信息技术有限公司 虚拟空间中的视角切换方法、装置及电子设备
CN113134233A (zh) * 2021-05-14 2021-07-20 腾讯科技(深圳)有限公司 控件的显示方法、装置、计算机设备及存储介质
CN113440846A (zh) * 2021-07-15 2021-09-28 网易(杭州)网络有限公司 游戏的显示控制方法、装置、存储介质及电子设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4474640B2 (ja) * 2004-05-11 2010-06-09 株式会社セガ 画像処理プログラム、ゲーム処理プログラムおよびゲーム情報処理装置
CN106600668A (zh) * 2016-12-12 2017-04-26 中国科学院自动化研究所 一种与虚拟角色进行互动的动画生成方法、装置及电子设备
CN107358656A (zh) * 2017-06-16 2017-11-17 珠海金山网络游戏科技有限公司 一种三维游戏的ar处理系统及其处理方法
JP7142853B2 (ja) * 2018-01-12 2022-09-28 株式会社バンダイナムコ研究所 シミュレーションシステム及びプログラム
US10709979B2 (en) * 2018-06-11 2020-07-14 Nintendo Co., Ltd. Systems and methods for adjusting a stereoscopic effect
CN111420402B (zh) * 2020-03-18 2021-05-14 腾讯科技(深圳)有限公司 虚拟环境画面的显示方法、装置、终端及存储介质
CN112791405A (zh) * 2021-01-15 2021-05-14 网易(杭州)网络有限公司 游戏对象的锁定方法和装置
CN116983628A (zh) * 2022-01-04 2023-11-03 腾讯科技(深圳)有限公司 画面显示方法、装置、终端及存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017059212A (ja) * 2015-09-14 2017-03-23 株式会社コロプラ 視線誘導のためのコンピュータ・プログラム
JP2018120519A (ja) * 2017-01-27 2018-08-02 株式会社コロプラ 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
CN107050859A (zh) * 2017-04-07 2017-08-18 福州智永信息科技有限公司 一种基于unity3D的拖动相机在场景中位移的方法
CN110548289A (zh) * 2019-09-18 2019-12-10 网易(杭州)网络有限公司 一种三维控件显示的方法和装置
CN111603770A (zh) * 2020-05-21 2020-09-01 腾讯科技(深圳)有限公司 虚拟环境画面的显示方法、装置、设备及介质
CN111803946A (zh) * 2020-07-22 2020-10-23 网易(杭州)网络有限公司 游戏中的镜头切换方法、装置和电子设备
CN112169330A (zh) * 2020-09-25 2021-01-05 腾讯科技(深圳)有限公司 虚拟环境的画面显示方法、装置、设备及介质
CN112473138A (zh) * 2020-12-10 2021-03-12 网易(杭州)网络有限公司 游戏的显示控制方法及装置、可读存储介质、电子设备
CN113101658A (zh) * 2021-03-29 2021-07-13 北京达佳互联信息技术有限公司 虚拟空间中的视角切换方法、装置及电子设备
CN113134233A (zh) * 2021-05-14 2021-07-20 腾讯科技(深圳)有限公司 控件的显示方法、装置、计算机设备及存储介质
CN113440846A (zh) * 2021-07-15 2021-09-28 网易(杭州)网络有限公司 游戏的显示控制方法、装置、存储介质及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023130809A1 (zh) * 2022-01-04 2023-07-13 腾讯科技(深圳)有限公司 画面显示方法、装置、终端、存储介质及程序产品

Also Published As

Publication number Publication date
CN114307145B (zh) 2023-06-27
CN116983628A (zh) 2023-11-03
US20230330532A1 (en) 2023-10-19
WO2023130809A1 (zh) 2023-07-13

Similar Documents

Publication Publication Date Title
WO2021258994A1 (zh) 虚拟场景的显示方法、装置、设备及存储介质
JP7387758B2 (ja) インタフェース表示方法、装置、端末、記憶媒体及びコンピュータプログラム
JP7238143B2 (ja) 仮想対象の移動制御方法及びその装置、端末並びにコンピュータプログラム
US20220126205A1 (en) Virtual character control method and apparatus, device, and storage medium
US20230059116A1 (en) Mark processing method and apparatus, computer device, storage medium, and program product
CN107213636B (zh) 镜头移动方法、装置、存储介质和处理器
CN113117332B (zh) 一种镜头视角的调整方法、装置、电子设备及存储介质
US20230289054A1 (en) Control mode selection to indicate whether simultaneous perspective change and function selection is enabled
US20230330532A1 (en) Methods, terminal device, and storage medium for picture display
CN113599816B (zh) 画面显示方法、装置、终端及存储介质
KR20230053719A (ko) 멀티플레이어 게임에서 장거리 객체의 타겟팅 개선
CN111957042A (zh) 游戏镜头的控制方法和装置
CN111589114A (zh) 虚拟对象的选择方法、装置、终端及存储介质
WO2022156490A1 (zh) 虚拟场景中画面展示方法、装置、设备、存储介质及程序产品
CN112738404B (zh) 电子设备的控制方法及电子设备
CN113633974A (zh) 用户实时对局信息的显示方法、装置、终端及存储介质
CN111973984A (zh) 虚拟场景的坐标控制方法、装置、电子设备及存储介质
CN115920377B (zh) 游戏中动画的播放方法、装置、介质及电子设备
WO2024078225A1 (zh) 虚拟对象的显示方法、装置、设备及存储介质
CN113599829B (zh) 虚拟对象的选择方法、装置、终端及存储介质
CN112843687B (zh) 拍摄方法、装置、电子设备及存储介质
CN114053704B (zh) 信息显示方法、装置、终端及存储介质
WO2024067168A1 (zh) 基于社交场景的消息显示方法、装置、设备、介质及产品
CN106599893B (zh) 基于增强现实的物体偏离识别图后的处理方法及装置
CN116736985A (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: 40072021

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant