cozyclay 3.1.2 → 3.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +1 -1
  3. package/bin/agent/agent-runner.mjs +160 -151
  4. package/bin/agent/agent-stream.mjs +86 -0
  5. package/bin/agent/anthropic-subscription-events.mjs +120 -0
  6. package/bin/agent/anthropic-subscription-prompt.mjs +116 -0
  7. package/bin/agent/anthropic-subscription-stream.mjs +251 -0
  8. package/bin/agent/anthropic-subscription.mjs +73 -0
  9. package/bin/agent/claude-code-executable.mjs +93 -0
  10. package/bin/agent/cliproxy-provider.mjs +25 -11
  11. package/bin/agent/model-roles.mjs +112 -0
  12. package/bin/agent/openai-compatible-provider.mjs +95 -0
  13. package/bin/agent/pi-tools.mjs +19 -10
  14. package/bin/agent/provider-login.mjs +3 -1
  15. package/bin/agent/provider-routes.mjs +2 -0
  16. package/bin/agent/providers.mjs +35 -130
  17. package/bin/cozyclay.mjs +2 -48
  18. package/bin/star-prompt.mjs +123 -0
  19. package/dist/app/index.html +5 -5
  20. package/dist/assets/TaskBoard-U1Yl-4F1.js +1 -0
  21. package/dist/assets/app-BdRlMf4J.css +1 -0
  22. package/dist/assets/app-KXdgBC-S.js +5144 -0
  23. package/dist/assets/{motion3-compile-dgGhrvPK.js → motion3-compile-DDG3wklD.js} +1 -1
  24. package/dist/assets/scene-asset-sync-Bz59Ghdz.js +13 -0
  25. package/dist/assets/task-board-DFfNa0xg.js +15 -0
  26. package/dist/assets/{workflow-C87p6E1E.js → workflow-BMJGd_gZ.js} +1 -1
  27. package/dist/cozyclay-package.json +1 -1
  28. package/dist/workflow/index.html +3 -3
  29. package/package.json +6 -4
  30. package/src/App.jsx +28 -28
  31. package/src/agent-image-client.js +2 -2
  32. package/src/asset-pane.jsx +14 -14
  33. package/src/character-kind.js +13 -12
  34. package/src/commands/project.js +2 -1
  35. package/src/commands/shot.js +1 -1
  36. package/src/commands/view.js +2 -2
  37. package/src/domains/cast.js +15 -15
  38. package/src/domains/motion/motion-range-pin-rules.js +1 -1
  39. package/src/domains/motion.js +11 -11
  40. package/src/domains/objects.js +20 -30
  41. package/src/domains/scenes.js +14 -21
  42. package/src/domains/shots.js +3 -3
  43. package/src/first-success-guide.jsx +19 -3
  44. package/src/hierarchy-panel.jsx +6 -7
  45. package/src/locale-zh/app.js +124 -0
  46. package/src/locale-zh/domains.js +36 -0
  47. package/src/locale-zh/labels.js +148 -0
  48. package/src/locale-zh/panels.js +225 -0
  49. package/src/locale-zh/shell.js +230 -0
  50. package/src/locale-zh/timeline.js +145 -0
  51. package/src/locale-zh/workflow.js +104 -0
  52. package/src/locale-zh/workspace.js +190 -0
  53. package/src/locale-zh.js +21 -0
  54. package/src/locale.js +16 -6
  55. package/src/main.jsx +1 -1
  56. package/src/motion/beat-board-model.js +4 -4
  57. package/src/motion/beat-board.jsx +1 -1
  58. package/src/motion/ik-pick.js +24 -0
  59. package/src/motion/take-segments.jsx +5 -5
  60. package/src/motion/timeline.jsx +30 -40
  61. package/src/motion/waypoints.js +6 -6
  62. package/src/object-catalog.jsx +4 -5
  63. package/src/panels/CameraPanel.jsx +3 -3
  64. package/src/panels/HdrEnvironmentControls.jsx +2 -1
  65. package/src/panels/ObjectTransformPanel.jsx +19 -29
  66. package/src/panels/PoseImagePanel.jsx +8 -8
  67. package/src/panels/PosePanel.jsx +2 -2
  68. package/src/panels/ReferenceImageField.jsx +2 -2
  69. package/src/panels/RigControlPanel.jsx +2 -2
  70. package/src/panels/SculptPanel.jsx +9 -9
  71. package/src/panels/SubjectBox.jsx +3 -3
  72. package/src/panels/SubjectsPanel.jsx +1 -1
  73. package/src/posestudio.jsx +10 -8
  74. package/src/project-browser.css +7 -6
  75. package/src/project-browser.jsx +7 -6
  76. package/src/project-open-file.js +19 -0
  77. package/src/qa-label.js +1 -1
  78. package/src/range-pin-panel.jsx +14 -14
  79. package/src/resource-status.jsx +3 -3
  80. package/src/result-modal.jsx +10 -10
  81. package/src/settings-menu.jsx +4 -1
  82. package/src/shell/BoardSlot.jsx +5 -5
  83. package/src/shell/CompositionGuideButton.jsx +1 -1
  84. package/src/shell/GhostsMenuGroup.jsx +1 -1
  85. package/src/shell/StatusBar.jsx +4 -4
  86. package/src/shell/ViewportToolbar.jsx +3 -3
  87. package/src/shell/add-camera-shot.js +2 -2
  88. package/src/shell/details-selection.js +1 -1
  89. package/src/shell/preference-controls.jsx +2 -1
  90. package/src/shot-guides.js +5 -5
  91. package/src/stage-hdr.js +3 -3
  92. package/src/stage-labels-ko.js +2 -2
  93. package/src/stage-startup-defaults.js +3 -3
  94. package/src/studio-actions.js +2 -2
  95. package/src/styles/tokens.css +1 -1
  96. package/src/styles.css +1 -1
  97. package/src/use-case-question.jsx +18 -18
  98. package/src/workflow/AgentPanel.jsx +4 -4
  99. package/src/workflow/AgentPlanCard.jsx +1 -1
  100. package/src/workflow/AgentProgressCard.jsx +4 -4
  101. package/src/workflow/AgentTurnSteps.jsx +1 -1
  102. package/src/workflow/LoginPanel.jsx +1 -1
  103. package/src/workflow/TaskBoard.jsx +1 -1
  104. package/src/workflow/TaskInline.jsx +1 -1
  105. package/src/workflow/agent-client.js +1 -1
  106. package/src/workflow/agent-turn.js +5 -5
  107. package/src/workflow/task-board.js +4 -4
  108. package/tools/loc-baseline.json +2 -2
  109. package/tools/run-tests.mjs +5 -5
  110. package/dist/assets/TaskBoard-GR8xZm5c.js +0 -1
  111. package/dist/assets/app-Bhe0TpGz.css +0 -1
  112. package/dist/assets/app-C4QTcDcb.js +0 -5144
  113. package/dist/assets/scene-asset-sync-qoxcdrhj.js +0 -13
  114. package/dist/assets/task-board-BqReHzOi.js +0 -15
@@ -0,0 +1,36 @@
1
+ // Chinese UI copy for domain refusals, notifications and project actions.
2
+ // Keyed by the English default in ko(en, ko) so those call sites stay untouched.
3
+ export const ZH_DOMAINS = {
4
+ "Character added to the scene": "角色已添加到场景",
5
+ "The active character's rig is not loaded": "当前角色的骨骼尚未加载",
6
+ "The path already fills the clip — extend the duration or clear a waypoint": "路径已填满整个片段 — 请延长时长或清除一个路径点",
7
+ "Root path constraints off": "根路径约束已关闭",
8
+ "Root path on — click the set floor in the Shot view to drop waypoints; Subject 1 is the frame 0 start": "根路径已开启 — 在镜头视图中点击布景地面放置路径点;角色 1 是第 0 帧的起点",
9
+ "Edited pose": "已编辑的姿势",
10
+ "Pose saved": "姿势已保存",
11
+ "Nothing to undo": "没有可撤销的操作",
12
+ "Nothing to redo": "没有可重做的操作",
13
+ "Confirm Replace existing keys before applying this pin.": "应用此固定前请确认替换现有键。",
14
+ "Pose mode — preview the correction, then apply it to the selected motion block": "姿势模式 — 先预览修正,再应用到所选动作片段",
15
+ "Pose mode — drag handles in the main view; the shot camera stays frozen in the inset": "姿势模式 — 在主视图中拖动手柄;镜头摄影机在小窗中保持冻结",
16
+ "Pose mode off — keyed poses keep playing": "姿势模式已关闭 — 已打关键帧的姿势会继续播放",
17
+ "Nothing to drop": "没有可放置的对象",
18
+ "Cutout": "抠图",
19
+ "its picture is missing from the store": "其图片不在存储中",
20
+ "Grouped under a new Empty": "已归入新的空物体",
21
+ "Could not group this object": "无法编组此物体",
22
+ "Missing character": "角色不存在",
23
+ "Character 1": "角色 1",
24
+ "Character 2": "角色 2",
25
+ "Root": "根",
26
+ "Could not save the project": "无法保存项目",
27
+ "Could not export the animation project": "无法导出动画项目",
28
+ "Discard unsaved changes and start a new project?": "放弃未保存的更改并新建项目?",
29
+ "That starter scene is not in this build": "此版本中没有该起始场景",
30
+ "Could not open the project": "无法打开项目",
31
+ "This browser would not read that file. Open it once more.": "此浏览器未能读取该文件,请再打开一次。",
32
+ "Project access was not granted — allow access and try again.": "未获得项目访问权限 — 请允许访问后重试。",
33
+ "SCENE 01": "场景 01",
34
+ "Draw the selected Shot's rail in the Top-View": "在顶视图中绘制所选镜头的轨道",
35
+ "Camera rail deleted — Follow keeps the current distance": "摄影机轨道已删除 — 跟随模式保持当前距离",
36
+ };
@@ -0,0 +1,148 @@
1
+ // Chinese UI copy for hierarchy labels, pose studio and film-language tables.
2
+ export const ZH_LABELS = {
3
+ "+ New scene": "+ 新建场景",
4
+ "Select scene": "选择场景",
5
+ "Rename": "重命名",
6
+ "Duplicate": "复制",
7
+ "Click again to permanently delete this scene": "再次点击将永久删除此场景",
8
+ "Confirm delete": "确认删除",
9
+ "Show": "显示",
10
+ "Hide": "隐藏",
11
+ "Remove from group": "从组中移出",
12
+ "Frame": "适配取景",
13
+ "Group under new Empty": "归入新的空物体",
14
+ "Move out to Props": "移出到道具",
15
+ "IK ON": "IK 开",
16
+ "At least one scene is required": "至少需要一个场景",
17
+ "Outliner": "大纲视图",
18
+ "Search Outliner": "搜索大纲",
19
+ "No matches": "无匹配项",
20
+ "practical light": "实用灯光",
21
+ "node only": "仅节点",
22
+ "smoke, fire, rain…": "烟、火、雨…",
23
+ "words, signs, logos": "文字、标牌、标志",
24
+ "Add object": "添加物体",
25
+ "PATH START": "路径起点",
26
+ "PATH END": "路径终点",
27
+ "PLAYER STILL": "播放器静止",
28
+ "START": "起点",
29
+ "CAM": "摄影机",
30
+ "LIGHT": "灯光",
31
+ "T-pose": "T 姿势",
32
+ "Relaxed": "放松",
33
+ "Contrapposto": "对立式站姿",
34
+ "Walking": "行走",
35
+ "Seated": "坐姿",
36
+ "Arms crossed": "抱臂",
37
+ "Pointing": "指向",
38
+ "Hands on hips": "叉腰",
39
+ "Looking back": "回望",
40
+ "Hands up": "举手",
41
+ "Wave": "挥手",
42
+ "Thinking": "思考",
43
+ "Crouch": "蹲伏",
44
+ "Kneel": "跪姿",
45
+ "Run": "奔跑",
46
+ "Jump": "跳跃",
47
+ "Basic": "基础",
48
+ "Gesture": "手势",
49
+ "Action": "动作",
50
+ "Floor": "地面",
51
+ "My poses": "我的姿势",
52
+ "Close pose studio": "关闭姿势工作室",
53
+ "Pose mode is on — applying keys the pose as a full-body correction at the current frame; the motion stays.": "姿势模式已开启 — 应用后会在当前帧以全身修正关键帧记录该姿势,动作保持不变。",
54
+ "A sample motion is moving the character — applying a pose clears it and returns to the blocking pose.": "当前示例动作正在驱动角色 — 应用姿势会清除它并回到摆位姿势。",
55
+ "Key pose as IK correction": "将姿势记录为 IK 修正关键帧",
56
+ "Clear motion and apply pose": "清除动作并应用姿势",
57
+ "Apply pose": "应用姿势",
58
+ "Reset pose": "重置姿势",
59
+ "Pose categories": "姿势分类",
60
+ "Your pose library is empty. Pose the character and save it — it stays here for every project.": "你的姿势库是空的。给角色摆好姿势并保存 — 之后所有项目都能使用。",
61
+ "Save the character's current pose": "保存角色当前姿势",
62
+ "Save pose": "保存姿势",
63
+ "Shot settings": "镜头设置",
64
+ "Torso": "躯干",
65
+ "Root / Hips": "根 / 髋部",
66
+ "Spine": "脊柱",
67
+ "Chest": "胸部",
68
+ "Neck": "颈部",
69
+ "Head": "头部",
70
+ "Left Arm": "左臂",
71
+ "Left Shoulder": "左肩",
72
+ "Left Elbow": "左肘",
73
+ "Left Hand": "左手",
74
+ "Right Arm": "右臂",
75
+ "Right Shoulder": "右肩",
76
+ "Right Elbow": "右肘",
77
+ "Right Hand": "右手",
78
+ "Left Leg": "左腿",
79
+ "Left Knee": "左膝",
80
+ "Left Foot": "左脚",
81
+ "Right Leg": "右腿",
82
+ "Right Knee": "右膝",
83
+ "Right Foot": "右脚",
84
+ "Static / locked-off": "固定机位",
85
+ "Zoom in": "推近(变焦)",
86
+ "Zoom out": "拉远(变焦)",
87
+ "Push-in (dolly in)": "推入(前移推轨)",
88
+ "Pull-out (dolly out)": "拉出(后移推轨)",
89
+ "Pan left": "左摇",
90
+ "Pan right": "右摇",
91
+ "Tilt up": "上仰",
92
+ "Tilt down": "下俯",
93
+ "Tracking / follow": "跟拍 / 跟随",
94
+ "Orbit / arc": "环绕 / 弧线",
95
+ "Crane up": "摇臂上升",
96
+ "Crane down": "摇臂下降",
97
+ "Handheld": "手持",
98
+ "Crash zoom in": "急推变焦",
99
+ "Dolly-zoom (vertigo)": "推轨变焦(眩晕效果)",
100
+ "Whip pan": "快速甩摇",
101
+ "Aerial / drone": "航拍 / 无人机",
102
+ "extreme close-up": "大特写",
103
+ "close-up": "特写",
104
+ "medium close-up": "近景",
105
+ "medium shot": "中景",
106
+ "medium-wide shot": "中远景",
107
+ "wide shot": "远景",
108
+ "extreme wide shot": "大远景",
109
+ "overhead": "俯拍",
110
+ "high angle": "高角度",
111
+ "eye level": "平视",
112
+ "chest level": "胸高",
113
+ "hip level": "胯高",
114
+ "knee level": "膝高",
115
+ "ground level": "地面高度",
116
+ "cube": "立方体",
117
+ "sphere": "球体",
118
+ "capsule": "胶囊",
119
+ "cylinder": "圆柱",
120
+ "cone": "圆锥",
121
+ "plane": "平面",
122
+ "cutout": "抠图",
123
+ "Cube": "立方体",
124
+ "Sphere": "球体",
125
+ "Capsule": "胶囊",
126
+ "Cylinder": "圆柱",
127
+ "Cone": "圆锥",
128
+ "Plane": "平面",
129
+ "front": "正面",
130
+ "back": "背面",
131
+ "left profile": "左侧面",
132
+ "right profile": "右侧面",
133
+ "front ¾ L": "正面 ¾ 左",
134
+ "front ¾ R": "正面 ¾ 右",
135
+ "rear ¾ L": "背面 ¾ 左",
136
+ "rear ¾ R": "背面 ¾ 右",
137
+ "Scene structure": "场景结构",
138
+ "Scene hierarchy": "场景层级",
139
+ "Primitives": "基础形状",
140
+ "Lights": "灯光",
141
+ "Effects": "效果",
142
+ "Point light": "点光源",
143
+ "Spot light": "聚光灯",
144
+ "Effect": "效果",
145
+ "Cast": "角色",
146
+ "Frame selection": "将所选内容适配到画面",
147
+ "Drop to floor": "放到地面",
148
+ };
@@ -0,0 +1,225 @@
1
+ // Chinese UI copy for the inspector panels.
2
+ export const ZH_PANELS = {
3
+ "camera to subject": "摄影机到角色",
4
+ "nearest prime on the cropped filmback": "裁切画幅上最接近的定焦镜头",
5
+ "Lens": "镜头",
6
+ "angle relative to the subject's eyes": "相对角色眼睛的角度",
7
+ "Angle": "角度",
8
+ "Move keys": "运动关键帧",
9
+ "derived from the keyframings, not chosen from a list": "由关键帧推导,而非从列表中选择",
10
+ "Click a Shot block's lower strip to key the current framing at that frame.": "点击镜头块下方的空条,在该帧记录当前取景。",
11
+ "Follow cam": "跟随摄影机",
12
+ "Select a Shot block below to edit its camera.": "在下方选择一个镜头块以编辑其摄影机。",
13
+ "Target model": "目标模型",
14
+ "The timeline flags this shot when the cut runs past the model's clip length or leaves its delivery ratios. Nothing is re-timed or re-cropped.": "当片段超出模型的时长上限或偏离交付画幅时,时间线会标记该镜头,但不会自动重定时或重新裁切。",
15
+ "Cut for": "适配对象",
16
+ "Target video model": "目标视频模型",
17
+ "None": "无",
18
+ "Placement": "摆放",
19
+ "Transform": "变换",
20
+ "Stage position — does not change the take": "舞台位置 — 不改变动作片段",
21
+ "Position": "位置",
22
+ "Rotation": "旋转",
23
+ "Use stage placement": "使用舞台摆放",
24
+ "Edit the selected subject's placement, turn and size. Drag the Transform tool in the viewport for direct manipulation.": "编辑所选角色的位置、朝向和大小。也可在视口中拖动变换工具直接操作。",
25
+ "Scale": "缩放",
26
+ "Environment": "环境",
27
+ "I have an environment sheet": "我有环境设定图",
28
+ "Environment description": "环境描述",
29
+ "Look / style": "外观 / 风格",
30
+ "Environment reference": "环境参考图",
31
+ "A picture of this location. It travels with every framing capture so a render takes its materials, palette and lighting from the real place.": "该地点的照片。每次取景捕捉都会带上它,使渲染从真实地点获取材质、色调和光照。",
32
+ "Environment reference set": "已设置环境参考图",
33
+ "None (the look's sky)": "无(使用外观自带天空)",
34
+ "Loading HDR…": "正在加载 HDR…",
35
+ "Load HDR…": "加载 HDR…",
36
+ "Intensity": "强度",
37
+ "Show as background": "显示为背景",
38
+ "Remove HDR": "移除 HDR",
39
+ "Light": "灯光",
40
+ "Drag the sun in the scene to move the light. Shadows and warmth follow it.": "在场景中拖动太阳以移动灯光。阴影和色温会随之变化。",
41
+ "Look": "外观",
42
+ "Lighting look": "灯光外观",
43
+ "Brightness": "亮度",
44
+ "Warm ↔ Cool": "暖 ↔ 冷",
45
+ "Exposure": "曝光",
46
+ "Sky light": "天光",
47
+ "Ambient occlusion": "环境光遮蔽",
48
+ "Sky": "天空",
49
+ "Sky colour": "天空颜色",
50
+ "light position": "灯光位置",
51
+ "Reset light": "重置灯光",
52
+ "Text": "文字",
53
+ "Words": "文字",
54
+ "Letter height": "字高",
55
+ "Depth (0 = flat)": "厚度(0 = 平面)",
56
+ "Align": "对齐",
57
+ "Left": "左",
58
+ "Centre": "居中",
59
+ "Right": "右",
60
+ "Type": "类型",
61
+ "Point": "点光源",
62
+ "Spot": "聚光灯",
63
+ "Colour": "颜色",
64
+ "Intensity (cd)": "强度(cd)",
65
+ "Range (0 = none)": "范围(0 = 无)",
66
+ "Cone angle": "光锥角度",
67
+ "Edge softness": "边缘柔和度",
68
+ "Flicker": "闪烁",
69
+ "Shadow (off: only 2 lights cast)": "阴影(关闭:仅 2 盏灯投射)",
70
+ "Shadow": "阴影",
71
+ "Glow": "自发光",
72
+ "Glows (lit by itself)": "自发光(自身照明)",
73
+ "Halo (× size)": "光晕(× 大小)",
74
+ "Type a value and press Enter, or drag a number sideways to scrub (Shift for fine).": "输入数值后按 Enter,或左右拖动数值调节(按住 Shift 微调)。",
75
+ "Name": "名称",
76
+ "Attached to": "附着于",
77
+ "Put it back in the set, where it is now": "放回布景中它当前所在的位置",
78
+ "Detach": "分离",
79
+ "Parent": "父级",
80
+ "(none)": "(无)",
81
+ "Height (m)": "高度(m)",
82
+ "Clay": "黏土",
83
+ "Card height (m)": "卡片高度(m)",
84
+ "Card width (m)": "卡片宽度(m)",
85
+ "This card's background is removed. You are editing the original photograph — apply again to change what goes.": "此卡片的背景已移除。你正在编辑原始照片 — 再次应用可更改被移除的范围。",
86
+ "Background editor — drag over the background to cut it out": "背景编辑器 — 在背景上拖动即可抠除",
87
+ "Drag over the background — the cut grows out from wherever the brush touches.": "在背景上拖动 — 从画笔触及处向外扩展抠除范围。",
88
+ "Cut out": "抠出",
89
+ "Bring back": "恢复",
90
+ "Redo": "重做",
91
+ "Clear the selection": "清除选择",
92
+ "Tolerance": "容差",
93
+ "Brush": "画笔",
94
+ "Brush size": "画笔大小",
95
+ "Edge shrink": "边缘收缩",
96
+ "Edge feather": "边缘羽化",
97
+ "Tolerance is how far a drag spreads: low keeps to one flat colour, high walks across a shaded wall. It applies to the next drag and to Auto-detect, not to what is already purple.": "容差决定拖动扩散的范围:较低时只保留单一平色,较高时会跨越明暗渐变的墙面。它作用于下一次拖动和自动识别,不会改变已经标为紫色的区域。",
98
+ "Auto-detect background": "自动识别背景",
99
+ "Removing…": "正在移除…",
100
+ "Nothing is marked yet": "尚未标记任何区域",
101
+ "Cut out grows the selection from wherever you drag; Bring back is the same growth fenced to what is already selected, so one drag returns a wrongly-cut region whole. Applying removes exactly what is purple and trims the empty margin — the card keeps the original photograph and this selection, so you can come back and change your mind.": "抠出会从拖动处扩展选区;恢复则把同样的扩展限制在已选区域内,因此一次拖动就能整块找回误抠区域。应用时只移除紫色部分并裁掉空白边距 — 卡片会保留原始照片和此次选区,随时可以回来修改。",
102
+ "Object colour": "物体颜色",
103
+ "auto ": "自动 ",
104
+ "Custom colour": "自定义颜色",
105
+ "Colour hex": "颜色 hex",
106
+ "The shot renderer is not ready yet.": "镜头渲染器尚未就绪。",
107
+ "Image from pose": "从姿势生成图像",
108
+ "Frame source": "帧来源",
109
+ "Current view": "当前视图",
110
+ "This frame is sent": "使用此帧生成",
111
+ "Frame the viewport, then capture": "调整视口取景后捕捉",
112
+ "The shot camera's view": "镜头摄影机视图",
113
+ "Recapture": "重新捕捉",
114
+ "Capture": "捕捉",
115
+ "The frame sent to the image model": "发送给图像模型的帧",
116
+ "Not captured yet — Generate captures this view.": "尚未捕捉 — 点击生成会捕捉当前视图。",
117
+ "References": "参考图",
118
+ "Remove reference": "移除参考图",
119
+ "Add a reference picture (or drop one here)": "添加参考图(也可拖放到此处)",
120
+ "Describe the image — e.g. a knight in silver armour, dusk light, cinematic": "描述图像 — 例如:银甲骑士、黄昏光线、电影感",
121
+ "Generate image": "生成图像",
122
+ "View larger": "放大查看",
123
+ "Download": "下载",
124
+ "Use as reference": "用作参考",
125
+ "Generated image": "生成的图像",
126
+ "Close": "关闭",
127
+ "Older": "更早",
128
+ "Newer": "更新",
129
+ "Cleared the current motion and applied the pose": "已清除当前动作并应用姿势",
130
+ "Pose applied": "姿势已应用",
131
+ "Save the pose the character is in right now — with a motion loaded, that is the current frame plus IK corrections": "保存角色当前的姿势 — 若已加载动作,则为当前帧加上 IK 修正后的姿势",
132
+ "Save current pose": "保存当前姿势",
133
+ "Identity image": "角色定妆图",
134
+ "A character sheet or photo of this person. It travels with every framing capture so a render keeps the same face, hair and wardrobe.": "此角色的设定图或照片。每次取景捕捉都会带上它,使渲染保持相同的面容、发型和服装。",
135
+ "Identity reference": "角色定妆参考",
136
+ "Identity image set": "已设置角色定妆图",
137
+ "New Project": "新建项目",
138
+ "Open Project…": "打开项目…",
139
+ "Save Project": "保存项目",
140
+ "Save Project As…": "项目另存为…",
141
+ "Choose Project": "选择项目",
142
+ "Untitled Project": "未命名项目",
143
+ "Everything you add to the set lives here. Pick one to edit it, or click it in the shot view. Drop a picture anywhere here — or on the shot view — to stand it up as a cutout. You can also drop a .glb, .obj or .fbx to import a 3D object.": "添加到布景的所有道具都在这里。选中一个即可编辑,也可在镜头视图中点击。把图片拖到此处或镜头视图中,即可立起为抠图卡片。也可以拖入 .glb、.obj 或 .fbx 文件导入 3D 物体。",
144
+ "A photo of the real thing, standing in the set as a card": "以卡片形式立在布景中的实物照片",
145
+ "Import image as cutout": "将图片导入为抠图",
146
+ "A GLB, OBJ or FBX model standing in the set": "立在布景中的 GLB、OBJ 或 FBX 模型",
147
+ "Import 3D object": "导入 3D 物体",
148
+ "Stand": "站立",
149
+ "Sit": "坐下",
150
+ "Lie": "躺下",
151
+ "Posture": "姿态",
152
+ "Clear": "清除",
153
+ "Choose a reference picture": "选择参考图",
154
+ "Replace": "替换",
155
+ "Choose image": "选择图片",
156
+ "Foot lock": "脚部锁定",
157
+ "On": "开",
158
+ "Off": "关闭",
159
+ "Ready": "就绪",
160
+ "Unavailable": "不可用",
161
+ "Influence": "影响",
162
+ "All": "全部",
163
+ "Object opacity": "物体不透明度",
164
+ "Scene object opacity while posing": "摆姿势时场景物体的不透明度",
165
+ "Select a body group to pose it in the viewport.": "选择一个身体部位,在视口中摆姿势。",
166
+ "Active tool": "当前工具",
167
+ "IK": "IK",
168
+ "Pin": "固定",
169
+ "IK preview": "IK 预览",
170
+ "The drag is previewed. Apply it to the selected motion block or cancel it.": "正在预览拖动结果。将其应用到所选动作片段,或取消。",
171
+ "Apply range": "应用到区间",
172
+ "Grab a hand, foot, elbow or knee handle in the viewport.": "在视口中抓住手、脚、肘或膝的控制点。",
173
+ "Rig": "骨骼",
174
+ "Character rig": "角色骨骼",
175
+ "Measure": "测量",
176
+ "Score": "评分",
177
+ "Refine": "精修",
178
+ "taking longer than usual": "比平时耗时更长",
179
+ "Candidate fixes, best first": "候选修正(优先显示最佳)",
180
+ "refused": "已拒绝",
181
+ "Sculpt activity": "雕塑活动",
182
+ "locked while running": "运行期间锁定",
183
+ "Sculpt model": "雕塑模型",
184
+ "add key": "需要密钥",
185
+ "No model available": "没有可用模型",
186
+ "Loading models…": "正在加载模型…",
187
+ "Effort": "推理强度",
188
+ "Blueprint (model sheet)": "蓝图(设定图)",
189
+ "front · side · back · top": "正面 · 侧面 · 背面 · 顶面",
190
+ "Pose on the sheet": "设定图姿势",
191
+ "Pose: as in the reference": "姿势:与参考一致",
192
+ "Pose: neutral rest pose": "姿势:中性静止姿势",
193
+ "Notes (optional): what it is, what to keep or fix": "备注(可选):它是什么,需要保留或修正什么",
194
+ "Blueprint notes": "蓝图备注",
195
+ "Drawing the four-view sheet": "正在绘制四视图设定图",
196
+ "usually ~40–90s": "通常约 40–90 秒",
197
+ "Generate again": "重新生成",
198
+ "Generate blueprint": "生成蓝图",
199
+ "Open full size": "原尺寸打开",
200
+ "Generated four-view model sheet": "已生成的四视图设定图",
201
+ "Request sent to the image model": "发送给图像模型的请求",
202
+ "Sculpt from image": "从图像雕塑",
203
+ "Reference": "参考图",
204
+ "Replace reference image": "替换参考图",
205
+ "Drop or paste a reference image, or press Enter to choose a file": "拖放或粘贴参考图,或按 Enter 选择文件",
206
+ "Drop or paste a reference image": "拖放或粘贴参考图",
207
+ "Choose file": "选择文件",
208
+ "Reference image file": "参考图文件",
209
+ "Start (fast draft)": "开始(快速草图)",
210
+ "Sculpt stages": "雕塑阶段",
211
+ "Final IoU": "最终 IoU",
212
+ "Silhouette match (IoU)": "轮廓匹配度(IoU)",
213
+ "Cancelled.": "已取消。",
214
+ "The sculpt run failed.": "雕塑运行失败。",
215
+ "Hide overlay sheet": "隐藏叠加设定图",
216
+ "Show overlay sheet": "显示叠加设定图",
217
+ "Reference beside the sculpt overlay": "参考图与雕塑叠加对比",
218
+ "Place in scene": "放入场景",
219
+ "Fix details by chatting with the Agent (⌘B) while the sculpt is selected.": "选中雕塑时,通过与智能体对话(⌘B)修正细节。",
220
+ "Character color": "角色颜色",
221
+ "Remove subject": "移除角色",
222
+ "Subjects": "角色",
223
+ "Subject": "角色",
224
+ "Add second subject": "添加第二个角色",
225
+ };
@@ -0,0 +1,230 @@
1
+ // Chinese UI copy for the studio shell: menus, toolbar, dock, settings.
2
+ export const ZH_SHELL = {
3
+ "the stylized image is missing": "找不到风格化图像",
4
+ "the shot renderer is not ready": "镜头渲染器尚未就绪",
5
+ "Panel sent to Workflow": "面板已发送到工作流",
6
+ "the shot renderer is not ready yet": "镜头渲染器尚未就绪",
7
+ "the panel is no longer on the board": "该面板已不在看板上",
8
+ "Board": "看板",
9
+ "Add a panel after the last one, framed by the current camera": "以当前摄影机取景,在最后一个面板后添加面板",
10
+ "+ Panel": "+ 面板",
11
+ "No panels yet. Each panel is one held picture of the scene through the shot camera.": "还没有面板。每个面板都是镜头摄影机下场景的一帧定格画面。",
12
+ "Add the first panel, framed by the current camera": "以当前摄影机取景添加第一个面板",
13
+ "Duplicate this panel after itself": "在此面板后复制一个",
14
+ "Delete this panel (Delete)": "删除此面板 (Delete)",
15
+ "Generate a new stylized picture from this panel's frame and caption (replaces the current one)": "根据此面板的帧和说明生成新的风格化图像(替换当前图像)",
16
+ "Generate a stylized picture from this panel's frame and caption": "根据此面板的帧和说明生成风格化图像",
17
+ "Stylizing...": "正在风格化...",
18
+ "Re-stylize": "重新风格化",
19
+ "Stylize": "风格化",
20
+ "Remove the stylized picture; the greybox stays": "移除风格化图像,保留灰模",
21
+ "Remove": "移除",
22
+ "Send this panel to a Workflow video node": "将此面板发送到工作流视频节点",
23
+ "Send to Workflow": "发送到工作流",
24
+ "Stylized image": "风格化图像",
25
+ "Greybox": "灰模",
26
+ "Export — another export is running": "导出 — 另一个导出正在进行",
27
+ "Export this panel as a pack (zip)": "将此面板导出为资源包(zip)",
28
+ "Action or dialogue": "动作或对白",
29
+ "Hold": "停留",
30
+ "Assets": "资源",
31
+ "Resize bottom dock": "调整底部停靠栏大小",
32
+ "Dock": "停靠栏",
33
+ "Body contact off — floor constraints are disabled": "身体接触关闭 — 地面约束已禁用",
34
+ "Body contact on — body markers stay above the floor": "身体接触开启 — 身体标记保持在地面之上",
35
+ "Foot snap off — the feet follow the body": "脚部吸附关闭 — 双脚跟随身体移动",
36
+ "Foot snap on — the feet stay planted while the body moves": "脚部吸附开启 — 身体移动时双脚保持踩地",
37
+ "Follow rides the subject's motion — without a loaded motion the camera composes a static frame": "跟随会随角色动作移动 — 未加载动作时摄影机保持静态构图",
38
+ "Draw this Camera Block's rail in the Top-View": "在顶视图中绘制此摄影机块的轨道",
39
+ "Shot Camera": "镜头摄影机",
40
+ "Viewing in the main view": "正在主视图中查看",
41
+ "Shot aspect ratio": "镜头画幅比",
42
+ "No shot yet": "还没有镜头",
43
+ "Back to the editor view (Esc)": "返回编辑器视图 (Esc)",
44
+ "Exit": "退出",
45
+ "Look through the shot camera (Esc returns)": "通过镜头摄影机观察 (Esc 返回)",
46
+ "Cycle composition guides": "切换构图参考线",
47
+ " · click to cycle": " · 点击切换",
48
+ "Details": "详情",
49
+ "Object actions": "物体操作",
50
+ "Select the camera, a character, the light, the environment or a prop in the Outliner, and its settings appear here.": "在大纲视图中选择摄影机、角色、灯光、环境或道具,其设置会显示在这里。",
51
+ "Delete or Backspace to remove": "按 Delete 或 Backspace 删除",
52
+ "Open Agent (Cmd/Ctrl+B)": "打开智能体 (Cmd/Ctrl+B)",
53
+ "Agent": "智能体",
54
+ "Ask the agent…": "向智能体提问…",
55
+ "Resize Details and Agent": "调整详情与智能体面板大小",
56
+ "Collapse Agent": "折叠智能体",
57
+ "Collapse Agent (Cmd/Ctrl+B)": "折叠智能体 (Cmd/Ctrl+B)",
58
+ "Untitled Scene": "未命名场景",
59
+ "Couldn't find the selected pose — pick again": "找不到所选姿势 — 请重新选择",
60
+ "Back to the default pose": "已返回默认姿势",
61
+ "When set, exports are written here instead of your browser's Downloads folder.": "设置后,导出文件会写入此文件夹,而不是浏览器的下载文件夹。",
62
+ "Folder access was denied. Choose another folder or use Downloads.": "文件夹访问被拒绝。请选择其他文件夹或使用下载文件夹。",
63
+ "Could not choose the export folder.": "无法选择导出文件夹。",
64
+ "Could not clear the export folder.": "无法清除导出文件夹。",
65
+ "Browser downloads": "浏览器下载",
66
+ "This browser cannot choose an export folder; exports continue to Downloads.": "此浏览器无法选择导出文件夹;导出将继续保存到下载文件夹。",
67
+ "Export folder": "导出文件夹",
68
+ "Export folder actions": "导出文件夹操作",
69
+ "Allow": "允许",
70
+ "Choosing…": "选择中…",
71
+ "Choose folder…": "选择文件夹…",
72
+ "Use Downloads": "使用下载文件夹",
73
+ "Existing files are never overwritten; numbered names are used.": "同名文件永远不会被覆盖,而是使用带编号的名称。",
74
+ "Key frames": "关键帧",
75
+ "Ghosts (onion skin)": "残影(洋葱皮)",
76
+ "Ghosts": "残影",
77
+ "before the playhead": "播放头之前",
78
+ "after the playhead": "播放头之后",
79
+ "Translucent poses of the selected character's take before and after the playhead; never in exports": "半透明显示所选角色动作片段中播放头前后的姿势;不会出现在导出中",
80
+ "Each side": "每侧数量",
81
+ "Step": "间隔",
82
+ "While the agent works, its latest motion draft plays on the character as a teal figure; never in exports": "智能体工作时,其最新动作草稿会以青色形象在角色上播放;不会出现在导出中",
83
+ "Agent draft": "智能体草稿",
84
+ "Library": "资源库",
85
+ "File": "文件",
86
+ "Edit": "编辑",
87
+ "Window": "窗口",
88
+ "Help": "帮助",
89
+ "Add a shot first — a pack describes one cut": "请先添加镜头 — 资源包描述一个剪辑",
90
+ "Contact sheet (PNG)": "缩略图总览 (PNG)",
91
+ "Every panel with its caption on one sheet": "所有面板及其说明合成一张图",
92
+ "Panel pack (zip)": "面板包 (zip)",
93
+ "The selected panel's frame, stylized image, camera and prompt as one zip": "将所选面板的帧、风格化图像、摄影机和提示词打包为一个 zip",
94
+ "All panels (zip)": "所有面板 (zip)",
95
+ "One zip with a folder per panel": "一个 zip,每个面板一个文件夹",
96
+ "Animatic (mp4)": "动态分镜 (mp4)",
97
+ "Every panel held for its hold, as one MP4": "按各自停留时长衔接所有面板,合成一个 MP4",
98
+ "Cut list (OTIO)": "剪辑表 (OTIO)",
99
+ "Download the OTIO cut list; each panel is a clip as long as its hold": "下载 OTIO 剪辑表;每个面板是一个与停留时长等长的片段",
100
+ "Depth + normal (PNG)": "深度 + 法线 (PNG)",
101
+ "Depth and normal conditioning plates of the current framing": "当前取景的深度和法线条件控制图",
102
+ "Open…": "打开…",
103
+ "Save": "保存",
104
+ "Save As…": "另存为…",
105
+ "Export as Animation project…": "导出为动画项目…",
106
+ "Exports: keyframe pack, video, passes, storyboard, cut list": "导出:关键帧包、视频、通道、故事板、剪辑表",
107
+ "First/last frames, clip, camera and prompt as one zip — hold Shift for every shot": "首/末帧、片段、摄影机和提示词打包为一个 zip — 按住 Shift 导出所有镜头",
108
+ "Keyframe pack (zip)": "关键帧包 (zip)",
109
+ "Render the whole timeline to one MP4 — every shot back to back, camera and motion, no editor chrome": "将整条时间线渲染为一个 MP4 — 所有镜头依次衔接,仅含摄影机和动作,无编辑器界面",
110
+ "Video — whole timeline (mp4)": "视频 — 整条时间线 (mp4)",
111
+ "Render one shot to its own MP4 — the shot you opened the menu from, or the one under the playhead": "将单个镜头渲染为 MP4 — 从菜单打开的镜头,或播放头下的镜头",
112
+ "Video — this shot only (mp4)": "视频 — 仅此镜头 (mp4)",
113
+ "Depth + normal passes": "深度 + 法线通道",
114
+ "Depth pass of the whole shot as an mp4 for video-model conditioning": "将整个镜头的深度通道导出为 mp4,用于视频模型条件控制",
115
+ "Depth (mp4)": "深度 (mp4)",
116
+ "Contact sheet of every shot with its prompt": "包含所有镜头及其提示词的缩略图总览",
117
+ "Add a shot first — a storyboard is one row per shot": "请先添加镜头 — 故事板每个镜头一行",
118
+ "Storyboard (PNG)": "故事板 (PNG)",
119
+ "Download OTIO cut list": "下载 OTIO 剪辑表",
120
+ "OTIO cut list": "OTIO 剪辑表",
121
+ "Add a shot to export OTIO": "添加镜头后才能导出 OTIO",
122
+ "Add a shot to export video or OTIO": "添加镜头后才能导出视频或 OTIO",
123
+ "Preferences…": "偏好设置…",
124
+ "Open Workflow": "打开工作流",
125
+ "Workflow": "工作流",
126
+ "Keyboard shortcuts": "键盘快捷键",
127
+ "About Cozy Clay": "关于 Cozy Clay",
128
+ "Menu bar": "菜单栏",
129
+ "Stage / Pose / Camera / Motion mode": "舞台 / 姿势 / 摄影机 / 动作模式",
130
+ "Pick the tool of the current mode": "选择当前模式的工具",
131
+ "Frame the selection": "将所选内容适配到画面",
132
+ "Play / pause": "播放 / 暂停",
133
+ "Step one frame": "移动一帧",
134
+ "Export keyframe pack": "导出关键帧包",
135
+ "Duplicate object": "复制物体",
136
+ "Delete the selection": "删除所选内容",
137
+ "Previs studio: stage, pose, camera and motion.": "预演工作室:舞台、姿势、摄影机和动作。",
138
+ "Version": "版本",
139
+ "Hierarchy": "层级",
140
+ "General": "常规",
141
+ "Appearance": "外观",
142
+ "Viewport": "视口",
143
+ "Hotkeys": "快捷键",
144
+ "Preferences navigation": "偏好设置导航",
145
+ "Preferences": "偏好设置",
146
+ "Close preferences": "关闭偏好设置",
147
+ "Search preferences": "搜索偏好设置",
148
+ "Preference sections": "偏好设置分区",
149
+ "Timeline frame rate": "时间线帧率",
150
+ "Finalizing MP4; this stage cannot be interrupted.": "正在完成 MP4;此阶段无法中断。",
151
+ "Retry": "重试",
152
+ "just now": "刚刚",
153
+ "Resize hierarchy panel": "调整层级面板大小",
154
+ "Resize hierarchy and inspector panel": "调整层级和属性面板大小",
155
+ "Resize frame monitor": "调整帧监视器大小",
156
+ "Resize shot preview": "调整镜头预览大小",
157
+ "No MCP client is attached to this studio": "此工作室未连接任何 MCP 客户端",
158
+ "MCP connected": "MCP 已连接",
159
+ "MCP offline": "MCP 离线",
160
+ "Stage": "舞台",
161
+ "Sculpt": "雕塑",
162
+ "Move": "移动",
163
+ "Rotate": "旋转",
164
+ "Pose fix (IK parts)": "姿势修正(IK 部位)",
165
+ "Pin (range pin)": "固定(区间固定)",
166
+ "Pinning needs a motion take": "固定需要已加载的动作片段",
167
+ "Move camera": "移动摄影机",
168
+ "Rotate camera": "旋转摄影机",
169
+ "Front view": "前视图",
170
+ "Side view": "侧视图",
171
+ "Back view": "后视图",
172
+ "Lens — pick a prime or set the field of view": "镜头 — 选择定焦或设置视场角",
173
+ "Output aspect ratio": "输出画幅比",
174
+ "Add an object, a character or a camera": "添加物体、角色或摄影机",
175
+ "Add": "添加",
176
+ "Scene": "场景",
177
+ "Tools": "工具",
178
+ "Mode and tools": "模式与工具",
179
+ "Views and shot cameras": "视图与镜头摄影机",
180
+ "Perspective": "透视",
181
+ "View": "视图",
182
+ "Show the Top-View inset": "显示顶视图小窗",
183
+ "Top": "顶视",
184
+ "Shot cameras": "镜头摄影机",
185
+ "Show this shot's camera in the preview": "在预览中显示此镜头的摄影机",
186
+ "Shot framing": "镜头取景",
187
+ "Shot preset": "镜头预设",
188
+ "Cam": "摄影机",
189
+ "Camera preset": "摄影机预设",
190
+ "Free": "自由",
191
+ "Recenter on subject": "重新对准角色",
192
+ "Shading": "着色",
193
+ "Clay Lit": "黏土受光",
194
+ "Viewport display toggles": "视口显示开关",
195
+ "Viewport display": "视口显示",
196
+ "Blender-style viewport — dark void with a reference grid instead of the deck": "Blender 风格视口 — 用深色虚空和参考网格替代台面",
197
+ "Reference grid": "参考网格",
198
+ "Distinct display colors per object — captures include them while on": "每个物体使用区分色 — 开启时捕捉也会包含",
199
+ "Auto Color": "自动配色",
200
+ "Composition guides": "构图参考线",
201
+ "Body part colours": "身体部位颜色",
202
+ "Shaded": "明暗",
203
+ "Flat": "平面",
204
+ "Panels": "面板",
205
+ "Show the agent chat column (Cmd/Ctrl+B)": "显示智能体对话栏 (Cmd/Ctrl+B)",
206
+ "Agent panel": "智能体面板",
207
+ "Fly speed — scroll while right-dragging to change it": "飞行速度 — 右键拖动时滚动调节",
208
+ "Empty": "空物体",
209
+ "Mesh": "网格",
210
+ "Node": "节点",
211
+ "Prop": "道具",
212
+ "Bone": "骨骼",
213
+ "Selection": "所选内容",
214
+ "Focal length": "焦距",
215
+ "No shot camera": "无镜头摄影机",
216
+ "Focal length — drag to change, click an arrow for the next lens": "焦距 — 拖动改变,点击箭头切换下一个镜头",
217
+ "Dark": "深色",
218
+ "Theme": "主题",
219
+ "Display": "显示",
220
+ "Language": "语言",
221
+ "Choose the labels used throughout the editor.": "选择编辑器界面使用的语言。",
222
+ "Dark keeps the studio dim around the stage; Light uses bright glass panels.": "深色主题让舞台周围保持昏暗;浅色主题使用明亮的玻璃面板。",
223
+ "Editor": "编辑器",
224
+ "Auto colour": "自动配色",
225
+ "Give scene objects stable display colours.": "为场景物体使用稳定的显示颜色。",
226
+ "Anonymous analytics": "匿名统计",
227
+ "Help improve CozyClay with anonymous product events.": "通过匿名产品事件帮助改进 CozyClay。",
228
+ "Use a dark reference grid instead of the clay deck.": "使用深色参考网格替代黏土台面。",
229
+ "Shortcuts are read-only here. They stay active whenever focus is outside a text field.": "此处快捷键为只读。只要焦点不在文本输入框内,快捷键始终生效。",
230
+ };