深圳市南山区粤海街道白石路3609号深圳湾科技生态园9栋B座07层17-18号 jiyoujiaoliu@www.j9.com

新闻动态

游戏状态推演课:环形范围的目标判定(练习04)

2026-10-20

这份练习围绕环形范围的目标判定展开,给出独立的虚构输入、明确的规则和完整推演记录。它不对应任何品牌或真实产品的默认参数,适合先自己算一遍,再逐行核对。重点是分清输入、可见状态与规则,而不是把最后一组数字当成需要记忆的答案。

理解机制

环形范围同时有内边界和外边界,离中心最近的目标反而可能处于空心区。比较距离平方可以避免开平方,同时清楚处理两个圆周上的边界。

本例内外圆周都计入范围,只研究平面点的位置,不考虑目标体积、障碍遮挡、阵营或距离之外的限制。

规则与独立输入

目标为点,坐标单位一致。距离平方在内半径平方到外半径平方之间即命中,两个边界都包含。True为命中,False为未命中。

中心[3, 0],内半径1,外半径6 目标0:[5, -6] 目标1:[-10, 2] 目标2:[-8, -5] 目标3:[-10, 11] 目标4:[-11, -12] 目标5:[-4, -1] 目标6:[-8, 2] 目标7:[-2, 6] 目标8:[4, 0] 目标9:[3, 6]

逐步推演

目标0在(5,-6),距离平方40,与范围[1,36]比较,结果False。

目标1在(-10,2),距离平方173,与范围[1,36]比较,结果False。

目标2在(-8,-5),距离平方146,与范围[1,36]比较,结果False。

目标3在(-10,11),距离平方290,与范围[1,36]比较,结果False。

目标4在(-11,-12),距离平方340,与范围[1,36]比较,结果False。

目标5在(-4,-1),距离平方50,与范围[1,36]比较,结果False。

目标6在(-8,2),距离平方125,与范围[1,36]比较,结果False。

目标7在(-2,6),距离平方61,与范围[1,36]比较,结果False。

目标8在(4,0),距离平方1,与范围[1,36]比较,结果True。

目标9在(3,6),距离平方36,与范围[1,36]比较,结果True。

结果与交叉核对

范围内目标编号为[8, 9]。

分别列出不超过外半径的集合,以及严格小于内半径的空心区集合,前者减后者应得到同一结果。内圆周不能被减去;这与“至少离中心这么远”的包含关系一致。

复盘练习

动手复盘时,把每一步的输入、操作前值、判断依据和操作后值分开写。若与示例不一致,先定位第一处分歧,检查边界是否包含、顺序是否颠倒、编号和单位是否一致。不要跳过中间状态只修正最后数字,也不要把未规定的行为凭经验补进去。

再做一次练习时只调整一项输入,先预测哪些后续行会变化,再重新推演并保留两份记录。对没有变化的部分也说明原因,能帮助判断机制的作用范围。应用到真实游戏之前,应先在说明或可重复场景中确认对应条件;不同作品可能使用不同边界、优先级和时间约定。