本文へスキップ

降る雪

奥行き(z)を持った雪片が自動で降り続ける。マウス/指を素早く動かすとその方向へ風が吹き、雪片が流される。風は時間とともに基準の弱い風へ戻っていく。

プレビュー

自動再生

操作自動で再生されます。

仕様書

向く場面
  • 冬・年末のキャンペーン LP
  • 季節感を出す背景演出
  • ポインタの動きに反応する余白
避ける場面
  • 季節外れ・無関係な文脈
  • 本文の背景(雪片が文字に重なる)
  • 白い背景の上(白い雪片が見えない)
構成要素
  • 夜空(canvas)
  • 雪片(奥行きあり)
  • 風(ポインタ由来)
持っている状態
  • 通常
キーボード

マウス・タッチ専用(素早く動かすと風が吹く)。装飾で代替操作は不要

支援技術

canvas は aria-hidden の装飾。reduce 設定では雪片を減らして1枚描いたところで止め、静止画にする。visibilitychange で停止

動き

奥行き z で速度 18〜60px/s・大きさ・明るさを変えて降り続ける。ポインタ速度で風(±60)が加わり 0.94/frame で減衰。reduce では静止

デザインの要点

  • 奥行き z を1つ引き、速度・半径・明るさ・風の効きをすべて z から導く。別々に乱数を引くと大きいのに遅い雪が混じる
  • 風は目標値へ 1.5/s で追従し、目標自体を 0.94/frame で減衰させる。速度を直接いじると指を止めた瞬間に雪が止まる
  • 落ちた雪片は消さず上端で作り直す。生成と破棄を繰り返すと GC で数秒おきに引っかかる
  • 画面外へ流れた雪片は反対側から戻す。風で片側が空になるのを防ぐ

コード(コピーして使えます)

<div class="sn-wrap">
  <canvas class="sn-canvas" aria-hidden="true"></canvas>
</div>

タグ

同じカテゴリ「ジェネラティブ演出」のほかのパーツ

関連パーツ