auto-save 2026-05-18 23:55 (+5, ~9)
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import type { AssetTemplate, CharacterSpec, PackKind } from './types';
|
||||
|
||||
export const FILENAME_SCHEMA = '{sessionId}_{characterSlug}_{pack}_{view}_{version}.{ext}';
|
||||
export const TEMPLATE_FREEZE_VERSION = 'toy-pack-templates-v01';
|
||||
|
||||
export const PACK_LABELS: Record<PackKind, string> = {
|
||||
patent: '专利包',
|
||||
@@ -8,6 +9,43 @@ export const PACK_LABELS: Record<PackKind, string> = {
|
||||
marketing: '宣发包',
|
||||
};
|
||||
|
||||
export const PACK_ORDER: PackKind[] = ['patent', 'production', 'marketing'];
|
||||
|
||||
export const VIDEO_TEMPLATES = [
|
||||
{
|
||||
id: 'video_turntable',
|
||||
title: '360 度旋转展示',
|
||||
description: '用于电商和内部评审,展示整体体积、正背侧轮廓。',
|
||||
duration: 6,
|
||||
ratio: '16:9',
|
||||
promptTemplate: '生成 360 度旋转展示视频:{character}. 白底或浅灰棚拍,镜头稳定,玩具缓慢旋转,展示正面、侧面、背面、顶部细节,真实毛绒质感。',
|
||||
},
|
||||
{
|
||||
id: 'video_unboxing',
|
||||
title: '开箱短片',
|
||||
description: '用于新品宣发,展示包装到玩具出现的过程。',
|
||||
duration: 8,
|
||||
ratio: '9:16',
|
||||
promptTemplate: '生成玩具开箱短片:{character}. 竖版社媒风格,从礼盒打开到玩具出现,温暖光线,突出礼物感和治愈感。',
|
||||
},
|
||||
{
|
||||
id: 'video_touch_detail',
|
||||
title: '触感细节',
|
||||
description: '展示揉捏、毛绒、刺绣和配件细节。',
|
||||
duration: 6,
|
||||
ratio: '9:16',
|
||||
promptTemplate: '生成玩具触感细节短片:{character}. 近景镜头,展示毛绒柔软、刺绣五官、配件细节和可抱触感,节奏轻柔。',
|
||||
},
|
||||
{
|
||||
id: 'video_story_intro',
|
||||
title: '角色故事介绍',
|
||||
description: '用于 IP 设定和社媒发布。',
|
||||
duration: 8,
|
||||
ratio: '16:9',
|
||||
promptTemplate: '生成玩具角色故事介绍视频:{character}. 轻剧情镜头,展示角色登场、表情、配件和性格气质,适合新品发布。',
|
||||
},
|
||||
] as const;
|
||||
|
||||
export const CHARACTER_SPEC_FIELDS: Array<{ key: keyof CharacterSpec; label: string; hint: string }> = [
|
||||
{ key: 'name', label: '名称', hint: '玩具/IP 名称' },
|
||||
{ key: 'oneLiner', label: '一句话定位', hint: '面向谁、解决什么情绪或场景' },
|
||||
@@ -221,6 +259,30 @@ export const PRODUCTION_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成毛绒玩具生产右侧打样图:{character}. 右侧正交视角,白底,带中文尺寸标注,确认侧面厚度、配件位置和非对称细节。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_top_spec',
|
||||
kind: 'production',
|
||||
view: 'top_spec',
|
||||
title: '俯视打样图',
|
||||
description: '标注头顶结构、顶部配件和俯视轮廓。',
|
||||
required: true,
|
||||
aspectRatio: '1:1',
|
||||
filenamePart: 'top-spec',
|
||||
promptTemplate: '生成毛绒玩具生产俯视打样图:{character}. 从正上方观察,白底,带中文尺寸标注:头顶结构、耳朵/角/帽子位置、顶部配件、头部宽深比例。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_bottom_spec',
|
||||
kind: 'production',
|
||||
view: 'bottom_spec',
|
||||
title: '仰视打样图',
|
||||
description: '标注脚底、防滑布、底部标签和底部结构。',
|
||||
required: true,
|
||||
aspectRatio: '1:1',
|
||||
filenamePart: 'bottom-spec',
|
||||
promptTemplate: '生成毛绒玩具生产仰视打样图:{character}. 从正下方观察,白底,带中文标注:脚底、防滑布、底部标签、底盘结构、坐姿稳定接触面。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_dimension_overall',
|
||||
kind: 'production',
|
||||
@@ -233,6 +295,30 @@ export const PRODUCTION_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成毛绒玩具整体尺寸图:{character}. 白底,技术说明风格,标注总高、坐高、臂展、头身比、头宽、身体宽,单位 cm。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_dimension_parts',
|
||||
kind: 'production',
|
||||
view: 'dimension_parts',
|
||||
title: '部件尺寸图',
|
||||
description: '标注耳朵、角、尾巴、包、配件和四肢尺寸。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'dimension-parts',
|
||||
promptTemplate: '生成毛绒玩具部件尺寸图:{character}. 技术说明版式,拆出耳朵、角、尾巴、包、衣服/配件、四肢,标注长宽厚和数量,单位 cm,小部件可用 mm。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_scale_reference',
|
||||
kind: 'production',
|
||||
view: 'scale_reference',
|
||||
title: '比例参考图',
|
||||
description: '用手持或常见物辅助工厂理解尺寸。',
|
||||
required: false,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'scale-reference',
|
||||
promptTemplate: '生成玩具比例参考图:{character}. 手持或桌面常见物对比,只用于生产沟通,清楚表达 20cm/30cm/45cm 三档尺寸感,不加入营销海报元素。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_material_board',
|
||||
kind: 'production',
|
||||
@@ -257,6 +343,42 @@ export const PRODUCTION_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成毛绒玩具颜色板:{character}. 包含主色、辅色、强调色、五官色、衣服/配件色,给出 HEX 色值和建议 Pantone 占位,中文标注。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_embroidery_detail',
|
||||
kind: 'production',
|
||||
view: 'embroidery_detail',
|
||||
title: '刺绣印花细节',
|
||||
description: '放大眼睛、嘴、腮红、图案和 Logo 工艺。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'embroidery-detail',
|
||||
promptTemplate: '生成毛绒玩具刺绣/印花细节图:{character}. 放大眼睛、嘴巴、腮红、身体图案和标识,标注刺绣线色、印花边界、针距/线宽占位和工艺注意事项。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_seam_map',
|
||||
kind: 'production',
|
||||
view: 'seam_map',
|
||||
title: '缝线拼接图',
|
||||
description: '标注头身、耳朵、四肢和配件连接方式。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'seam-map',
|
||||
promptTemplate: '生成毛绒玩具缝线/拼接线图:{character}. 白底技术图风格,用虚线或彩色线标注头身连接、耳朵连接、四肢连接、配件固定点和开口返口位置,中文说明。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_filling_spec',
|
||||
kind: 'production',
|
||||
view: 'filling_spec',
|
||||
title: '填充说明图',
|
||||
description: '说明软硬度、重心、坐姿稳定和填充区域。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'filling-spec',
|
||||
promptTemplate: '生成毛绒玩具填充说明图:{character}. 剖面/分区技术说明风格,标注 PP 棉填充区域、软硬度、重心、坐姿稳定要求和不可过硬区域。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_part_breakdown',
|
||||
kind: 'production',
|
||||
@@ -269,6 +391,18 @@ export const PRODUCTION_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成毛绒玩具拆件图:{character}. 技术图风格,白底,将头、身体、四肢、耳朵、服装、配件分开展示,带中文部件名称和数量标注。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_accessory_sheet',
|
||||
kind: 'production',
|
||||
view: 'accessory_sheet',
|
||||
title: '配件单页',
|
||||
description: '独立展示帽子、背包、吊牌、可拆物等。',
|
||||
required: false,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'accessory-sheet',
|
||||
promptTemplate: '生成玩具配件单页:{character}. 将帽子、背包、吊牌、可拆物、电子件或装饰件独立展示,标注数量、材料、连接方式和尺寸建议,中文技术版式。',
|
||||
checklist: productionChecklist,
|
||||
},
|
||||
{
|
||||
id: 'prod_packaging_structure',
|
||||
kind: 'production',
|
||||
@@ -368,6 +502,18 @@ export const MARKETING_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成玩具面料触感宣发图:{character}. 微距商业摄影,突出毛绒质感、柔软填充、可抱触感,可加入简短中文卖点。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_detail_accessory',
|
||||
kind: 'marketing',
|
||||
view: 'detail_accessory',
|
||||
title: '配件卖点图',
|
||||
description: '突出服装、配件、机关或标志性部件。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'detail-accessory',
|
||||
promptTemplate: '生成玩具配件/服装/机关细节宣发图:{character}. 近景商业摄影,突出最具识别度的配件、服装、尾巴、背包或机械件,可加入简短卖点文案。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_scene_bedroom',
|
||||
kind: 'marketing',
|
||||
@@ -380,6 +526,30 @@ export const MARKETING_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成玩具卧室陪伴场景图:{character}. 温暖床头或儿童房场景,柔和自然光,突出陪伴、治愈和礼物感。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_scene_desk',
|
||||
kind: 'marketing',
|
||||
view: 'scene_desk',
|
||||
title: '桌面陪伴场景',
|
||||
description: '办公桌、学习桌或创作桌场景。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'scene-desk',
|
||||
promptTemplate: '生成玩具桌面陪伴场景图:{character}. 办公桌/学习桌/创作桌场景,清爽自然光,突出日常陪伴、桌搭和收藏展示感。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_scene_gift',
|
||||
kind: 'marketing',
|
||||
view: 'scene_gift',
|
||||
title: '礼物开箱场景',
|
||||
description: '礼物、节日、开箱和赠送场景。',
|
||||
required: true,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'scene-gift',
|
||||
promptTemplate: '生成玩具礼物/节日/开箱场景图:{character}. 温暖礼物氛围,展示包装、打开瞬间和产品露出,突出送礼、惊喜和治愈感。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_size_lifestyle',
|
||||
kind: 'marketing',
|
||||
@@ -392,6 +562,18 @@ export const MARKETING_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成玩具尺寸对比宣发图:{character}. 手持或桌面生活方式场景,体现真实大小和可抱感,可加入尺寸文案占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_social_square',
|
||||
kind: 'marketing',
|
||||
view: 'social_square',
|
||||
title: '社媒方形封面',
|
||||
description: '社媒 1:1 封面图。',
|
||||
required: false,
|
||||
aspectRatio: '1:1',
|
||||
filenamePart: 'social-square',
|
||||
promptTemplate: '生成社媒 1:1 方形封面图:{character}. 强视觉中心,适合小红书/微博/朋友圈,留出短标题区域,产品不变形,整体风格与宣发包统一。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_social_vertical',
|
||||
kind: 'marketing',
|
||||
@@ -404,6 +586,30 @@ export const MARKETING_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成竖版社媒封面图:{character}. 9:16,适合小红书/短视频,强视觉中心,留出标题区域,产品不变形,风格统一。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_packaging_render',
|
||||
kind: 'marketing',
|
||||
view: 'packaging_render',
|
||||
title: '包装渲染图',
|
||||
description: '展示包装外观、开窗、内托和礼盒质感。',
|
||||
required: false,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'packaging-render',
|
||||
promptTemplate: '生成玩具包装商业渲染图:{character}. 展示礼盒、开窗、内托、吊卡或说明卡,商业摄影质感,包装风格与角色一致,可加入品牌占位但不要真实商标。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_character_story',
|
||||
kind: 'marketing',
|
||||
view: 'character_story',
|
||||
title: '角色故事图',
|
||||
description: '表达 IP 性格、故事和情绪价值。',
|
||||
required: false,
|
||||
aspectRatio: '4:5',
|
||||
filenamePart: 'character-story',
|
||||
promptTemplate: '生成 IP 角色故事宣发图:{character}. 结构化版式,包含角色名字、性格关键词、故事短句、陪伴场景和核心识别元素,中文文案占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'mkt_ecommerce_longpage',
|
||||
kind: 'marketing',
|
||||
@@ -416,6 +622,66 @@ export const MARKETING_TEMPLATES: AssetTemplate[] = [
|
||||
promptTemplate: '生成电商详情页长图模块:{character}. 结构化版式,包含角色故事、核心卖点、尺寸、材质、细节、包装展示,中文标题和短文案占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'video_turntable',
|
||||
kind: 'marketing',
|
||||
view: 'video_turntable',
|
||||
title: '360 度旋转视频脚本',
|
||||
description: '电商 360 度转台展示分镜。',
|
||||
required: false,
|
||||
aspectRatio: '16:9',
|
||||
filenamePart: 'video-turntable',
|
||||
promptTemplate: '生成 360 度旋转展示短视频分镜板:{character}. 16:9,包含 6 个镜头缩略画面和中文脚本:正面、左前 45 度、侧面、背面、右前 45 度、回到正面,适合电商展示。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'video_unboxing',
|
||||
kind: 'marketing',
|
||||
view: 'video_unboxing',
|
||||
title: '开箱视频脚本',
|
||||
description: '包装到娃娃展示的开箱流程。',
|
||||
required: false,
|
||||
aspectRatio: '16:9',
|
||||
filenamePart: 'video-unboxing',
|
||||
promptTemplate: '生成玩具开箱短视频分镜板:{character}. 16:9,包含包装特写、打开、取出、细节、抱持展示、结尾定格,中文脚本和镜头时长占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'video_touch_detail',
|
||||
kind: 'marketing',
|
||||
view: 'video_touch_detail',
|
||||
title: '触感细节视频脚本',
|
||||
description: '揉捏、触感和细节特写分镜。',
|
||||
required: false,
|
||||
aspectRatio: '16:9',
|
||||
filenamePart: 'video-touch-detail',
|
||||
promptTemplate: '生成玩具触感细节短视频分镜板:{character}. 16:9,展示揉捏、毛绒触感、刺绣细节、配件互动和恢复形态,中文脚本占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'video_story_intro',
|
||||
kind: 'marketing',
|
||||
view: 'video_story_intro',
|
||||
title: '角色设定短片脚本',
|
||||
description: '社媒角色介绍短片分镜。',
|
||||
required: false,
|
||||
aspectRatio: '9:16',
|
||||
filenamePart: 'video-story-intro',
|
||||
promptTemplate: '生成竖版角色设定短片分镜板:{character}. 9:16,适合社媒,包含角色登场、性格关键词、陪伴场景、卖点定格和结尾 CTA,中文脚本占位。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
{
|
||||
id: 'video_factory_preview',
|
||||
kind: 'marketing',
|
||||
view: 'video_factory_preview',
|
||||
title: '工厂预览视频脚本',
|
||||
description: '打样前内部沟通概念展示分镜。',
|
||||
required: false,
|
||||
aspectRatio: '16:9',
|
||||
filenamePart: 'video-factory-preview',
|
||||
promptTemplate: '生成工厂预览概念短片分镜板:{character}. 16:9,面向内部沟通,展示外观、尺寸、材料、拆件和包装要点,中文说明占位,不做消费者营销话术。',
|
||||
checklist: marketingChecklist,
|
||||
},
|
||||
];
|
||||
|
||||
export const PACK_TEMPLATES: Record<PackKind, AssetTemplate[]> = {
|
||||
|
||||
Reference in New Issue
Block a user