hover
tilt / 3d tilt card
カーソル位置に応じてカードが3Dに傾く動き。perspectiveの奥行きとあわせて、平面のUIに物理的な立体感を与える。サムネイルやプロダクトカードで頻出。
02 — Prompt template
03 — Params
maxAngle(最大傾き deg) — 範囲 2〜30 / 初期 12
端にカーソルを置いたときの最大回転角。10前後が上品、20を超えると玩具っぽい。perspective(奥行き px) — 範囲 300〜2000 / 初期 800
小さいほど遠近が強調されて大げさに傾いて見える。scale(ホバー時の拡大) — 範囲 1〜1.15 / 初期 1.04
傾きと同時にわずかに拡大すると「持ち上がる」印象になる。
04 — Vocab
perspective — 3D変形の視点距離。値が小さいほどカメラが近く、遠近感が誇張される。
rotateX / rotateY — X軸回転は上下の傾き、Y軸回転は左右の傾き。カーソルのY位置→rotateX、X位置→rotateYに対応させる。
正規化(normalize) — カーソル位置を-1〜1の割合に変換する処理。要素のサイズが変わっても同じ傾き方になる。
translateZ — カード内の要素を手前に浮かせる指定。テキストだけ浮かせると多層の立体感が出る。
05 — NG → OK examples
NG
言い方: 「「カードをマウスでぐりぐり動くようにして」」
なぜNG: 「ぐりぐり」が回転なのか移動なのか不明。回転軸・最大角・奥行きが未定義だと、傾きすぎて読めないカードや、逆にほぼ動かない実装になる。
OK
言い方: 「「tiltを実装。カーソル位置を正規化してrotateX/rotateYへマッピング、maxAngleとperspectiveは数値指定、leaveで0に戻す」」
なぜOK: マッピング方式と数値、終了時の挙動まで揃っている。tiltという名前だけで実装パターンが一意に伝わる。
