CN112587927A - 道具的控制方法和装置、电子设备和存储介质 - Google Patents
道具的控制方法和装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112587927A CN112587927A CN202011593207.6A CN202011593207A CN112587927A CN 112587927 A CN112587927 A CN 112587927A CN 202011593207 A CN202011593207 A CN 202011593207A CN 112587927 A CN112587927 A CN 112587927A
- Authority
- CN
- China
- Prior art keywords
- target
- prop
- target virtual
- scene object
- 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
- 238000000034 method Methods 0.000 title claims abstract description 95
- 230000033001 locomotion Effects 0.000 claims description 74
- 238000001514 detection method Methods 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 25
- 239000003550 marker Substances 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 20
- 230000002441 reversible effect Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 230000003068 static effect Effects 0.000 claims description 10
- 230000001960 triggered effect Effects 0.000 claims description 10
- 238000009877 rendering Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 14
- 230000003993 interaction Effects 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 10
- 230000002452 interceptive effect Effects 0.000 description 8
- 238000010276 construction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000005484 gravity Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000000329 molecular dynamics simulation Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
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/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
-
- 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/807—Role playing or strategy games
-
- 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)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种道具的控制方法和装置、电子设备和存储介质,其中,该方法包括:获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动。通过本申请,解决了相关技术中存在由于场景道具的控制方式单一导致的与场景的交互性差的问题。
Description
技术领域
本申请涉及互联网领域,尤其涉及一种道具的控制方法和装置、电子设备和存储介质。
背景技术
目前,在一些大型单机游戏中,为了游戏角色与场景互动的多样性,在游戏中可以添加一些依赖具有牵引功能的场景道具(例如,绳索)的功能。例如,在一些RPG(Role-playing game,角色扮演游戏)单机游戏中,可以利用绳索进行人物移动,还可以在常规的人物移动以外加入了一些场景相关的互动,也可以为游戏中的个别角色配置带有类似绳索的功能,比如利用绳索勾住其他角色拉至身边。
然而,上述添加绳索功能的游戏一般为单机游戏或主机游戏,不是多人网络游戏,不存在网络同步的问题。当前也有部分网络游戏加入了此种类型的场景道具的相关玩法,但也只是某个角色可以使用这种特殊功能,而且绳索的控制方式比较单一,要么是在特定的关卡或者场景中,要么在特定的任务中,再或者沿着制作好的特定路线,实现有条件限制的绳索功能,与场景的交互性差,无法适用于整个开放游戏世界。对于其他具有牵引功能的场景道具,同样存在上述问题。
因此,相关技术中存在由于场景道具的控制方式单一导致的与场景的交互性差的问题。
发明内容
本申请提供了一种道具的控制方法和装置、电子设备和存储介质,以至少解决相关技术中存在由于绳索的控制方式单一导致的与场景的交互性差的问题。
根据本申请实施例的一个方面,提供了一种道具的控制方法,包括:获取对目标客户端执行的目标操作,其中,所述目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具;响应所述目标操作,通过所述目标客户端显示所述目标虚拟角色发射所述目标虚拟道具的目标端的画面,其中,所述目标虚拟道具除了所述目标端以外的另一端绑定在所述目标虚拟角色的目标部位上;在所述目标端连接到第一场景物体的情况下,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动。
根据本申请实施例的另一个方面,提供了一种道具的控制装置,包括:获取单元,用于获取对目标客户端执行的目标操作,其中,所述目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,所述目标虚拟道具的一端绑定在所述目标虚拟角色上;显示单元,用于响应所述目标操作,通过所述目标客户端显示所述目标虚拟角色发射所述目标虚拟道具的目标端的画面,其中,所述目标端未绑定在所述目标虚拟角色上;牵引单元,用于在所述目标端与第一场景物体发生碰撞的情况下,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动。
根据本申请实施例的又一个方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;其中,存储器,用于存储计算机程序;处理器,用于通过运行所述存储器上所存储的所述计算机程序来执行上述任一实施例中的方法步骤。
根据本申请实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一实施例中的方法步骤。
在本申请实施例中,采用按照场景物体的物体属性控制与场景的交互的方式,通过获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动,由于按照场景物体的属性触发角色移动和场景物体的至少之一进行移动,而不限制场景道具的移动方式,可以实现方便加入场景互动和与其他角色之间互动的目的,从而达到了提高场景道具与场景的交互性的技术效果,进而解决了相关技术中存在由于场景道具的控制方式单一导致的与场景的交互性差的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种可选的道具的控制方法的硬件环境的示意图;
图2是根据本申请实施例的一种可选的道具的控制方法的流程示意图;
图3是根据本申请实施例的一种可选的道具的控制方法的示意图;
图4是根据本申请实施例的另一种可选的道具的控制方法的示意图;
图5是根据本申请实施例的另一种可选的道具的控制方法的流程示意图;
图6是根据本申请实施例的一种可选的道具的控制装置的结构框图;
图7是根据本申请实施例的一种可选的电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
1、开放世界游戏
在开放世界游戏中,玩家通常拥有非常大的自由度,虽然游戏存在主线,但一般不明显。在此类游戏中,玩家可以接受各种各样的支线任务,体验多种不同的游戏风格。
根据本申请实施例的一个方面,提供了一种道具的控制方法。可选地,在本实施例中,上述道具的控制方法可以应用于如图1所示的由终端102和服务器104所构成的硬件环境中。如图1所示,服务器104通过网络与终端102进行连接,可用于为终端或终端上安装的客户端提供服务(如游戏服务、应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器104提供数据存储服务。
上述网络104包括但不限于以下至少之一:有线网络,无线网络,该有线网络可以包括但不限于以下至少之一:广域网、城域网或局域网,该无线网络可以包括但不限于以下至少之一:蓝牙、WIFI(Wireless Fidelity,无线保真)及其他实现无线通信的网络。上述终端102可以是计算数据的终端,如移动终端(例如手机、平板电脑)、笔记本电脑、PC机等终端上。上述服务器可以包括但不限于任何可以进行计算的硬件设备。
本申请实施例的道具的控制方法可以由服务器104来执行,也可以由终端102来执行,还可以是由服务器104和终端102共同执行。其中,终端102执行本申请实施例的道具的控制方法也可以是由安装在其上的客户端来执行。
以由终端102来执行本实施例中的道具的控制方法为例,图2是根据本申请实施例的一种可选的道具的控制方法的流程示意图,如图2所示,该方法的流程可以包括以下步骤:
步骤S202,获取对目标客户端执行的目标操作,其中,目标虚拟道具的一端绑定在目标虚拟角色上。
本实施例中的道具的控制方法可以应用于在游戏场景中控制场景道具。上述游戏场景可以是目标游戏的游戏场景,例如,目标网络游戏的游戏场景,该目标游戏可以是大世界游戏,或者,其他包含具有牵引功能的场景道具的网络游戏。
目标游戏可以是由目标游戏的客户端单独执行的,即,由客户端单独运行该目标游戏(单机游戏);可以是由目标游戏的后台服务器单独执行的,即,由服务器单独运行该目标游戏,客户端仅用于显示目标游戏的游戏画面,以及获取对游戏画面的操作(例如,对游戏画面的操作位置),并同步至后台服务器;还可以由目标游戏的客户端和目标游戏的后台服务器共同执行的,即,客户端和后台服务器分别执行目标游戏的部分逻辑,本实施例中对此不作限定。
可选地,在本实施例中,以目标游戏为目标网络游戏、且由后台服务器和客户端共同执行目标网络游戏的处理逻辑为例进行说明,其中,客户端获取用户的操作信息并将操作信息同步到后台服务器,后台服务器执行游戏操作的处理逻辑,并将处理结果同步到相关客户端,对于其他的执行方式(例如,客户端执行游戏操作的处理逻辑,并将处理结果同步到后台服务器,已由后台服务器将处理结果同步到其他客户端),本实施例中的道具的控制方法同样适用。
一个用户(一个对象,或者说,一个玩家)的终端设备上可以运行有目标网络游戏的客户端,该客户端可以与目标网络游戏的后台服务器进行通信连接。用户可以使用帐号和密码、动态密码、关联应用登录等方式登录到其终端设备上运行的上述客户端。
对于目标对象(对应于目标用户,可以通过目标帐号标识)可以使用目标帐号登录到目标网络游戏的目标客户端。目标客户端上可以显示有目标网络游戏(例如,开放世界类游戏,大世界游戏)的目标游戏场景(例如,开放游戏世界,大世界场景)。目标对象可以控制与其对应的虚拟角色(即,目标虚拟角色)在目标游戏场景中执行游戏操作,例如,在游戏地图中移动,使用场景道具,执行游戏任务,与其他玩家交互等等。
可选地,对于其他对象,其可以采用与目标对象相同或者类似的方式通过其控制的虚拟角色在目标游戏场景中执行相同或者类似的游戏操作,而在目标客户端上可以显示其他对象所控制的虚拟角色执行游戏操作的画面。
属于目标虚拟角色的场景道具中可以包含目标虚拟道具,该目标虚拟道具为具有牵引功能的场景道具,例如,目标绳索道具。在未被携带时,目标虚拟道具可以放置在目标虚拟角色的存储空间中(例如,背包,仓库)。在被携带时,目标虚拟道具可以放置或者固定在目标虚拟角色的目标部位上,例如,手部,手臂,腰部等。目标虚拟道具可以放置在目标承载道具内,例如,道具包,该目标承载道具可以固定在目标虚拟角色的目标部位。
目标虚拟道具的一端可以绑定在目标虚拟角色上,例如,固定在目标虚拟角色的目标部位上,另一端可以被发射出去,从而可以通过目标虚拟道具将目标虚拟角色与其他场景物体相连接,以实现与场景以及其他角色的互动。
目标虚拟道具可以是目标虚拟角色的专属道具,即,该虚拟道具不可掉落,可以被销毁,还可以由于耐久度为0或者其他原因导致无法修复。目标虚拟道具也可以是通用道具,可以被丢弃,可以被拾取,可以由于目标虚拟角色死亡而掉落等。本实施例中对于目标虚拟道具的除了牵引功能以外的其他属性不做限定。
目标对象可以通过操作目标客户端,控制目标虚拟角色对目标游戏场景执行不同的操作,例如,发射目标虚拟道具。目标客户端可以通过终端设备的触摸屏、或者其他的输入设备获取目标对象对目标客户端执行的目标操作,目标操作用于触发目标虚拟角色发射目标虚拟道具,可以是点击操作、滑动操作、或者多个操作的组合,本实施例中对此不作限定。
步骤S204,响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上。
响应获取到的上述目标操作,目标客户端可以控制目标虚拟角色发射目标虚拟道具,例如,将目标虚拟道具的目标端(即,未绑定在目标虚拟角色上的一端)沿着发射方向发射出去。上述控制操作可以是由目标客户端单独执行的,也可以是目标客户端向后台服务器上传检测到的目标操作、由后台服务器执行的。控制操作的执行方式可以根据需要配置,本实施例中对此不作限定。
目标客户端可以显示目标虚拟角色发射目标虚拟道具的目标端的画面(道具发射画面),在显示的道具发射画面中,目标虚拟道具除了目标端以外的另一端绑定在目标虚拟角色的目标部位(例如,手部,腰部)上。
上述发射操作可以是针对特定目标执行的,例如,目标场景物体,则通过目标客户端显示的可以是:目标虚拟角色朝着目标场景物体发射目标虚拟道具的目标端的画面。上述发射操作也可以不是针对特定目标执行的,则通过目标客户端显示的可以是:目标虚拟角色沿着发射方向发射目标虚拟道具的目标端的画面。
例如,用户所控制的虚拟角色可以通过射击的方式发射绳索,绳索的一端绑定在角色指定的模型位置(目标部位),一端(目标端)则以子弹的方式朝向目标(例如,目标场景物体)位移。
步骤S206,在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动。
在目标端沿着发射方向移动的过程中,其可以与目标游戏场景中的第一场景物体发生碰撞。上述碰撞可以是:目标虚拟道具的碰撞体与第一场景物体的碰撞体之间发生碰撞。
如果目标虚拟道具是朝着目标场景物体发射的,第一场景物体可以是目标虚拟道具的预期目标,即,目标场景物体,也可以目标虚拟道具的非预期目标,即,除了目标场景物体以外的其他场景物体,例如,目标虚拟道具的移动路径上的场景物体,本实施例中对此不作限定。
第一场景物体可以是目标游戏场景中任意允许交互的场景物体,可以但不限于为以下之一:地形物体,建筑,树木,木箱,场景物体,可移动生物等,可移动生物可以是玩家角色,也可以是非玩家生物等。
如果检测到目标虚拟道具与第一场景物体发生碰撞,即,目标虚拟道具命中第一场景物体,目标客户端上可以显示目标端与第一场景物体连接(目标虚拟角色通过目标虚拟道具与第一场景物体相连)的场景,连接的方式可以是以下至少之一:目标端吸附在第一场景物体上(例如,目标端上具有吸附属性的部件,比如,吸盘,磁铁),目标端通过抓钩等勾住第一场景物体。
通过命中目标类型,可以区分不同功能,同时显示不同的表现效果。第一场景物体的物体类型(即,命中目标的类型)可以通过场景物体的物体属性进行表示。场景物体的物体属性用于描述该场景物体,不同场景物体可以具有不同的物体属性,也可以具有相同的场景属性。上述物体属性可以是移动属性,例如,描述物体是否可移动或者可交互的属性,又例如,上述物体属性可以是体积、重量、重心等与物体移动具有关联关系的属性。本实施例中对此不作限定。
根据第一场景物体不同的物体属性,可以触发目标虚拟道具不同的牵引结果,上述牵引结果可以包括但不限于以下之一:
牵引目标虚拟角色发生移动,例如,朝着第一场景物体发生移动(沿着发射方向发生移动);
牵引第一场景物体发生移动,例如,朝着目标虚拟角色发生移动(沿着发射方向的反方向发生移动);
牵引目标虚拟角色和第一场景物体均发生移动,例如,牵引目标虚拟角色朝着第一场景物体发生移动(沿着发射方向发生移动),同时,牵引第一场景物体朝着目标虚拟角色发生移动(沿着发射方向的反方向发生移动)。
上述牵引功能可以是通过后台服务器或者目标客户端控制目标虚拟道具执行的。目标客户端上可以显示通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动的画面。
例如,可以基于对开放游戏世界(开放世界)中的地形、建筑和障碍等的检测,确定是触发角色移动还是与其他角色或者场景物体进行交互(例如,被拉拽,牵引)。
目标客户端上可以显示出目标虚拟角色在目标游戏场景中所执行的全部操作,以及执行各个操作所产生的结果,比如,目标虚拟道具的目标端的发射过程,目标虚拟道具牵引目标虚拟角色和/或第一场景物体的过程。
通过上述步骤S202至步骤S206,获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动,解决了相关技术中存在由于场景道具的控制方式单一导致的与场景的交互性差的问题,提高了场景道具与场景的交互性。
作为一种可选的实施例,在获取对目标客户端执行的目标操作之后,上述方法还包括:
S11,从目标端沿着目标端的发射方向发射检测射线,其中,检测射线用于进行碰撞检测;
S12,在检测射线与第一场景物体相交的情况下,确定目标端与第一场景物体发生碰撞。
响应于目标操作,在目标端被发射出去之后,后台服务器可以对目标端进行碰撞检测,确定目标端是否会与其他场景物体(例如,预期目标,非预期目标)发生碰撞,例如,可以是碰撞体检测,也可以是射线检测。
可选地,后台服务器可以从目标端发射射线进行碰撞检测,例如,可以从目标端沿着目标端的发射方向发射检测射线,以便进行碰撞检测。射线检测可以是用于对目标游戏场景中添加有碰撞体的场景物体进行碰撞检测。
如果检测射线与第一场景物体相交,后台服务器可以确定目标端与第一场景物体发生碰撞。此外,由于目标端移动到检测射线与第一场景物体相交的位置需要一定时间,为保证碰撞检测的准确性,可以控制进行多次碰撞检测,例如,可以计算从目标端的当前位置移动到相交的位置所需的时间,如果计算得到的时间超过预定时间阈值,则可以间隔一定时间检测之后再次进行碰撞检测。
通过本实施例,考虑到被发射出去的目标端的移动速度较快,通过从目标端发射射线进行碰撞检测,可以保证碰撞检测的效率。
作为一种可选的实施例,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动包括:
S21,在第一场景物体为静态物体的情况下,通过目标虚拟道具牵引目标虚拟角色朝着第一场景物体移动。
如果第一场景物体是静态物体,例如,地形物体、建筑、树木等大世界静态物体,则可以通过目标虚拟道具牵引目标虚拟角色发生移动,可以是牵引目标虚拟角色沿着发射方向朝着第一场景物体移动。目标虚拟角色移动的结果可以是:目标虚拟角色移动到第一场景物体的位置。通过目标客户端可以显示目标虚拟道具牵引目标虚拟角色朝着第一场景物体移动的画面。
可选地,在本实施例中,在一些场景中,如果目标虚拟角色在移动的过程中处于悬空状态,则可以控制目标虚拟角色以目标端为支点,通过目标虚拟道具进行摆动。摆动停止的条件可以是:目标虚拟道具与其他场景物体发生碰撞,或者,受到重力、摩擦力等的作用导致位移速度减少到0,或者,目标端从第一场景物体上脱离(可以是主动脱离,也可以是被动脱离)。
通过本实施例,在目标虚拟道具与静态物体发生碰撞时,牵引目标虚拟角色朝着静态物体移动,可以提高虚拟角色移动控制的灵活性。
作为一种可选的实施例,通过目标虚拟道具牵引目标虚拟角色朝着第一场景物体移动包括:
S31,确定目标虚拟角色的第一移动参数和目标移动动作,其中,目标移动动作为目标虚拟角色朝着第一场景物体移动所使用的动作;
S32,通过目标虚拟道具牵引目标虚拟角色沿着与第一移动参数对应的移动轨迹、并使用目标移动动作朝着第一场景物体移动。
在通过目标虚拟道具牵引目标虚拟角色朝着第一场景物体移动的情况下,后台服务器可以确定目标虚拟角色的第一移动参数,第一移动参数是目标虚拟角色朝着第一场景物体进行移动的移动参数,通过该移动参数可以模拟控制目标虚拟角色模拟物理运动。
后台服务器还可以确定目标虚拟角色的目标移动动作,该目标移动动作可以是目标虚拟角色朝着第一场景物体移动所使用的动作,例如,飞行动作,快速滑行动作,快速移动的同时从另一端开始收取目标虚拟道具的动作,还可以是其他移动动作。
在确定第一移动参数和目标移动动作之后,后台服务器可以控制目标虚拟角色沿着与第一移动参数对应的移动轨迹、并使用目标移动动作朝着第一场景物体移动。对于目标客户端,可以通过目标客户端显示目标虚拟道具牵引目标虚拟角色沿着与第一移动参数对应的移动轨迹、并使用目标移动动作朝着第一场景物体移动的画面,从而体现目标虚拟道具对于虚拟角色的牵引效果。
需要说明的是,在目标虚拟角色和/或第一场景物体进行移动的过程中,可以控制缩短目标虚拟道具的长度,例如,缩短弹性道具,从另一端开始收取目标虚拟道具,并将收取的目标虚拟道具放入目标承载道具中,以模拟目标虚拟道具的不同形态。
例如,可以通过设置角色移动的朝向、速度、重力等,同时设置角色相应的飞行动作,使角色飞行过去。
通过本实施例,通过设置虚拟角色的移动参数和移动动作,可以模拟受到道具牵引的物理表现,提高虚拟角色移动的拟真程度。
作为一种可选的实施例,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动包括:
S41,在第一场景物体为可移动物体的情况下,通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动。
如果第一场景物体是可交互物体或者可移动物体,例如,是木箱、场景物件、可移动生物等大世界物体,则可以通过目标虚拟道具牵引第一场景物体发生移动,可以是牵引第一场景物体沿着发射方向的反方向朝着目标虚拟角色移动。第一场景物体移动的结果可以是:第一场景物体移动到目标虚拟角色的位置,或者,与目标端脱离,并由于摩擦力、碰撞等的力场控制位移速度减小到0。通过目标客户端可以显示目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动的画面。
通过本实施例,在目标虚拟道具与可交互或者可移动物体发生碰撞时,牵引可交互或者可移动物体朝着目标虚拟道具移动,可以提高场景物体移动控制的灵活性,以及场景交互的多样性。
可选地,在本实施例中,如果第一场景物体为可移动物体或者可交互物体,也可以根据目标虚拟角色的角色属性和第一场景物体的物体属性,确定目标虚拟角色和第一场景物体中的至少之一发生移动。
例如,如果第一场景物体的重量与目标虚拟角色的重量之间的重量比值小于第一比例阈值,则控制第一场景物体向目标虚拟角色发生移动;如果重量比值大于或者等于第一比例阈值、且小于第二比例阈值,则控制第一场景物体向目标虚拟角色发生移动的同时,控制目标虚拟角色向第一场景物体发生移动,目标虚拟角色和第一场景物体的移动速度可以根据两者的重量以及所收到的力场确定;如果重量比值大于或者等于第二比例阈值,则控制目标虚拟角色向第一场景物体发生移动。
如果基于碰撞触发目标虚拟道具与其他场景物体(例如,其他角色)进行交互(例如,被拉拽,牵引),可以通过多种方式控制与其他场景物体进行交互。
作为一种可选的实施方式,通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动包括:
S51,控制目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动,并控制第一场景物体按照与目标端相同的速度朝着目标虚拟角色移动。
在通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动的情况下,后台服务器可以分别确定目标虚拟道具的目标端的移动参数和第一场景物体的移动参数,以体现目标端牵引第一场景物体向目标虚拟角色移动的效果。
后台服务器可以配置目标端的速度为相对之前速度的反向速度,同时设置第一场景物体以与目标端相同的速度、以朝着目标虚拟角色的方向位移,从而可以控制目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动,并控制第一场景物体按照与目标端相同的速度朝着目标虚拟角色移动。
对于目标客户端,目标客户端上可以显示目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动、同时第一场景物体按照与目标端相同的速度朝着目标虚拟角色移动的画面,即,第一场景物体跟随目标端按照与目标端在发生碰撞之前的速度的反向速度朝着目标虚拟角色移动的画面。
作为另一种可选的实施方式,通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动包括:
S52,将第一场景物体绑定在目标端上,以控制第一场景物体跟随目标端移动,并控制目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动。
在通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动的情况下,后台服务器可以将第一场景物体绑定在目标虚拟道具的目标端上,以控制第一场景物体跟随目标端移动。
后台服务器可以采用与前述类似的方式控制目标端按照发生碰撞之前的速度(例如,v1)的反向速度(例如,-v1)朝着目标虚拟角色移动。由于第一场景物体跟随目标端移动,目标客户端上可以显示第一场景物体跟随目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动的画面。
例如,可以通过设置目标端的绳索相对之前速度的反向速度、同时设置命中的目标以相同的速度、以角色的朝向位移,或者,直接将命中的目标绑定在绳索端,可以根据具体的表现情况而选择不同的方式。
通过本实施例,通过不同的控制方式控制第一场景物体跟随目标虚拟道具的目标端向着目标虚拟角色移动,可以保证牵引过程的连续性,提高游戏过程的拟真程度。
作为一种可选的实施例,在通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动的过程中,上述方法还包括:
S61,在目标虚拟道具或者第一场景物体与第二场景物体发生碰撞的情况下,控制目标端与第一场景物件分离;
S62,控制目标端朝着目标虚拟角色继续移动,直到返回到目标虚拟角色,并控制第一场景物体模拟物理移动,直到停止移动。
无论是角色(目标虚拟角色)位移到目标点(第一场景物体所在的位置)还是目标被位移到角色位置,目标网络游戏在这过程中都会实时检测中间是否有事件(例如,碰撞事件)触发中断当前行为。
对于角色位移到目标点的场景,如果发生移动中断事件,后台服务器可以控制目标端从第一场景物体上脱离,并返回到目标虚拟角色。目标虚拟角色可以停止移动,或者,沿着特定方向模拟物理移动过程,在移动一定距离之后停止。
可选地,在通过目标端牵引第一场景物体向着目标虚拟角色移动的过程中,在目标虚拟道具的移动路线上、或者在第一场景物体的移动路线上可能存在其他的场景物体,如果目标虚拟道具或者第一场景物体与第二场景物体发生碰撞,则可以触发目标端从第一场景物体上脱离,即,目标端与第一场景物体分离。目标客户端上可以显示目标虚拟道具或者第一场景物体与第二场景物体发生碰撞之后目标端与第一场景物体分离的画面。
后台服务器可以控制目标端朝着目标虚拟角色继续移动,直到返回到目标虚拟角色。此过程可以模拟目标虚拟道具的牵引功能,目标虚拟道具可以返回到目标虚拟角色(目标部位、或者与目标部位不同的另一个部位)。目标客户端上可以显示目标端从第一场景物体上脱离之后,返回到目标虚拟角色的画面。
后台服务器可以确定第一场景物体的第二移动参数和目标环境参数。第二移动参数是第一场景物体发生碰撞之后的移动参数,用于控制第一场景物体发生碰撞之后的移动过程,可以包括但不限于以下至少之一:移动速度,移动方向。目标环境参数是第一场景物体所处的环境参数,上述环境参数可以是影响第一场景物体的移动过程的环境参数,可以包括但不限于以下至少之一:重力,摩擦力。
后台服务器可以按照第二移动参数和目标环境参数控制第一场景物体模拟物理移动,提高场景物体控制的拟真程度。对于目标客户端,可以通过目标客户端显示第一场景物体模拟物理移动知道停止移动的画面。第一场景物体模拟物理移动可以是:第一场景物体沿着一个方向(可以是原来的方向,也可以是碰撞之后改变成的方向)移动一段距离之后停止。
通过本实施例,在移动过程中发生碰撞之后控制目标虚拟道具返回到目标虚拟角色,并控制第一场景物体模拟物理移动过程,可以提高场景物体控制的拟真程度。
作为一种可选的实施例,上述方法还包括:
S71,在目标端与第一场景物体发生碰撞之后,播放目标虚拟道具与第一场景物体的物体属性匹配的目标连接动画,其中,目标虚拟道具不同的连接动画对应于碰撞到的场景物体的不同物体属性。
可选地,可以为目标虚拟道具(或者目标端)配置多个连接动画,连接动画可以是目标虚拟道具(或者目标端)连接到碰撞到的场景物体的动画,用于描述目标虚拟道具(或者目标端)连接到碰撞到的场景物体的过程。
不同的连接动画可以对应于碰撞到的场景物体的不同物体属性,例如,可以为目标端配置吸附动画和缠绕动画,分别对应于场景物体的可吸附属性、以及物场景物体的可缠绕属性。
可选地,可以目标虚拟道具的目标端配置有多种端点模型(例如,抓钩模型,吸盘模型),不同的端点模型对应于碰撞到的场景物体的不同物体属性。在目标端与第一场景物体发生碰撞之后,可以从与目标端对应的多个端点模型中获取与第一场景物体的物体属性匹配的目标端点模型;播放与目标端点模型对应的目标连接动画,其中,目标连接动画用于描述目标端通过目标端点模型连接到第一场景物体的过程。
每个端点模型可以具有多个模型状态,例如,收拢状态,展开状态,连接到物体上的状态。不同的模型状态可以对应于不同的状态动画。在从与目标端对应的多个端点模型中获取与第一场景物体的物体属性匹配的目标端点模型之后,还可以从与目标端点模型对应的多个状态动画中获取与连接状态对应的目标连接动画,多个状态动画中的每个状态动画可以对应于目标端点模型的至少一种模型状态。
可选地,在本实施例中,可以在场景道具飞行的一端绑定模型(比如抓钩或其他模型),从而在勾住目标时播放相应的抓钩或其他模型的动作表现。
可以在目标端上绑定目标端点模型,该目标端点模型可以为绑定在目标端上的、用于勾住所碰触到的场景物体的模型。目标端点模型可以是抓钩、或者其他具有抓钩功能的模型。该目标端点模型可以具有不同的模型状态,例如,收拢状态,展开状态,勾住物体的状态。不同的模型状态可以对应于不同的模型动画。
在目标虚拟道具的目标端发射的过程中,目标客户端可以跟随目标端的移动播放目标端点模型的展开动画。
可选地,在目标端与第一场景物体发生碰撞之后,目标客户端可以播放目标端点模型勾住第一场景物体的模型动画,例如,缠绕在第一场景物体上的动画。
通过本实施例,通过在场景道具飞行的一端与场景物体发生碰撞之后,播放与场景物体的物体属性匹配的连接动画,可以丰富显示的画面信息,提高场景道具的拟真程度。
作为一种可选的实施例,在通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面之后,上述方法还包括:
S81,解算目标虚拟道具在每个更新时刻的数据位置标记数组,其中,目标虚拟道具通过多个节点被分为多个段,多个节点按照目标虚拟道具已发射出去的道具长度依次被触发沿发射方向移动,数据位置标记数组中的每个数据位置标记包含多个节点中的对应节点的位置数据;
S82,使用与每个更新时刻对应的数据位置标记数组,构建出目标虚拟道具在每个更新时刻的目标道具模型;
S83,在每个更新时刻对与当前时刻对应的目标道具模型进行渲染,以在每个更新时刻将目标虚拟道具渲染到目标客户端上进行显示。
目标虚拟道具可以是具有多个节点,通过多个节点可以将目标虚拟道具分为多个段(道具段),在目标端被发射出去之后,多个节点被触发沿着发射方向移动具有先后顺序,例如,越靠近目标端的节点被触发沿着发射方向移动的时间越早。可以按照目标虚拟道具已发射出去的道具长度依次触发多个节点沿发射方向移动。在某一时刻,部分节点可能已经开始移动,而其他节点则还未开始移动。
可以通过数据位置标记数组保存多个节点的节点位置,数据位置标记数组包含多个数据位置标记,每个数据位置标记对应于多个节点的节点位置。在目标端被发射出去之后,数据位置标记数组可以跟随时间进行更新,以体现目标虚拟道具在不同时间的形态。
对于目标网络游戏,目标客户端上每秒可以显示一定数量的游戏帧数,例如,一秒显示60帧。在目标端被发射出去之后,目标客户端(也可以是后台服务器)可以解算目标虚拟道具在每个更新时刻的数据位置标记数组,上述更新时刻与更新时间间隔对应,更新时间间隔可以是一帧或者多帧的时间,即,目标客户端每隔一帧或者多帧更新一次数据位置标记数组,以获取目标虚拟道具在每个更新时刻的模型形态。
解算数据位置标记数组的方式可以有多种,可以根据配置的解算规则确定在每个更新时刻的数据位置标记数组。例如,可以配置目标端以匀速沿着目标方向移动,确定在每个更新时刻已发射出去的道具长度,进而计算出各个节点的位置数据,解算出目标虚拟道具在每个更新时刻的数据位置标记数组。
对于每个更新时刻,目标客户端可以使用与本更新时刻对应的数据位置标记数组,构建出目标虚拟道具在本更新时刻的目标道具模型。目标道具模型可以包含多个顶点和UV纹理。多个顶点坐标和UV纹理坐标与多个节点的节点位置(节点坐标)之间可以具有关联关系。使用与本更新时刻对应的数据位置标记数组,可以更新目标道具模型的顶点坐标(例如,顶点缓冲区中顶点数据的位置),还可以更新目标道具模型的UV纹理坐标,并使用更新后的顶点坐标和UV纹理坐标,构建出本更新时刻的目标道具模型。
在每个更新时刻,目标客户端可以使用目标渲染器(Shader)对与当前时刻对应的目标道具模型进行渲染,以在每个更新时刻将目标虚拟道具渲染到目标客户端上进行显示。渲染所使用的模型材质贴图等可以预先配置,本实施例中对此不作限定。
例如,对于绳索道具,通过上述方式来解算数据的位置(节点位置),可以不断更新顶点缓冲区中顶点数据的位置,达到控制绳索运动的目的。
通过本实施例,通过数据位置标记数组记录多个节点在每个更新时刻的位置数据,以便进行构建出目标虚拟道具的道具模型,适用于如绳索等节点之间的位置变化较大的场景道具,可以提高道具模型构建的便捷性。
作为一种可选的实施例,解算目标虚拟道具在每个更新时刻的数据位置标记数组包括:
S91,获取与目标时刻对应的数据位置标记数组,其中,目标时刻为一个更新时刻,每个数据位置标记包含对应节点在目标时刻的节点位置、对应节点在目标时刻的前一个更新时刻的节点位置、以及用于指示对应节点是否参与位置运算的运算标记;
S92,根据与目标时刻对应的数据位置标记数组,基于韦尔莱算法解算出与目标时刻的下一个更新时刻对应的数据位置标记数组。
为了模拟场景道具的物理运动,可以使用用于求解牛顿运动方程的数值方法解算数据位置标记数组。数据位置标记数组中的每个单元(每个数据位置标记)可以包含:新位置数据和老位置数据,新位置数据可以是一个更新时刻的位置数据,老位置数据为前一个更新时刻的位置数据。每个单元还可以包含:Free数据(运算标记),这个Free数据控制这个节点是否是自由的,是否能够参与位置运算。如果它是false,那么它将被固定,不参与位置运算,如果它是true,那么它不是固定的,可以参与位置运算。
对于一个更新时刻,即,目标时刻,目标客户端可以获取与目标时刻对应的数据位置标记数组,每个数据位置标记包含对应节点在目标时刻的节点位置、对应节点在目标时刻的前一个更新时刻的节点位置、以及用于指示对应节点是否参与位置运算的运算标记。
通过解算数据位置标记数组,使其拥有重力、速度等,可以得到多个节点在各个更新时刻的节点位置。解算数据位置标记数组使用的算法可以有多种,可以包括但不限于:韦尔莱算法(韦尔莱积分法)。
韦尔莱算法是一种用于求解牛顿运动方程的数值方法,可以应用于分子动力学模拟以及视频游戏中。韦尔莱算法的优点在于:数值稳定性比简单的欧拉方法高很多,并保持了物理系统中的时间可逆性与相空间体积元体积守恒的性质。
目标客户端可以根据与目标时刻对应的数据位置标记数组,基于韦尔莱算法解算出与目标时刻的下一个更新时刻对应的数据位置标记数组。韦尔莱算法的形式可以有多种,对应地,基于韦尔莱算法解算出下一个更新时刻的数据位置标记数组的方式也可以有多种。
需要说明的是,对于其他可以用于求解牛顿运动方程的数值的算法,同样可以用于求解数据位置标记数组,所采用的求解算法不同,数据位置标记数组中的每个单元所包含的数据可以不同,本实施例中对此不作限定。
通过本实施例,通过配置运算标记,可以提高数据位置标记数组解算的效率;而基于韦尔莱算法解算数据位置标记数组,可以提高数值稳定性,并保持了物理系统中的时间可逆性与相空间体积元体积守恒的性质。
作为一种可选的实施例,根据与目标时刻对应的数据位置标记数组,基于韦尔莱算法解算出与目标时刻的下一个更新时刻对应的数据位置标记数组包括:
S101,根据运算标记,从与目标时刻对应的数据位置标记数组中获取目标数据位置标记,其中,与目标数据位置标记对应的目标节点参与位置运算,目标数据位置标记包含目标节点在目标时刻(当前时刻)的第一节点位置、以及在前一个更新时刻(当前时刻的前一个时刻)的第二节点位置;
S102,根据第一节点位置、第二节点位置以及更新时间间隔,确定目标节点在目标时刻的目标节点速度;
S103,确定目标节点的节点质量、以及目标节点在目标时刻所受到的目标力场;
S104,基于韦尔莱算法,将第一节点位置、目标节点速度与更新时间间隔的乘积得到的值、以及目标力场与更新时间间隔平方的乘积除以两倍的节点质量得到的值相加,得到目标节点在下一个更新时刻的第三节点位置;
S105,使用第一节点位置和第三节点位置更新目标数据位置标记,其中,与下一个更新时刻对应的数据位置标记数组包含更新后的目标数据位置标记。
在基于韦尔莱算法解算数据位置标记数组时,可以使用韦尔莱积分法进行解算,解算使用的可以是由速度表示的韦尔莱公式。
由于多个节点中有部分节点不参与位置运算,目标客户端可以首先根据运算标记,从与目标时刻对应的数据位置标记数组中获取目标数据位置标记,也就是,参与位置运算的节点(目标节点)的数据位置标记,即,目标数据位置标记。目标数据位置标记可以有一个或者多个,对于某一个目标数据位置标记,其可以包含对应的目标节点在目标时刻的第一节点位置(例如,r(t))、以及在前一个更新时刻的第二节点位置(例如,r(t-Δt))。
根据第一节点位置、第二节点位置以及更新时间间隔,可以确定目标节点在目标时刻的目标节点速度,例如,v=(r(t)-r(t-Δt))/Δt。
根据第一节点位置和系统的相互作用势条件(如果相互作用仅依赖位置r),可以确定出目标节点在目标时刻所受到的目标力场,例如,f(t),而每个节点的节点质量(m)可以预先配置,或者根据目标虚拟道具的道具属性(例如,道具质量)、节点在目标虚拟道具的位置等信息确定。
基于韦尔莱算法,例如,使用由速度表示的韦尔莱公式,可以计算目标节点在下一个更新时刻的节点位置,即,第三节点位置(例如,r(t)),计算的方式可以是以下三部分求和:第一节点位置,目标节点速度与更新时间间隔的乘积得到的值,目标力场与更新时间间隔平方的乘积除以两倍的节点质量得到的值。
在得到第三节点位置之后,可以使用第一节点位置和第三节点位置更新目标数据位置标记,例如,将目标数据位置标记中当前时刻的节点位置更新为第三节点位置,将当前时刻的前一个时刻的节点位置更新为第一节点位置,同时更新运算标记(Free数据)。
下面结合示例说明韦尔莱积分法。韦尔莱积分法记录了分子当前的位置(当前更新时刻的位置)和之前的位置(前一个更新时刻的位置),要获得分子的速度,只要用当前位置减去之前的位置即可。韦尔莱算法的计算步骤为:
步骤1,通过Taylor展开公式(1)计算得到位置r(t+Δt),公式(1)如下:
其中,r(t)为t时刻的分子位置,v(t)为t时刻的速度,f(t)为t时刻的力场,Δt为两个相邻时刻的时间差。
步骤2,由r(t+Δt)和系统的相互作用势条件(如果相互作用仅依赖位置r),求得力场f(t+Δt)。
步骤3,由速度表示的韦尔莱公式求出新的速度v(t+Δt)。
那么,基于r(t+Δt)、f(t+Δt)和v(t+Δt)带入公式(1)可以求得r(t+2Δt)。
通过本实施例,基于韦尔莱积分法,使用由速度表示的韦尔莱公式解算数据位置标记数组,可以提高数据位置标记数组解算的效率。
作为一种可选的实施例,使用与每个更新时刻对应的数据位置标记数组,构建出目标虚拟道具在每个更新时刻的目标道具模型包括:
S111,获取与目标道具模型对应的目标模型面片,其中,目标模型面片用于构建目标道具模型;
S112,根据与每个更新时刻对应的数据位置标记数组,确定目标模型面片的目标顶点坐标和目标纹理坐标;
S113,使用目标顶点坐标和目标纹理坐标,构建出目标虚拟道具在每个更新时刻的目标道具模型。
利用解算的数据(与每个更新时刻对应的数据位置标记数组),可以重新构建整个模型(例如,绳索模型),重新构建可以包括但不限于以下几个方面:位置的构建,UV的构建,切线的构建,indexbuffer(索引缓存)的构建。
可选地,在本实施例中,目标道具模型可以是使用与目标道具模型对应的目标模型面片包裹数据位置标记数组中的数据位置标记来构建的,目标模型面片用于构建目标道具模型。为了得到目标道具模型,目标客户端可以获取与目标道具模型对应的目标模型面片。
目标模型面片可以包含顶点和UV纹理(目标纹理),顶点坐标和UV纹理坐标与多个节点的节点坐标(节点位置坐标)之间可以具有对应关系。对应一个更新时刻,目标客户端可以基于目标模型面片的顶点坐标和UV纹理坐标与多个节点的节点位置之间的对应关系,根据与本更新时刻对应的数据位置标记数组,确定目标模型面片的目标顶点坐标和目标纹理坐标。根据目标顶点坐标和目标纹理坐标,目标客户端可以构建出目标虚拟道具在本更新时刻的目标道具模型。
可选地,在使用目标虚拟道具之前,可以首先构建目标虚拟道具的初始道具模型,通过初始道具模型可以确定节点与顶点和UV纹理之间的约束。构建目标虚拟道具的初始道具模型的设备可以是后台服务器,也可以是其他设备,例如,相关人员的终端设备。
以由终端设备进行初始道具模型构建为例,终端设备可以按照目标虚拟道具的段数、以及各个段的长度,生成多个数据位置标记。多个数据位置标记与多个节点一一对应,一个数据位置标记用于标记一个节点的位置。
对于多个数据位置标记,终端设备可以为多个数据位置标记构建模型顶点和模型纹理坐标,例如,根据设置的边数构建顶点和UV,得到目标虚拟道具的初始道具模型。
例如,可以首先设置绳索的段数,从而有了数据位置标记,如图3所示。由于绳索本身拥有自义定参数,可以包括但不限于:段数,边数,物理运算时迭代的次数,绳子的长度,绳子参与物理运算时受到的力,这些数据中的有些数据可以为之后数据数量的确定、模型构造时边的长度、顶点数量提供数据支持。然后,可以构建一个面片,把这个面片包裹在数据位置标记的周围,如图4所示。构建面片并包裹数据位置标记的方式可以是:根据设置的边数构建顶点和UV。
通过本实施例,通过使用模型面片包裹数据位置标记的方式进行模型构建,可以提高模型构建的便捷性。
下面结合可选示例对本申请实施例中的道具的控制方法进行解释说明。在本示例中,目标虚拟道具为绳索(绳索道具),目标网络游戏为大世界游戏,游戏的控制逻辑是由后台服务器执行的。
如图5所示,本可选示例中的道具的控制方法的流程可以包括以下步骤:
步骤S502,角色在当前位置发射绳索。
用户可以通过操作其终端设备上运行的大世界游戏的客户端控制对应的虚拟角色执行游戏操作,例如,发射绳索。该用户所控制的角色可以向预期目标发射绳索。绳索的一端绑定在角色上,另一端向着预期目标开始位移。
步骤S504,绳索飞行的一端与目标发生碰撞。
绳索飞行的一端与目标发生碰撞,命中目标,命中的目标可以是预期目标,也可以是非预期目标。
步骤S506,检测命中目标的类型。
后台服务器可以检测命中目标的类型(命中目标的物体属性),确定其是地形、建筑、树木等大世界静态物体,还是木箱、场景物件、可移动生物等大世界可交互或可移动物体。
步骤S508,如果命中目标为大世界静态物体,控制角色位移到目标位置。
如果命中目标为大世界静态物体时,可以通过设置角色移动的朝向、速度,重力、并同时设置角色相应的飞行动作,使角色飞行过去,结束。
步骤S510,如果命中目标为大大世界可交互或可移动物体,绳索返回同时物体朝角色位置位移。
如果命中目标为大大世界可交互或可移动物体,可以通过以下方式控制绳索返回同时物体朝角色位置位移:设置目标端绳索相对之前速度的反向速度位移,同时设置命中的目标以相同的速度、以角色的朝向位移;或者,将命中目标直接绑定在绳索端,具体用哪种方式可以根据具体表现情况进行选择。
无论是角色位移到目标点还是目标被位移到角色位置,后台服务器都可以实时检测中间是否有被中断当前行为。
步骤S512,返回途中发生碰撞,绳索继续返回,物体中断位置开启物理模拟移动,直至位移速度为0停止移动。
如果绳索返回途中发生碰撞,则控制绳索继续返回到角色。对于命中目标,该物体中断朝角色位置位移,并开启物理模拟移动,直至物体的位移速度为0,停止移动。
通过本示例,通过对开放世界中的地形、建筑和障碍等进行检测,确定是触发角色移动还是与其他角色进行交互,从而加入绳索与场景互动,以及与其他角色之间的互动,从而保证绳索道具可以适用于开放游戏世界,也便于进行多人网络同步。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
根据本申请实施例的另一个方面,还提供了一种用于实施上述道具的控制方法的道具的控制装置。图6是根据本申请实施例的一种可选的道具的控制装置的结构框图,如图6所示,该装置可以包括:
获取单元602,用于获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;
显示单元604,与获取单元602相连,用于响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;
牵引单元606,与显示单元604相连,用于在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动。
需要说明的是,该实施例中的获取单元602可以用于执行上述步骤S202,该实施例中的显示单元604可以用于执行上述步骤S204,该实施例中的牵引单元606可以用于执行上述步骤S206。
通过上述模块,获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动,解决了相关技术中存在由于场景道具的控制方式单一导致的与场景的交互性差的问题,提高了场景道具与场景的交互性。
作为一种可选的实施例,上述装置还包括:
发射单元,用于在获取对目标客户端执行的目标操作之后,从目标端沿着目标端的发射方向发射检测射线,其中,检测射线用于进行碰撞检测;
确定单元,用于在检测射线与第一场景物体相交的情况下,确定目标端与第一场景物体发生碰撞。
作为一种可选的实施例,牵引单元606包括:
第一牵引模块,用于在第一场景物体为静态物体的情况下,通过目标虚拟道具牵引目标虚拟角色朝着第一场景物体移动。
作为一种可选的实施例,第一牵引模块包括:
第一确定子模块,用于确定目标虚拟角色的第一移动参数和目标移动动作,其中,目标移动动作为目标虚拟角色朝着第一场景物体移动所使用的动作;
牵引子模块,用于通过目标虚拟道具牵引目标虚拟角色沿着与第一移动参数对应的移动轨迹、并使用目标移动动作朝着第一场景物体移动。
作为一种可选的实施例,牵引单元606包括:
第二牵引模块,用于在第一场景物体为可移动物体的情况下,通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动。
作为一种可选的实施例,第二牵引模块包括以下之一:
第一控制子模块,用于控制目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动,并控制第一场景物体按照与目标端相同的速度朝着目标虚拟角色移动;
绑定子模块,用于将第一场景物体绑定在目标端上,以控制第一场景物体跟随目标端移动;第二控制子模块,用于控制目标端按照发生碰撞之前的速度的反向速度朝着目标虚拟角色移动。
作为一种可选的实施例,上述装置还包括:
第一控制单元,用于在通过目标虚拟道具牵引第一场景物体朝着目标虚拟角色移动的过程中,在目标虚拟道具或者第一场景物体与第二场景物体发生碰撞的情况下,控制目标端与第一场景物件分离;
第二控制单元,用于控制目标端朝着目标虚拟角色继续移动,直到返回到目标虚拟角色,并控制第一场景物体模拟物理移动,直到停止移动。
作为一种可选的实施例,上述装置还包括:
播放单元,用于在目标端与第一场景物体发生碰撞之后,播放目标虚拟道具与第一场景物体的物体属性匹配的目标连接动画,其中,目标虚拟道具不同的连接动画对应于碰撞到的场景物体的不同物体属性。
作为一种可选的实施例,上述装置还包括:
解算单元,用于在通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面之后,解算目标虚拟道具在每个更新时刻的数据位置标记数组,其中,目标虚拟道具通过多个节点被分为多个段,多个节点按照目标虚拟道具已发射出去的道具长度依次被触发沿发射方向移动,数据位置标记数组中的每个数据位置标记包含多个节点中的对应节点的位置数据;
构建单元,用于使用与每个更新时刻对应的数据位置标记数组,构建出目标虚拟道具在每个更新时刻的目标道具模型;
渲染单元,用于在每个更新时刻对与当前时刻对应的目标道具模型进行渲染,以在每个更新时刻将目标虚拟道具渲染到目标客户端上进行显示。
作为一种可选的实施例,解算单元包括:
第一获取模块,用于获取与目标时刻对应的数据位置标记数组,其中,目标时刻为一个更新时刻,每个数据位置标记包含对应节点在目标时刻的节点位置、对应节点在目标时刻的前一个更新时刻的节点位置、以及用于指示对应节点是否参与位置运算的运算标记;
解算模块,用于根据与目标时刻对应的数据位置标记数组,基于韦尔莱算法解算出与目标时刻的下一个更新时刻对应的数据位置标记数组。
作为一种可选的实施例,解算模块包括:
获取子模块,用于根据运算标记,从与目标时刻对应的数据位置标记数组中获取目标数据位置标记,其中,与目标数据位置标记对应的目标节点参与位置运算,目标数据位置标记包含目标节点在目标时刻的第一节点位置、以及在前一个更新时刻的第二节点位置;
第二确定子模块,用于根据第一节点位置、第二节点位置以及更新时间间隔,确定目标节点在目标时刻的目标节点速度;
第三确定子模块,用于确定目标节点的节点质量、以及目标节点在目标时刻所受到的目标力场;
计算子模块,用于基于韦尔莱算法,将第一节点位置、目标节点速度与更新时间间隔的乘积得到的值、以及目标力场与更新时间间隔平方的乘积除以两倍的节点质量得到的值相加,得到目标节点在下一个更新时刻的第三节点位置;
更新子模块,用于使用第一节点位置和第三节点位置更新目标数据位置标记,其中,与下一个更新时刻对应的数据位置标记数组包含更新后的目标数据位置标记。
作为一种可选的实施例,构建单元包括:
第二获取模块,用于获取与目标道具模型对应的目标模型面片,其中,目标模型面片用于构建目标道具模型;
确定模块,用于根据与每个更新时刻对应的数据位置标记数组,确定目标模型面片的目标顶点坐标和目标纹理坐标;
构建模块,用于使用目标顶点坐标和目标纹理坐标,构建出目标虚拟道具在每个更新时刻的目标道具模型。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
根据本申请实施例的又一个方面,还提供了一种用于实施上述道具的控制方法的电子设备,该电子设备可以是服务器、终端、或者其组合。
图7是根据本申请实施例的一种可选的电子设备的结构框图,如图7所示,包括处理器702、通信接口704、存储器706和通信总线708,其中,处理器702、通信接口704和存储器706通过通信总线708完成相互间的通信,其中,
存储器706,用于存储计算机程序;
处理器702,用于执行存储器706上所存放的计算机程序时,实现如下步骤:
S1,获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;
S2,响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;
S3,在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动。
可选地,在本实施例中,上述的通信总线可以是PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线、或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括RAM,也可以包括非易失性存储器(non-volatile memory),例如,至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
作为一种示例,上述存储器706中可以但不限于包括上述道具的控制装置中的获取单元602、显示单元604以及牵引单元606。此外,还可以包括但不限于上述道具的控制装置中的其他模块单元,本示例中不再赘述。
上述处理器可以是通用处理器,可以包含但不限于:CPU(Central ProcessingUnit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(DigitalSignal Processing,数字信号处理器)、ASIC(Application Specific IntegratedCircuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
此外,上述电子设备还包括:显示器,用于显示目标客户端的显示界面。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图7所示的结构仅为示意,实施上述道具的控制方法的设备可以是终端设备,该终端设备可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图7其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图7中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图7所示的不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
根据本申请实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行本申请实施例中上述任一项道具的控制方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,获取对目标客户端执行的目标操作,其中,目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,目标虚拟道具的一端绑定在目标虚拟角色上;
S2,响应目标操作,通过目标客户端显示目标虚拟角色发射目标虚拟道具的目标端的画面,其中,目标端未绑定在目标虚拟角色上;
S3,在目标端与第一场景物体发生碰撞的情况下,根据第一场景物体的物体属性,通过目标虚拟道具牵引目标虚拟角色和第一场景物体中的至少一个发生移动。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例中对此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例中所提供的方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (15)
1.一种道具的控制方法,其特征在于,包括:
获取对目标客户端执行的目标操作,其中,所述目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,所述目标虚拟道具的一端绑定在所述目标虚拟角色上;
响应所述目标操作,通过所述目标客户端显示所述目标虚拟角色发射所述目标虚拟道具的目标端的画面,其中,所述目标端未绑定在所述目标虚拟角色上;
在所述目标端与第一场景物体发生碰撞的情况下,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动。
2.根据权利要求1所述的方法,其特征在于,在获取对所述目标客户端执行的所述目标操作之后,所述方法还包括:
从所述目标端沿着所述目标端的发射方向发射检测射线,其中,所述检测射线用于进行碰撞检测;
在所述检测射线与所述第一场景物体相交的情况下,确定所述目标端与所述第一场景物体发生碰撞。
3.根据权利要求1所述的方法,其特征在于,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动包括:
在所述第一场景物体为静态物体的情况下,通过所述目标虚拟道具牵引所述目标虚拟角色朝着所述第一场景物体移动。
4.根据权利要求3所述的方法,其特征在于,通过所述目标虚拟道具牵引所述目标虚拟角色朝着所述第一场景物体移动包括:
确定所述目标虚拟角色的第一移动参数和目标移动动作,其中,所述目标移动动作为所述目标虚拟角色朝着所述第一场景物体移动所使用的动作;
通过所述目标虚拟道具牵引所述目标虚拟角色沿着与所述第一移动参数对应的移动轨迹、并使用所述目标移动动作朝着所述第一场景物体移动。
5.根据权利要求1所述的方法,其特征在于,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动包括:
在所述第一场景物体为可移动物体的情况下,通过所述目标虚拟道具牵引所述第一场景物体朝着所述目标虚拟角色移动。
6.根据权利要求5所述的方法,其特征在于,通过所述目标虚拟道具牵引所述第一场景物体朝着所述目标虚拟角色移动包括以下之一:
控制所述目标端按照发生碰撞之前的速度的反向速度朝着所述目标虚拟角色移动,并控制所述第一场景物体按照与所述目标端相同的速度朝着所述目标虚拟角色移动;
将所述第一场景物体绑定在所述目标端上,以控制所述第一场景物体跟随所述目标端移动,并控制所述目标端按照发生碰撞之前的速度的反向速度朝着所述目标虚拟角色移动。
7.根据权利要求5所述的方法,其特征在于,在通过所述目标虚拟道具牵引所述第一场景物体朝着所述目标虚拟角色移动的过程中,所述方法还包括:
在所述目标虚拟道具或者所述第一场景物体与第二场景物体发生碰撞的情况下,控制所述目标端与所述第一场景物件分离;
控制所述目标端朝着所述目标虚拟角色继续移动,直到返回到所述目标虚拟角色,并控制所述第一场景物体模拟物理移动,直到停止移动。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标端与所述第一场景物体发生碰撞之后,播放所述目标虚拟道具与所述第一场景物体的物体属性匹配的目标连接动画,其中,所述目标虚拟道具不同的连接动画对应于碰撞到的场景物体的不同物体属性。
9.根据权利要求1至8中任一项所述的方法,其特征在于,在通过所述目标客户端显示所述目标虚拟角色发射所述目标虚拟道具的目标端的画面之后,所述方法还包括:
解算所述目标虚拟道具在每个更新时刻的数据位置标记数组,其中,所述目标虚拟道具通过多个节点被分为多个段,所述多个节点按照所述目标虚拟道具已发射出去的道具长度依次被触发沿发射方向移动,所述数据位置标记数组中的每个数据位置标记包含所述多个节点中的对应节点的位置数据;
使用与每个所述更新时刻对应的所述数据位置标记数组,构建出所述目标虚拟道具在每个所述更新时刻的目标道具模型;
在每个所述更新时刻对与当前时刻对应的所述目标道具模型进行渲染,以在每个所述更新时刻将所述目标虚拟道具渲染到所述目标客户端上进行显示。
10.根据权利要求9所述的方法,其特征在于,解算所述目标虚拟道具在每个所述更新时刻的所述数据位置标记数组包括:
获取与目标时刻对应的所述数据位置标记数组,其中,所述目标时刻为一个所述更新时刻,每个所述数据位置标记包含对应节点在所述目标时刻的节点位置、对应节点在所述目标时刻的前一个更新时刻的节点位置、以及用于指示对应节点是否参与位置运算的运算标记;
根据与所述目标时刻对应的所述数据位置标记数组,基于韦尔莱算法解算出与所述目标时刻的下一个更新时刻对应的所述数据位置标记数组。
11.根据权利要求10所述的方法,其特征在于,根据与所述目标时刻对应的所述数据位置标记数组,基于韦尔莱算法解算出与所述目标时刻的所述下一个更新时刻对应的所述数据位置标记数组包括:
根据所述运算标记,从与所述目标时刻对应的所述数据位置标记数组中获取目标数据位置标记,其中,与所述目标数据位置标记对应的目标节点参与位置运算,所述目标数据位置标记包含所述目标节点在所述目标时刻的第一节点位置、以及在所述前一个更新时刻的第二节点位置;
根据所述第一节点位置、所述第二节点位置以及更新时间间隔,确定所述目标节点在所述目标时刻的目标节点速度;
确定所述目标节点的节点质量、以及所述目标节点在所述目标时刻所受到的目标力场;
基于韦尔莱算法,将所述第一节点位置、所述目标节点速度与所述更新时间间隔的乘积得到的值、以及所述目标力场与所述更新时间间隔平方的乘积除以两倍的所述节点质量得到的值相加,得到所述目标节点在所述下一个更新时刻的第三节点位置;
使用所述第一节点位置和所述第三节点位置更新所述目标数据位置标记,其中,与所述下一个更新时刻对应的所述数据位置标记数组包含更新后的所述目标数据位置标记。
12.根据权利要求9所述的方法,其特征在于,使用与每个所述更新时刻对应的所述数据位置标记数组,构建出所述目标虚拟道具在每个所述更新时刻的所述目标道具模型包括:
获取与所述目标道具模型对应的目标模型面片,其中,所述目标模型面片用于构建所述目标道具模型;
根据与每个所述更新时刻对应的所述数据位置标记数组,确定所述目标模型面片的目标顶点坐标和目标纹理坐标;
使用所述目标顶点坐标和所述目标纹理坐标,构建出所述目标虚拟道具在每个所述更新时刻的所述目标道具模型。
13.一种道具的控制装置,其特征在于,包括:
获取单元,用于获取对目标客户端执行的目标操作,其中,所述目标操作用于触发目标游戏场景中的目标虚拟角色发射目标虚拟道具,所述目标虚拟道具的一端绑定在所述目标虚拟角色上;
显示单元,用于响应所述目标操作,通过所述目标客户端显示所述目标虚拟角色发射所述目标虚拟道具的目标端的画面,其中,所述目标端未绑定在所述目标虚拟角色上;
牵引单元,用于在所述目标端与第一场景物体发生碰撞的情况下,根据所述第一场景物体的物体属性,通过所述目标虚拟道具牵引所述目标虚拟角色和所述第一场景物体中的至少一个发生移动。
14.一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信,其特征在于,
所述存储器,用于存储计算机程序;
所述处理器,用于通过运行所述存储器上所存储的所述计算机程序来执行权利要求1至12中任一项所述的方法步骤。
15.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至12中任一项中所述的方法步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011593207.6A CN112587927B (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
CN202310728332.0A CN116672712A (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
PCT/CN2021/121356 WO2022142543A1 (zh) | 2020-12-29 | 2021-09-28 | 道具的控制方法和装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011593207.6A CN112587927B (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310728332.0A Division CN116672712A (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112587927A true CN112587927A (zh) | 2021-04-02 |
CN112587927B CN112587927B (zh) | 2023-07-07 |
Family
ID=75203438
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011593207.6A Active CN112587927B (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
CN202310728332.0A Pending CN116672712A (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310728332.0A Pending CN116672712A (zh) | 2020-12-29 | 2020-12-29 | 道具的控制方法和装置、电子设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN112587927B (zh) |
WO (1) | WO2022142543A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113546400A (zh) * | 2021-07-26 | 2021-10-26 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法、装置以及电子设备 |
CN114155605A (zh) * | 2021-12-03 | 2022-03-08 | 北京字跳网络技术有限公司 | 一种控制方法、装置以及计算机存储介质 |
WO2022142543A1 (zh) * | 2020-12-29 | 2022-07-07 | 苏州幻塔网络科技有限公司 | 道具的控制方法和装置、电子设备和存储介质 |
WO2023179292A1 (zh) * | 2022-03-21 | 2023-09-28 | 北京字跳网络技术有限公司 | 虚拟道具的驱动方法、装置、电子设备及可读存储介质 |
WO2024021845A1 (zh) * | 2022-07-28 | 2024-02-01 | 腾讯科技(深圳)有限公司 | 虚拟角色的控制方法和装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020143781A1 (en) * | 2001-03-27 | 2002-10-03 | Martin Lavoie | Comparing the position of shared objects |
CN109697001A (zh) * | 2017-10-24 | 2019-04-30 | 腾讯科技(深圳)有限公司 | 交互界面的显示方法和装置、存储介质、电子装置 |
CN112044073A (zh) * | 2020-09-10 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 虚拟道具的使用方法、装置、设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026318B (zh) * | 2019-12-05 | 2022-07-12 | 腾讯科技(深圳)有限公司 | 基于虚拟环境的动画播放方法、装置、设备及存储介质 |
CN110882545B (zh) * | 2019-12-06 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 虚拟对象控制方法、装置、电子设备及存储介质 |
CN112076467B (zh) * | 2020-09-17 | 2023-03-10 | 腾讯科技(深圳)有限公司 | 控制虚拟对象使用虚拟道具的方法、装置、终端及介质 |
CN112587927B (zh) * | 2020-12-29 | 2023-07-07 | 苏州幻塔网络科技有限公司 | 道具的控制方法和装置、电子设备和存储介质 |
-
2020
- 2020-12-29 CN CN202011593207.6A patent/CN112587927B/zh active Active
- 2020-12-29 CN CN202310728332.0A patent/CN116672712A/zh active Pending
-
2021
- 2021-09-28 WO PCT/CN2021/121356 patent/WO2022142543A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020143781A1 (en) * | 2001-03-27 | 2002-10-03 | Martin Lavoie | Comparing the position of shared objects |
CN109697001A (zh) * | 2017-10-24 | 2019-04-30 | 腾讯科技(深圳)有限公司 | 交互界面的显示方法和装置、存储介质、电子装置 |
CN112044073A (zh) * | 2020-09-10 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 虚拟道具的使用方法、装置、设备及介质 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022142543A1 (zh) * | 2020-12-29 | 2022-07-07 | 苏州幻塔网络科技有限公司 | 道具的控制方法和装置、电子设备和存储介质 |
CN113546400A (zh) * | 2021-07-26 | 2021-10-26 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法、装置以及电子设备 |
CN113546400B (zh) * | 2021-07-26 | 2024-02-02 | 网易(杭州)网络有限公司 | 游戏中虚拟角色的控制方法、装置以及电子设备 |
CN114155605A (zh) * | 2021-12-03 | 2022-03-08 | 北京字跳网络技术有限公司 | 一种控制方法、装置以及计算机存储介质 |
CN114155605B (zh) * | 2021-12-03 | 2023-09-15 | 北京字跳网络技术有限公司 | 一种控制方法、装置以及计算机存储介质 |
WO2023179292A1 (zh) * | 2022-03-21 | 2023-09-28 | 北京字跳网络技术有限公司 | 虚拟道具的驱动方法、装置、电子设备及可读存储介质 |
WO2024021845A1 (zh) * | 2022-07-28 | 2024-02-01 | 腾讯科技(深圳)有限公司 | 虚拟角色的控制方法和装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112587927B (zh) | 2023-07-07 |
CN116672712A (zh) | 2023-09-01 |
WO2022142543A1 (zh) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112587927B (zh) | 道具的控制方法和装置、电子设备和存储介质 | |
US10282882B2 (en) | Augmented reality simulation continuum | |
US20190388786A1 (en) | Video Game Gameplay having Nuanced Character Movements and Dynamic Movement Indicators | |
US20160067611A1 (en) | Adjusting object adaptive modification or game level difficulty and physical gestures through level definition files | |
US8957858B2 (en) | Multi-platform motion-based computer interactions | |
JP2016539668A (ja) | 拡張現実装置、方法およびプログラム | |
CN111921195B (zh) | 三维场景的生成方法和装置、存储介质和电子装置 | |
JP2023543519A (ja) | 仮想アイテムの投入方法、装置、端末、及びプログラム | |
US10296082B2 (en) | System, method and apparatus of simulating physics in a virtual environment | |
JP2022552752A (ja) | 仮想環境の画面表示方法及び装置、並びにコンピュータ装置及びプログラム | |
CN114247146A (zh) | 一种游戏的显示控制方法、装置、电子设备和介质 | |
KR101872000B1 (ko) | 가상현실공간 내의 상호작용 반영 방법 | |
US20170239574A1 (en) | Non transitory computer-readable storage medium and method of controlling a computer | |
CN112316429A (zh) | 虚拟对象的控制方法、装置、终端及存储介质 | |
CN114225413A (zh) | 碰撞检测方法、装置、电子设备和存储介质 | |
JP2024506920A (ja) | 仮想対象の制御方法、装置、機器、及びプログラム | |
JP2024508682A (ja) | 仮想オブジェクトの制御方法、仮想オブジェクトの制御装置、コンピュータ機器、及びコンピュータプログラム | |
CN110882543B (zh) | 控制虚拟环境中虚拟对象下落的方法、装置及终端 | |
US11141661B2 (en) | Systems and methods for providing video game gameplay having falling puzzle mechanics influenced by character movements within a puzzle space | |
JP6959267B2 (ja) | 場所ベースゲームプレイコンパニオンアプリケーションを使用するチャレンジの生成 | |
CN111939565A (zh) | 虚拟场景的显示方法、系统、装置、设备以及存储介质 | |
Geiger et al. | Goin’goblins-iterative design of an entertaining archery experience | |
KR20190127308A (ko) | 게임 동작 예측 장치 및 방법 | |
CN112843682B (zh) | 数据同步方法、装置、设备及存储介质 | |
CN117046111B (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 |