用一句话生成空战游戏原型画面里有座舱、准星、敌机和爆炸是否就说明“锁定并击毁敌机”的玩法已经成立不能。锁定框变亮只能证明界面给出了反馈。只有目标身份、锁定结果、导弹实体、命中来源、伤害结算和重开状态能够连续对应导弹追踪才形成了可验证的玩法闭环。本文固定一个最小案例1 架玩家飞机、3 架目标机、6 枚导弹、90 秒测试时间和一处返航点。每轮都从相同状态开始分别测试正常击毁、故意脱锁和中途打断。没有运行日志或实际操作结果的环节一律标记为“待验证”不从一张爆炸画面反推整套系统已经实现。图注座舱与敌机可以建立空战追踪设想但锁定目标、导弹实体、伤害来源和胜负仍需连续运行记录。此概念图不能证明飞机可驾驶、准星可交互、导弹具有制导、爆炸来自真实命中、城市可进入或关卡能够结算。节点一画面里有三架敌机不等于存在三个有效目标第一步不是测试准星而是确认场上确实存在 3 个可独立追踪的目标。常见异常包括准星扫过敌机却没有锁定反馈画面只看到一架飞机目标列表里却有两个对象敌机已经播放爆炸动画仍能被系统再次选中。这些现象说明视觉模型和玩法目标没有正确对应。给 3 架目标机分配固定编号target_01target_02target_03每次状态变化时记录target_id | position | hp | faction alive | lockable | visible_to_player | current_state无需把所有字段每帧写入正式日志以免制造不必要的开销。调试阶段可以按固定频率采样并在进入视野、允许锁定、受伤和被击毁等关键状态变化时强制记录。逐架让目标进入和离开视野检查编号与画面对象是否一一对应。击毁目标后还要确认它从可锁定候选列表中移除而不只是隐藏模型或播放爆炸。通过标准是3 架目标机各有唯一编号同一出生点没有重叠目标被击毁对象不能继续被选中完整重开后编号、生命和位置都恢复到统一初始状态。节点二锁定必须读取角度、距离和持续时间锁定框从白色变成红色看起来像是已经捕获目标但界面颜色不一定等于后台真的保存了目标。锁定系统至少需要回答这些问题目标距离多远时可以开始锁定允许偏离准星中心多大角度目标需要连续满足条件多长时间目标离开范围后立即脱锁还是保留短暂宽限期建筑遮挡是否会打断锁定最后一项没有通用答案。有些游戏要求持续视线有些雷达或导弹允许短暂越过遮挡。关键不是必须采用哪种设计而是规则要提前写清并让界面与后台使用同一结论。测试时让同一目标依次完成四种动作从准星边缘掠过、停留在有效范围、进入建筑遮挡、飞出最大距离。每次记录candidate_target_id | locked_target_id angle_offset | distance | line_of_sight lock_progress | lock_result | unlock_reason只有锁定框变亮时后台也存在唯一有效的locked_target_id锁定才算真正提交。条件失效后系统应按规则清除目标或进入宽限期不能出现界面显示“已锁定”、后台却没有目标的情况。节点三一次发射必须对应一枚可追溯导弹尾焰、音效和后坐反馈都不能单独证明导弹已经生成。发射操作至少要把输入、弹药扣除、导弹实体和目标信息连成一条记录。每次成功发射建议保存missile_id | owner_id | launch_mode target_id | spawn_position | launched_at fuel_remaining | ammo_before | ammo_after其中launch_mode用于区分“有目标制导”和“无目标发射”。是否允许未锁定发射属于玩法选择但必须显式定义不能让同一按键有时生成制导弹、有时又静默失败。分别在以下状态按下发射键已完成锁定尚未锁定武器仍在冷却弹药已经耗尽快速连续输入。一次有效发射只能生成一枚有编号的导弹并只扣除一发弹药无效发射不能生成导弹也不能扣弹。快速连按时如果游戏设计不允许连射就应拒绝后续请求并给出可理解的原因。节点四追踪、失锁和自毁必须有明确结局导弹会朝敌机转弯只能说明它的飞行方向发生了变化不能证明完整的制导状态机已经成立。目标急转、飞出追踪角、被其他攻击提前击毁或者进入建筑遮挡后导弹必须按既定规则处理。常见选择包括继续追踪原目标进入惯性飞行在短时间内尝试重新捕获原目标按明确条件切换到新目标燃料耗尽或超时后自毁。需要特别注意重新捕获原目标和自动换锁另一目标不是一回事。若允许换锁日志必须记录新目标编号和切换原因避免导弹悄悄改追另一架飞机最终又把伤害算到原目标上。至少测试四种情况目标急转、离开追踪角、被提前击毁、穿过遮挡。记录missile_id | current_target_id | guidance_state position |fuel_remaining | retargeted_to end_state | end_reason | ended_at每枚导弹都应从生成追溯到明确结局例如命中、失锁、燃料耗尽、碰撞环境或自毁。爆炸只是结局的视觉反馈不能代替结局原因。节点五命中、伤害和击毁只能结算一次一枚导弹击中敌机后出现爆炸不代表目标一定扣血。反过来碰撞事件、范围爆炸和延迟销毁也可能重复触发让同一次攻击被结算两遍。测试时要核对damage_event_id | missile_id | attacker_id hit_object | hit_position | damage_value hp_before | hp_after | kill_confirmed score_event_iddamage_event_id和score_event_id可以帮助系统去重。目标进入“已击毁”状态后只能触发一次击毁计分后续碰撞、爆炸回调和视觉特效不能再次增加分数。还要提前定义近失爆炸。如果导弹擦过目标但在附近爆炸是否造成范围伤害、有效半径多大、遮挡是否削弱伤害都应写进规则。若第一版不做范围伤害就应要求导弹真正命中有效碰撞体后才扣血。建议让两枚导弹先后攻击同一目标重点观察第一枚是否造成一次明确伤害第二枚抵达时目标是否已经处于不可再次击毁状态击毁计数和分数是否只增加一次胜负界面是否与后台计数一致。如果画面播放爆炸却找不到对应的伤害事件应标记为“爆炸特效已展示命中判定待验证”。节点六暂停、返航和重开要清理同一套状态暂停后飞机停住导弹却继续飞重开后目标恢复了弹药仍少一枚返航后旧锁定框还挂在屏幕上——这些都是状态没有统一管理的表现。问题通常来自不同系统使用了不同时间源。飞机运动、导弹制导、锁定进度、武器冷却和 90 秒倒计时可能分别读取游戏时间、物理时间或不受暂停影响的真实时间。暂停规则必须明确飞机和目标机是否停止运动已发射导弹是否冻结锁定进度和宽限期是否停止武器冷却与关卡倒计时是否暂停恢复时是否会补执行暂停期间积累的事件。返航和完整重开也要区分。返航可以按设计保留击毁进度或剩余弹药但应清除临时锁定、无效目标引用和离场导弹。完整重开则应恢复 6 枚导弹、3 架目标机、90 秒计时、初始计分和统一出生状态同时回收旧导弹、旧特效与旧事件订阅。搭建城市背景、飞机外观和基础操作场景时可以把 3D Agent作为原型制作入口。但生成一个可展示的空战场景不等于制导、伤害和结算链路已经通过验收这些状态仍需在运行版本中逐项核对。用三轮实测把证据分成四档不要在不同版本里各截一张“最成功”的画面再拼成完整结论。保持 1 架玩家飞机、3 架目标机、6 枚导弹、90 秒测试时间和同一返航点不变连续执行三轮。第一轮正常击毁发现目标、完成锁定、发射导弹、持续追踪、命中并结算。核对目标编号、导弹编号、伤害事件和计分事件是否按时间顺序对应。第二轮故意失锁让目标离开追踪角、进入遮挡并制造近失。确认锁定宽限、导弹结局和伤害结果符合预先写定的规则而不是依赖画面猜测。第三轮中途打断在锁定进行中、导弹飞行中和击毁结算时分别暂停再测试返航和完整重开。确认旧目标、旧导弹、计时器和事件监听不会污染下一轮。最终证据可以分成四档空战概念图只能证明视觉题材和构图方向。准星与爆炸演示证明画面有反馈不证明锁定对象或伤害来源。单目标追踪原型能够连续复现一次锁定、发射、追踪和命中。可重复的多目标闭环目标、导弹、伤害、计分、暂停和重开记录能够相互对应。没有对应运行证据就不要把低一档结果描述成高一档功能。发布前检查这6项3 个目标是否拥有唯一编号并会在击毁后退出候选列表锁定框、锁定进度和locked_target_id是否一致一次有效发射是否只生成一枚导弹、只扣一发弹药失锁、换锁、燃料耗尽和自毁是否都有明确日志命中、伤害、击毁和计分是否能够追溯且只结算一次暂停、返航和完整重开后状态是否按各自规则恢复对于一句话生成游戏或 AI 生成 3D 场景画面完成度和玩法完成度必须分开评估。座舱、准星、尾焰和爆炸能够建立空战氛围真正证明导弹追踪成立的是一条可以重复运行、能够定位失败原因的状态链。如果只能先查一处你会先核对锁定框与后台目标是否一致还是先查导弹命中后有没有重复结算