From 93cbfec58372fbe711bd69bae2b9bb4705a07e94 Mon Sep 17 00:00:00 2001 From: Neko Ayaka Date: Wed, 3 Dec 2025 20:05:29 +0800 Subject: [PATCH] feat(stage-ui,stage-pages,stage-tamagotchi): visualize beat sync target value, plugin-lize live2d motion, styles of beat sync --- .../pages/settings/system/developer.vue | 6 + .../src/pages/devtools/beat-sync.vue | 346 +++++++++++++++++ .../src/components/scenes/live2d/Model.vue | 168 ++------ .../src/composables/live2d/beat-sync.ts | 361 ++++++++++++++++++ .../stage-ui/src/composables/live2d/index.ts | 2 + .../src/composables/live2d/motion-manager.ts | 252 ++++++++++++ 6 files changed, 1001 insertions(+), 134 deletions(-) create mode 100644 packages/stage-pages/src/pages/devtools/beat-sync.vue create mode 100644 packages/stage-ui/src/composables/live2d/beat-sync.ts create mode 100644 packages/stage-ui/src/composables/live2d/motion-manager.ts diff --git a/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue b/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue index 4322a581b..3653b8477 100644 --- a/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue +++ b/apps/stage-tamagotchi/src/renderer/pages/settings/system/developer.vue @@ -47,6 +47,12 @@ const menu = computed(() => [ icon: 'i-solar:sledgehammer-bold-duotone', to: '/devtools/providers-transcription-realtime-aliyun-nls', }, + { + title: 'Beat Sync Visualizer', + description: 'Plot V-motion targets, trajectory, and scalar Y/Z over time', + icon: 'i-solar:chart-bold-duotone', + to: '/devtools/beat-sync', + }, ]) const openDevTools = useElectronEventaInvoke(electronOpenMainDevtools) diff --git a/packages/stage-pages/src/pages/devtools/beat-sync.vue b/packages/stage-pages/src/pages/devtools/beat-sync.vue new file mode 100644 index 000000000..0174f1b7d --- /dev/null +++ b/packages/stage-pages/src/pages/devtools/beat-sync.vue @@ -0,0 +1,346 @@ + + + diff --git a/packages/stage-ui/src/components/scenes/live2d/Model.vue b/packages/stage-ui/src/components/scenes/live2d/Model.vue index e537d40a3..434d20291 100644 --- a/packages/stage-ui/src/components/scenes/live2d/Model.vue +++ b/packages/stage-ui/src/components/scenes/live2d/Model.vue @@ -1,6 +1,7 @@