I had been thinking of an idea for a new suggestion for sprite sheets and related type effects. While trying to clarify that idea I discovered it can already be done. Here's one example that creates a video based spectrum effect.
_
...
I still have to explore what else can be done with this technique. It is a bit heavy on the GPU but has wide-ranging potential.
Video Spectrum
-
- Posts: 711
- Joined: Sun Sep 14, 2014 8:15 am
- Location: UK
- Contact:
Re: Video Spectrum
A really cool effect. Very inspiring.
Thanks Sadler!![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Thanks Sadler!
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Re: Video Spectrum
This is amazing, so smooth and really well done.
Care to share some more details on how it's done?
Care to share some more details on how it's done?
Re: Video Spectrum
It is actually really simple. The basic idea is to find ways to move two or more polygons after applying them as a mask to some content. Trouble is, in order to mask one image (e.g. sprite sheet) or video to a group of polygons, they need to be 'grouped' as one. You can get around this by masking each polygon multiple times with the same image/video.
... This arrangement locates 9 polys across a 3x3 sprite sheet, masks each sprite (the bird in various poses), then moves them, in this case, to the centre.
The InputSelector then plays each sprite in turn, animating the bird - but you could do any transform you like.
The fun starts when using an iterator. With an iterator you have the advantage of laying out all your polys according to iteration#, masking everything at once, then transform again using iterator#. Turn sprites into particles, turn video/images into spectrums and possibly other applications I haven't thought of.
As I said, not to most efficient process but even with 80 iterations (= 80 masks) for the demo spectrum, I can achieve 60fps on a 2080. Maybe Magic devs could come up with a way to make this more efficient and even simpler.
... This arrangement locates 9 polys across a 3x3 sprite sheet, masks each sprite (the bird in various poses), then moves them, in this case, to the centre.
The InputSelector then plays each sprite in turn, animating the bird - but you could do any transform you like.
The fun starts when using an iterator. With an iterator you have the advantage of laying out all your polys according to iteration#, masking everything at once, then transform again using iterator#. Turn sprites into particles, turn video/images into spectrums and possibly other applications I haven't thought of.
As I said, not to most efficient process but even with 80 iterations (= 80 masks) for the demo spectrum, I can achieve 60fps on a 2080. Maybe Magic devs could come up with a way to make this more efficient and even simpler.
-
- Posts: 41
- Joined: Fri Mar 12, 2021 10:33 pm
Re: Video Spectrum
Very interesting - thanks for posting - would be nice for the actual mmv file to dive straight in ![Wink ;)](./images/smilies/icon_e_wink.gif)
![Wink ;)](./images/smilies/icon_e_wink.gif)
Re: Video Spectrum
It would be better for everyone, if those who are inspired or even just mildly interested, to try to recreate or adapt interesting effects - on here or elsewhere - and to post results. Even if mistakes are made, serendipity is strong in this activity and you get the benefit of learning for yourself, not to mention finding bugs, pinch-points and new workflows which feed back and make this software even more amazing and fun.[/rant]
Here is a minimal network for the spectrum - I'm sure some of you could have worked this out.
Here is a minimal network for the spectrum - I'm sure some of you could have worked this out.
-
- Posts: 41
- Joined: Fri Mar 12, 2021 10:33 pm
Re: Video Spectrum
Hopefully will do - thanks ![👍](//cdn.jsdelivr.net/gh/twitter/twemoji@latest/assets/svg/1f44d.svg)
-
- Posts: 176
- Joined: Tue Aug 26, 2014 11:22 am
Re: Video Spectrum
that's beautiful, congratulations !