新闻中心

游戏机制解析课:小地图边缘目标标记沿方向裁到边框——20乘10小地图的十三个目标(案例21)

2026-10-29

目标超出小地图显示范围时,标记可以留在边缘提示方向。若分别把横纵坐标夹到边界,标记方向可能改变;沿中心到目标的射线找交点能保留方向。

本篇给出一份完整且可重复的虚构游戏记录。先读清规则,再尝试自行推演输入,最后逐项对照中间状态。不同作品可以选择不同约定,只有在相同前提下才能比较结果;不要只看最终数字相同就认为过程正确。

约定与原始记录

矩形小地图以零点为中心,给定横纵半宽。范围内目标原位显示;范围外目标沿原方向等比例缩小到矩形边缘。边界包含,零向量保留原点,结果用精确分数记录。

半宽10、半高5 [[0, 0], [10, 5], [-20, 10], [30, 0], [0, -15], [23, 26], [4, 9], [8, 17], [-25, 18], [-14, -28], [15, 17], [17, -1], [1, 26]]

逐步计算

目标(0,0),允许缩放上限['1'],取比例1,显示位置['0', '0'],原位保留。

目标(10,5),允许缩放上限['1', '1', '1'],取比例1,显示位置['10', '5'],原位保留。

目标(-20,10),允许缩放上限['1', '1/2', '1/2'],取比例1/2,显示位置['-10', '5'],位于原方向与边框的交点。

目标(30,0),允许缩放上限['1', '1/3'],取比例1/3,显示位置['10', '0'],位于原方向与边框的交点。

目标(0,-15),允许缩放上限['1', '1/3'],取比例1/3,显示位置['0', '-5'],位于原方向与边框的交点。

目标(23,26),允许缩放上限['1', '10/23', '5/26'],取比例5/26,显示位置['115/26', '5'],位于原方向与边框的交点。

目标(4,9),允许缩放上限['1', '5/2', '5/9'],取比例5/9,显示位置['20/9', '5'],位于原方向与边框的交点。

目标(8,17),允许缩放上限['1', '5/4', '5/17'],取比例5/17,显示位置['40/17', '5'],位于原方向与边框的交点。

目标(-25,18),允许缩放上限['1', '2/5', '5/18'],取比例5/18,显示位置['-125/18', '5'],位于原方向与边框的交点。

目标(-14,-28),允许缩放上限['1', '5/7', '5/28'],取比例5/28,显示位置['-5/2', '-5'],位于原方向与边框的交点。

目标(15,17),允许缩放上限['1', '2/3', '5/17'],取比例5/17,显示位置['75/17', '5'],位于原方向与边框的交点。

目标(17,-1),允许缩放上限['1', '10/17', '5'],取比例10/17,显示位置['10', '-10/17'],位于原方向与边框的交点。

目标(1,26),允许缩放上限['1', '10', '5/26'],取比例5/26,显示位置['5/26', '5'],位于原方向与边框的交点。

十三个标记都在横向[-10,10]和纵向[-5,5]内,外部目标的方向保持。

复核方法与适用范围

检查输出与目标共线且同向,并处于矩形范围;原目标在外时至少一个输出分量恰好触边。也可以分别求射线碰到横边和竖边的比例,取最早合法交点。

边缘位置只表达方向,不直接表达目标距离。两个远近不同但同方向的目标可能落在同一个像素位置;若界面还显示距离数字,那是另外的信息。这里不处理地图旋转、图标自身宽度和安全留白。

练习时可以只改动一个输入,再观察哪一步首次出现差异。对等于门槛、重复请求、空集合和最后一步分别留一份记录;如果发现异常,应先回到单位、顺序和边界约定,避免用额外补偿掩盖前面已经发生的错误。

准备好开始吧,它既快速又简单。