attrip.へ戻る

TRICERATOPS / DOUBLE JUMP

歩行

トリケラトプスは自動で進みます。空中でもう一度押すと、2段ジャンプできます。

FOUR LEGS / TWO LEGS

4本と2本、
同じ速さで見る。

トリケラトプス風の四足歩行と、ニワトリ・人間の二足歩行。速さをそろえて、脚の運び方を並べます。

4 LEGS

トリケラトプス風

3本で支える

トリケラトプス風の四足歩行低く重い胴体を、接地時間の長い4本の脚で支えます。

接地を長くして、いつも多くの脚を地面に残します。

2 LEGS

ニワトリ

1本で支える

ニワトリの二足歩行左右の脚を交互に運び、頭と胴体を小さく上下させます。

左右を交互に出し、片脚になる瞬間をすばやく通ります。

2 LEGS

人間

1本で支える

人間の二足歩行左右の脚を交互に運び、脚と反対側の腕を前へ振ります。

脚と反対側の腕を振り、片脚支持を交互につないで進みます。

画面を左右にドラッグすると、3体が同じ向きに回転します。

これは歩き方を見比べるための簡略モデルです。トリケラトプスの復元図や、実際の速度を再現するものではありません。

LEAVE A NOTE

気づいたことを、
その場で残す。

歩き方、3Dの見え方、操作の違和感を短く送れます。表示方式・速度・画面幅は自動で記録します。

メールアドレス・電話番号・URLは入力しないでください。送信内容は確認後に扱います。

ONE BUTTON GAME

進むのは自動。

きろく
0m
ジャンプ
0
HP
3
岩を2段ジャンプで跳び越えるトリケラトプストリケラトプスは右へ自動で進み、2段ジャンプで岩を避けます。

2回押すと、2段ジャンプ

SPACE / ↑ / タップ 2回まで ぶつかったら岩を押す

HOW IT WORKS

プログラムで行ったこと

01

4本をずらす

後脚(手前)→前脚(奥)→後脚(奥)→前脚(手前)の順に動かします。同時に4本は動かしません。

phase = time / cycle + offset
02

指先を地面へ残す

接地した瞬間の指先を保存します。支持中は同じ場所へ固定し、離地してから次の位置へ送ります。

stance ? savedFoot : nextFoot
03

関節を逆算する

指先から足首、膝や肘、付け根の順に位置を計算します。これが逆運動学(IK)です。

|L1-L2| ≤ distance ≤ L1+L2
04

重心を支える

接地中の指先が作る範囲へ重心が入るか確認します。最低3本の脚を地面へ残します。

min(feet) ≤ COMx ≤ max(feet)
05

角を立体から投影する

角は画面上の線で固定しません。頭を基準に、上下角と奥行き角を持つ3本のベクトルとして計算します。

x=L×cos(pitch)×cos(yaw) / y=L×sin(pitch)

ONE AXIS

変えたのは、歩行の大きさと速さ

設定変更前改善後
周期1500ms1800ms
歩幅72px60px
脚上げ28px20px
接地率76%78%
胴体上下動2px1px
頭の揺れ1.2°