空中で2回転半の蹴りを、数の表と式で動かす。

画面の中で跳んで、回って、蹴る棒人間。その動きは、1秒に60枚の「数の表」でできている。点を回すのは行列と四元数、膝の位置を決めるのは余弦定理、空中で回る速さを決めるのは角運動量。このアニメーションを作るときに実際に使った計算を、1つずつ自分の手で確かめよう。

クエストを選ぼう!

ステージ1から順番にクリアしよう(前のステージをクリアすると次が解放されます)。出発点は中学の数学(座標・三平方の定理)。cos と sin は『本当はおもしろい複素数の世界』や『ロータリーエンジンを作図する』で学んだものを使います。

1
座標・ベクトル⏱ 約12分
動きは数の表

アニメーションの正体は、24個の点の (x, y, z) を1秒に60回並べた表。コマとコマの差から速さを、速さの差から加速度を出し、空中では重力の 9.8 m/s² が見えることを確かめる。

はじめる →
2
内積と外積⏱ 約15分
長さと角度を測る

骨の長さ、膝の曲がる角度(内積)、膝がどちら向きに曲がるか(外積)。2本の矢印から、長さ・角度・向きを取り出す。

はじめる →
3
回転行列⏱ 約15分
回転を表す

点を回す計算を「行列」という数の箱にまとめる。軸と角度から回転を作るロドリゲスの公式と、骨盤に乗って見る座標系。

はじめる →
4
四元数⏱ 約15分
向きをなめらかにつなぐ

向きの「平均」や「途中」を作るには、行列より四元数が向いている。4つの数で回転を表し、2つの向きの間を球面に沿ってつなぐ。

はじめる →
5
2関節IK⏱ 約15分
膝の置き場所

足首の位置が決まれば、膝の位置は三角形(余弦定理)で決まる。ただし、脚が伸び切ると膝の向きが決まらなくなる――蹴りの瞬間につま先がジグザグした原因。

はじめる →
6
重心と放物線⏱ 約15分
空中の重心

体の各部分の重さで平均した点が重心。空中では手足をどう動かしても、重心はボールと同じ放物線を描く。

はじめる →
7
角運動量⏱ 約15分
縮めると速く回る

空中では「回転の勢い」が一定。脚を伸ばすと回転は遅く、縮めると速くなる。回りにくさを表す行列(慣性テンソル)で、それを計算する。

はじめる →
8
フィルタ⏱ 約15分
ならすと何が変わる

細かい揺れを時間方向にならす。でも「位置」をならすか「向き」をならすかで、膝の曲がり方まで変わってしまう。軌跡の波打ちを消した方法。

はじめる →
9
投影と最小二乗⏱ 約15分
動画に重ねる

3D の点をカメラの画面に写す式と、ずれの二乗の合計を小さくする最小二乗。カメラ1台では奥行きが決まらない、という落とし穴まで。

はじめる →

この動きの元のページ

題材のアニメーションは、大阪のアクロバット教室 ACST-BJ の技解説ページで、360°回して見られます

バックナンバー

同じねこ博士とうさ美が案内する、姉妹サイトの学習クエスト