mcpField
R
react-animation

react-animation

github.com/noteditクリエイティブ・メディア340181 回インストール34 週間前に更新
リポジトリ

react-animation について

Remotion の動画コンポジション制作向けに、React アニメーションコンポーネントを視覚スタイル別にまとめたガイドです。動画制作者がエフェクトを選び、決定論的なフレーム単位のレンダリングに合わせて調整できます。

主な機能

  1. 01視覚スタイル別のコンポーネント
  2. 02テキスト・背景・エフェクトのアニメーション
  3. 03Remotion のフレーム単位アニメーションパターン
  4. 04決定論的な出力のためのシード付き乱数
  5. 05スタイルの組み合わせガイド

活用シーン

  1. 01高級ブランド動画のデザイン
  2. 02テックやゲームのプロモーション制作
  3. 03時間駆動エフェクトを Remotion 用に調整

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/notedit/happy-skills --skill react-animation

インストール後、Claude Code で/react-animationを入力して読み込まれたか確認します。

同梱ファイルAESTHETIC_ANALYSIS.mdrules/adaptation-patterns.md

詳細

使用する場面

美しく洗練された視覚効果が必要な Remotion の動画コンポジションを作成するときに、このスキルを使用します。モーショングラフィックスの品質を高めるコンポーネントを、ビジュアルスタイル別に分類しています。

インストール

npx shadcn@latest add https://reactbits.dev/r/<Component>-TS-CSS

🎨 美的カテゴリ

ビジュアルスタイル別に整理されたコンポーネントです。1 本の動画で 2 つを超えるスタイルを組み合わせないでください。


1. エレガントで柔らかなスタイル(优雅柔和)

なめらかで、映画のように洗練されています。高級ブランドや感情に訴えるストーリーテリングに最適です。

テキスト
コンポーネントインストール美的特徴
BlurTextnpx shadcn add https://reactbits.dev/r/BlurText-TS-CSSぼかしから鮮明になる映画的な表示
背景
コンポーネントインストール美的特徴
Auroranpx shadcn add https://reactbits.dev/r/Aurora-TS-CSS流れるオーロラ
Silknpx shadcn add https://reactbits.dev/r/Silk-TS-CSSミニマルな布の波
Grainientnpx shadcn add https://reactbits.dev/r/Grainient-TS-CSS粒状のアーティスティックなグラデーション
エフェクト
コンポーネントインストール美的特徴
Ribbonsnpx shadcn add https://reactbits.dev/r/Ribbons-TS-CSS流れるシルクリボン
ShapeBlurnpx shadcn add https://reactbits.dev/r/ShapeBlur-TS-CSS柔らかな抽象幾何学

使用パターン:

const ElegantScene: React.FC = () => {
  const frame = useCurrentFrame();
  const { fps } = useVideoConfig();
  
  return (
    <AbsoluteFill>
      <Aurora time={frame / fps} colorStops={['#3A29FF', '#FF94B4', '#FF3232']} />
      <BlurText text="Elegant Title" startFrame={15} />
    </AbsoluteFill>
  );
};

2. モダンでテクノロジー感のあるスタイル(现代科技)

最先端で、躍動感があり、未来的です。テクノロジー製品、スタートアップ、イノベーションに最適です。

テキスト
コンポーネントインストール美的特徴
GlitchTextnpx shadcn add https://reactbits.dev/r/GlitchText-TS-CSSデジタルなグリッチの乱れ
GradientTextnpx shadcn add https://reactbits.dev/r/GradientText-TS-CSS流れるグラデーションのスイープ
背景
コンポーネントインストール美的特徴マウス操作を無効化
Iridescencenpx shadcn add https://reactbits.dev/r/Iridescence-TS-CSS虹色の油膜mouseReact={false}
LiquidChromenpx shadcn add https://reactbits.dev/r/LiquidChrome-TS-CSS液体金属の表面interactive={false}
Particlesnpx shadcn add https://reactbits.dev/r/Particles-TS-CSS浮遊するデータポイントmoveParticlesOnHover={false}
エフェクト
コンポーネントインストール美的特徴
MetaBallsnpx shadcn add https://reactbits.dev/r/MetaBalls-TS-CSS有機的な液体の融合
Antigravitynpx shadcn add https://reactbits.dev/r/Antigravity-TS-CSS幻想的な粒子フィールド

使用パターン:

const TechScene: React.FC = () => (
  <AbsoluteFill style={{ background: '#000' }}>
    <Iridescence mouseReact={false} color={[0.3, 0.1, 0.8]} speed={1} />
    <GlitchText speed={0.5} enableShadows enableOnHover={false}>
      FUTURE IS NOW
    </GlitchText>
  </AbsoluteFill>
);

3. ラグジュアリーでプレミアムなスタイル(奢华高端)

メタリックで、洗練され、上質です。高級品、金融、高級サービスに最適です。

テキスト
コンポーネントインストール美的特徴
ShinyTextnpx shadcn add https://reactbits.dev/r/ShinyText-TS-CSSメタリックな光沢のスイープ
背景
コンポーネントインストール美的特徴
Silknpx shadcn add https://reactbits.dev/r/Silk-TS-CSS上質な布の質感
エフェクト
コンポーネントインストール美的特徴
StarBordernpx shadcn add https://reactbits.dev/r/StarBorder-TS-CSSアニメーションするグラデーションの境界線

使用パターン:

const LuxuryScene: React.FC = () => (
  <AbsoluteFill style={{ background: '#0a0a0a' }}>
    <Silk speed={0.5} color="#1a1a2e" />
    <StarBorder color="#gold" speed="4s">
      <ShinyText text="PREMIUM" color="#c9b037" shineColor="#fff" />
    </StarBorder>
  </AbsoluteFill>
);

4. レトロでピクセル風のスタイル(复古像素)

懐かしさを感じさせるデジタルなローファイ表現です。ゲーム、レトロテック、ヴェイパーウェイヴの美学に最適です。

テキスト
コンポーネントインストール美的特徴
TextTypenpx shadcn add https://reactbits.dev/r/TextType-TS-CSSターミナルのタイプライター表現
DecryptedTextnpx shadcn add https://reactbits.dev/r/DecryptedText-TS-CSSデータの復号エフェクト
トランジション
コンポーネントインストール美的特徴
PixelTransitionnpx shadcn add https://reactbits.dev/r/PixelTransition-TS-CSSピクセルグリッドによるディゾルブ
背景
コンポーネントインストールビジュアル
LetterGlitchnpx shadcn add https://reactbits.dev/r/LetterGlitch-TS-CSSマトリックス風のコード雨
Dithernpx shadcn add https://reactbits.dev/r/Dither-TS-CSSレトロなディザリング
FaultyTerminalnpx shadcn add https://reactbits.dev/r/FaultyTerminal-TS-CSSCRT モニター効果

使用パターン:

const RetroScene: React.FC = () => (
  <AbsoluteFill style={{ background: '#000' }}>
    <LetterGlitch glitchSpeed={100} glitchColors={['#0f0', '#00ff41']} />
    <GlitchText>SYSTEM OVERRIDE</GlitchText>
  </AbsoluteFill>
);

5. エネルギッシュでドラマチックなスタイル(エネルギーとドラマ)

インパクトが強く、ダイナミックで力強いスタイルです。アクション、スポーツ、告知に最適です。

背景
コンポーネントインストールビジュアルマウス操作を無効化
Lightningnpx shadcn add https://reactbits.dev/r/Lightning-TS-CSS雷雨なし
Beamsnpx shadcn add https://reactbits.dev/r/Beams-TS-CSSボリューム感のある光の柱なし
LightRaysnpx shadcn add https://reactbits.dev/r/LightRays-TS-CSSゴッドレイ、ドラマチックfollowMouse={false}

使用パターン:

const DramaticScene: React.FC = () => (
  <AbsoluteFill>
    <Lightning hue={45} intensity={0.8} speed={2} />
    <BlurText text="THUNDER STRIKE" />
  </AbsoluteFill>
);

6. 抽象的でアーティスティックなスタイル(抽象芸術)

実験的で、芸術的かつ個性的なスタイルです。クリエイティブなプロジェクトやミュージックビデオに最適です。

テキスト
コンポーネントインストールビジュアル
DecryptedTextnpx shadcn add https://reactbits.dev/r/DecryptedText-TS-CSS暗号が解読されるような演出
背景
コンポーネントインストールビジュアルマウス操作を無効化
Plasmanpx shadcn add https://reactbits.dev/r/Plasma-TS-CSS有機的に流れる色mouseInteractive={false}
Prismnpx shadcn add https://reactbits.dev/r/Prism-TS-CSS光の屈折animationType='rotate'

7. ユーティリティ(汎用ツール)

あらゆるシーンを引き立てます。

オーバーレイ
コンポーネントインストール用途
Noisenpx shadcn add https://reactbits.dev/r/Noise-TS-CSSフィルムグレインのテクスチャを重ねます

使用パターン:

const SceneWithGrain: React.FC = () => {
  const frame = useCurrentFrame();
  const { width, height } = useVideoConfig();
  const canvasRef = useRef<HTMLCanvasElement>(null);
  
  useEffect(() => {
    const ctx = canvasRef.current?.getContext('2d');
    if (!ctx || frame % 2 !== 0) return;
    
    const imageData = ctx.createImageData(width, height);
    for (let i = 0; i < imageData.data.length; i += 4) {
      const seed = frame * 100000 + i / 4;
      const val = Math.floor((Math.sin(seed) * 10000 % 1) * 255);
      imageData.data[i] = imageData.data[i + 1] = imageData.data[i + 2] = val;
      imageData.data[i + 3] = 15;
    }
    ctx.putImageData(imageData, 0, 0);
  }, [frame]);
  
  return (
    <>
      <YourScene />
      <canvas ref={canvasRef} style={{ position: 'absolute', inset: 0, pointerEvents: 'none' }} />
    </>
  );
};

🔧 コア適応パターン

フレームベースのアニメーション

時間駆動型のアニメーションをすべて useCurrentFrame() に置き換えます。

import { useCurrentFrame, useVideoConfig, interpolate, Easing } from 'remotion';

// Before: time accumulation
// After: deterministic from frame
const frame = useCurrentFrame();
const { fps } = useVideoConfig();
const progress = interpolate(frame, [0, 30], [0, 1], {
  easing: Easing.out(Easing.cubic),
  extrapolateLeft: 'clamp',
  extrapolateRight: 'clamp',
});
シード付き乱数

レンダリングの決定性を確保します。

function seededRandom(seed: number): number {
  const x = Math.sin(seed) * 10000;
  return x - Math.floor(x);
}

const rand = seededRandom(frame * 1000 + index);
シェーダーのユニフォーム

WebGL/OGL コンポーネント向け:

// Time uniform
uniforms.iTime.value = frame / fps;

// Scripted mouse path (optional)
uniforms.iMouse.value.set(
  0.5 + 0.3 * Math.sin(frame / fps),
  0.5 + 0.2 * Math.cos(frame / fps * 0.7)
);

⚠️ スタイルの一貫性に関するガイドライン

推奨:

  • ✅ エレガントなスタイルとラグジュアリーなスタイルを組み合わせる(BlurText + ShinyText + Silk)
  • ✅ モダンなスタイルとレトロなスタイルを組み合わせる(GlitchText + LetterGlitch)
  • ✅ どのシーンにも Noise オーバーレイを使用する
  • ✅ テキストが目立つ場合は、背景を控えめにする

非推奨:

  • ❌ エレガントなスタイルとレトロなスタイルを組み合わせる(BlurText + PixelTransition)
  • ❌ ラグジュアリーなスタイルとグリッチスタイルを組み合わせる(ShinyText + GlitchText)
  • ❌ 複雑なテキストアニメーションと Lightning を組み合わせる
  • ❌ 背景エフェクトを同時に3つ以上使用する

📦 コンポーネント一覧(厳選35種類)

テキスト(6)

BlurText, GlitchText, GradientText, ShinyText, DecryptedText, TextType

背景(18)

Aurora, Silk, Grainient, Lightning, Iridescence, LiquidChrome, Particles, Galaxy, Plasma, LetterGlitch, Beams, LightRays, Dither, FaultyTerminal, DarkVeil, PixelSnow, Balatro, Prism

エフェクト(10)

MetaBalls, Ribbons, ShapeBlur, Antigravity, StarBorder, PixelTransition

ユーティリティ(1)

Noise


❌ 削除したコンポーネント

削除した理由:

  • 美的価値が低い:SplitText, FadeContent, AnimatedContent
  • スタイルが重複する:ElectricBorder(GlitchText で代用)、Orb(Iridescence で代用)
  • 美的スタイルが古い:Hyperspeed, Cubes, Squares
  • 用途が限定的:CircularText, RotatingText, TrueFocus
  • 美しさより機能性を重視:Counter, Stepper, Carousel(UI コンポーネント)

🎬 Recommended Combinations

Project TypeTextBackgroundEffectMood
Luxury BrandShinyTextSilkStarBorderPremium
Tech StartupGradientTextIridescence-Innovative
Creative StudioBlurTextAuroraRibbonsArtistic
GamingGlitchTextLetterGlitchPixelTransitionEdgy
DocumentaryBlurTextGrainientNoiseCinematic
Event PromoDecryptedTextLightning-Energetic

コメント