本文へスキップ
Web開発

演出と表示速度を両立する:軽快さを犠牲にしないWeb制作

リッチな演出は入れたいが、重くなるのは避けたい。GSAPやThree.jsの演出と、Core Web Vitalsの速度を両立させるための設計判断をまとめます。

2分で読めます

「動きのあるサイトにしたい。でも重くなるのは困る」。Web制作で必ず出てくるこの相談は、演出と速度がトレードオフになりがちだからこそ生まれます。結論は、両立は“設計”で実現できる。鍵は「どこに演出を効かせ、どこを削るか」です。

原則:軽快さ > 派手さ

まず順番を決めます。表示の軽快さが先、演出は後。特に集客サイトでは、表示が遅い時点で見られる前に離脱されます。速度はSEO(Core Web Vitals)にもCVにも直結する“土台”であり、演出はその上に乗せる“味付け”です。

1. 重い演出は限定的に

Three.jsのような重い演出は、ファーストビューなど一箇所に絞るのが基本です。全ページに3D表現を敷くのではなく、最も印象づけたい場所だけに使います。これだけで体感速度は大きく変わります。

2. transform と opacity だけでアニメーションする

スクロール連動やマイクロインタラクションは、transformopacity に限定します。widthtop をアニメーションするとレイアウト再計算(リフロー)が走り、カクつきの原因になります。

/* Good: GPUに乗りやすい */
.reveal { transform: translateY(20px); opacity: 0; }
.reveal.is-in { transform: none; opacity: 1; }

3. prefers-reduced-motion を尊重する

OSで「視差効果を減らす」を選んでいるユーザーには、アニメーションを止めて即時表示します。アクセシビリティ対応であると同時に、低スペック環境への配慮にもなります。

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1 !important; transform: none !important; }
}

4. 静的生成で“速い”を前提にする

Next.jsのApp Routerでコンテンツを静的生成すれば、配信は速く、サーバー負荷も小さくなります。画像は最適化・遅延読込し、コードは分割する。速いことを前提に組むことで、演出を乗せても土台が崩れません。

5. WebGL非対応にはフォールバック

3D演出を使うなら、WebGLが使えない環境ではソリッドな背景に切り替えるフォールバックを用意します。「動かない環境でも成立する」ことが、堅牢なサイトの条件です。

まとめ

  • 順番は「軽快さ > 派手さ」。速度が土台
  • 重い演出は一箇所に絞る/transformopacityだけで動かす
  • prefers-reduced-motion とWebGLフォールバックを用意する

このサイト自体が、演出と速度を両立させた制作サンプルです。同じ方針でWeb制作を承ります。

タグ:#Next.js#パフォーマンス#GSAP#Three.js

Fiidia

AI・RAG・Flutter・Web を横断する個人開発者。プロフィール →

関連サービス

Webアプリ開発

Next.js を中心としたモダンなWeb開発。LP・社内ツール・Webサービスを、高速・高品質に実装します。