CN114470768B - 虚拟道具控制方法、装置、电子设备及可读存储介质 - Google Patents
虚拟道具控制方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN114470768B CN114470768B CN202210139179.3A CN202210139179A CN114470768B CN 114470768 B CN114470768 B CN 114470768B CN 202210139179 A CN202210139179 A CN 202210139179A CN 114470768 B CN114470768 B CN 114470768B
- Authority
- CN
- China
- Prior art keywords
- virtual
- motion data
- real
- data
- prop
- 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.)
- Active
Links
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/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- 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
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- 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
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
- A63F13/573—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
-
- 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/812—Ball games, e.g. soccer or baseball
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/30—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
- A63F2300/308—Details of the user interface
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8011—Ball
-
- 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)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供了一种虚拟道具控制方法、装置、电子设备及存储介质,该虚拟道具控制方法包括:获取真实道具的真实运动数据;从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;基于所述目标真实运动数据,确定虚拟运动数据;基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。本申请实施例,不仅能够使得虚拟道具的运动轨迹符合预期要求,还能提升运动轨迹的展示效果。
Description
技术领域
本公开涉及直播技术领域,具体而言,涉及一种虚拟道具控制方法、虚拟道具控制装置、电子设备和计算机可读存储介质。
背景技术
相关技术中,虚拟直播的主要方法包括:通过动作捕捉设备获取关于演员(中之人)的动作表情数据的控制信号,并驱动虚拟形象动作。
在虚拟形象进行直播的过程中会涉及到与虚拟道具的互动,其中,虚拟道具的驱动与虚拟形象的驱动类似,通过动作捕捉设备获取关于真实道具的运动数据,并驱动虚拟道具运动。
然而,由于演员对真实对象控制的过程中存在不可控的因素,导致由真实道具驱动的虚拟道具的运动往往达不到预期的效果。以投篮场景为例,若通过捕获真实篮球的运动数据来驱动虚拟篮球的运动,可能会影响直播效果,比如演员多次投篮但是都没有投中,而此时若仍以真实篮球的运动数据来驱动虚拟篮球的运动,将影响用户的观赏体验。
发明内容
本公开实施例至少提供一种虚拟道具控制方法、装置、电子设备及存储介质。
本公开实施例提供了一种虚拟道具控制方法,包括:
获取真实道具的真实运动数据;
从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;
基于所述目标真实运动数据,确定虚拟运动数据;
基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
本公开实施例中,在获取真实道具的真实运动数据之后,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,然后基于所述目标真实运动数据,确定虚拟运动数据,并基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,如此,结合虚拟运动数据对虚拟道具进行驱动,可以使得虚拟道具的运动轨迹符合预期效果,提升了用户的观赏体验。此外,由于虚拟运动数据是基于部分真实运动数据得到的,可以提升虚拟运动数据和真实运动数据匹配度,进而提升虚拟道具的运动轨迹的展示效果。
在一种可能的实施方式中,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定初始真实运动数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,所述虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳。
本公开实施例中,基于所述初始真实运动数据中的初速度确定所述虚拟运动数据,且虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳,也即根据真实道具的初速度来确定后续的运动数据,不仅保证了虚拟道具运动轨迹的逼真性,还可以使得虚拟道具的运动轨迹符合预期效果。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且所述第一部分虚拟数据的时间戳早于所述预设的第二部分虚拟数据的时间戳,所述基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,包括:
基于所述初始真实运动数据中的初速度,确定所述第一部分虚拟数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
依次基于所述目标真实运动数据、所述第一部分虚拟数据以及所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
本公开实施例中,由于虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且第一部分虚拟数据是基于初始真实运动数据中的初速度确定的,如此,通过预设的第二部分虚拟数据可以使得虚拟道具最终的运用结果达到预期要求,且通过第一部分虚拟数据可以使得虚拟道具在真实运动轨迹和预设的虚拟运动轨迹之间进行过渡衔接,不会跳变,进而提升了虚拟道具的轨迹展示效果。
在一种可能的实施方式中,所述从所述真实运动数据获取部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定结尾真实运动数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述结尾真实运动数据,确定所述虚拟运动数据,所述虚拟运动数据的时间戳早于所述结尾真实运动数据的时间戳。
本公开实施例中,在虚拟道具运动的过程中,先使用虚拟运动数据,然后使用真实运动数据,使得在保证虚拟道具的运动结果与真实道具的运动结果匹配的同时,提升虚拟道具在运动过程中的轨迹展示效果。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动;
在所述虚拟道具的状态符合第一预设条件的情况下,从所述真实运动数据中确定过渡真实运动数据;
基于所述过渡真实运动数据以及所述预设的第二部分虚拟数据,实时生成所述第一部分虚拟数据;
基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动;
在所述虚拟道具的状态符合第二预设条件的情况下,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动。
本公开实施例中,由于第一部分虚拟数据是基于过渡真实运动数据以及所述预设的第二部分虚拟数据实时生成的,如此,可以使得虚拟道具在预设的第二部分虚拟数据驱动下的运动轨迹和在目标真实运动数据驱动的运动轨迹平滑过渡衔接,不会跳变,进一步提升了虚拟道具运动轨迹的展示效果。
在一种可能的实施方式中,在所述虚拟道具在所述3D场景中运动至第一预设位置范围的情况下,确定所述虚拟道具的状态符合所述第一预设条件;和/或,
在所述虚拟道具在所述3D场景中运动至第二预设位置范围的情况下,确定所述虚拟道具的状态符合所述第二预设条件。
在一种可能的实施方式中,所述真实运动数据包括真实轨迹数据,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定所述真实轨迹数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述真实轨迹数据,确定虚拟转动数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动。
本公开实施例中,将真实的轨迹数据与虚拟的转动数据进行结合,可以提升虚拟道具在运动过程中的展示效果。
在一种可能的实施方式中,所述从所述真实运动数据中确定部分真实运动数据,包括:
从所述真实运动数据中确定所述真实道具接收到外力情况下的各段真实运动数据,得到所述目标真实数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述各段真实运动数据,确定与所述各段真实运动数据匹配的各段虚拟运动数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述各段真实运动数据以及所述各段虚拟运动数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据。
在一种可能的实施方式中,在所述真实运动结果与预设的运动结果之间的误差在预设范围内的情况下,确定所述真实运动结果符合所述预设条件。
在一种可能的实施方式中,所述3D场景信息还包含虚拟对象信息,所述虚拟对象信息用于渲染后生成虚拟对象,所述虚拟对象通过动作捕捉设备捕捉的控制信息驱动;所述方法还包括:
获取所述虚拟对象的控制信息;
在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触。
本公开实施例中,在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触,如此,可以避免真实对象与真实道具接触的情况下,虚拟对象和虚拟道具之间出现虚空或者过渡接触的情况发生,进一步提升了用户的观赏体验。
本公开实施例提供了一种虚拟道具控制装置,包括:
真实数据获取模块,用于获取真实道具的真实运动数据;
真实数据确定模块,用于从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;
虚拟数据确定模块,用于基于所述目标真实运动数据,确定虚拟运动数据;
虚拟道具驱动模块,用于基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
在一种可能的实施方式中,所述真实数据确定模块具体用于:
从所述真实运动数据中确定初始真实运动数据,得到所述目标真实运动数据;
所述虚拟数据确定模块具体用于:
基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,所述虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,所述虚拟数据确定模块具体用于:
基于所述初始真实运动数据中的初速度,确定所述第一部分虚拟数据;
所述虚拟道具驱动模块具体用于:
依次基于所述目标真实运动数据、所述第一部分虚拟数据以及所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块具体用于:
从所述真实运动数据中确定结尾真实运动数据,得到所述目标真实运动数据;
所述虚拟数据确定模块具体用于:
基于所述结尾真实运动数据,确定所述虚拟运动数据,所述虚拟运动数据的时间戳早于所述结尾真实运动数据的时间戳。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,所述虚拟道具驱动模块具体用于:
基于所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动;
在所述虚拟道具的状态符合第一预设条件的情况下,从所述真实运动数据中确定过渡真实运动数据;
基于所述过渡真实运动数据以及所述预设的第二部分虚拟数据,实时生成所述第一部分虚拟数据;
基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动;
在所述虚拟道具的状态符合第二预设条件的情况下,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动。
在一种可能的实施方式中,在所述虚拟道具在所述3D场景中运动至第一预设位置范围的情况下,确定所述虚拟道具的状态符合所述第一预设条件;和/或,
在所述虚拟道具在所述3D场景中运动至第二预设位置范围的情况下,确定所述虚拟道具的状态符合所述第二预设条件。
在一种可能的实施方式中,所述真实运动数据包括真实轨迹数据,所述真实数据确定模块具体用于:
从所述真实运动数据中确定所述真实轨迹数据,得到所述目标真实运动数据;
所述虚拟数据确定模块具体用于:
基于所述真实轨迹数据,确定虚拟转动数据;
所述虚拟道具驱动模块具体用于:
基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块具体用于:
从所述真实运动数据中确定所述真实道具接收到外力情况下的各段真实运动数据,得到所述目标真实数据;
所述虚拟数据确定模块具体用于:
基于所述各段真实运动数据,确定与所述各段真实运动数据匹配的各段虚拟运动数据;
所述虚拟道具驱动模块具体用于:
基于所述各段真实运动数据以及所述各段虚拟运动数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块具体用于:
在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据。
在一种可能的实施方式中,在所述真实运动结果与预设的运动结果之间的误差在预设范围内的情况下,确定所述真实运动结果符合所述预设条件。
在一种可能的实施方式中,所述3D场景信息还包含虚拟对象信息,所述虚拟对象信息用于渲染后生成虚拟对象,所述虚拟对象通过动作捕捉设备捕捉的控制信息驱动;所述装置还包括虚拟对象驱动模块,所述虚拟对象驱动模块用于:
获取所述虚拟对象的控制信息;
在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触。
本公开实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上所述的虚拟道具控制方法。
本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上所述的虚拟道具控制方法。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种虚拟道具控制方法的流程图;
图2示出了本公开实施例所提供的第一种目标真实运动数据和虚拟运动数据之间的关系示意图;
图3示出了本公开实施例所提供的第二种目标真实运动数据和虚拟运动数据之间的关系示意图;
图4示出了本公开实施例所提供的第三种目标真实运动数据和虚拟运动数据之间的关系示意图;
图5示出了本公开实施例所提供的一种驱动虚拟道具在3D场景中运动的方法流程图;
图6示出了本公开实施例所提供的第四种目标真实运动数据和虚拟运动数据之间的关系示意图;
图7示出了本公开实施例所提供另一种虚拟道具控制方法的流程图;
图8示出了本公开实施例所提供的一种真实轨迹数据与虚拟转动数据之间的关系示意图;
图9示出了本公开实施例所提供的一种虚拟道具控制装置的结构示意图;
图10示出了本公开实施例所提供的另一种虚拟道具控制装置的结构示意图;
图11示出了本公开实施例所提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
越来越多的用户选择通过直播平台来观看视频直播,比如游戏直播、新闻直播等。为了提升直播效果,出现了虚拟形象代替真实主播进行视频直播的方式。
虚拟形象的一种形态是对演员(中之人)动作捕捉获取控制信号,驱动游戏引擎中的虚拟形象动作,同时获取演员声音,将演员声音与虚拟形象画面融合,生成视频数据。在虚拟形象进行直播的过程中会涉及到与虚拟道具的互动,其中,虚拟道具的驱动与虚拟形象的驱动类似,通过动作捕捉设备获取关于真实道具的运动数据,并驱动虚拟道具运动。
然而,由于演员对真实对象控制的过程中存在不可控的因素,导致由真实道具驱动的虚拟道具的运动往往达不到预期的效果。以投篮场景为例,若通过捕获真实篮球的运动数据来驱动虚拟篮球的运动,可能会影响直播效果,比如演员多次投篮但是都没有投中,而此时若仍以真实篮球的运动数据来驱动虚拟篮球的运动,将影响用户的观赏体验。
本公开提供了一种虚拟道具控制方法,包括:获取真实道具的真实运动数据;从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;基于所述目标真实运动数据,确定虚拟运动数据;基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
本公开实施例中,在获取真实道具的真实运动数据之后,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,然后基于所述目标真实运动数据,确定虚拟运动数据,并基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,如此,结合虚拟运动数据对虚拟道具进行驱动,可以使得虚拟道具的运动轨迹符合预期效果,提升了用户的观赏体验。此外,由于虚拟运动数据是基于部分真实运动数据得到的,可以提升虚拟运动数据和真实运动数据匹配度,进而提升虚拟道具的运动轨迹的展示效果。
本公开实施例所提供的虚拟道具控制方法的执行主体一般为具有一定计算能力的电子设备,该电子设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、车载设备、可穿戴设备等。该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云存储、大数据和人工智能平台等基础云计算服务的云服务器。此外,该虚拟道具控制方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例提供的第一种虚拟道具控制方法的流程图,该虚拟道具控制方法包括以下S101~S104:
S101,获取真实道具的真实运动数据。
其中,真实道具是指真实对象(演员)在表演过程中所使用的器物。该真实道具能够与该真实对象进行互动配合,进而达到预期的演出效果。此外,针对不同的演出场景演出内容,所述使用的真实道具也不同。
示例性地,该真实道具包括但不限于各种物体,比如篮球、足球、冰壶、扇子、杯子等。
在一些实施方式中,可以预先在真实道具上设置多个光学标记点(比如可以由反光材料制成),然后可以通过光学设备捕捉真实道具的各个光学标记点的位置信息,进而获取真实道具的真实运动数据。其中,光学捕捉设备包括红外相机、RGB相机和深度相机中的至少一种,本公开实施例对光学捕捉设备的类型不加以限定。
S102,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据。
可以理解,为了使得虚拟道具在3D场景中的运动轨迹达到预期的效果,在一些情况下,可以只采用一部分真实运动数据,也即,采用一部分真实运动数据以及一部分虚拟运动数据结合的方式来驱动虚拟道具的运动。其中,关于3D场景的相关描述将在后文进行详细阐述。
示例性地,可以在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据。比如,以投篮场景为例,若真实篮球的真实运动数据指示真实篮球与真实篮筐碰撞,但并未进入真实篮筐内,则说明演员需要把篮球投入到篮框内,只是由于某些客观因素导致真实篮球并未投入真实篮筐,此时,则可以从真实运动数据中确定部分真实运动数据,得到目标真实运动数据,然后再结合虚拟运动数据使得虚拟篮球可以投进虚拟篮筐中,进而达到预期效果。
在一些可能的实施方式中,在所述真实运动结果与预设的运动结果之间的误差在预设范围内的情况下,确定所述真实运动结果符合所述预设条件。同理,以投篮场景为例,若真实运动数据指示真实篮球最终与真实篮筐之间的距离在预设***(如10cm)内,则确定真实运动结果符合预设条件。
其他场景,与投篮场景类似,比如射箭场景,若真实弓箭的真实运动数据指示真实弓箭落在靶子上且距离靶心的距离在预设***内,则此时可以结合虚拟运动数据驱动虚拟弓箭落到靶心的位置。
需要说明的是,上述根据预设条件从真实运动数据中确定部分真实运动数据,得到目标真实运动数据,仅仅是示例,在其他实施例中,也可以不依据任何预设条件。
下面对如何从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,进行详细说明:
第一种方式,从所述真实运动数据中确定初始真实运动数据,得到所述目标真实运动数据。也即,将不同时刻的真实运动数据按照时间戳进行排序,获取时间戳靠前的真实运动数据,作为目标真实运动数据。其中,时间戳用于表征数据产生的时间。该实施方式中,获取部分真实运动数据的方式可以和前述的预设条件相结合。
示例性地,以投篮场景为例,该初始真实运动数据是指真实篮球脱离真实对象手部瞬间的运动数据,同理,以足球场景为例,该初始真实运动数据是指真实足球脱离真实对象脚部瞬间的运动数据。又示例性地,以射箭场景为例,初始真实运动数据还可以是指弓箭脱离弓时的初速度。
第二种方式,从所述真实运动数据中确定结尾真实运动数据,得到所述目标真实运动数据。也即,将不同时刻的真实运动数据按照时间戳进行排序,获取时间戳靠后的真实运动数据,作为目标真实运动数据。
示例性地,以接球场景为例,该结尾真实运动数据是指真实球体与真实对象接触(接到球)的运动数据,又例如,以投篮场景为例,结尾真实运动数据是指真实篮球落入真实篮筐时的运动数据。
S103,基于所述目标真实运动数据,确定虚拟运动数据。
示例性地,可以基于目标真实运动数据的大小和/方向来确定虚拟运动数据,进而可以提升虚拟运动数据与目标真实运动数据的匹配度。下面针对不同的目标真实运动数据,对确定虚拟运动数据的方式进行详细说明。
第一种情况,在目标真实运动数据为初始真实运动数据的情况下(也即针对上述第一种方式),基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,所述虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳。其中,初速度包括的初速度的大小和方向。
示例性地,请参见图2,为本公开实施例提供的第一种目标真实运动数据和虚拟运动数据之间的关系示意图。从图2中可以看出,基于时间轴t,初始真实运动数据在前,确定的虚拟运动数据在后,初始真实运动数据和虚拟运动数据共同组成了虚拟道具的驱动数据。
本公开实施例中,基于所述初始真实运动数据中的初速度确定所述虚拟运动数据,且虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳,也即根据真实道具的初速度来确定后续的运动数据,如此,不仅保证了虚拟道具运动轨迹的逼真性,还可以使得虚拟道具的运动轨迹符合预期效果。
第二种情况,在目标真实运动数据为结尾真实运动数据的情况下(也即针对上述第二种方式),基于所述结尾真实运动数据,确定所述虚拟运动数据,所述虚拟运动数据的时间戳早于所述结尾真实运动数据的时间戳。
示例性地,请参见图3,为本公开实施例提供的第二种目标真实运动数据和虚拟运动数据之间的关系示意图。从图3中可以看出,基于时间轴t,确定的虚拟运动数据在前,结尾真实运动数据在后,虚拟运动数据和结尾真实运动数据共同组成了虚拟道具的驱动数据。
本公开实施例中,在虚拟道具运动的过程中,由于先使用虚拟运动数据驱动虚拟道具运动,然后使用真实运动数据驱动虚拟道具运动,如此,可以在保证虚拟道具的运动结果与真实道具的运动结果匹配的同时,提升虚拟道具在运动过程中的轨迹展示效果。
S104,基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
示例性地,由于目标真实运动数据以及所述虚拟运动数据组成了虚拟道具的完整驱动数据,因此,可以基于目标真实运动数据以及虚拟运动数据,驱动虚拟道具在3D场景中运动。
其中,3D场景信息可以运行于计算机CPU(Central Processing Uni,中央处理器)、GPU(Graphics Processing Unit,图形处理器)以及存储器中,其包含网格化的模型信息以及和贴图纹理信息。相应地,作为示例,虚拟道具信息包含但不限于网格化的模型数据、体素数据及贴图纹理数据或者其组合。其中,网格包括但不限于三角形网格、四边形网格、其他多边形网格或者其组合。本公开实施例中,网格为三角形网格。
3D场景信息在3D渲染环境下进行渲染,可以生成3D场景。3D渲染环境可以是运行于电子设备中的3D引擎,能够基于待渲染数据生成基于一个或者多个视角的影像信息。虚拟道具信息是存在于3D引擎中的道具模型,能够在渲染后生成相应的虚拟道具。本公开实施例中,虚拟道具可以是各种虚拟物体,比如虚拟篮球、虚拟弓箭、虚拟足球、虚拟冰壶等。
示例性地,参见图4所示,在一些实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且所述第一部分虚拟数据的时间戳早于所述预设的第二部分虚拟数据的时间戳。因此,可以基于所述初始真实运动数据中的初速度,确定所述第一部分虚拟数据,然后依次基于所述目标真实运动数据、所述第一部分虚拟数据以及所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
其中,预设的第二部分虚拟数据可以根据实际需求而设定,比如,可以根据虚拟道具的类型以及展示效果来确定,在此不做限定。
本公开实施例中,由于虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且第一部分虚拟数据是基于初始真实运动数据中的初速度确定的,如此,通过预设的第二部分虚拟数据可以使得虚拟道具最终的运用结果达到预期要求,且通过第一部分虚拟数据可以使得虚拟道具在真实运动轨迹和预设的虚拟运动轨迹之间进行过渡衔接,不会跳变,进而提升了虚拟道具的轨迹展示效果。
在另一些实施方式中,至少部分所述预设的第二部分虚拟数据的时间戳早于所述第一部分虚拟数据的时间戳,且至少部分所述预设的第二部分虚拟数据的时间戳与所述第一部分虚拟数据的时间戳重合。具体地,参见图5所示,在该实施方式中,针对步骤S104,在基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动时,可以包括以下S1041~S1045:
S1041,基于所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
示例性地,参见图6所示,预设的第二部分虚拟数据可以按照时间戳划分为两部分,也即,图6中的预设的第二部分虚拟数据a(也可以称为第一子虚拟数据)以及预设的第二部分虚拟数据b(也可以称为第二子虚拟数据),也即,该预设的第二部分虚拟数据可以包括第一子虚拟数据以及第二子虚拟数据两部分。
其中,预设的第二部分虚拟数据a的时间戳早于所述第一部分虚拟数据的时间戳,且预设的第二部分虚拟数据b的时间戳与所述第一部分虚拟数据的时间戳重合,另外,预设的第二部分虚拟数据a的时间戳早于预设的第二部分虚拟数据b的时间戳。因此,本公开实施例中,可以先基于预设的第二部分虚拟数据a驱动虚拟道具在所述3D场景中运动。
S1042,在所述虚拟道具的状态符合第一预设条件的情况下,从所述真实运动数据中确定过渡真实运动数据。
可以理解,在基于预设的第二部分虚拟数据驱动所述虚拟道具运动的过程中,虚拟道具的状态会发生变化,其中,虚拟道具的状态包括但不限于虚拟道具在3D场景中的位置状态、自身的形变状态或者相对于其他对象的关系状态等。
示例性地,可以在所述虚拟道具在所述3D场景中运动至第一预设位置范围的情况下,确定所述虚拟道具的状态符合所述第一预设条件。例如,在投篮场景下,可以在虚拟篮球距离虚拟篮筐较远的位置以预设的第二部分虚拟数据b驱动虚拟篮球运动,而当虚拟篮球运动至距离虚拟篮筐的第一预设位置范围内时,则确定虚拟篮球的状态符合第一预设条件,此时从所述真实运动数据中确定过渡真实运动数据。此外,虚拟足球的场景与虚拟篮球类似,在此不再赘述。
当然,在其他实施例中,第一预设条件还可以是指虚拟道具运动的时间,比如,在虚拟篮球脱离虚拟对象在空中运动预定时间(比如2秒)时,确定符合第一预设条件。
S1043,基于所述过渡真实运动数据以及所述预设的第二部分虚拟数据,实时生成所述第一部分虚拟数据。
请再次参见图6,在确定过渡真实运动数据之后,即可将预设的第二部分虚拟数据b与过渡真实运动数据进行融合,实时生成所述第一部分虚拟数据,如此,可以使得第一部分虚拟数据与过渡真实运动数据的匹配度更高。
S1044,基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动。
示例性地,在实时生成所述第一部分虚拟数据之后,即可基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动,如此可以使得虚拟道具的运动轨迹既可以保留虚拟数据的特效效果,还可以接近真实道具的运动状态,进而提升虚拟道具运动轨迹的展示效果。
S1045,在所述虚拟道具的状态符合第二预设条件的情况下,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动。
示例性地,在所述虚拟道具在所述3D场景中运动至第二预设位置范围的情况下,确定所述虚拟道具的状态符合所述第二预设条件,再次以投篮场景为例,可以在虚拟篮球距离虚拟篮筐的第二预设位置范围内时,确定虚拟篮球的状态符合第二预设条件,此时,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动,如此,可以保证虚拟道具的真实运动效果。其中,第二预设位置范围比第一预设位置范围更接近虚拟篮筐。同理,该实施方式中,第二预设条件还可以是指虚拟道具运动的时间,比如,在虚拟篮球脱离虚拟对象在空中运动预定时间(比如5秒)时,确定符合第二预设条件。
本公开实施例中,由于第一部分虚拟数据是基于过渡真实运动数据以及所述预设的第二部分虚拟数据实时生成的,如此,可以使得虚拟道具在预设的第二部分虚拟数据驱动下的运动轨迹和在目标真实运动数据驱动的运动轨迹平滑过渡衔接,不会跳变,进一步提升了虚拟道具运动轨迹的展示效果。
另外,关于虚拟对象(如虚拟人物)接其他虚拟道具(如虚拟球体、虚拟扇子)的场景与投篮的场景类似,如此,可以在保证虚拟对象接住虚拟道具的结果的同时,还能提升虚拟道具在空中运动过程中轨迹展示效果。
其中,所述3D场景信息还包含虚拟对象信息,所述虚拟对象信息用于渲染后生成虚拟对象,所述虚拟对象通过动作捕捉设备捕捉的控制信息驱动。例如,可以通过光学捕捉设备捕捉真实对象的骨骼动作以及面部表情动作。另外,动作捕捉设备还可以包括真实对象身上穿的带有反光标记的衣服或者手上戴的手套等。
在一些实施方式中,为了提升虚拟对象和虚拟道具之间接触时的效果,避免虚空或者接触过渡的情况发生,需要对获取到的虚拟对象的控制信息进行判断,并在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触,也即,为了避免了因真实对象与虚拟对象之间的比例不协调而导致的不良现象发生,需要对虚拟对象和虚拟道具进行重定向,如此,提升了用户的观赏体验。
下面对一些特殊场景的虚拟道具的驱动进行详细说明,比如,在虚拟道具为虚拟冰壶或者虚拟乒乓球的场景下,由于虚拟冰壶或者虚拟乒乓球在运动的过程中,均需要不间断的接收到外力,因此,为了提升虚拟道具在运动过程中的真实效果,在从所述真实运动数据中确定部分真实运动数据时,需要从所述真实运动数据中确定所述真实道具接收到外力情况下的各段真实运动数据,得到所述目标真实数据,再基于所述各段真实运动数据,确定与所述各段真实运动数据匹配的各段虚拟运动数据,然后基于所述各段真实运动数据以及所述各段虚拟运动数据,驱动所述虚拟道具在所述3D场景中运动。也即,在该场景下,需要获取多段真实运动数据,针对每段真实运动数据,分别确定对应的虚拟运动数据,进而在虚拟道具运动的过程中,通过真实运动数据和虚拟运动数据混合来驱动虚拟道具的运动。
上述各实施例中的真实运动数据和虚拟运动数据,是从时间维度下进行论述的,下面基于数据维度,对真实运动数据和虚拟运动数据之间的关系进行说明。
在一些实施方式中,所述真实运动数据包括真实轨迹数据,参见图7所示,为本公开实施例提供的另一种虚拟道具控制方法的流程图,如图7所示,该方法包括以下S201~S204:
S201,获取真实道具的真实运动数据。
该步骤与前述步骤S101类似,在此不再赘述。
S202,从所述真实运动数据中确定所述真实轨迹数据。
示例性地,真实运动数据可以包括真实轨迹数据以及真实转动数据。其中,真实轨迹数据是由不同时刻的真实位置数据构成的。本公开实施方式中,保留真实轨迹数据,去除真实转动数据。其他实施例中,还可以保留真实转动数据,去除真实轨迹数据。
S203,基于所述真实轨迹数据,确定虚拟转动数据。
示例性地,参见图8所示,在确定真实轨迹数据之后,即可根据真实轨迹数据确定虚拟转动数据。具体地,可以根据真实轨迹数据中的不同位置数据确定不同的虚拟转动数据,比如,虚拟转动数据的转速与真实轨迹数据中为位置的高低可以正相关。
以投篮为例,可以在真实轨迹数据指示真实篮球运动至最高点时,确定第一虚拟转动数据,并在真实篮球下降至预设位置时确定第二虚拟转动数据,其中,第一虚拟转动数据的转速大于第二虚拟转动数据的转速。如此,在驱动虚拟篮球运动的过程中,可以在虚拟篮球运动至最高点时在空中呈现较快的转动速度,而在虚拟篮球从最高点向下降落至预设位置时呈现较慢的转动速度。
S204,基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动。
请再次参阅图8,真实轨迹数据以及虚拟转动数据组成了虚拟道具的道具驱动数据,即可驱动所述虚拟道具在所述3D场景中运动。本公开实施例中,由于基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动,既可以保证虚拟道具轨迹运动的真实性,还可以在运动过程中展示相应的虚拟特效(比如在空中连续转动),进一步提升了用户的观赏体验。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一技术构思,本公开实施例中还提供了与虚拟道具控制方法对应的虚拟道具控制装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述虚拟道具控制方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图9所示,为本公开实施例提供的一种虚拟道具控制装置500的示意图,所述装置包括:
真实数据获取模块501,用于获取真实道具的真实运动数据;
真实数据确定模块502,用于从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;
虚拟数据确定模块503,用于基于所述目标真实运动数据,确定虚拟运动数据;
虚拟道具驱动模块504,用于基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
在一种可能的实施方式中,所述真实数据确定模块502具体用于:
从所述真实运动数据中确定初始真实运动数据,得到所述目标真实运动数据;
所述虚拟数据确定模块503具体用于:
基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,所述虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且所述第一部分虚拟数据的时间戳早于所述预设的第二部分虚拟数据的时间戳,所述虚拟数据确定模块503具体用于:
基于所述初始真实运动数据中的初速度,确定所述第一部分虚拟数据;
所述虚拟道具驱动模块504具体用于:
依次基于所述目标真实运动数据、所述第一部分虚拟数据以及所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块502具体用于:
从所述真实运动数据中确定结尾真实运动数据,得到所述目标真实运动数据;
所述虚拟数据确定模块503具体用于:
基于所述结尾真实运动数据,确定所述虚拟运动数据,所述虚拟运动数据的时间戳早于所述结尾真实运动数据的时间戳。
在一种可能的实施方式中,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,所述虚拟道具驱动模块504具体用于:
基于所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动;
在所述虚拟道具的状态符合第一预设条件的情况下,从所述真实运动数据中确定过渡真实运动数据;
基于所述过渡真实运动数据以及所述预设的第二部分虚拟数据,实时生成所述第一部分虚拟数据;
基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动;
在所述虚拟道具的状态符合第二预设条件的情况下,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动。
在一种可能的实施方式中,在所述虚拟道具在所述3D场景中运动至第一预设位置范围的情况下,确定所述虚拟道具的状态符合所述第一预设条件;和/或,在所述虚拟道具在所述3D场景中运动至第二预设位置范围的情况下,确定所述虚拟道具的状态符合所述第二预设条件。
在一种可能的实施方式中,所述真实运动数据包括真实轨迹数据,所述真实数据确定模块502具体用于:
从所述真实运动数据中确定所述真实轨迹数据,得到所述目标真实运动数据;
所述虚拟数据确定模块503具体用于:
基于所述真实轨迹数据,确定虚拟转动数据;
所述虚拟道具驱动模块504具体用于:
基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块502具体用于:
从所述真实运动数据中确定所述真实道具接收到外力情况下的各段真实运动数据,得到所述目标真实数据;
所述虚拟数据确定模块503具体用于:
基于所述各段真实运动数据,确定与所述各段真实运动数据匹配的各段虚拟运动数据;
所述虚拟道具驱动模块504具体用于:
基于所述各段真实运动数据以及所述各段虚拟运动数据,驱动所述虚拟道具在所述3D场景中运动。
在一种可能的实施方式中,所述真实数据确定模块502具体用于:
在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据。
在一种可能的实施方式中,在所述真实运动结果与预设的运动结果之间的误差在预设范围内的情况下,确定所述真实运动结果符合所述预设条件。
在一种可能的实施方式中,所述3D场景信息还包含虚拟对象信息,所述虚拟对象信息用于渲染后生成虚拟对象,所述虚拟对象通过动作捕捉设备捕捉的控制信息驱动;参见图10所示,所述装置还包括虚拟对象驱动模块505,所述虚拟对象驱动模块505用于:
获取所述虚拟对象的控制信息;
在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图11所示,为本公开实施例提供的电子设备700的结构示意图,包括处理器701、存储器702、和总线703。其中,存储器702用于存储执行指令,包括内存7021和外部存储器7022;这里的内存7021也称内存储器,用于暂时存放处理器701中的运算数据,以及与硬盘等外部存储器7022交换的数据,处理器701通过内存7021与外部存储器7022进行数据交换。
本申请实施例中,存储器702具体用于存储执行本申请方案的应用程序代码,并由处理器701来控制执行。也即,当电子设备700运行时,处理器701与存储器702之间通过总线703通信,使得处理器701执行存储器702中存储的应用程序代码,进而执行前述任一实施例中所述的方法。
其中,存储器702可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器701可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备700的具体限定。在本申请另一些实施例中,电子设备700可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中的虚拟道具控制方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中的虚拟道具控制方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (13)
1.一种虚拟道具控制方法,其特征在于,包括:
获取真实道具的真实运动数据;
在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;
基于所述目标真实运动数据,确定虚拟运动数据;
基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
2.根据权利要求1所述的方法,其特征在于,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定初始真实运动数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,所述虚拟运动数据的时间戳晚于所述初始真实运动数据的时间戳。
3.根据权利要求2所述的方法,其特征在于,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,且所述第一部分虚拟数据的时间戳早于所述预设的第二部分虚拟数据的时间戳;
所述基于所述初始真实运动数据中的初速度,确定所述虚拟运动数据,包括:
基于所述初始真实运动数据中的初速度,确定所述第一部分虚拟数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
依次基于所述目标真实运动数据、所述第一部分虚拟数据以及所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动。
4.根据权利要求1所述的方法,其特征在于,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定结尾真实运动数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述结尾真实运动数据,确定所述虚拟运动数据,所述虚拟运动数据的时间戳早于所述结尾真实运动数据的时间戳。
5.根据权利要求4所述的方法,其特征在于,所述虚拟运动数据包括第一部分虚拟数据以及预设的第二部分虚拟数据,所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述预设的第二部分虚拟数据,驱动所述虚拟道具在所述3D场景中运动;
在所述虚拟道具的状态符合第一预设条件的情况下,从所述真实运动数据中确定过渡真实运动数据;
基于所述过渡真实运动数据以及所述预设的第二部分虚拟数据,实时生成所述第一部分虚拟数据;
基于所述第一部分虚拟数据,驱动所述虚拟道具继续在所述3D场景中运动;
在所述虚拟道具的状态符合第二预设条件的情况下,基于所述目标真实运动数据,驱动所述虚拟道具继续在所述3D场景中运动。
6.根据权利要求5所述的方法,其特征在于,在所述虚拟道具在所述3D场景中运动至第一预设位置范围的情况下,确定所述虚拟道具的状态符合所述第一预设条件;和/或,
在所述虚拟道具在所述3D场景中运动至第二预设位置范围的情况下,确定所述虚拟道具的状态符合所述第二预设条件。
7.根据权利要求1所述的方法,其特征在于,所述真实运动数据包括真实轨迹数据,所述从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据,包括:
从所述真实运动数据中确定所述真实轨迹数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述真实轨迹数据,确定虚拟转动数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述真实轨迹数据以及所述虚拟转动数据,驱动所述虚拟道具在所述3D场景中运动。
8.根据权利要求1所述的方法,其特征在于,所述从所述真实运动数据中确定部分真实运动数据,包括:
从所述真实运动数据中确定所述真实道具接收到外力情况下的各段真实运动数据,得到所述目标真实运动数据;
所述基于所述目标真实运动数据,确定虚拟运动数据,包括:
基于所述各段真实运动数据,确定与所述各段真实运动数据匹配的各段虚拟运动数据;
所述基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动,包括:
基于所述各段真实运动数据以及所述各段虚拟运动数据,驱动所述虚拟道具在所述3D场景中运动。
9.根据权利要求1所述的方法,其特征在于,在所述真实运动结果与预设的运动结果之间的误差在预设范围内的情况下,确定所述真实运动结果符合所述预设条件。
10.根据权利要求1所述的方法,其特征在于,所述3D场景信息还包含虚拟对象信息,所述虚拟对象信息用于渲染后生成虚拟对象;所述方法还包括:
获取所述虚拟对象的控制信息;
在所述控制信息指示真实对象触碰到所述真实道具的情况下,控制所述虚拟道具移动并与所述虚拟对象接触。
11.一种虚拟道具控制装置,其特征在于,包括:
真实数据获取模块,用于获取真实道具的真实运动数据;
真实数据确定模块,用于在所述真实运动数据指示所述真实道具的真实运动结果符合预设条件的情况下,从所述真实运动数据中确定部分真实运动数据,得到目标真实运动数据;
虚拟数据确定模块,用于基于所述目标真实运动数据,确定虚拟运动数据;
虚拟道具驱动模块,用于基于所述目标真实运动数据以及所述虚拟运动数据,驱动虚拟道具在3D场景中运动;所述3D场景由3D渲染环境中的3D场景信息经渲染后生成,所述3D渲染环境运行于电子设备中,所述3D场景信息包含虚拟道具信息,所述虚拟道具信息用于渲染后生成所述虚拟道具。
12.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1-10任一所述的虚拟道具控制方法。
13.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1-10任一所述的虚拟道具控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210139179.3A CN114470768B (zh) | 2022-02-15 | 2022-02-15 | 虚拟道具控制方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210139179.3A CN114470768B (zh) | 2022-02-15 | 2022-02-15 | 虚拟道具控制方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114470768A CN114470768A (zh) | 2022-05-13 |
CN114470768B true CN114470768B (zh) | 2023-07-25 |
Family
ID=81480898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210139179.3A Active CN114470768B (zh) | 2022-02-15 | 2022-02-15 | 虚拟道具控制方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114470768B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117289791A (zh) * | 2023-08-22 | 2023-12-26 | 杭州空介视觉科技有限公司 | 元宇宙人工智能虚拟装备数据生成方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090060692A (ko) * | 2007-12-10 | 2009-06-15 | 한국전자통신연구원 | 가상 객체의 물리적 특성 변경 장치 및 방법 |
CN103258338A (zh) * | 2012-02-16 | 2013-08-21 | 克利特股份有限公司 | 利用真实数据来驱动仿真的虚拟环境的方法和*** |
CN109453517A (zh) * | 2018-10-16 | 2019-03-12 | Oppo广东移动通信有限公司 | 虚拟角色控制方法和装置、存储介质、移动终端 |
CN111803913A (zh) * | 2020-06-15 | 2020-10-23 | 北京首钢建设投资有限公司 | 一种基于虚拟现实的冰壶运动体验与训练***及其装置 |
CN112732081A (zh) * | 2020-12-31 | 2021-04-30 | 珠海金山网络游戏科技有限公司 | 虚拟对象的移动方法及装置 |
CN113473159A (zh) * | 2020-03-11 | 2021-10-01 | 广州虎牙科技有限公司 | 数字人直播方法、装置、直播管理设备及可读存储介质 |
CN113713393A (zh) * | 2021-08-27 | 2021-11-30 | 腾讯科技(深圳)有限公司 | 虚拟道具的控制方法、装置和存储介质及电子设备 |
CN113905251A (zh) * | 2021-10-26 | 2022-01-07 | 北京字跳网络技术有限公司 | 虚拟对象控制方法、装置、电子设备及可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8717318B2 (en) * | 2011-03-29 | 2014-05-06 | Intel Corporation | Continued virtual links between gestures and user interface elements |
WO2018227011A1 (en) * | 2017-06-07 | 2018-12-13 | vSports, LLC | Mixed-reality sports tracking and simulation |
CN109189210A (zh) * | 2018-08-06 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 混合现实交互方法、装置及存储介质 |
CN110170169B (zh) * | 2019-06-05 | 2021-03-26 | 腾讯科技(深圳)有限公司 | 信息的展示方法和装置、存储介质、电子装置 |
-
2022
- 2022-02-15 CN CN202210139179.3A patent/CN114470768B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090060692A (ko) * | 2007-12-10 | 2009-06-15 | 한국전자통신연구원 | 가상 객체의 물리적 특성 변경 장치 및 방법 |
CN103258338A (zh) * | 2012-02-16 | 2013-08-21 | 克利特股份有限公司 | 利用真实数据来驱动仿真的虚拟环境的方法和*** |
CN109453517A (zh) * | 2018-10-16 | 2019-03-12 | Oppo广东移动通信有限公司 | 虚拟角色控制方法和装置、存储介质、移动终端 |
CN113473159A (zh) * | 2020-03-11 | 2021-10-01 | 广州虎牙科技有限公司 | 数字人直播方法、装置、直播管理设备及可读存储介质 |
CN111803913A (zh) * | 2020-06-15 | 2020-10-23 | 北京首钢建设投资有限公司 | 一种基于虚拟现实的冰壶运动体验与训练***及其装置 |
CN112732081A (zh) * | 2020-12-31 | 2021-04-30 | 珠海金山网络游戏科技有限公司 | 虚拟对象的移动方法及装置 |
CN113713393A (zh) * | 2021-08-27 | 2021-11-30 | 腾讯科技(深圳)有限公司 | 虚拟道具的控制方法、装置和存储介质及电子设备 |
CN113905251A (zh) * | 2021-10-26 | 2022-01-07 | 北京字跳网络技术有限公司 | 虚拟对象控制方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114470768A (zh) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107680157B (zh) | 一种基于直播的互动方法及直播***、电子设备 | |
EP3388119B1 (en) | Method, apparatus, and non-transitory computer-readable storage medium for view point selection assistance in free viewpoint video generation | |
CN108958475B (zh) | 虚拟对象控制方法、装置及设备 | |
CN111638793B (zh) | 飞行器的展示方法、装置、电子设备及存储介质 | |
CN113905251A (zh) | 虚拟对象控制方法、装置、电子设备及可读存储介质 | |
CN114745598B (zh) | 视频数据展示方法、装置、电子设备及存储介质 | |
CN111694430A (zh) | 一种ar场景画面呈现方法、装置、电子设备和存储介质 | |
CN113082697B (zh) | 游戏交互方法、装置和电子设备 | |
CN113852838B (zh) | 视频数据生成方法、装置、电子设备及可读存储介质 | |
CN112927349B (zh) | 三维虚拟特效的生成方法、装置、计算机设备及存储介质 | |
CN112148189A (zh) | 一种ar场景下的交互方法、装置、电子设备及存储介质 | |
CN114615513B (zh) | 视频数据生成方法、装置、电子设备及存储介质 | |
CN114155605B (zh) | 一种控制方法、装置以及计算机存储介质 | |
CN112882576B (zh) | Ar交互方法、装置、电子设备及存储介质 | |
CN114095744B (zh) | 视频直播方法、装置、电子设备及可读存储介质 | |
CN114470768B (zh) | 虚拟道具控制方法、装置、电子设备及可读存储介质 | |
CN112637665B (zh) | 增强现实场景下的展示方法、装置、电子设备及存储介质 | |
CN113784160A (zh) | 视频数据生成方法、装置、电子设备及可读存储介质 | |
CN114697703B (zh) | 视频数据生成方法、装置、电子设备及存储介质 | |
CN112150602A (zh) | 模型图像的渲染方法和装置、存储介质和电子设备 | |
CN114584681A (zh) | 目标对象的运动展示方法、装置、电子设备及存储介质 | |
CN113384883B (zh) | 游戏中的显示控制方法及装置、电子设备、存储介质 | |
CN113117327B (zh) | 增强现实互动控制方法、装置、电子设备和存储介质 | |
CN111862345B (zh) | 信息处理方法及装置、电子设备和计算机可读存储介质 | |
CN114625468A (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 |