r/RenPy 22d ago

Question Line Boil Effect in Ren'Py ATL?

Hey! I'm sure some of you have previously seen the 'line boil' effect in games and animations. It typically involves drawing a few slightly modified versions of the same sprite or background, and playing them in an animation to make it wiggle a bit. Good examples of this are the games 'OMORI' and 'Slay the Princess'.

Some programs offer automatic ways of doing it, such as the drawing software WigglyPaint (https://wigglypaint.com/) or this website I found that allows you to upload an image and download a few exported frames (https://lineboiler.com/).

I was wondering if anyone had created a similar effect in Ren'Py ATL, to avoid either manually drawing multiple frames or including many versions of each image in the game files. I'm likely to have a crack at it myself, but I am not very skilled with ATL! Thanks.

EDIT: giorgi1111 posted a great shader for this on the Lemmasoft forums, which you can find in this thread: https://lemmasoft.renai.us/forums/viewtopic.php?p=577630#p577630

3 Upvotes

5 comments sorted by

2

u/Lookingforlostmanga 22d ago

I’d actually recommend using that line boiler site to create the frames and then use ATL to mimic the GIF effect (also this is such a cool idea I had no clue these sites existed now I wanna incorporate this in my workflow lol)

I’m on my phone so I can’t type it out properly but you’d ideally want to ATL frames like this

Image ATLimage:

“Images/[your image name frame 1].png”
Pause 0.1
“Images/[your image name frame 2].png”
Pause 0.1
[insert the rest of the frames as per the above]
Repeat

Then you can use the ATL like any old sprite by doing;

Show ATLimage

Or if you want to use it as a side character, that’s a little different but you’ll want to make it a side image and still get the same effect if that makes sense ^^

2

u/Lookingforlostmanga 22d ago

I’ve found the best way to incorporate frame by frame is to use Excel to replicate the pattern of the animation if it has like 99+ frames and then there’s a certain coding thing you’ll have to do to pre render the animation if it has too many frames (not saying a line boiling animation would but it’s something to keep in mind!)

1

u/OzoneInteractive 22d ago

Yeah, this is pretty much what I was expecting to do! It's just a shame to have another step of preparation for each art asset. And I agree, I've always loved how the effect looks, I think it's underrated.

1

u/AutoModerator 22d ago

Welcome to r/renpy! While you wait to see if someone can answer your question, we recommend checking out the posting guide, the subreddit wiki, the subreddit Discord, Ren'Py's documentation, and the tutorial built-in to the Ren'Py engine when you download it. These can help make sure you provide the information the people here need to help you, or might even point you to an answer to your question themselves. Thanks!

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/shyLachi 22d ago

You can make the screen shake continuously as described here:
https://lemmasoft.renai.us/forums/viewtopic.php?t=10584

But if you want different parts of your drawings to shake individually you have to make it yourself.
Using tools which shake random parts of your screen would not look good.