Back to Node List

Sprite Motion

sprite_motion

Motion filter for images: insert between an image and its consumer and the whole image moves (translate / ping-pong / rotate / bounce / wobble / blink / float / random) without promoting any parameters.

Reviewed
Guide available
The node name and summary are available in English. Port, parameter, and article details are currently shown in Japanese.

Input Ports

NameTypeDescription
画像
input
Image
Required
動かす画像

Output Ports

NameTypeDescription
画像
output
Image
このフレームの動きを適用した画像

Parameters

NameTypeDefaultRangeDescription / Options
動き
mode
Enum
Float

画像に適用する動きの種類

  • 移動Move
    開始位置から指定量までまっすぐ動く一方向の動き。最終フレームで量に到達。登場・退場・スライドインに
  • 往復PingPong
    行って戻るを等速で繰り返す。左右パトロール・振り子・上下往復に
  • 回転Rotate
    一定速度で回り続ける(360=1周期で1周)。プロペラ・コイン・風車に
  • バウンドBounce
    量の高さから落ちて、跳ねながら着地する。ボール・着地の弾み・ぷるんとした演出に
  • 揺れWobble
    サイン波のようになめらかに揺れる(±量の範囲)。草木のそよぎ・水面の漂いに
  • 点滅Blink
    オン(量)とオフ(0)を切り替える。警告灯・ダメージ点滅・信号に
  • ふわふわFloat
    0から量までゆっくり上がって戻る(常に正方向)。待機モーションの上下・浮遊アイテムに
  • ランダムRandom
    なめらかな乱れを出す(±量の範囲、シードで再現可能)。炎のゆらぎ・画面の揺れに
amount
Float
4-1000–1000 / step 0.5

動きの量(px。回転のみ度)

方向
direction
Enum
Right

移動・往復・揺れ・ランダムの方向(バウンド・ふわふわは常に縦、回転は無関係)

  • Right
  • Left
  • Up
  • Down
周期(フレーム)
period_frames
Int
00–120

何フレームで1回動くか (0 = アニメーション全体で1回)

毎フレーム指定
per_frame
Bool
false

移動・回転のみ: 量を毎フレーム適用します(背景スクロールは「端でループ」と組み合わせる)

端でループ
wrap
Bool
false

移動系: 画面端から出たピクセルを反対側から出します(つながるスクロール素材に)

緩急
easing
Enum
None

移動・往復の速度カーブ

  • なしNone
  • だんだん速くEaseIn
  • だんだん遅くEaseOut
  • 両方EaseInOut
ずらし(フレーム)
offset_frames
Float
0-120–120 / step 1

動きを N フレームずらします(時間差アニメーション用)

点灯割合
duty
Float
0.50.05–0.95 / step 0.05

点滅のみ: 周期のうち表示されている割合

シード
seed
Int
420–999999

ランダムのみ: 決定論的な乱数シード

Overview

A motion filter for images: insert it anywhere in an image flow and the whole image moves. No transform node, no parameter promotion — the shortest route from "I want this image to move". Motion math is identical to the motion node (including the loop-endpoint rule).

Usage tips

  • The standard wiring is image source → sprite_motion → animation_render — three nodes for a floating-sprite sheet.
  • Scrolling backgrounds: mode=Move + Per Frame ON + Wrap ON. If per-frame amount × total frames divides the canvas width, the loop is seamless.
  • Bounce and Float are always vertical; Move / Ping-Pong / Wobble / Random use the Direction parameter.
  • For fine-grained control of individual parameters, use the numeric motion node with promoted pins instead.

Common pitfalls

  • Rotation clips the corners: canvas size is preserved, so anything rotating outside is clipped. Give the canvas some margin first.
  • Rotation looks jagged: arbitrary-angle rotation of pixel art is inherently lossy. Prefer designs that read at 45°/90° steps, or use transform's 90° turns.
  • Move does not loop: Per Frame keeps accumulating. Use looping motions (ping-pong, wobble) or Wrap for loopable assets.

Related nodes

  • motion — numeric-output variant for driving promoted parameter pins
  • transform — static offset / scale / 90° rotation
  • animation_render — bakes the moving image into a spritesheet
Back to Node List
Sprite Motion — PixPipeline Node Reference