Communitygithub.com

aminghaseminia/motion-design

为动画项目提供艺术指导和动态设计工艺——创意简报、故事板、风格帧、色彩与字体系统、构图、节奏与缓动、转场词汇、声音指导、无障碍设计以及从右到左(波斯/阿拉伯)的排版。在构建场景之前、视频显得业余或千篇一律时、选择调色板和字体时、需求要求“使其显得高级/电影感/现代”时、或文本、节奏、层次结构不理想时使用。工具无关;可与blender-animation、remotion-motion-graphics和manim-animation配合使用。

motion-design 是什么?

Motion Design — Art Direction and Motion Craft 是一个全面、工具无关的动态设计技能,旨在将抽象形容词(如“高级”、“未来感”)转化为可执行的视觉与动画决策。该技能为Claude Code等AI编码代理设计,提供从创意方向定义到最终交付的端到端工作流,包括一个7行创意方向模板、关键组件系统定义、构图规则、定时与缓动参数、转场词汇、色彩系统、排版规范(含右至左语言支持)、声音设计以及无障碍逻辑。其核心价值在于教会AI系统区分“风格”与“质量”:通过具体数值(如缓动曲线类型、帧持续时间、对比度比率)和对比表,确保每个选择都有依据。该技能特别适用于生成专业级motion graphics(配合blender-animation等工具),帮助AI避免新手常犯的视觉错误(如过度缓动、色彩不协调、层次模糊),从而获得更像艺术总监而非技术出品的输出。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/aminghaseminia/blender-animation-skill/tree/HEAD/skills/motion-design

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

动态设计 — 艺术指导与动态工艺

本技能将形容词转化为可观察的决策。“高级”不是金色渐变;而是克制、间距、受控的对比和经过斟酌的时机。“未来感”不是随意的霓虹;而是连贯的网格、精确的运动和有限的调色板。

阅读 references/MOTION-CRAFT.md 获取数值、表格和实例。

1. 从紧凑的创意方向开始

在编写任何场景代码之前,写下这七行:

主题:      一句话
受众:      谁以及他们在哪里观看
信息:      他们必须记住的一件事
基调:      3个形容词,每个转化为一个视觉决策
调色板:    4–6个十六进制值及其角色
字体:      1–2个家族、字重、字号
动态:      速度、缓动特性、转场词汇

如果基调形容词无法转化为决策,则方向未完成。示例转化:

形容词具体决策
高级慢速缓动、展示字体的宽字距、一种强调色、深邃的负空间、柔和的轮廓光、无弹跳
活力快速入场(8–12帧)、6–10%过冲、踩点剪辑、高对比度、饱和强调色
可信赖对称网格、中调色板、缓慢揭示、稳定的相机、平实的语言、无花哨
技术性等宽强调色、标尺线、测量刻度、精确线性运动、冷色中性色

2. 一个系统,然后是场景

定义系统一次并重复使用:

  • 网格: 12列,5–8%外边界。纵向/社交媒体格式需要更多边界,因为平台UI会遮挡边缘。
  • 字号阶梯: 例如 1080p 下为 96/64/40/28/20 px。切勿为每个场景临时发明尺寸。
  • 间距: 8 px 基本单位。间距比线条或方框更能传达分组关系。
  • 色彩角色: 背景、表面、主要文字、次要文字、强调色、语义色。一种强调色,谨慎使用。
  • 形状语言: 圆角半径、描边粗细,以及元素是扁平、斜面还是发光。
  • 动态语言: 入场风格、退场风格、转场词汇,以及相机是否移动。

一张风格帧比十个完成的场景更便宜。先渲染一张代表整个作品的关键帧,并确保它是正确的。

3. 经久耐用的构图规则

  • 每个节拍一个焦点。如果两个东西同样亮、同样大、同样在运动,就没有层次。
  • 对比度是相对的:如果一切都在发光,那就没什么发光。
  • 负空间是一个特点。30%的空白画面传达出自信。
  • 对齐某个东西——网格、光学中心或刻意设计的对角线。近乎对齐看起来像错误。
  • 在社交媒体格式中,将主体保持在外侧5%之外。
  • 对于图像上的文字,确保正文的亮度差至少达到约4.5:1;添加遮罩而不是沉重的阴影。
  • 2D中的深度线索:缩放、模糊、不透明度、重叠、视差。使用其中一两种,而不是全部四种。

4. 时机

时长传达重量。30 FPS下的粗略起点:

元素入场退场停留
短标题(1–3字)12–18帧8–12帧≥ 24帧
长标题18–24帧12帧≥ 45帧
正文行12–16帧8帧≥ 30帧
标志揭示24–40帧12帧≥ 45帧
图表30–45帧10帧≥ 60帧
全屏转场10–18帧——
相机运动(3D)45–90帧——

规则:

  • 距离或质量越大 → 持续时间越长。
  • 组一起移动,然后以2–6帧间隔错开;不要以相同数量错开所有内容。
  • 在重要的揭示之后留出一拍静止。
  • 如果观众必须阅读它,它在屏幕上的停留时间应该是你感觉的两倍左右。

5. 缓动

情况曲线
到达并稳定ease-out(立方或四次)
离开ease-in
在两个静止状态之间移动ease-in-out
机械/连续/循环线性
物理卡扣弹簧阻尼14–22,刚度90–180
相机非常柔和的ease-in-out,长持续时间

切勿以完全相同的方式缓动每个属性。位置、不透明度和旋转可以共享一条曲线;缩放通常希望更紧的时机。避免弹跳,除非品牌是趣味性的——它很快会显得过时,并影响易读性。

6. 转场

构建一个包含3–4种的词汇表并重复使用:

  1. 硬切 — 节奏的默认选择。最经济且通常最好。
  2. 交叉溶解 — 6–12帧,用于柔和的连续性。
  3. 遮罩擦拭 — 有方向性,用于空间关系。
  4. 缩放穿越 — 推入一个元素,用于章节变化。
  5. 匹配剪辑 — 形状或动态连续性,最令人满意也最困难。

避免:在所有内容上使用默认的缩放模糊、星形擦拭,以及与故事运动方向相矛盾的转场。

7. 色彩

  • 从一种主色、一种强调色和中性色开始。只有在承载意义时才添加第二种强调色。
  • 在最终尺寸上检查对比度,而不是在大显示器上。
  • 控制饱和度:大面积的高度饱和色彩会使眼睛疲劳。
  • 深色背景需要略微去饱和的强调色和提升的阴影细节;纯黑加纯白文字会过于刺眼。
  • 一致地使用色彩来编码意义(一种颜色表示“之前”,另一种表示“之后”),而不是装饰性使用。
  • 跨工具验证色彩:浏览器(sRGB)、Blender(视图变换)和编码器。一个发灰的合成通常意味着视图变换不匹配,而非调色板不好。

8. 排版

  • 最多两个家族:一个展示字体,一个文本字体(或一个具有多种字重的家族)。
  • 展示字体的字距:大的无衬线字体紧(-1%至-3%),短的大写标签宽(+8%至+20%)。
  • 正文行高:1.35–1.6。展示字体行高:1.0–1.2。
  • 行长:45–75个字符。标题可以更短。
  • 避免孤行和单独一个单词的最后一行;必要时重写文案。
  • 数字:计数器和表格中使用表格数字。
  • 切勿拉伸或压缩字体以适应;改变布局或尺寸。

从右到左(波斯语、阿拉伯语、希伯来语)

  • 在容器级别设置方向,并使用支持形状的字体(例如 Vazirmatn、IBM Plex Sans Arabic、Noto Naskh Arabic)。
  • 在渲染帧中测试形状、连接、变音符号和标点符号,而不是在代码中。
  • 混合内容:将拉丁品牌名称/URL保留在带有 dir="ltr" 的自己的跨度中,否则双向算法会重新排列标点。
  • 波斯数字与拉丁数字:为整个作品选择一种系统。
  • 行高需要比拉丁文在相同光学尺寸下更多的空间。
  • 不要对阿拉伯文字字母做字距调整——它会破坏草书连接。

9. 声音

  • 在选择曲目前决定声音的角色:节奏设定者、情感背景、信息(语音)或标点(音效)。
  • 分离音轨:语音、音乐、氛围、点状效果。将音乐在语音下减弱6–10 dB。
  • 强调视觉事件,而不是剪辑开始。
  • 淡化每个剪辑;硬起或硬停会产生咔嗒声。
  • 保留净空(-1 dBTP),避免削波,检查手机扬声器的单声道兼容性。
  • 静音是一种工具。在揭示前去掉一个节拍的音乐比添加上升音效更强大。
  • 授权每个音轨并记录来源。切勿假设“免费下载”意味着允许商业使用。

10. 无障碍性与平台适配

  • 任何对话内容都添加字幕;屏幕上的文字也有助于无声观看,这在社会媒体上占多数。
  • 不要仅通过颜色来编码含义。
  • 避免超过3Hz的闪烁;无频闪。
  • 将关键文本保持在安全区域内,字体大小能在手机上阅读。
  • 在交付前检查平台当前的持续时间、宽高比、编解码器和比特率要求。

11. 审阅方法

观看作品三次:

  1. 无声,在50%尺寸下 — 层次是否可读?是否有任何内容被裁剪?
  2. 全尺寸带声音 — 节奏是否有效?音频是否与图像对抗?
  3. 逐帧检查边界 — 闪光、间隙、跳帧、不可读的帧。

然后问三个问题:

  • 观众记得的一件事是什么?
  • 注意力首先去哪里,这是预期的吗?
  • 哪些内容可以被删除而不失去信息?

删除通常是最有价值的修改。

12. 设计阶段的交付物

  • brief.md — 主题、受众、信息、约束、假设。
  • style-guide.md — 包含角色和十六进制值的调色板、字号阶梯、间距、动态语言。
  • storyboard.md — 每个场景一行/块:时间、目的、构图、文案、动态、转场、声音、工具。
  • 1–3张风格帧 — 视觉目标,在批量制作前获得批准。

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

aminghaseminia/blender-animation

Build 3D animations in Blender headlessly with Python (bpy) — scene setup, materials, lighting, camera rigs, keyframe and procedural animation, Geometry Nodes, particles and simulations, EEVEE/Cycles rendering, and MP4/PNG-sequence output. Triggers include "animate in Blender", "blender python", "bpy script", "3D logo animation", "cinematic render", "particle animation", "product turntable", "render an .blend", "blender headless", or any 3D scene, camera move, or motion graphics job that needs real geometry, light, and depth.

aminghaseminia/manim-animation

Produce mathematical, scientific, and technical animations with Manim Community — equations, proofs, graphs, coordinate systems, geometry, algorithms, data structures, and precise diagram transformations. Use when correctness of mathematical relationships is central, for educational explainers, research or conference visuals, and for animated derivations where every element must be exactly placed. Covers installation with uv, scene design, LaTeX/MathTex, camera and 3D scenes, rendering quality presets, and compositing with other tools.

aminghaseminia/motion-studio

End-to-end animation and motion-graphics production from a natural-language brief. Routes work to Blender (3D), Remotion (2D/typography/data), Manim (math/science), motion-design craft, and FFmpeg (encode/composite/validate), then builds, previews, inspects, revises, and delivers an editable project plus final MP4. Use for any request to "make an animation", "create a video", "animate this logo", "render a motion graphic", "vibe-code an animation", or produce a promo, explainer, title sequence, or social clip.

aminghaseminia/remotion-motion-graphics

Create 2D motion graphics as code with Remotion and React — kinetic typography, logo reveals, explainers, animated charts, UI demos, social clips, subtitles, and data-driven or batch-rendered video. Use when the deliverable is primarily layout, text, and 2D graphics rather than real 3D; when a video must be generated from data or a template; or when a Blender 3D pass needs titles, captions, and transitions composited on top. Covers project setup, deterministic frame-based animation, easing, typography, audio, rendering, and licensing.

aminghaseminia/video-composition

Assemble, mix, normalize, and validate finished video from Blender, Remotion, Manim, screen capture, and audio sources using FFmpeg and FFprobe — concatenation, overlays, alpha compositing, subtitle burn-in, loudness, fades, speed ramps, GIF/thumbnail export, and platform-specific encodes. Use when combining scenes, fixing mismatched resolutions or frame rates, adding music/voice-over, burning captions, converting formats, or verifying that a rendered file is actually correct.

相关技能