CN112274931A - 射击轨迹处理方法、装置和电子设备 - Google Patents

射击轨迹处理方法、装置和电子设备 Download PDF

Info

Publication number
CN112274931A
CN112274931A CN202011317061.2A CN202011317061A CN112274931A CN 112274931 A CN112274931 A CN 112274931A CN 202011317061 A CN202011317061 A CN 202011317061A CN 112274931 A CN112274931 A CN 112274931A
Authority
CN
China
Prior art keywords
ray
shooting
game
logic
rays
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
CN202011317061.2A
Other languages
English (en)
Other versions
CN112274931B (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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202011317061.2A priority Critical patent/CN112274931B/zh
Publication of CN112274931A publication Critical patent/CN112274931A/zh
Application granted granted Critical
Publication of CN112274931B publication Critical patent/CN112274931B/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/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating 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
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种射击轨迹处理方法、装置和电子设备。其中,该方法包括:响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;每间隔预设第一时长分别调整已发射出的射线的移动轨迹;响应于目标射线与游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;在游戏界面上显示击中处理逻辑的处理结果。该方式中,可以通过射线模拟射击武器的射击轨迹,并且每隔预设第一时间调整射线的移动轨迹,与通过物理刚体组件模拟射击轨迹的方式相比,在模拟计算中射线的数量远小于物理刚体组件的数量,可以降低模拟计算的运算量,从而降低射击轨迹处理消耗的游戏资源,提高游戏帧率的稳定性和游戏的性能,可以提高玩家的游戏体验度。

Description

射击轨迹处理方法、装置和电子设备
技术领域
本发明涉及射击游戏技术领域,尤其是涉及一种射击轨迹处理方法、装置和电子设备。
背景技术
为了实现射击游戏中的水枪功能,需要模拟水柱从枪口带速度射出飞行以及自由下坠的效果,水柱在接触到游戏场景或其他玩家时需要做一些特定的逻辑运算(例如播放溅水特效等),并且对玩家特定属性进行计算(例如扣除玩家的血量等)。现有射击游戏中实现水枪功能的通用实现方案是:将水枪射出的水柱设置为一个个密集的带拖尾特效的物理刚体组件,对这些刚体组件的飞行进行物理模拟,当刚体组件接触到其他的游戏物理组件时处理水枪击中的逻辑。
上述通用实现方案中,为了保证水柱的连续性效果需要大量的刚体组件进行模拟计算,大量模拟计算会占用游戏终端的大量资源,从而造成游戏帧率的不稳定及游戏性能的下降。如果游戏终端本身的硬件性能不够高(例如手机的硬件性能比电脑的硬件性能低),则会严重降低游戏的运行效率,造成游戏的卡顿,从而降低玩家的游戏体验度。
发明内容
有鉴于此,本发明的目的在于提供一种射击轨迹处理方法、装置和电子设备,以降低射击轨迹处理消耗的游戏资源,提高游戏帧率的稳定性和游戏的性能,从而提高玩家的游戏体验度。
第一方面,本发明实施例提供了一种射击轨迹处理方法,方法包括:响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;每间隔预设第一时长分别调整已发射出的射线的移动轨迹;响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;目标射线为已发射出的射线中的至少一条射线,游戏物理组件至少包括游戏场景内的物体模型和角色模型;在游戏界面上显示击中处理逻辑的处理结果。
在本发明较佳的实施例中,上述响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线的步骤,包括:响应于终端设备接收到的射击指令,确定射击时长;基于射击武器的类型,确定射击武器的射击间隔;从接收到射击指令开始,每间隔射击间隔从射击武器的枪口中逐一发射射线,直至到达射击时长。
在本发明较佳的实施例中,上述每间隔射击间隔从射击武器的枪口中逐一发射射线的步骤,包括:每间隔射击间隔,确定射击武器的枪口的位置;其中,枪口的位置包括枪口的高度和枪口的俯仰角度;基于射击武器的类型确定射线的初速度;基于射线的初速度和射击武器的枪口的位置,从射击武器的枪口中逐一发射射线。
在本发明较佳的实施例中,上述每间隔预设第一时长分别调整已发射出的射线的移动轨迹的步骤,包括:以预设第一时长为周期,将当前周期射线的结束位置作为下一周期射线的初始位置;基于当前周期射线的结束位置和速度参数,确定下一周期射线的结束位置和速度参数;其中,速度参数包括射线的俯仰角度、射线的速度和射线的下坠力;基于下一周期射线的初始位置和下一周期射线的结束位置,确定下一周期射线的移动轨迹。
在本发明较佳的实施例中,上述击中处理逻辑包括击中特效逻辑;击中特效逻辑的处理结果包括击中特效逻辑对应的特效;上述响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑的步骤,包括:响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,基于游戏物理组件的类型确定击中特效逻辑;上述在游戏界面上显示击中处理逻辑的处理结果的步骤,包括:在游戏界面上显示击中特效逻辑对应的特效。
在本发明较佳的实施例中,上述击中处理逻辑还包括角色属性逻辑;角色属性逻辑表征角色模型的属性变化;上述响应于目标射线与游戏场景中的游戏物理组件游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑的步骤,包括:响应于目标射线与角色模型的碰撞事件,基于接触位置、射击武器的类型,以及目标射线的长度执行角色属性逻辑,得到角色属性逻辑的变化结果;上述在游戏界面上显示击中处理逻辑的处理结果的步骤,包括:在游戏界面上显示图标标识,通过图标标识展示角色属性逻辑的变化结果。
在本发明较佳的实施例中,上述方法还包括:将处理结果发送至与终端设备通信连接的服务器,以使服务器将处理结果发送至其他终端设备;其中,其他终端设备为除终端设备之外的控制角色模型的终端设备;或者,将处理结果发送至其他终端设备。
在本发明较佳的实施例中,上述射线的形状与射击武器的发射物对应。
第二方面,本发明实施例还提供一种射击轨迹处理装置,装置包括:射线发射模块,用于响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;移动轨迹调整模块,用于每间隔预设第一时长分别调整已发射出的射线的移动轨迹;击中处理逻辑执行模块,用于响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;目标射线为已发射出的射线中的至少一条射线,游戏物理组件至少包括游戏场景内的物体模型和角色模型;处理结果显示模块,用于在游戏界面上显示击中处理逻辑的处理结果。
第三方面,本发明实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述的射击轨迹处理方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述的射击轨迹处理方法的步骤。
本发明实施例带来了以下有益效果:
本发明实施例提供的射击轨迹处理方法、装置和电子设备,终端设备可以触发射击武器依次发射多条射线,每间隔预设第一时长分别调整每条已发射出的射线的移动轨迹,并且在目标射线与游戏物理组件碰撞后,对目标射线执行击中处理逻辑。该方式中,可以通过射线模拟射击武器的射击轨迹,并且每隔预设第一时间调整射线的移动轨迹,与通过物理刚体组件模拟射击轨迹的方式相比,在模拟计算中射线的数量远小于物理刚体组件的数量,可以降低模拟计算的运算量,从而降低射击轨迹处理消耗的游戏资源,提高游戏帧率的稳定性和游戏的性能,可以提高玩家的游戏体验度。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种射击轨迹处理方法的流程图;
图2为本发明实施例提供的另一种射击轨迹处理方法的流程图;
图3为本发明实施例提供的一种射线移动轨迹的示意图;
图4为本发明实施例提供的一种射击轨迹处理装置的结构示意图;
图5为本发明实施例提供的另一种射击轨迹处理装置的结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,射击游戏中实现水枪功能中,一般将水枪射出的水柱设置为一个个密集的带拖尾特效的物理刚体组件,并且对每个刚体组件的飞行进行物理模拟。为了保证水柱的连续性效果需要大量的刚体组件进行模拟计算,从而占用游戏终端的大量资源,从而造成游戏帧率的不稳定及游戏性能的下降,降低玩家的游戏体验度。综上,通用实现方案中大量物理刚体组件的模拟可能造成游戏性能不稳定,导致终端设备压力过大甚至功能无法正常运行。
基于此,本发明实施例提供的一种射击轨迹处理方法、装置和电子设备,该技术可以应用于电脑、手机、平板电脑、服务器等可以实现人机交互的设备上,尤其可以适用于射击类游戏的场景中。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种射击轨迹处理方法进行详细介绍。
本实施例提供了一种射击轨迹处理方法,参见图1所示的一种射击轨迹处理方法的流程图,该射击轨迹处理方法包括如下步骤:
步骤S102,响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线。
本实施例中的终端设备可以是手机、电脑、平板电脑、笔记本电脑等可以进行人机交互的设备。通过终端设备提供游戏界面,游戏界面的显示内容至少部分的包含游戏场景、终端设备控制的角色模型(即目标虚拟角色)、以及游戏物理组件。
其中,目标虚拟角色可以由玩家通过终端设备控制,并在目标场景中进行射击操作。游戏物理组件包括游戏场景内的物体(例如游戏场景中的各类建筑物以及山川、陆地、海洋等地形)和各种角色模型(各种角色模型包含目标虚拟角色和除终端设备之外的其他终端设备控制的其他虚拟角色)。
玩家可以通过终端设备输入射击指令,其中,如果终端设备为电脑、玩家可以通过键盘、鼠标或者手柄等与电脑通信连接的设备输入射击指令;如果终端设备为手机、平板电脑等触控设备,玩家可以使用手指输入射击指令。
终端设备可以响应上述射击指令,触发目标虚拟角色进行射击操作,即目标虚拟角色携带的射击武器进行射击,本实施例中目标虚拟角色携带的射击武器可以依次发射多条射线,例如每隔一定的时间发射一条射线。这里需要说明的是,每条射线发射时的初始位置和初始角度并不一定相同。如果上述射击武器具有后坐力,或者目标虚拟角色在射击中处于移动状态,射击武器在射击时的枪口位置(即射线发射时的初始位置)并不固定。
步骤S104,每间隔预设第一时长分别调整已发射出的射线的移动轨迹。
在射线发射后,终端设备可以每间隔预设第一时长调整该射线的移动轨迹,以使每条已发射出的射线的移动轨迹符合物理规律。例如:射击武器每0.1秒发射一条射线,经过0.3秒后发射了射线A、射线B和射线C,之后可以分别调整射线A、射线B和射线C移动轨迹。射线A、射线B和射线C的移动轨迹可以独立计算,相互之间没有影响。
步骤S106,响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;目标射线为已发射出的射线中的至少一条射线,游戏物理组件至少包括游戏场景内的物体模型和角色模型。
游戏物理组件至少包括游戏场景内的物体模型和角色模型,物体模型可以包括游戏场景中的各类建筑物以及山川、陆地、海洋等地形)角色模型包括目标虚拟角色的角色模型和其他虚拟角色的角色模型。
目标射线可以为已发射出的射线,目标射线与游戏物理组件的碰撞事件目标射线的移动轨迹接触了游戏场景下的游戏物理组件,例如:以射击武器为水枪为例,目标虚拟角色射出的水柱射到了建筑物或者其他虚拟角色上。
击中处理逻辑可以包括目标射线与游戏物理组件的接触发生的动态效果,例如:水柱涉及到建筑物上产生的水花飞溅效果;还可以包括目标射线击中其他虚拟角色导致其他虚拟角色属性变化的效果,例如:扣除其他虚拟角色的血量,降低其他虚拟角色的移动速度,或者眩晕其他虚拟角色等。
步骤S108,在游戏界面上显示击中处理逻辑的处理结果。
在对目标射线执行击中处理逻辑之后,可以在游戏界面上显示击中处理逻辑的处理结果。具体来说,如果处理结果是展示一些特效,则可以在游戏界面显示上述特效结果;如果处理结果是属性变化,则可以在游戏界面上显示属相变化的具体数值。
本发明实施例提供的射击轨迹处理方法,终端设备可以触发射击武器依次发射多条射线,每间隔预设第一时长分别调整每条已发射出的射线的移动轨迹,并且在目标射线与游戏物理组件碰撞后,对目标射线执行击中处理逻辑。该方式中,可以通过射线模拟射击武器的射击轨迹,并且每隔预设第一时间调整射线的移动轨迹,与通过物理刚体组件模拟射击轨迹的方式相比,在模拟计算中射线的数量远小于物理刚体组件的数量,可以降低模拟计算的运算量,从而降低射击轨迹处理消耗的游戏资源,提高游戏帧率的稳定性和游戏的性能,可以提高玩家的游戏体验度。
本实施例提供了另一种射击轨迹处理方法,该方法在上述实施例的基础上实现;本实施例重点描述射击武器依次发射多条射线的具体实施方式。如图2所示的另一种射击轨迹处理方法的流程图,本实施例中的射击轨迹处理方法包括如下步骤:
步骤S202,响应于终端设备接收到的射击指令,确定射击时长。
用户输入的射击指令可以包含目标虚拟角色的射击时长,例如:用户以长按鼠标的方式输入射击指令,可以将长按鼠标的时间作为目标虚拟角色的射击时长;又例如:用户通过手指长按屏幕的方式输入射击指令,可以将手指长按屏幕的时间作为目标虚拟角色的射击时长。
步骤S204,基于射击武器的类型,确定射击武器的射击间隔。
不同的射击武器可以设定不同的射击间隔,因此可以根据目标虚拟角色携带的射击武器的类型确定该射击武器的射击间隔。例如:***A的射击间隔可以预先设定为1秒,步枪B的射击间隔可以预先设定为0.1秒;如果目标虚拟角色携带的射击武器为***A,则可以根据预先设定的数值确定***A的射击间隔为1秒。
步骤S206,从接收到射击指令开始,每间隔射击间隔从射击武器的枪口中逐一发射射线,直至到达射击时长。
在确定射击时长以及射击间隔后,终端设备可以从射击武器的枪口中发射多条射线,每条射线的发射间隔可以为射击间隔,每条射线的长度可以由发射的初速度和射击间隔相乘得到,例如:假设射击间隔为0.1秒,射击时长为0.35秒,则射击武器可以分别在0秒、0.1秒、0.2秒和0.3秒,分别发射4条射线。
在射击武器的枪口逐一发射射线时,由于枪口可能因后坐力或者目标虚拟角色处于移动状态,导致枪口一致处于移动状态,每条射线的发射情况并不相同,因此,可以通过步骤A1-步骤A3从射击武器的枪口中逐一发射射线:
步骤A1,每间隔射击间隔,确定射击武器的枪口的位置;其中,枪口的位置包括枪口的高度和枪口的俯仰角度。
在发射射线前,可以先确定此时射击武器的枪口的位置。由于射击武器的枪口很可能存在抖动,导致枪口的高度和枪口的俯仰角度均处于变化的状态,因此,可以预先确定枪口的高度和枪口的俯仰角度作为射击武器的枪口的位置。
例如:目标虚拟角色边移动边进行射击,由于移动和射击武器的后坐力,枪口一直会抖动,需要在每次发射射线前确定枪口的位置。又例如,如果射击武器不存在后坐力,且目标虚拟角色在射击时处于静止状态,此时可以认为枪口的位置是固定的。
步骤A2,基于射击武器的类型确定射线的初速度。
不同射击武器具有不同的射线初速度,即不同武器的射速并不相同,因此,可以根据射击武器的类型确定射线的初速度。
步骤A3,基于射线的初速度和射击武器的枪口的位置,从射击武器的枪口中逐一发射射线。
射线的初速度可以理解为一个标量,而从枪口中发射的射线可以认为是一个矢量,根据枪口的俯仰角度可以确定上述矢量与水平坐标轴的角度,例如:射线的初速度为a,预设第一时长为b,枪口的俯仰角度(即枪口与水平坐标轴的角度)为c。可以通过下述算式计算射线,射线的长度可以为ab,射线的矢量坐标可以为(absinc,abcosc)。
该方式中,可以预先确定射击武器的枪口的位置,之后根据射线的初速度和枪口的位置从射击武器的枪口中逐一发射射线,每条射线的移动轨迹因此可以不同,通过上述方式可以准确地描绘出每条射线的移动轨迹,使得射击武器射出的射线更加真实,从而提高玩家的游戏体验度。
步骤S208,每间隔预设第一时长分别调整已发射出的射线的移动轨迹。
对于每一条已发射出的射线,终端设备可以及时调整该射线的轨迹,然而,由于实时调整射线的轨迹会出现较大的计算量,从而占用较多的游戏资源,因此,终端设备可以间隔预设第一时长后对移动轨迹进行调整。上述预设第一时长可以与射击武器的间隔相同,也可以与射击武器的间隔不同,这里不做限定。因此,可以用过步骤B1-步骤B3调整射线的移动轨迹:
步骤B1,以预设第一时长为周期,将当前周期射线的结束位置作为下一周期射线的初始位置。
在调整移动轨迹时,可以以预设第一时长为周期进行调整,例如,第一预设时长可以为0.1秒,每一个周期都可以确定该周期射线的结束位置、速度参数和初始位置。
在第一个周期,射线的初始位置即为枪口的位置,结束位置即上述射线的矢量坐标,速度参数中射线的俯仰角度可以理解为枪口的俯仰坐标,射线的速度即为射线的初速度,除此以外,射线的下坠力一般是由游戏开发人员预先设定的,可以用字母g表示。
因此,在确定当前周期射线的结束位置后,可以将当前周期射线的结束位置作为下一周期射线的初始位置,以保证每条射线都是连续的,增加射击武器射击的真实性,以提高用户的游戏体验度。
步骤B2,基于当前周期射线的结束位置和速度参数,确定下一周期射线的结束位置和速度参数;其中,速度参数包括射线的俯仰角度、射线的速度和射线的下坠力。
下一周期射线的结束位置可以根据当前周期射线的结束位置和速度参数确定,即以当前周期射线的结束位置作为下一周期射线的初始位置,以当前周期射线的速度参数作为下一周期射线的初始速度参数,经过预设第一时间,可以计算下一周期射线的结束位置和速度参数。
步骤B3,基于下一周期射线的初始位置和下一周期射线的结束位置,确定下一周期射线的移动轨迹。
以下一周期射线的初始位置为起点,下一周期射线的技术位置为终点,既可以确定下一周期射线的移动轨迹。重复执行上述步骤B1-B3,即可获得每一条已发出射线的完整移动轨迹。
举例来说,可以使用连续多段的射线检测来判定与场景组件或玩家的碰撞,在水枪开始开枪后,根据初速度(初速度受到枪口仰射和俯射的影响,与枪口距水平面的距离相关),每隔0.1秒(第一预设时长为0.1秒)从枪口往射击方向射出相应长度的一条射线,后续每隔0.1秒依旧会以该射线的末点为初始点,以根据特效下坠的力和初速度计算出的新的速度创建一条射线,直到射线射中某个游戏场景中的物理为止。后续射线的偏移计算如上述代码,其中g为粒子特效下坠的力,经过偏移即可算出下一次射线检测的初始点和方向。
参加图3所示的一种射线移动轨迹的示意图,图3中展示的是一根射线的完整示意图,每一个箭头即上述一个周期的射线的移动轨迹,实际模拟中每段射线并没有图3所示的这么长,每一个箭头不是同时存在的,而是连续生成的,直到射线射到游戏物理组件,即场景物体或玩家。
该方式中,可以持续不断的生成新的初始点和方向的射线检测,来模拟一条射线在场景中飞行下坠的效果,每根射线都会依次从上一根射线末点生成发射,并参与射线检测计算,来检测是否与游戏场景或玩家碰撞体或骨骼包围盒相交,之后可以处理击中的逻辑。
另外,这里需要说明的是,终端设备可以采用粒子特效的方式描绘上述移动轨迹,以实现发射物的飞行效果,可以发射物的表现完全可以由特效师自由设计以达到最好的效果。不同的射击武器可以对应不同的射线的形状,例如:射线的形状与射击武器的发射物对应。
以发射物为液体或者流体为例,泥浆和水可以分别对应不同的射线的形状,这样泥浆和水可以采用不同的粒子特效展示,以提高玩家的游戏体验度。
步骤S210,响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;目标射线为已发射出的射线中的至少一条射线,游戏物理组件至少包括游戏场景内的物体模型和角色模型。
一般来说,击中处理逻辑至少分为两部分,击中展示的特效和击中产生的属性变化,分别对应击中特效逻辑和角色属性逻辑。其中,击中特效逻辑可以理解为射线击中游戏物理组件后可以提高击中特效逻辑展示特效,特效逻辑的处理结果包括击中特效逻辑对应的特效,例如:响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,基于游戏物理组件的类型确定击中特效逻辑。
目标射线在接触到游戏场景内的物体和其他虚拟角色时,可以确定击中特效逻辑。举例来说,如果水枪的水柱射到了其他虚拟角色或者建筑物上,可以通过击中特效逻辑确定出特效为水花飞溅特效,如果水枪的水柱射到了海洋,则可以不展示水花飞溅的特效。
角色属性逻辑可以理解为目标射线在接触到其他虚拟角色时可能造成的其他角色模型的属性变化,例如:响应于目标射线与角色模型的碰撞事件,基于接触位置、射击武器的类型,以及目标射线的长度执行角色属性逻辑,得到角色属性逻辑的变化结果。
这里的角色模型可以为上述的其他虚拟角色的角色模型,也可以为目标虚拟角色的角色模型,以其他虚拟角色为例,当目标射线基础到其他虚拟角色时,可以造成其他角色模型的属性变化,这个属性变化与解除为止,射击武器的类型和目标射线的长度均相关。属性变化可以是其他虚拟角色的血量变化、防御变化、速度变化等。
射击武器的类型不同会导致属性变化的不同,例如:医疗枪可以提高其他虚拟角色的血量,***可以降低其他虚拟角色的速度,一些特殊的枪械可以降低其他虚拟角色的防御,不同类型的枪械降低他虚拟角色的血量的程度并不相同等。
步骤S212,在游戏界面上显示击中处理逻辑的处理结果。
对于不同的击中处理逻辑,在游戏界面上显示处理结果的方式并不相同。击中特效逻辑的处理结果包括击中特效逻辑对应的特效,因此,可以在游戏界面上显示击中特效逻辑对应的特效。例如:如果击中特效逻辑的处理结果包括水花飞溅特效,直接在目标射线与游戏物理组件的接触位置展示水花飞溅特效即可。
角色属性逻辑的处理结果包括角色模型的属性变化值,即处理结果是一些数值上的变化,因此,可以在游戏界面上显示图标标识,通过图标标识展示角色属性逻辑的变化结果。
本实施例中的图标标识可以展示在目标射线与其他虚拟角色的接触位置的周围,以不同的颜色表征不同的属性,以数字表征属性的变化量。例如:用红色表示血量的扣除,绿色表示血量的增加,蓝色表示防御力的减少,黄色标识移动速度的减少等。
在终端设备确定击中处理逻辑的处理结果之后,可以将上述处理结果发送给处于同一游戏场景内的其他虚拟角色对应的其他终端设备上,例如:将处理结果发送至与终端设备通信连接的服务器,以使服务器将处理结果发送至其他终端设备;其中,其他终端设备为除终端设备之外的控制角色模型的终端设备;或者,将处理结果发送至其他终端设备。
终端设备可以先将处理结果发送至与终端设备通信连接的服务器中,由服务器将处理结果转发给其他终端设备,其他终端设备在接收到处理结果之后可以显示上述处理结果。
终端设备也可以直接将处理结果发送至与终端设备通信连接的其他终端设备中,以使其他终端设备显示上述处理结果。
该方式中,终端设备可以将述处理结果发生至控制即除终端设备之外的控制角色模型的终端设备中,以在其他终端设备显示处理结果,实现处理结果的同步传输。
本发明实施例提供的上述方法采用射线检测的方式,射线检测相对于物理碰撞检测,只需要计算射线和相应碰撞体是否相交,不需要像物理碰撞每帧进行包围盒相交计算,大大提高了运行效率,在中低端手机上也能以在稳定的帧率下运行游戏,从而提高玩家的游戏体验度。
对应于上述方法实施例,本发明实施例提供了一种射击轨迹处理装置,通过终端设备提供游戏界面,游戏界面的显示内容至少部分的包含游戏场景、终端设备控制的目标虚拟角色、以及游戏物理组件;其中,游戏物理组件包括游戏场景内的物体和除目标虚拟角色之外的其他虚拟角色。如图4所示的一种射击轨迹处理装置的结构示意图,该射击轨迹处理装置包括:
射线发射模块41,用于响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;
移动轨迹调整模块42,用于每间隔预设第一时长分别调整已发射出的射线的移动轨迹;
击中处理逻辑执行模块43,用于响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对目标射线执行预先设定的击中处理逻辑;目标射线为已发射出的射线中的至少一条射线,游戏物理组件至少包括游戏场景内的物体模型和角色模型;
处理结果显示模块44,用于在游戏界面上显示击中处理逻辑的处理结果。
本发明实施例提供的射击轨迹处理装置,终端设备可以触发射击武器依次发射多条射线,每间隔预设第一时长分别调整每条已发射出的射线的移动轨迹,并且在目标射线与游戏物理组件碰撞后,对目标射线执行击中处理逻辑。该方式中,可以通过射线模拟射击武器的射击轨迹,并且每隔预设第一时间调整射线的移动轨迹,与通过物理刚体组件模拟射击轨迹的方式相比,在模拟计算中射线的数量远小于物理刚体组件的数量,可以降低模拟计算的运算量,从而降低射击轨迹处理消耗的游戏资源,提高游戏帧率的稳定性和游戏的性能,可以提高玩家的游戏体验度。
上述射线发射模块,用于响应于终端设备接收到的射击指令,确定射击时长;基于射击武器的类型,确定射击武器的射击间隔;从接收到射击指令开始,每间隔射击间隔从射击武器的枪口中逐一发射射线,直至到达射击时长。
上述射线发射模块,用于每间隔射击间隔,确定射击武器的枪口的位置;其中,枪口的位置包括枪口的高度和枪口的俯仰角度;基于射击武器的类型确定射线的初速度;基于射线的初速度和射击武器的枪口的位置,从射击武器的枪口中逐一发射射线。
上述移动轨迹调整模块,用于以预设第一时长为周期,将当前周期射线的结束位置作为下一周期射线的初始位置;基于当前周期射线的结束位置和速度参数,确定下一周期射线的结束位置和速度参数;其中,速度参数包括射线的俯仰角度、射线的速度和射线的下坠力;基于下一周期射线的初始位置和下一周期射线的结束位置,确定下一周期射线的移动轨迹。
上述击中处理逻辑包括击中特效逻辑;上述击中特效逻辑的处理结果包括击中特效逻辑对应的特效;上述击中处理逻辑执行模块,用于响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,基于游戏物理组件的类型确定击中特效逻辑;上述处理结果显示模块,用于在游戏界面上显示击中特效逻辑对应的特效。
上述击中处理逻辑还包括角色属性逻辑;上述角色属性逻辑表征角色模型的属性变化;上述击中处理逻辑执行模块,用于响应于目标射线与角色模型的碰撞事件,基于接触位置、射击武器的类型,以及目标射线的长度执行角色属性逻辑,得到角色属性逻辑的变化结果;上述处理结果显示模块,用于在游戏界面上显示图标标识,通过图标标识展示角色属性逻辑的变化结果。
参见图5所示的另一种射击轨迹处理装置的结构示意图,上述射击轨迹处理装置还包括处理结果发送模块45,与击中处理逻辑执行模块43连接,用于将处理结果发送至与终端设备通信连接的服务器,以使服务器将处理结果发送至其他终端设备;其中,其他终端设备为除终端设备之外的控制角色模型的终端设备;或者,将处理结果发送至其他终端设备。
上述射线的形状与射击武器的发射物对应。
本发明实施例还提供了一种电子设备,用于运行上述射击轨迹处理方法;参见图6所示的一种电子设备的结构示意图,该电子设备包括存储器100和处理器101,其中,存储器100用于存储一条或多条计算机指令,一条或多条计算机指令被处理器101执行,以实现上述射击轨迹处理方法。
进一步地,图6所示的电子设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。
其中,存储器100可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述射击轨迹处理方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的射击轨迹处理方法、装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (11)

1.一种射击轨迹处理方法,其特征在于,所述方法包括:
响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;
每间隔预设第一时长分别调整已发射出的所述射线的移动轨迹;
响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对所述目标射线执行预先设定的击中处理逻辑;所述目标射线为已发射出的所述射线中的至少一条射线,所述游戏物理组件至少包括所述游戏场景内的物体模型和角色模型;
在游戏界面上显示所述击中处理逻辑的处理结果。
2.根据权利要求1所述的方法,其特征在于,响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线的步骤,包括:
响应于终端设备接收到的射击指令,确定射击时长;
基于射击武器的类型,确定所述射击武器的射击间隔;
从接收到所述射击指令开始,每间隔所述射击间隔从所述射击武器的枪口中逐一发射射线,直至到达所述射击时长。
3.根据权利要求2所述的方法,其特征在于,每间隔所述射击间隔从所述射击武器的枪口中逐一发射射线的步骤,包括:
每间隔所述射击间隔,确定所述射击武器的枪口的位置;其中,所述枪口的位置包括枪口的高度和枪口的俯仰角度;
基于所述射击武器的类型确定所述射线的初速度;
基于所述射线的初速度和所述射击武器的枪口的位置,从所述射击武器的枪口中逐一发射射线。
4.根据权利要求1所述的方法,其特征在于,每间隔预设第一时长分别调整已发射出的所述射线的移动轨迹的步骤,包括:
以预设第一时长为周期,将当前周期所述射线的结束位置作为下一周期所述射线的初始位置;
基于当前周期所述射线的结束位置和速度参数,确定下一周期所述射线的结束位置和速度参数;其中,所述速度参数包括所述射线的俯仰角度、所述射线的速度和所述射线的下坠力;
基于下一周期所述射线的初始位置和下一周期所述射线的结束位置,确定下一周期所述射线的移动轨迹。
5.根据权利要求1所述的方法,其特征在于,所述击中处理逻辑包括击中特效逻辑;所述击中特效逻辑的处理结果包括所述击中特效逻辑对应的特效;
响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对所述目标射线执行预先设定的击中处理逻辑的步骤,包括:
响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,基于所述游戏物理组件的类型确定所述击中特效逻辑;
在游戏界面上显示所述击中处理逻辑的处理结果的步骤,包括:
在游戏界面上显示所述击中特效逻辑对应的特效。
6.根据权利要求1所述的方法,其特征在于,所述击中处理逻辑还包括角色属性逻辑;所述角色属性逻辑表征所述角色模型的属性变化;
响应于目标射线与游戏场景中的游戏物理组件游戏物理组件的碰撞事件,对所述目标射线执行预先设定的击中处理逻辑的步骤,包括:
响应于目标射线与所述角色模型的碰撞事件,基于接触位置、所述射击武器的类型,以及所述目标射线的长度执行所述角色属性逻辑,得到所述角色属性逻辑的变化结果;
在游戏界面上显示所述击中处理逻辑的处理结果的步骤,包括:
在游戏界面上显示图标标识,通过所述图标标识展示所述角色属性逻辑的变化结果。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述处理结果发送至与所述终端设备通信连接的服务器,以使所述服务器将所述处理结果发送至其他终端设备;其中,所述其他终端设备为除所述终端设备之外的控制所述角色模型的终端设备;
或者,将所述处理结果发送至所述其他终端设备。
8.根据权利要求1所述的方法,其特征在于,所述射线的形状与所述射击武器的发射物对应。
9.一种射击轨迹处理装置,其特征在于,所述装置包括:
射线发射模块,用于响应于终端设备接收到的射击指令,触发射击武器依次发射多条射线;
移动轨迹调整模块,用于每间隔预设第一时长分别调整已发射出的所述射线的移动轨迹;
击中处理逻辑执行模块,用于响应于目标射线与游戏场景中的游戏物理组件的碰撞事件,对所述目标射线执行预先设定的击中处理逻辑;所述目标射线为已发射出的所述射线中的至少一条射线,所述游戏物理组件至少包括所述游戏场景内的物体模型和角色模型;
处理结果显示模块,用于在游戏界面上显示所述击中处理逻辑的处理结果。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1-8任一项所述的射击轨迹处理方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使处理器实现权利要求1-8任一项所述的射击轨迹处理方法的步骤。
CN202011317061.2A 2020-11-20 2020-11-20 射击轨迹处理方法、装置和电子设备 Active CN112274931B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011317061.2A CN112274931B (zh) 2020-11-20 2020-11-20 射击轨迹处理方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011317061.2A CN112274931B (zh) 2020-11-20 2020-11-20 射击轨迹处理方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN112274931A true CN112274931A (zh) 2021-01-29
CN112274931B CN112274931B (zh) 2024-03-22

Family

ID=74399615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011317061.2A Active CN112274931B (zh) 2020-11-20 2020-11-20 射击轨迹处理方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN112274931B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113663329A (zh) * 2021-09-01 2021-11-19 腾讯科技(深圳)有限公司 虚拟角色的射击控制方法、装置、电子设备及存储介质
CN113713382A (zh) * 2021-09-10 2021-11-30 腾讯科技(深圳)有限公司 虚拟道具控制方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120090216A1 (en) * 2010-10-19 2012-04-19 Danyun Li Electronic Firearm Sight and method for adjusting the reticle thereof
CN107519641A (zh) * 2017-08-04 2017-12-29 网易(杭州)网络有限公司 控制游戏技能释放的方法、装置、存储介质及移动终端
CN108635857A (zh) * 2018-05-18 2018-10-12 腾讯科技(深圳)有限公司 界面显示方法、装置、电子装置及计算机可读存储介质
CN108635858A (zh) * 2018-05-18 2018-10-12 腾讯科技(深圳)有限公司 界面显示方法、装置、电子装置及计算机可读存储介质
CN208244080U (zh) * 2018-05-16 2018-12-18 广州力给动漫科技有限公司 一种可双人竞技的水枪射击游戏机
CN111084986A (zh) * 2019-12-17 2020-05-01 腾讯科技(深圳)有限公司 显示控制方法、装置、存储介质及电子装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120090216A1 (en) * 2010-10-19 2012-04-19 Danyun Li Electronic Firearm Sight and method for adjusting the reticle thereof
CN107519641A (zh) * 2017-08-04 2017-12-29 网易(杭州)网络有限公司 控制游戏技能释放的方法、装置、存储介质及移动终端
CN208244080U (zh) * 2018-05-16 2018-12-18 广州力给动漫科技有限公司 一种可双人竞技的水枪射击游戏机
CN108635857A (zh) * 2018-05-18 2018-10-12 腾讯科技(深圳)有限公司 界面显示方法、装置、电子装置及计算机可读存储介质
CN108635858A (zh) * 2018-05-18 2018-10-12 腾讯科技(深圳)有限公司 界面显示方法、装置、电子装置及计算机可读存储介质
CN111084986A (zh) * 2019-12-17 2020-05-01 腾讯科技(深圳)有限公司 显示控制方法、装置、存储介质及电子装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113663329A (zh) * 2021-09-01 2021-11-19 腾讯科技(深圳)有限公司 虚拟角色的射击控制方法、装置、电子设备及存储介质
CN113663329B (zh) * 2021-09-01 2024-04-02 腾讯科技(深圳)有限公司 虚拟角色的射击控制方法、装置、电子设备及存储介质
CN113713382A (zh) * 2021-09-10 2021-11-30 腾讯科技(深圳)有限公司 虚拟道具控制方法、装置、计算机设备及存储介质
CN113713382B (zh) * 2021-09-10 2023-06-16 腾讯科技(深圳)有限公司 虚拟道具控制方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN112274931B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
US11224815B2 (en) Method and apparatus for obtaining damage value of attack item in virtual environment, method and apparatus for displaying damage value of attack item in virtual environment, and computer device
US11826662B2 (en) Ballistic trajectory display in a virtual environment
JP6104515B2 (ja) プログラム、情報記憶媒体、電子機器及びサーバシステム
CN111228812B (zh) 虚拟对象的控制方法、装置、终端及存储介质
JP3931796B2 (ja) アクションゲームの制御プログラム
CN111084986B (zh) 显示控制方法、装置、存储介质及电子装置
CN112274931B (zh) 射击轨迹处理方法、装置和电子设备
CN111760289B (zh) 游戏中虚拟角色的控制方法、装置及设备
CN110585712A (zh) 在虚拟环境中投掷虚拟***物的方法、装置、终端及介质
CN110694279B (zh) 一种游戏特效显示方法、装置、设备及介质
US8777746B2 (en) Gestures to encapsulate intent
KR101826231B1 (ko) 좌표 공략 게임 시스템 및 방법
CN107998654B (zh) 加速度的调整方法和装置、存储介质、电子装置
JP2005319175A (ja) ゲーム装置、プログラム及び情報記憶媒体
CN110639203A (zh) 一种游戏中的控件响应方法及装置
CN109821238A (zh) 游戏中的瞄准方法及装置、存储介质、电子装置
WO2022156491A1 (zh) 虚拟对象控制方法、装置、设备、存储介质及程序产品
TW201406432A (zh) 網路遊戲的防外掛方法和系統
CN112717384A (zh) 一种游戏中的信息处理方法、装置、电子设备及存储介质
CN111420392A (zh) 游戏道具的安装方法、装置及电子设备
CN112915532B (zh) 一种游戏中的信息提示方法、装置、电子设备及存储介质
CN112121416B (zh) 虚拟道具的控制方法、装置、终端及存储介质
CN113559505A (zh) 游戏中的信息处理方法、装置及移动终端
CN113599828B (zh) 虚拟道具的控制方法和装置、存储介质及电子设备
JP2017104617A (ja) プログラム、電子機器及びサーバシステム

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