From 0b531de7944d38d4d1e058b02157816a54d229b5 Mon Sep 17 00:00:00 2001 From: tian <11429339@qq.com> Date: Wed, 17 Jun 2026 16:10:54 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=90=8C=E6=AD=A5=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E6=96=87=E6=A1=A3=20=E2=80=94=20=E7=A9=BA=E5=9F=BA=E5=9B=BA?= =?UTF-8?q?=E5=AE=9A=E9=98=B5=E4=BD=8D=E5=8F=91=E5=B0=84=E3=80=81=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E5=B1=9E=E6=80=A7=E6=9B=B4=E6=96=B0=E3=80=81=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E6=95=B0=E6=8D=AE=20CRUD=20=E6=9E=B6=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/design/architecture/总体架构设计.md | 31 +++++++------------ .../technical/DefensePlanner-技术方案.md | 2 +- docs/design/technical/仿真器实体与事件映射.md | 15 +++++---- 3 files changed, 19 insertions(+), 29 deletions(-) diff --git a/docs/design/architecture/总体架构设计.md b/docs/design/architecture/总体架构设计.md index ec5951e..ba6503a 100644 --- a/docs/design/architecture/总体架构设计.md +++ b/docs/design/architecture/总体架构设计.md @@ -587,10 +587,10 @@ Tick 内 DetectionEntity 扫描飞行无人机: 火控分配(分配给可用搭载平台) │ - ├── 空基平台:飞至投放点 + ├── 空基平台:固定阵位发射(水平初速 + 重力下落) │ │ │ ▼ - │ 投放弹药(自由落体/滑翔至云团生成点) + │ 弹药飞行至目标高度 │ └── 地基平台:计算射击诸元 │ @@ -622,8 +622,8 @@ Unity 渲染毁伤效果(尾焰异常、姿态失控、坠落) ``` 1. 【发射阶段】 按 FireSchedule 执行: - ├─ SimulationTime ≥ FireTime → 平台发射弹药(空基先 CommandFlyTo,地基直接 Release) - ├─ 空基平台到达投放点 → 投放弹药(继承载机速度) + ├─ SimulationTime ≥ FireTime → 平台直接发射弹药 + ├─ 空基发射:弹药以巡航速度水平射出,重力下落到目标高度 └─ 触发 OnMunitionLaunched 事件 2. 【弹药飞行 → 云团生成】 @@ -712,11 +712,11 @@ Unity 渲染毁伤效果(尾焰异常、姿态失控、坠落) ``` 空基平台(AirBasedPlatform): - - 位置(动态,飞向投放点) + - 固定阵位 - 挂载弹药类型 AerosolType、数量 MunitionCount - - 释放高度 ReleaseAltitude + - 巡航速度 CruiseSpeed - 冷却计时器 - - 行为:接收目标坐标 → 计算拦截航路 → 飞至投放点 → 投放弹药 + - 行为:按发射计划从固定位置水平射出弹药,弹药重力下落到目标高度 地基平台(GroundBasedPlatform): - 固定位置 @@ -735,19 +735,10 @@ Unity 渲染毁伤效果(尾焰异常、姿态失控、坠落) - 当前位置、速度 - 目标坐标(云团生成点) -行为(两种弹道): - - AirDrop(空基投放): - 初始位置 = 投放点,初始速度 = 平台速度 - 运动 = 自由落体 + 水平惯性(简化) - 到达条件 = 当前位置.Z ≤ 云团生成高度 - - - GroundArtillery(地基炮弹): - 初始位置 = 发射点,初始速度 = MuzzleVelocity - 运动 = 抛物线弹道 - x(t) = x0 + v0*cos(θ)*cos(φ)*t - y(t) = y0 + v0*cos(θ)*sin(φ)*t - z(t) = z0 + v0*sin(θ)*t - 0.5*g*t² - 到达条件 = z(t) ≤ 云团生成高度 +行为(统一抛物模型): + - 地基:初速 MuzzleVelocity + 发射角 → 抛物线弹道(Kinematics.ParabolicPosition) + - 空基:初速 CruiseSpeed + 水平发射(θ=0°)→ 重力下落(Kinematics.ParabolicPosition) + - 到达条件:Y 坐标到达释放高度 ``` #### CloudEntity(气溶胶云团) diff --git a/docs/design/technical/DefensePlanner-技术方案.md b/docs/design/technical/DefensePlanner-技术方案.md index a9b9b4c..cb2ee7a 100644 --- a/docs/design/technical/DefensePlanner-技术方案.md +++ b/docs/design/technical/DefensePlanner-技术方案.md @@ -147,7 +147,7 @@ Step 4 — 分配求解 Step 5 — 时序生成 │ 对每个分配: │ 地基:FireTime = 最佳交汇时刻 − 炮弹飞行时间 - │ 空基:FireTime = 最佳交汇时刻 − 平台飞行时间 − 弹药下落时间 + │ 空基:FireTime = 最佳交汇时刻 − 弹药下落时间(固定阵位水平发射) │ 合并排序 → MergedFireSchedule │ ▼ diff --git a/docs/design/technical/仿真器实体与事件映射.md b/docs/design/technical/仿真器实体与事件映射.md index 98c6b45..830e18a 100644 --- a/docs/design/technical/仿真器实体与事件映射.md +++ b/docs/design/technical/仿真器实体与事件映射.md @@ -4,10 +4,10 @@ | 实体 | 类 | 生命周期 | 主要属性 | |------|------|------|------| -| 无人机 | `DroneEntity` | 仿真全程 | Pos, Hp, Status, Route, ExposureTime | -| 发射平台 | `PlatformEntity` | 仿真全程 | Pos, PlatformType, State(Idle/FlyingToTarget/ReadyToRelease), AerosolType, MunitionCount, Cooldown, CruiseSpeed, MuzzleVelocity, CurrentVelocity | -| 飞行弹药 | `MunitionEntity` | 发射→到达释放高度 | Pos, LaunchMode(AirDrop/GroundArtillery), Target, HasArrived, 空基载机速度矢量 | -| 气溶胶云团 | `CloudEntity` | 弹药到达→消散 | Center, Radius, CoreDensity, IsDissipated | +| 无人机 | `DroneEntity` | 仿真全程 | Pos, Hp, Status, Route, ExposureTime, TraveledArc, Progress | +| 发射平台 | `PlatformEntity` | 仿真全程 | Pos, PlatformType, State(Idle), AerosolType, MunitionCount, Cooldown, CruiseSpeed, MuzzleVelocity, CurrentVelocity, Target, FlightDistance | +| 飞行弹药 | `MunitionEntity` | 发射→到达释放高度 | Pos, Velocity, LaunchAngle, Azimuth, MuzzleVelocity, FlightDuration, Start, Target, HasArrived, ElapsedTime | +| 气溶胶云团 | `CloudEntity` | 弹药到达→消散 | Pos, Radius, Density, Phase, Elapsed, IsDissipated | | 管控区域 | `ControlZoneEntity` | 仿真全程 | Vertices, Min/MaxAltitude | | 探测设备 | `DetectionEntity` | 仿真全程 | Source(雷达/光电/红外距离+3D球冠参数), 每无人机探测状态机(Undetected⇄Detected) | @@ -60,13 +60,12 @@ SimulationEngine.Tick() ├─ 【地基】时间到达 → PlatformEntity.Release() → MunitionEntity 创建 │ └─ OnMunitionLaunched ──→ Unity: 炮弹 3D 模型 │ - ├─ 【空基】时间到达 → PlatformEntity.CommandFlyTo() → 飞行中 → CanRelease - │ └─ Release() → MunitionEntity(AirDrop, 载机速度) → OnMunitionLaunched - │ └─ OnMunitionLaunched ──→ Unity: 空基投放 + ├─ 【空基】时间到达 → PlatformEntity.Release() → MunitionEntity 创建 + │ └─ OnMunitionLaunched ──→ Unity: 空基发射 │ ├─ MunitionEntity 飞行 → 到达释放高度 │ ├─ 地基:抛物线弹道(Kinematics.ParabolicPosition) - │ └─ 空基:载机速度 + 重力(Kinematics.AirDropPosition) + │ └─ 空基:水平初速 + 重力(launchAngle=0, ParabolicPosition) │ │ │ ├─ CloudEntity 创建 │ ├─ OnCloudGenerated ──→ Unity: 粒子系统