PRJ-08 OPEN SOURCE
NetDrone Simulator 网络无人机 VR 模拟器
vr networking lab on pico 4 with drone scenarios
在 VR 里边操控无人机,边学计算机网络
- VR/XR
6 个
教学模块:按键教学 / 无人机控制 / 组网 / CRC / 路由 / TCP 握手挥手
50 个
C# 脚本(UI 系统 / 状态机 / 网络模型 / 控制分层)
5 个
预置子网络场景,终端设备依附于交换机下挂网络
// 01
问题背景
计算机网络课的 CRC 校验、路由表、TCP 握手挥手,靠 PPT 和抓包工具学始终隔着一层——学生知道流程,但没有「网络是真实存在的东西」的体感。
这个项目把抽象协议映射到可交互的 VR 场景:学生戴上 PICO 4,亲手把无人机终端加进子网络、编辑路由表、看连通性结果、一步步走完握手挥手的日志——协议从「背下来」变成「操作出来」。
// 02
系统架构
交互层
PICO 4 手柄与 VR 交互
教学模块层
六大可交互教学单元
核心框架层
可复用的 C# 基础设施
// 03
关键技术决策
每一条都包含「为什么这样选」与「代价是什么」——这是我理解这个项目的方式。
先建网络数据模型,再做 VR 表现
最容易踩的坑是直接摆场景、把网络逻辑写死在 UI 里。先建 Network / Router / Switch / EndDevice / RoutingEntry 的纯数据模型,教学模块全部基于模型计算(路由连通性、CRC 校验步骤),VR 场景只是模型的可视化。代价是前期看不到「酷炫画面」,但路由编辑、终端添加等功能都变成了对模型的操作,可测试可扩展。
CRC 教学做成「讲解 + 自主校验 + 步骤回看」三位一体
只给学生看动画,学会了也考不过;只给计算器,又不知道为什么。模块拆成知识讲解(语音 + 文字)、输入校验(自选生成多项式、输入数据与自算结果自动比对)、详细计算过程三步回看——把「教、练、评」装进一个界面。这是教学设计决策,技术上要求把 CRC 计算过程逐步骤结构化输出,而不是只给最终结果。
选 PICO 4 一体机而非 PC VR
教学场景在课堂,拖着线缆的 PC VR 不现实。PICO 4 一体机开箱即用,官方 Unity SDK 与 XRI 生态成熟,LivePreview 也缩短了调试回路。代价是一体机算力有限,场景规模与渲染开销要克制;以及平台绑定,移植其他头显需要重做 SDK 适配层。
// 04
我的职责与产出
RESPONSIBILITIES
- 设计六大教学模块的交互流程与信息架构
- 实现网络数据模型(网络 / 路由 / 交换机 / 终端 / 路由表项)
- 实现 CRC 校验学习模块(讲解 / 校验 / 计算过程展示)
- 实现路由配置与 TCP 握手挥手的交互演示
- 实现无人机 VR 操控与实时相机视角回显
- 搭建通用 UI 系统与教学流程状态机
OUTCOMES
- 协议学习从被动听讲转为 VR 场景中的主动操作
- CRC 模块支持学生自主输入校验并回看完整计算步骤
- 路由表可编辑,终端连通性结果即时反馈装配正误
// 05
踩坑与复盘
课堂设备的真实约束(一体机性能、学生零上手成本)比技术选型本身更决定架构。复盘看,网络数据模型前置是最正确的决定;遗憾是 TCP 模块目前以日志演示为主,缺少报文级别的可视化动画,多人协同组网(教师端 + 学生端)也是值得做的下一步。
// 06
技术栈
- Unity 2022
- C#
- PICO XR SDK
- XR Interaction Toolkit