feat(stage-ui-mmd): add MMD support (#1997)

---------

Co-authored-by: nyueki <nyuek.i@proton.me>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Neko Ayaka <neko@ayaka.moe>
Co-authored-by-agent: Unknown
This commit is contained in:
nyueki
2026-07-20 16:13:55 +08:00
committed by GitHub
co-authored by nyueki autofix-ci[bot] Neko Ayaka
parent 78d6588cb0
commit eabec9a64f
53 changed files with 3746 additions and 10 deletions
+3
View File
@@ -3,7 +3,10 @@ import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
environment: 'node',
fileParallelism: false,
globals: true,
hookTimeout: 60_000,
maxWorkers: 1,
coverage: {
provider: 'v8',
include: [
+1
View File
@@ -69,6 +69,7 @@
"@proj-airi/stage-pages": "workspace:^",
"@proj-airi/stage-ui": "workspace:^",
"@proj-airi/stage-ui-live2d": "workspace:^",
"@proj-airi/stage-ui-mmd": "workspace:^",
"@proj-airi/stage-ui-spine": "workspace:^",
"@proj-airi/stage-ui-three": "workspace:^",
"@proj-airi/ui": "workspace:^",
@@ -190,6 +190,20 @@ const modelSettingsRuntimeSnapshot = computed<ModelSettingsRuntimeSnapshot>(() =
})
}
if (stageModelRenderer.value === 'mmd') {
const phase = resolveComponentStateToRuntimePhase(componentStateStage.value, { hasModel })
return createEmptyModelSettingsRuntimeSnapshot({
ownerInstanceId: modelSettingsRuntimeOwnerInstanceId,
renderer: 'mmd',
phase,
controlsLocked: hasModel ? phase !== 'mounted' : false,
previewAvailable: hasModel,
canCapturePreview: false,
updatedAt: Date.now(),
})
}
if (stageModelRenderer.value === 'godot') {
return createEmptyModelSettingsRuntimeSnapshot({
ownerInstanceId: modelSettingsRuntimeOwnerInstanceId,
+2
View File
@@ -13,5 +13,7 @@ export default defineConfig({
env: loadEnv('test', cwd(), ''),
include: ['src/**/*.test.ts', 'scripts/**/*.test.ts'],
exclude: ['**/node_modules/**', '**/.git/**'],
fileParallelism: false,
maxWorkers: 1,
},
})