如果路点很小,例如大小为0.1或1的立方体,也没问题。当我将方块大小改为20-30时,如果有两个路点在路上,但敌人应该到达第二个路点,他会卡在第一个路点的墙上,他会抖动/卡顿,并试图走到一边,最后他会通过这个路点,继续到他应该得到目标的路点。
只有当航点(方块)很大时才会发生这种情况,如果航点挡住了敌人应该得到的航点。
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
using UnityStandardAssets.Characters.Thir
我正在尝试用C++创建一个简单的基于网格的游戏。寻路是其中必要的一部分。我一直在找,但并不完全是我要找的。
规则很简单。有一张地图。大小一般不超过100 x 100平铺。1是地砖,0是墙。不允许对角线移动,因此每个网格只有4个方向。然而,大多数情况下都有不止一个目标。我想找一条最近的路。记住,我们不能只计算距离公式,哪一个是最近的。距离短的目标可以走更远的路,因为有墙。我认为使用一种已知的算法,并为每个目标重复,这不是一个好主意,因为它会变慢。
你的意见呢?我该怎么办?
我已经可以通过寻路来创建移动网格,并为玩家避开障碍物。现在我想让AI根据移动网格和可用的动作点移动自己(就像玩家一样),但我不知道怎么做。现在,我只能让角色移动到这个位置(但它不是跟随寻路,这个角色应该是AI)。我被困在试图解决这个问题,但不能。你们能帮我吗?谢谢。
这是我到目前为止得到的代码(它使应该是AI的角色移动到该位置,但它不跟随寻路):
using UnityEngine;
using System.Collections;
public class AIPlayer : Player
{
void Awake()
{
moveDestination
我正在尝试做一个程序,将你的名字和出生日期合并到一个字符串中,然后输出所有可能的结果。我做了一个代码,它输出随机洗牌的可能性,我想。但是它输出相同的东西两次或更多。我如何才能让它只计算一次可能性。这是我的代码; import random
a = input("enter your name").lower()
b = input("enter your birth date")
x = 0
def generator(name, birth):
merge = name + birth
final = random