Currently a client renderer needs to reach into the guts of OSL in order to
compile. Here are
some of the pieces that need to be public:
Header oslconfig.h
Definition of ShadingContext, RendererServices, ShadingSystem, ClosureColor.
Probably some more - I'm having a hard time keeping all these new classes
straight.
10/09/09 16:29:04 changed by lg
ShadingContext? and ShadingSystemImpl? are just temporary -- that reaching into
the guts are
merely covering up that I have work to do on the ShadingSystem? public class to
make it right.
10/09/09 16:36:50 changed by ckulla
I see - I guess we can't do this now then.
We also need:
ClosurePrimitive
ShaderUse
10/09/09 16:43:37 changed by lg
ClosurePrimitive? is in oslclosure.h, already one of the public headers.
ShaderUse? is in osl_pvt.h, we can move it to a public area. But where do we
use it on the other
side of the interface? I don't see it referenced in Arnold.
10/09/09 16:51:05 changed by ckulla ¶
ctx->execute (ShadUseSurface);
Presumably there would be a similar line for displacement.
This doesn't need to be all fixed right away, I was just making a list of
things as I thought of
them.
oslconfig.h and export.h probably need to become public soon though, otherwise
none of the
currently public headers work.
On a related note: can we move the public headers to be on their own? I find it
very confusing to
have a folder with both public and private headers. I end up having to run make
and look inside
dist to see what's really public. Same comment for OIIO.
Original issue reported on code.google.com by rene.lim...@gmail.com on 11 Jan 2010 at 6:07
Original issue reported on code.google.com by
rene.lim...@gmail.com
on 11 Jan 2010 at 6:07