本日里程碑#
阶段 A(平台无关核心)完成——把不依赖任何平台 API 的引擎主体全部移植完毕。
完成内容#
数学/几何/曲线/组件批#
- 数学库(Vector2/3/4/Matrix/Quaternion/Plane/MathHelper 等,含
MathHelper+Random的 partial 整合) - 几何体(BoundingBox/BoundingFrustum/BoundingSphere/Ray)
- 曲线(Curve/CurveKey)与组件(GameComponent/DrawableGameComponent 等)
- PackedVector 19 个类型
Input/Content 核心#
- Input 状态类(Keyboard/Mouse/GamePad 等,TouchQueue 已就绪)
- Content 核心(ContentManager/ContentReader 骨架)
Audio 主体(本日重点修正)#
复查中发现 SoundEffect 族(5 个)实为平台无关主体(参数校验/时长计算/状态机/池管理纯 C#,仅 PlatformXxx 钩子待平台层)——此前遗漏未统计。补移植:
SoundEffect(构造校验/时长/静态音量/Play/池交互)SoundEffectInstance(音量/音调/声像钳制/状态机/Apply3D)SoundEffectInstancePool/DynamicSoundEffectInstance(缓冲队列/回调)Microphone/AudioUtil(WAV 头格式化)
Platform 再核实(记录不移植原因)#
.Default.cs桩:全为throw NotImplementedException无逻辑 → 不移植.Web.cs(KeyboardUtil/GamepadUtil):语义绑定 Web 浏览器 → 不移植- 其余平台文件绑定各自 SDK(鸿蒙用 NDK 重写)
验证升级#
- ✅ 32 cpp 编译 .o + 链接无未定义符号(此前
-fsyntax-only漏过声明未定义缺陷,本日起强制链接级验证) - ✅ 123 个头文件独立包含编译零警告
下一步#
- 鸿蒙图形后端接口设计(B2 前置,以 MGG_* 清单为蓝本)→ 阶段 B 平台层