In light of the Coronavirus crisis, please help make sure nothing stands in the way of social distancing in the VFX industry.

This petition asks the MPAA to act accordingly:


Sign the petition on Change.org

Be safe, everyone.

Let's build a kick-ass shader library

Moderator: SecondMan

User avatar
SecondMan
Site Admin
Posts: 4217
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 15
Location: Vancouver, Canada
Been thanked: 55 times
Contact:

Re: Let's build a kick-ass shader library

#31

Post by SecondMan » Tue Dec 10, 2019 8:49 pm

Those are not OpenCL, they are written in Lua, which is Fusion's interpreted scripting language of choice. It also happens to be the fastest such language in the world, which befits Fusion very nicely 😊

User avatar
Shem Namo
Fusionista
Posts: 344
Joined: Sun Oct 06, 2019 9:15 pm
Location: North Israel
Real name: David Kohen
Been thanked: 6 times

Re: Let's build a kick-ass shader library

#32

Post by Shem Namo » Tue Dec 10, 2019 9:01 pm

Amazing, I have to get into scripting :) Would you say lua is the best place to start?

User avatar
SecondMan
Site Admin
Posts: 4217
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 15
Location: Vancouver, Canada
Been thanked: 55 times
Contact:

Re: Let's build a kick-ass shader library

#33

Post by SecondMan » Tue Dec 10, 2019 10:20 pm

As is the case with so many questions, the answer is "it depends". Well, kinda. Actually if you ask me the answer is simply "yes", but I'll explain myself a little.

If you want to create Fuses, it's a no-brainer, because they are written in Lua. Even if you want to write OpenCL (likely DCTL as wel - but who knows) Fuses, the OpenCL kernel stuff still sits inside a cosy bubble of Lua.

For scripts, you have the choice between Lua and Python. Python is considered the VFX industry standard and is part of the VFX Reference Platform, but quite frankly, unless you aspire to work in the VFX industry as a Nuke TD, who the f cares. The VFX reference platform is also just something that's outlined by the major software vendors in that industry, who have put in there whatever it was that they were already using, it's not necessarily a measure of quality.

Personally, I've used both but I don't like Python. At all. It's slow, but I can live with that. For most general purpose scripts it's still fast enough. What I don't like about it is its use of whitespace to denote blocks of code. People (mostly Python devs) look at me weird when I say this but I can't begin to tell you how much that vexes me. I found a quote online that describes it really well:
It is the devil’s work, and it is the reason no one should work with Python. It is what prevents you from reliably cutting and pasting example code, emailing it to friends, or putting it on a web page. Use a real programming language with braces and escape this madness while your mind is still intact.
Python is more widespread than Lua, though, I also don't want to dismiss it entirely - it has a great community online, plenty of learning resources, and some of the nicest people in the world swear by it :)... If you're coming from Nuke or Natron or even Blender, you may well be familiar with it already, and if you want to port tools over, it's of course easier to adjust a bit of Python code rather than rewriting something to Lua.

Lastly, learning the general concepts of programming is more important than the language you will be writing your code in. Once you get the hang of one, you can already read the other and if you ever need to switch it's mostly a syntax adjustment (apart from the whitespace thing) and some practice.

Added in 11 minutes 3 seconds:
Actually, lastlier than lastly, before going into scripting at all - learn Fusion really well, first. Build comps, setups, maybe get into macros, then start adding some scripting if you need it (you may find that you don't).

When you know the fundamentals of the software you're using, you're going to find it much easier to figure out where scripting can actually be helpful.

User avatar
Shem Namo
Fusionista
Posts: 344
Joined: Sun Oct 06, 2019 9:15 pm
Location: North Israel
Real name: David Kohen
Been thanked: 6 times

Re: Let's build a kick-ass shader library

#34

Post by Shem Namo » Tue Dec 10, 2019 10:41 pm

I really appreciate that you took your time to write such a well detailed reply, you basically just answered all of my questions and not only that you also gave me your honest opinions based on experience and that is worth a lot. Thank you for the great advice.

User avatar
AndrewHazelden
Fusionator
Posts: 1589
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 8
Location: West Dover, Nova Scotia, Canada
Been thanked: 2 times
Contact:

Re: Let's build a kick-ass shader library

#35

Post by AndrewHazelden » Tue Dec 17, 2019 7:37 pm

@andromeda_girl has some great news:

Kick Ass ShaderZ is officially released on Reactor!

viewtopic.php?p=27949#p27949

User avatar
ISOTRON
Fusioneer
Posts: 161
Joined: Mon Aug 04, 2014 11:54 am
Location: Germany, Munich
Been thanked: 2 times
Contact:

Re: Let's build a kick-ass shader library

#36

Post by ISOTRON » Thu Feb 27, 2020 3:00 am

i like to add some shaders to the kas - lib , what about texturefiles i dont know the copyright think. I have a lot of textures from 2013 or earlier, but i dont know from where. Can i submit?

User avatar
andromeda_girl
Fusionista
Posts: 487
Joined: Sun Feb 21, 2016 6:25 am
Been thanked: 4 times

Re: Let's build a kick-ass shader library

#37

Post by andromeda_girl » Thu Feb 27, 2020 4:00 am

Hi Isotron!
We've both been so busy with work since the initial release that an update wasn't going to happen until our schedules eased up.
But also awaiting more submissions to justify an update!
So far only one other has submitted anything- so its nice to see this finally generating interest that goes wider.

But my schedule will get less 100-hr week-like by March 9th.

Please message myself and Andrew privately to start the process :)
Thanks again!
Au