Image offset and wrapping options?

Hi I’m just wondering if Pro Motion has any image offset/wrap options. The pattern setting options seem to do it, but what I want is to be able to animate an offset of an image and wrap it. Eg if I draw a waterfall to offset the image vertically at certain increments several times until it wraps back around making a seamless animation. Both photoshop and Aseprite have an option for this, but Aseprite’s one is quite limited, only allowing 1 pixel at a time, which is tedious. Ultimately I’d like to be able to switch over to Pro Motion entirely for pixel work.

Hi, I’m not sure if I understood you correctly. You have an image that represents the water and this is, let’s say 30 pixels high.
You want to start a function that creates an animation with, let’s say 14 frames, where this image scrolls down (2 pixels per frame) and you can playback it in a cycle making the animation look endless/seamless.
Is this your case?

Yes, that’s pretty much it, only that as the image scrolls down, instead of disappearing down the bottom the pixels that would be cropped outside of the box wrap around and are instead displayed at the top - making a seamless image but one that has been offset by x pixels. Kind of like how in some very old one screen games if the character walked to the edge past the screen boundary they would appear on the opposite side. I hope that makes sense.

Actually, I just found that it has the feature I need. It’s Frame>scroll. Sorry, I’m still finding my way around. That will work fine for me! Not sure if there is any way to change the increment, but even if there isn’t that will be ok :slight_smile:

This works, yes, but is not made for this.
Please also try the following:

  1. pick up your image portion as a brush, but be sure to have the image vertically twice in the brush (if the portion is 16x16 px then have a brush of 16x32 px where the image is there twice vertically giving a seamless water image)
  2. create a new project of the desired animation frame size (we use 16x16 for now). Use 1 frame only.
  3. Use menu Colors/Get Palette from Brush… . Now you could place the brush somewhere but we don’t.
  4. Go to menu “Animation/Create Animation…”
    (5. Hit F1 to get help for this window when you want to learn more. It’s a simple animation creator)
  5. Define the following values

We want to have 8 frames, from frame 1 to frame 8 being animated.
Define first frame y-position as “8” (y=vertical axis, 0 is in center, positive values up)
Define last frame y-position as “-8” (y=vertical axis, 0 is in center, positive values up)
–> you see your brush as simple wire frame object. In the first frame the brush stands on the bottom line. In the last frame the brush top is at frame top position.
The difference between the positions is 16 so its a half brush image part move (16 pixels vertically).
Now enable “Clear frames” which will clear all frames before applying the brush.
Enable “Cycle” which will make the animation run seamless by using the frame y-movement just divided by the frame count. So the last frame in the result is NOT the brush being at top position. Instead this is left out because this is the same position as in frame.

  1. Hit “Make Animation”.
  2. Give it a useful FPS-speed

There are other approaches, too.
A waterfall could profit from an “inner” animation as well. Imagine not to use a still image but make the 16x16 water tile be animated itself like some moving pixels defining slight waves.
You can use such an animation as brush and while the brush is moved down the inner animation is playedb back as well. Of course it should animate seamless, too.

Hope this all makes sense :slight_smile:
The key framer docs might be helping a bit.

1 Like

Hey, thank you so much! That is incredibly helpful! :smiley: Really appreciate it.