On Tue, Jan 8, 2013 at 4:32 PM, Brecht Van Lommel < brechtvanlom...@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 _______________________________________________ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers