非玩家角色的控制方法和装置、存储介质及电子设备与流程

文档序号:37541228发布日期:2024-04-08 13:40阅读:12来源:国知局
非玩家角色的控制方法和装置、存储介质及电子设备与流程

本发明涉及计算机,具体而言,涉及一种非玩家角色的控制方法和装置、存储介质及电子设备。


背景技术:

1、在虚拟游戏场景中,通常会设置多个不同类型的非玩家角色npc,并并且为了增加游戏的趣味性,会通过npc的环境感知能力,使得npc执行指定行为操作,从而实现npc与玩家之间的交互。

2、相关技术中,npc的环境感知能力主要依赖于视觉感知,通常基于npc和玩家的距离、角度等信息模拟npc的视觉感知能力,例如,在3d游戏场景中,当玩家位于npc前方指定距离、指定角度范围内时,npc会看到玩家,并和玩家进行交互。

3、然而,相关技术中并未考虑到3d游戏场景对npc视觉的影响,例如,玩家躲在岩石等障碍物后面时,npc无法看到玩家,那么当玩家在npc视野盲区内行走、跑动或冲刺时,npc将无法感知到玩家,更加无法控制npc与玩家进行交互,从而造成了无法准确地控制非玩家角色执行行为操作的技术问题。

4、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本发明实施例提供了一种非玩家角色的控制方法和装置、存储介质及电子设备,以至少解决无法准确地控制非玩家角色执行行为操作的技术问题。

2、根据本发明实施例的一个方面,提供了一种非玩家角色的控制方法,包括:获取第一声音的第一声音强度以及第一声音的第一传播距离,其中,第一声音是第一玩家角色在第一位置上产生的声音,第一声音强度是预设的与第一玩家角色在第一位置上的第一运动状态对应的声音强度,第一传播距离是根据第一声音强度确定的传播距离;在非玩家角色npc与第一玩家角色之间的第一目标距离小于第一传播距离、且小于npc的预设听觉半径的情况下,根据第一声音强度以及第一目标距离确定npc听到的第一声音的声音强度;在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作。

3、可选地,上述在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作,包括:在npc听到的第一声音的声音强度大于或等于第一声音强度阈值、且小于第二声音强度阈值的情况下,控制npc执行第一行为操作,其中,第一行为操作是在npc察觉到有声音时所执行的行为操作。

4、可选地,上述在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作,还包括:在npc听到的第一声音的声音强度大于或等于第二声音强度阈值的情况下,控制npc执行第二行为操作,其中,第二行为操作是在npc发现第一玩家角色时所执行的行为操作。

5、可选地,上述在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作,包括:在npc听到的第一声音的声音强度大于或等于第一声音强度阈值、且小于第二声音强度阈值的情况下,控制npc向第一位置移动;或者在npc听到的第一声音的声音强度大于或等于第一声音强度阈值、且小于第二声音强度阈值的情况下,控制npc在向第一位置移动的过程中寻找第一玩家角色。

6、可选地,上述在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作,还包括:在npc听到的第一声音的声音强度大于或等于第二声音强度阈值的情况下,控制npc朝着远离第一玩家角色的方向移动,或者,控制npc朝着第一玩家角色的方向移动;或者在npc听到的第一声音的声音强度大于或等于第二声音强度阈值的情况下,控制npc与第一玩家角色执行交互操作。

7、可选地,上述根据第一声音强度以及第一目标距离确定npc听到的第一声音的声音强度,包括:根据第一声音强度以及第一目标距离,确定第一声音传播到npc所在的位置时的剩余声音强度;获取npc所在的位置上的环境噪声的声音强度;根据剩余声音强度和环境噪声的声音强度,确定npc听到的第一声音的声音强度。

8、可选地,上述获取npc所在的位置上的环境噪声的声音强度,包括:确定目标游戏场景中npc所在的目标网格,其中,目标游戏场景预先被划分成一组网格,一组网格包括目标网格,预先为一组网格中的每个网格设置了对应的环境噪声的声音强度,每个网格对应的环境噪声的声音强度是根据每个网格中的虚拟地形的类型确定得到的声音强度;将npc所在的位置上的环境噪声的声音强度确定为等于预先设置的目标网格对应的环境噪声的声音强度。

9、可选地,上述方法还包括:对一组网格中的每个网格执行以下操作,得到每个网格对应的环境噪声的声音强度,其中,在执行以下操作时,上述每个网格为当前网格:获取当前网格对应的初始噪声的声音强度,其中,初始噪声的声音强度与当前网格中的虚拟地形的类型具有预设的对应关系;获取当前网格收到的传播噪声的声音强度,其中,传播噪声的声音强度包括一组网格中除当前网格之外的每个网格对应的初始噪声传播到当前网格时的剩余声音强度;根据初始噪声的声音强度和传播噪声的声音强度,确定当前网格对应的环境噪声的声音强度。

10、可选地,上述根据初始噪声的声音强度和传播噪声的声音强度,确定当前网格对应的环境噪声的声音强度,包括:将当前网格对应的环境噪声的声音强度确定为等于初始噪声的声音强度和传播噪声的声音强度中的最大声音强度;或者将当前网格对应的环境噪声的声音强度确定为等于初始噪声的声音强度和传播噪声的声音强度之和;或者将当前网格对应的环境噪声的声音强度确定为等于对初始噪声的声音强度和传播噪声的声音强度进行加权求和所得到的值。

11、可选地,上述根据剩余声音强度和环境噪声的声音强度,确定npc听到的第一声音的声音强度,包括:在剩余声音强度大于环境噪声的声音强度的情况下,将npc听到的第一声音的声音强度确定为等于剩余声音强度与环境噪声的声音强度之间的差值;和/或在剩余声音强度小于或等于环境噪声的声音强度的情况下,将npc听到的第一声音的声音强度确定为等于环境噪声的声音强度或者为0。

12、可选地,上述方法还包括:根据npc的角色类型设置预设听觉半径,其中,当npc的角色类型为听力灵敏的角色类型时,预设听觉半径被设置为第一值,当npc的角色类型为非听力灵敏的角色类型时,预设听觉半径被设置为第二值,第一值大于第二值;或者根据npc的当前状态设置预设听觉半径,其中,当npc的当前状态为未受到攻击伤害的状态时,预设听觉半径被设置为第一值,当npc的当前状态为受到攻击伤害的状态时,预设听觉半径被设置为第二值,第一值大于第二值;或者根据npc的目标技能的释放状态设置预设听觉半径,其中,目标技能用于在被释放的状态下增加npc的听觉范围,当目标技能的释放状态为已释放状态时,预设听觉半径被设置为第一值,当目标技能的释放状态为未释放状态时,预设听觉半径被设置为第二值,第一值大于第二值。

13、可选地,上述方法还包括:在控制npc执行与第一声音对应的行为操作的过程中,获取第二声音的第二声音强度以及第二声音的第二传播距离,其中,第二声音是第二玩家角色在第二位置上产生的声音,第二声音强度是预设的与第二玩家角色在第二位置上的第二运动状态对应的声音强度,第二传播距离是根据第二声音强度确定的传播距离;在npc与第二玩家角色之间的第二目标距离小于第二传播距离、且小于npc的预设听觉半径的情况下,根据第二声音强度以及第二目标距离确定npc听到的第二声音的声音强度;在npc听到的第二声音的声音强度大于或等于第一声音强度阈值、且大于npc听到的第一声音的声音强度的情况下,控制npc停止执行与第一声音对应的行为操作,并控制npc执行与第二声音对应的行为操作。

14、根据本发明实施例的另一方面,还提供了一种非玩家角色的控制装置,包括:第一获取单元,用于获取第一声音的第一声音强度以及第一声音的第一传播距离,其中,第一声音是第一玩家角色在第一位置上产生的声音,第一声音强度是预设的与第一玩家角色在第一位置上的第一运动状态对应的声音强度,第一传播距离是根据第一声音强度确定的传播距离;第一处理单元,用于在非玩家角色npc与第一玩家角色之间的第一目标距离小于第一传播距离、且小于npc的预设听觉半径的情况下,根据第一声音强度以及第一目标距离确定npc听到的第一声音的声音强度;第二处理单元,用于在npc听到的第一声音的声音强度大于或等于第一声音强度阈值的情况下,控制npc执行与第一声音对应的行为操作。

15、根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述非玩家角色的控制方法。

16、根据本发明实施例的又一方面,还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述方法的步骤。

17、根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过计算机程序执行上述非玩家角色的控制方法。

18、通过本技术提供的上述实施例,在根据非玩家角色npc与第一玩家角色之间的第一目标距离以及npc的预设听觉半径,确定npc能够听到第一玩家角色发出的第一声音的情况下,通过比较npc听到的第一声音的声音强度与第一声音强度阈值,控制npc执行与第一声音对应的行为操作。换言之,通过比较npc听到的第一声音的声音强度和第一声音强度阈值,使得npc能够准确地执行相应的行为操作,避免了无法准确地控制npc执行行为操作的技术问题,实现了提高控制npc执行行为操作的准确性的技术效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1