形状モーフShape Morph
丸・三角・四角などの輪郭を同じ数の点で表し、点どうしを補間して形を滑らかに変形させ続けるループアニメーションです。
どう計算しているか
- 各図形の輪郭を、周の長さに沿って等間隔に 192 個の点でサンプリングします。始点はどの図形も真上(-90°)に最も近い点にそろえるので、対応する点どうしが大きくねじれません。
- 「形 1」〜「形 4」で選んだ図形を順番に並べ、時間に応じて今どの2つの間にいるかを決めます。2つの図形の同じ番号の点を、イージングをかけた割合で直線補間(a + (b − a)·f)して中間の形を作ります。
- 変形と同時に、形全体を回転行列(cos と sin で点を回す計算)で回します。回転角は「回転」の値と、形の列をどこまで進んだかに比例します。
- 「残像の数」だけ形を少しずつ小さく重ね、それぞれ「残像の時間差」だけ過去の時刻で描きます。少し前の形が内側に残るので、トンネルのような奥行きが生まれます。
- 「配置」をグリッドにすると同じ図形を格子に並べ、中心からの距離などで開始時刻をずらして波のように変形させます。
P(u) = lerp(A_i, A_{i+1}, ease(f)), rot = spin·2π·(i + f)/Lループがつながる理由
形の列は最後の図形から最初の図形へ戻る輪になっていて、時刻は fract で巻き戻します。回転は1ループでちょうど「回転」の整数周ぶん進むので、向きも元に戻ります。
調整できるパラメータ
形
| 形 1 | なし・丸・三角・四角・五角形・六角形・星・十字・線 |
|---|---|
| 形 2 | なし・丸・三角・四角・五角形・六角形・星・十字・線 |
| 形 3 | なし・丸・三角・四角・五角形・六角形・星・十字・線 |
| 形 4 | なし・丸・三角・四角・五角形・六角形・星・十字・線 |
| 配置 | 単体・グリッド |
| グリッド分割 | 2 〜 12(初期値 4) |
| サイズ | 0.2 〜 1.4(初期値 0.85) |
| 塗り | 線・塗り |
| 線幅 | 0.5 〜 20(初期値 3) |
動き
| 残像の数 | 1 〜 32(初期値 12) |
|---|---|
| 残像の時間差 | 0 〜 0.2(初期値 0.03) |
| 回転 | -3 〜 3(初期値 1) |
| 位相のずれ方 | 同時・放射・角度・渦巻き・斜め・横・縦・市松・ランダム |
| ずれ量 | 0 〜 4(初期値 0.5) |
| イージング | linear・sine・quad・cubic・quint・expo・back・elastic |
同じ分類のシーン(放射・回転)
- 放射・回転対称Polar Rings同心円上に並んだ図形がリングごとに少しずつ遅れて回り、渦や花のような模様が浮かんでは消えるループアニメーションです。
- 入れ子の回転Twist Stack大きさの違う多角形を中心にそろえて重ね、内側ほど遅れて回すことで、ねじれた渦が現れてはほどけるループアニメーションです。
- 万華鏡Kaleidoscope扇形の中で図形を動かし、それを回転と鏡写しで円周に並べることで、万華鏡のような対称模様を作るループアニメーションです。
- 葉序・螺旋Phyllotaxis黄金角ずつ角度をずらして点を並べ、ひまわりの種のような螺旋模様が中心から湧き出して外へ流れ続けるループアニメーションです。
- 無限ズームInfinite Zoom多角形の辺上の点を結んで一回り小さい多角形を作る操作を繰り返し、その入れ子の渦へ無限に吸い込まれていくループアニメーションです。
- 遠近トンネルPerspective Tunnel遠くから迫ってくるリングの列を遠近法で描き、うねる軸とねじれでくねった筒の中を進んでいるように見せるループアニメーションです。
- 花の開閉Bloom何重にも重なった花弁が外側の層から時間差で開いては閉じ、並べると花畑のように波打つループアニメーションです。
- 時計の針の群れClock Swarm格子状に並んだ時計の2本の針が一斉に回り、模様 A と模様 B の間を行き来するループアニメーションです。
- スピログラフSpirograph大きな歯車の内側や外側を小さな歯車が転がり、穴に差したペンが花模様を描いていくループアニメーションです。
- 吸い込まれる渦Black Hole極座標の格子が渦を巻きながら中心の穴へ吸い込まれ続け、中心に近いほど強くねじれるループアニメーションです。
- SDF・等高線GLContour Tunnel図形の距離関数を等高線の縞として描き、縞が中心から湧き出し続けながら2つの図形の間でモーフするループアニメーションです。