Advanced particle-based special effects?

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
wizzardx
Regular
Posts: 72
Joined: Thu Mar 19, 2009 2:35 am
Projects: An Ordinary Life, and various short Ar tonelico VNs
Location: At Frelia's side
Contact:

Advanced particle-based special effects?

#1 Post by wizzardx »

I'd like to check this quickly.

I know that Ren'Py has a particle system, but it's mainly for animating (lots of) regular Ren'Py sprites.

But is it possible to get more advanced graphics-processing effects too, or a good approximation?

For instance:

- Animated fire effect (like you'd see in a lot of older graphics programming demos)

- Large numbers of glowing/lumanescent and pulsing particles - basically like you'd see as a special effect in many games for magic. eg: A magical being teleports onto the screen in a special effect, the screen flashes, but also a really large number of magical glowy particles fly out for a moment.

I think that usually those are procedurally generated (usually in optimized C code), or at least hardware-supported, rather than being simple image-based animations.

If those can't be done with directly Ren'Py, is it perhaps possible for Ren'Py scripts to hook into OpenGl (or C code) at those points, or doesn't that play nicely with the Ren'Py rendering model?

Soraminako
Veteran
Posts: 277
Joined: Sun Sep 04, 2011 1:36 am
Projects: A thingie without a title. With messy code.
Contact:

Re: Advanced particle-based special effects?

#2 Post by Soraminako »

Hmm, I can't help you with the particle part of your question, but if you want a teleport effect, using a custom dissolve effect with the right kind of image as the effect itself to dissolve a sprite in will give the impression of "teleporting" or something similar.
If you figure out how to add the particles you described as well, the end effect should look like what you described.

I made this graphic, which I use for my teleporting/phasing in effect:
dissolve09.png
It may look lame in here but when used as a custom dissolve in game it makes for a nice "beam me up, Scotty!" look. XD

Hopefully it might be a little useful, even if it's really only a tiny portion of the stuff you mentioned in your question. ^^;
(I drew my avatar especially to express the scary feeling I get from the code as I type it... XD)

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4086
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Advanced particle-based special effects?

#3 Post by jack_norton »


the video above was done with a OLD version of Ren'Py. With the new screen and ATL I think you can do much better (I had to limit the number of particles since was slowing down a lot because used only software rendering).
As for the other HW specific things, once DX version is fixed I know pytom has in mind to add shader code - shader are excellent to do such effects (though I have no clue myself how to do them!)
follow me on Image Image Image
computer games

User avatar
PyTom
Ren'Py Creator
Posts: 16096
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: Advanced particle-based special effects?

#4 Post by PyTom »

SpriteManager can do quite a few particles, at least in OpenGL mode. Check out the demo for more on that.

Right now, we only support the normal (over) blend mode. Additive blending will be helpful for this stuff, but isn't going to be on the table until the GL improvements of 6.15.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

wizzardx
Regular
Posts: 72
Joined: Thu Mar 19, 2009 2:35 am
Projects: An Ordinary Life, and various short Ar tonelico VNs
Location: At Frelia's side
Contact:

Re: Advanced particle-based special effects?

#5 Post by wizzardx »

Thanks for those replies - very useful information 8)

- Soraminako - thanks, saved 8) . I have used image dissolves before, they're pretty cool (eg: combine dissolve with image dissolve for screen transitions). Though dynamic pixel warping or updating effects (heat wave, water ripples, fire effects, etc) are still on my wishlist for a future Ren'Py release.

- jack_norton - that's a pretty cool effect, thanks for sharing 8) . If PyTom adds shaders later, hopefully we'll get some nice examples for how to use them, too.

- PyTom - Thanks for that info. It sounds like a lot of interesting things are still coming. Thanks for all the work you put into this project 8)

Well, in summation, I guess these things are good candidates for my original question:

- Fire effect - have a pre-rendered series of PNG files with alpha, and cycle them?

- Screen spammed with magical/animated glowy particle things: Get a good particle PNG animation or two, and spam them like crazy with SpriteManager in OpenGL mode.

So, here's my next question:

Are there any good sources for the above types of "special effect" images for animation? Stuff like random magic particles, or animated (full-screen?) fire effects?

Post Reply

Who is online

Users browsing this forum: DewyNebula, Google [Bot]