simai_flutter 0.3.0
simai_flutter: ^0.3.0 copied to clipboard
A Flutter package for parsing, converting, and rendering simai format charts. Supports chart visualization with Flame engine and audio synchronization.
0.3.0 #
- 音频迁移:统一使用
flutter_soloud播放音乐与正解音;播放器音频参数由audioSource调整为audioAsset/audioFilePath,并支持 Android、iOS、Linux、macOS、Web 和 Windows。 - 播放同步:引入基于单调时钟的音频同步与平滑校正机制,改善变速播放、拖动定位和播放结束时的稳定性。
- 谱面信息:新增当前 BPM、拍号、小节进度、Combo 与 Break 计数展示,并可选择显示详细渲染性能指标。
- 播放控制:重构时间轴与小节导航,支持按原始 simai 语句定位谱面,并优化高低 BPM 段落的时间轴显示。
- 渲染性能:增加运行时索引、渐进式 Slide 预计算与可见区域裁剪,拆分各类音符的批量渲染逻辑,降低大型谱面的计算和绘制开销。
- 渲染修复:完善 Slide、Touch Hold、Approach 动画及音符资源缩放表现,并修复相邻音符和 Slide 语法解析的边界情况。
- 测试与示例:新增音频时钟、渲染性能及播放器交互测试,并补充性能测试谱面。
0.2.5 #
- 重构音符渲染管线,改为批量绘制与路径预计算,显著降低复杂谱面的渲染开销。
- 新增 Touch / Touch Hold 的 fireworks 样式序列化与渲染效果。
- 优化 Approach Arc 资源缓存与抗锯齿表现,并支持相对位置的完整环形提示线。
- 修复播放拖动后的音频同步抖动问题,并在播放结束时正确处理额外视觉尾效。
- 优化播放器控制栏与时间轴刷新逻辑,减少不必要重建。
0.2.4 #
- 修复了 Hold 渲染时为初始长度时角度没有对准目标的问题。
- 修复了切换显示模式为「区」的时候出现崩溃的问题。
- 优化了渲染性能。
0.2.3 #
- 添加了流速调节的功能。
- 修复了开启粉色星星时,Slide 路径也被绘制为粉色的问题。
- 修复了正解音无法正确播放的问题。
- 调整了 Approach Arc 的绘制。
0.2.2 #
- 修复了在 Android 平台上的崩溃问题。
- 完善了渲染机制以便绘制 Approach Arc。
0.2.1 #
- 修复了 Slide 星星在路径上移动时朝向错误的问题。
- 修复了进入全屏后无法正常退出的问题。
0.2.0 #
- 新功能: 增加「锁屏」功能,全屏模式下支持锁定 UI 以防止误触。
- UI 适配:
SimaiPlayerPage现在全面支持SafeArea安全区域适配,包括横屏刘海屏及底部导航栏。 - 生命周期管理: 为
SimaiPlayerController和SimaiPlayerPage添加了完善的dispose资源销毁逻辑。 - 交互改进: 将正解音开关移至设置抽屉并默认关闭,简化了主控制条的视觉显示。
- 稳定性: 修复了页面销毁时计时器未正确清理的潜在内存泄漏问题。
0.1.0 #
- Initial release of
simai_flutter. - Support for parsing simai chart strings and
.txtfiles. - Built-in Flame-based chart renderer.
- Precise audio synchronization with
audioplayers. - Basic UI components for chart preview and control.