礼拜一-礼拜五:09.00 早上-06.00 下午

资讯中心

游戏知识推演:扇形观察范围的距离与方向条件——半径7的正向九十度视域(记录06)

2026-10-25

观察范围通常同时受距离和方向限制。一个目标足够近,却在角色背后,不能只因为距离合适就被选中。将朝向条件和范围条件分开记录,容易定位目标判定中的误会。

下面是一份输入完整的独立练习。先明确规则和端点约定,再逐项推演;可以遮住计算结果自行记录,出现差异时从第一处不同查起。每项输入都是本例设定,不代表所有游戏采用同一套规则。

本例规则与输入

角色朝世界正X方向,视域总角度为九十度,包含两条边界;候选点需横向偏移非负、纵向偏移绝对值不大于横向偏移,且平方距离不超过半径平方。原点视为可见。

原点[0, 1],朝正X,半径7 [[0, 0], [7, 0], [-1, 0], [7, 7], [2, 2], [2, 3], [-3, -2], [-3, -4], [1, -6], [-4, 7], [-1, 3], [-5, 1], [3, 7], [0, 4]]

过程记录

目标(0,1)相对偏移(0,0),平方距离0;方向条件True,距离条件True,最终在视域内。

目标(7,1)相对偏移(7,0),平方距离49;方向条件True,距离条件True,最终在视域内。

目标(-1,1)相对偏移(-1,0),平方距离1;方向条件False,距离条件True,最终在视域外。

目标(7,8)相对偏移(7,7),平方距离98;方向条件True,距离条件False,最终在视域外。

目标(2,3)相对偏移(2,2),平方距离8;方向条件True,距离条件True,最终在视域内。

目标(2,4)相对偏移(2,3),平方距离13;方向条件False,距离条件True,最终在视域外。

目标(-3,-1)相对偏移(-3,-2),平方距离13;方向条件False,距离条件True,最终在视域外。

目标(-3,-3)相对偏移(-3,-4),平方距离25;方向条件False,距离条件True,最终在视域外。

目标(1,-5)相对偏移(1,-6),平方距离37;方向条件False,距离条件True,最终在视域外。

目标(-4,8)相对偏移(-4,7),平方距离65;方向条件False,距离条件False,最终在视域外。

目标(-1,4)相对偏移(-1,3),平方距离10;方向条件False,距离条件True,最终在视域外。

目标(-5,2)相对偏移(-5,1),平方距离26;方向条件False,距离条件True,最终在视域外。

目标(3,8)相对偏移(3,7),平方距离58;方向条件False,距离条件False,最终在视域外。

目标(0,5)相对偏移(0,4),平方距离16;方向条件False,距离条件True,最终在视域外。

14个独立候选点中有3个满足两项条件。

复核与实际应用

先用两个对角边界检查方向,再用平方距离检查圆形边界。平方比较避免开平方;本例没有墙壁遮挡,满足范围条件不等同于真实场景中没有遮挡。

角度边界上的点仍可能离得太远,所以方向判断通过后还必须检查距离。反过来,位于圆内的后方点也不应通过。本例把两项结果都列出,避免只看到最终真假却不知道哪项失败。

练习结束后,保留输入、每一步的中间状态和最终结果。可以仅修改一个边界输入,再比较变化来自哪条规则;不要同时改动多个条件后只凭最终画面判断。若实际作品表现不同,应先确认它使用的时间、坐标或结算约定,再决定是否属于异常。