默认语言与切换方式 / Default Language and How to Switch
默认语言为中文(zh-CN)。首次访问时无需任何操作,页面直接以中文显示。 The default language is Chinese (zh-CN). On first visit, no action is needed — the page displays in Chinese immediately.1
使用界面按钮 / Use the UI Toggle
每个页面右上角都有一个 中 / EN 切换按钮,包括首屏、房间 HUD、内容索引、帮助页和每个资产详情页。点击即可在中英文之间切换。Every page — including the splash screen, room HUD, content index, help page, and every asset detail page — has a 中 / EN toggle button in the top-right corner. Click it to switch between Chinese and English.
2
使用 URL 参数 / Use a URL Parameter
在 URL 中加入
?lang=zh 或 ?lang=en 可直接指定语言。URL 中的 lang 参数优先级最高,会覆盖本地存储中保存的上次选择。Add ?lang=zh or ?lang=en to any URL to specify the language directly. The lang parameter in the URL takes the highest priority and overrides any previously saved preference in local storage.3
语言自动保存 / Language Is Saved Automatically
每次切换语言,新的选择都会自动写入
localStorage。刷新页面或关闭后重新打开,语言偏好都会自动恢复。Every time you switch languages, the new choice is automatically written to localStorage. Refreshing the page or closing and reopening it will restore your preference automatically.语言优先级规则 / Language Priority Rules
当多个来源同时存在时,语言按以下优先级决定: When multiple sources are present simultaneously, the language is determined in this order:常用 URL 格式 / Common URL Patterns
使用以下 URL 格式打开指定语言,或同时指定语言和内容章节: Use the following URL formats to open a specific language, or combine language and section in one link:切换语言不会丢失当前状态 / Switching Language Preserves Your Current State
切换语言是一个轻量操作,不会重建 Three.js 渲染器,也不会丢失当前打开的内容章节。 Switching language is a lightweight operation that does not rebuild the Three.js renderer and does not lose your currently open content chapter.渲染器保持运行 / Renderer Stays Running
3D 房间在语言切换时继续运行,相机位置、场景状态和当前动画全部保留。The 3D room keeps running during a language switch. Camera position, scene state, and current animations are all preserved.
章节状态保留 / Section State Preserved
如果你在音乐章节时切换语言,内容面板会直接更新为对应语言的文案,不会关闭再重新打开。If you switch languages while the music chapter is open, the content panel updates to the translated text directly — it does not close and reopen.
相同资产 ID / Same Asset IDs
12 件资产的几何位置、相机焦点和资产 ID 在两种语言中完全一致,深链接在两种语言下都有效。All 12 assets share identical geometry positions, camera focus points, and asset IDs across both languages. Deep links work in both languages.
独立字体排版 / Separate Typography
英文版使用独立的字体顺序、标题比例和长单词换行规则,中英文各自获得最佳阅读体验。The English version uses its own font order, heading proportions, and long-word line-breaking rules so both languages get an optimal reading experience.
Authoring model / 内容存储模型
内置模板默认值位于app/portfolio-data.ts 和 app/portfolio-data-en.ts。个人化覆盖写入 public/content/site-content.json:
Built-in defaults live in app/portfolio-data.ts and app/portfolio-data-en.ts. Personal overrides live in public/content/site-content.json:
profile.zh/profile.en:个人资料文案 / profile copyassets.zh/assets.en:内置章节覆盖 / built-in chapter overridesscene.customAssets[].content.zh/en:自定义交互资产内容 / custom interactive contentmedia、socialLinks与scene:共享容器 / shared containers