最初にざっくり理解する
Record Take は、ベジェ点や選択範囲をドラッグした時の変化を、
- どこを動かしたか
- どの方向へ動いたか
- 動き始めから終わりまで、どう変化したか
という形で記録します。
つまり、これは「最後にどこへ置いたか」だけを覚えるノードではありません。
動いている途中の変化も含めて記録するのが Record Take です。
初心者向けに言い換えると、
Record Take= 動画っぽく記録するPose Step Track= 写真っぽく記録する
と考えると分かりやすいです。
どういう時に使う?
向いている用途
- 点が動いていく途中も残したい時
- 0.0 から 1.0 まで、滑らかに変化する motion を作りたい時
- path point や selection を手で動かして、その軌跡を animation の土台にしたい時
- 後で
LayerMixerやLoopFitに流したい continuous motion を作りたい時
典型例
- マントの端を少しずつ揺らす
- path の control point を滑らかに動かす
- PixelCanvas の選択範囲を左から右へスライドさせる
向いていない用途
- 「この時刻ではこの pose」という静止ポーズを段階的に置きたいだけの時
- 中間の動きは要らず、最終姿勢だけ覚えたい時
その場合は Pose Step Track の方が合っています。
まずはここだけ覚える
Record Take を使う時は、次の 3 点だけ先に覚えると混乱しにくいです。
- 記録されるのは、今選択している
Record Takeノード - 保存されるのは秒ではなく、0.0〜1.0 の進行率
- 途中の動きも残る
とくに 2 と 3 が大事です。Record Take は「ドラッグに 1.2 秒かかったから 1.2 秒のアニメーションになる」という動きではありません。
実際にかかった時間は内部で見ていますが、保存時には start_time から end_time の範囲へ正規化して並べ直します。
概要
使い方
1. 記録ノードを置く
graph に Record Take を置きます。
2. source editor を開く
今の v1 で直接記録できるのは、次の editor です。
PixelCanvas- selection move
BezierPath- point drag
- selected points move
MultiPath- point drag
- selected points move
3. Record Take ノードを選択する
ここが重要です。
記録先は、今 graph 上で選択されている Record Take ノードです。
editor を開いているだけでは記録されません。
source editor を開いたまま、graph 上で Record Take を選んでください。
4. 直接動かす
たとえば:
- ベジェ点をドラッグする
- 選択した point 群をまとめて動かす
- PixelCanvas の selection を移動する
5. マウスを離して確定する
操作を確定すると、その動きが record_data と layer 出力に保存されます。
初心者向けの具体例
例1: ベジェの点を「滑らかに右へ逃がす」
やりたいこと:
- 最初は今の形のまま
- 後半に向かって点が少しずつ右へ動く
設定:
start_time = 0.4end_time = 1.0
手順:
Bezier Patheditor を開く- graph で
Record Takeを選ぶ - アンカー点を右へドラッグする
- 離して確定する
結果:
- 0.0〜0.4 ではほぼ止まったまま
- 0.4〜1.0 の間で、点が滑らかに移動する take になります
例2: PixelCanvas の選択範囲をスライドさせる
やりたいこと:
- 選択した部品を、画面左から右へゆっくり動かしたい
設定:
start_time = 0.0end_time = 1.0
手順:
PixelCanvasで範囲選択する- graph で
Record Takeを選ぶ - selection をドラッグして移動する
- 離して確定する
結果:
- selection の平行移動が
Transform2Dとして記録されます value.translationを見ると、その時点の移動量が読めます
例3: 一瞬だけ動くアクセントを入れる
やりたいこと:
- 普段は止まっていて、最後にだけ少し動かしたい
設定:
start_time = 0.85end_time = 0.95
結果:
- 動きが短い区間に圧縮されるので、ワンアクションのアクセントになります
仕組み
内部では、Record Take は
- source node
- source editor
- どの point / handle / selection を動かしたか
- その変化のサンプル列
を RecordedLayer として保持します。
重要なのは、保存しているのが
- どこをクリックしたか
- どの UI event が来たか
ではない、という点です。
保存しているのは 結果としてどう変化したか です。
そのため、UI event の再生ではなく、編集しやすい animation データとして扱えます。
Pose Step Track との違い
Record Take
- 動いている途中も記録する
- 中間の変化が残る
- 滑らかな motion 向き
Pose Step Track
- 最終姿勢を step として置く
- 中間の動きは残さない
- 段階切り替え向き
迷ったら、
- 動きそのものを作りたい →
Record Take - ポーズを並べたい →
Pose Step Track
で選ぶとよいです。
よくある勘違い
start_time / end_time は秒ですか?
違います。秒ではなく 0.0〜1.0 の正規化時間です。
source editor を開いただけで記録されますか?
されません。
記録先ノードとして Record Take を選択している必要があります。
value をそのまま画像へ使えますか?
基本的には使えません。value は transform や position の Map です。
画像ではなく、記録結果を読むための情報出力です。
ペンで描いたストローク全体も記録できますか?
今の v1 ではそこまでは入っていません。
直接記録できるのは、主に selection move と path point / handle の移動 です。
start_time と end_time を同じ値にするとどうなりますか?
実質的には「その時刻に重なった記録」になり、中間の広がりはなくなります。
連続 motion を作りたいなら、少しでも幅を持たせた方が分かりやすいです。
注意
- v1 では internal-only 型です。変数、Switch、一致判定、custom pin には開いていません。
- 記録対象は UI event ではなく、layer 化された変化です。
- 専用の track 編集 UI はまだありません。今は source editor からの直接記録が入口です。