Matchbox Shaders No One Asked For

Yeah Nuke’s Curvetool would be cool to have in Flame, but how about another ASCII shader instead??

Here are five shaders I shamelessly stole from Shadertoy:

KE_Ascii
Ascii

KE_Extruder
Extrude

KE_LineDrawing
Line

KE_PredatorCamo
Pred

KE_VCR
VCR

Add these files to your shaders directory!
KE_Ascii.zip (51.9 KB)
KE_Extruder.zip (133.3 KB)
KE_LineDrawing.zip (132.1 KB)
KE_PredCamo.zip (41.9 KB)
KE_VCR.zip (113.3 KB)

These are pretty easy to port, but their usefulness is perhaps limited at best.
If you’re looking for something more world-changing, like Timewarp ML, maybe have a look here:

These aren’t shaders; they’re research in video manipulation.
As the site’s name suggests, most of these projects come with code - usually it’s Python.
Making these tools work with Flame would be substantially more work, but perhaps far more useful.
Let me know if you see anything that piques your interest; I have a couple I’d like to try.
Or if you happen across any other repositories of open source glsl or python code, I’d like to hear about them.

-Ted

18 Likes

These are cool! The one that’s Linux only, I wonder if it’s easy to fix it for Mac… it might just be a matter of sticking #version 120 at the top and changing that one texture() call into a texture2D() :thinking: Unless it’s a visual difference in which case it might be a very tedious process of swapping out all the noise functions and checking every pow() argument :weary:

4 Likes

Loving the PredCamo and how it has better results than the distortion shaders, will def. be useful in future

Thanks!!

As you know, debugging on Mac is tricky due to the total lack of compiler errors, so I’m more prone to just giving up :face_with_spiral_eyes:

I am able to get some useful info out of Visual Studio Code. On line 165 glslCanvas gives the error:
array constructor supported in GLSL ES 3.00 and above only

I recalled that Flame supports different versions of GLSL on Mac and Linux (120 vs 130) so I didn’t bother troubleshooting further previously.

At your suggestion I tried adding various #version numbers at the top.
Specifying 300 es made that error go away, but caused a host of other issues.
Maybe it has more to do with the graphics card than the OS.

-Ted

These are great thank you! You never know what requests you might get and these could save somebody alot of stress!

The predator one im sure will see alot of action if you dont mind the pun :wink:

1 Like

Finally had a chance to check on an older Mac version of Flame and the errors it gave were actually stuff I wasn’t expecting - there’s a working version below after I changed:

  • #version120 on first line
  • texture2D() instead of texture() on line 96
  • int(min(float(iFrame), 0.0)) instead of just min() in the loop headers on lines 297 and 338 because in GLSL 120 min always returns float
  • glFragCoord.xy instead of just glFragCoord on line 381 because it’s actually a vec4

The Mac compiler is just so unchill compared to the Nvidia one :persevere:
KE_Extruder (Mac fixes).zip (131.8 KB)

4 Likes

KE_SineWave distorts your image according to a sine wave:
KE_SineWave

This shader (along with the rest) has been upload to logik-matchbook:

-Ted

4 Likes

Wayne’s World wipe!

1 Like

We need to curate the logic-matchbook. There is a bunch of non-relavent and poorly documented stuff. I’d rather have 40 great shaders than try to find those in a pile of 200.

4 Likes

We can start by removing those old Logik event invites.

1 Like

Yup… with respectful deference to Ivar, they are not relevant anymore.

1 Like

To be honest though, if you download the full collection you should get the full collection.

It is easy to delete all of the LOGIK invitations, and then if you like you can further clean up and choose your OWN favourites. There might be some that you think you’ll never use until client asks for a Wayne’s World Transition.

I have been using the space + tab search function heaps and it has become an essential part of my workflow now. So easy to find the matchboxes you want and star :star: your favourites

every time there is a new install of LOGIK shader, you’d have to self curate.

This is my personal script to sort matchboxes. It creates new folders and group them by families. It’s sh, not python. It’s really simply and It can be much improved but it works and for me it’s enough. The unsorted stuff stay on first level but it’s easily browseable.

screen

It should work for macos also, although it’s something that should be checked.

As matchboxes installer creates folders with sudo privileges, the script has to be executed with sudo, too. ( “sudo ./sort_matchboxes.sh” )

note. It’s updated for last matchboxes.Every new matchbox, or family has to be added manually. On the other hand, It would be cool add a version number for the matchbox installer as it is being upgraded.

sort_matchboxes.zip (854 Bytes)

3 Likes