【问题标题】:How to make the NPC following players in multiplayer game多人游戏中如何让NPC跟随玩家
【发布时间】:2021-05-21 01:54:04
【问题描述】:
我按照教程here 让 NPC 或敌方角色追逐玩家,但 NPC 无法检测到玩家所在的位置。播放器是一个未放置在场景中的预制件,它在游戏开始时调用。所以当我在场景中尝试另一个物体并使其成为NPC跟随的物体时,NPC可以跟随它。
请帮我解决它,我是游戏开发的新手。
而且因为是多人游戏,NPC可以选择追哪个玩家吗?
【问题讨论】:
标签:
c#
unity3d
artificial-intelligence
game-engine
multiplayer
【解决方案1】:
考虑不时检查玩家是否已生成。
您可以通过多种方式做到这一点。
This post 涵盖了很多不同的方式,我建议每隔几帧检查一次。
例如,您可以find any object by it's tag, name, 甚至是它上面的组件之类的东西。
您可以这样做的一种方法是check for tag。
public GameObject PlayerPrefab;
private GameObject actualPlayer;
private void Update()
{
if(actualPlayer != null)
{
FollowPlayer();
}
else
{
actualPlayer = GameObject.FindGameObjectsWithTag(PlayerPrefab.tag).FirstOrDefault();
}
}
void FollowPlayer()
{
// Follow Player Stuff Here
}