[Bf-committers] OSL Composite Node

Dan Eicher dan at trollwerks.org
Wed Jan 9 01:32:13 CET 2013


On Tue, Jan 8, 2013 at 4:32 PM, Brecht Van Lommel <
brechtvanlommel at pandora.be> wrote:

> As I understand it, libjit doesn't actually come with any language
> compiler, it's just a way to generate instructions manually. So I'm
> not sure how using that would be trivial, LLVM gives you the same
> functionality as libjit, but the actual implementation of OSL on top
> of LLVM is still a lot of code?
>
>
Yeah, one would have write a parser to use libjit, not too terribly hard
but...

What I really meant was a way to call the compiled functions which it seems
is basically what OSL::ShadingContext is, a wrapper around the llvm
function calling mechanism with extra stuff tacked on for OSL globals and
whatnot.


> If you're going to allow only basic pixel processors, i.e. just
> reading and writing to pixels in the same location then it fits quite
> well already. You can have basic input/output parameters of shaders
> and it could run for each pixel.
>
> If you want to do things like blurring it gets more complicated
> because there is no concept of image buffers to read/write to, so some
> sort of mechanism for that would need to be implemented.
>

>From the IRC discussion it was decided not to do any complex things like
blurs since there's no guarantee that the pixels you want to look up
actually exist due to the way the compositor works with multi-threading and
tiles. So just simple single pixel stuff like relighting a scene (Ton's
example), technicolor, film-grain (I guess would work?) &etc.

Dan


More information about the Bf-committers mailing list