[Sidefx-houdini-list] Multiple VRAYprocedural-files

Mark Elendt mark at sidefx.com
Fri Jan 20 21:37:01 EST 2012


How do you deal with the different plug-in versions?  i.e. how do you
determine which plug-in gets put into the file in /tmp?

On Saturday Jan 21 at 13:19, Sebastian H. Schmidt wrote:
> Hi Mark,
> 
> thanks for this snipped, it makes sense, and i guess it'll work just fine
> with a couple of shots/different configurations.
> But when it comes to bigger production and a huge number of different shot
> configs, keeping the VRAYprocedural-files in each shot up to date adds an
> additional level of complexity especialy if you have a tool that manages
> the config, but does not modify the VRAYprocedural file as well :/.
> 
> I've modified the mantra-wrapper so it searches through the $HOUDINI_PATH
> for all VRAYprocedural files, combines them into a single file and puts
> that one in a temporary directory (/tmp/mantra-<pid>)
> that path gets prepended to the HOUDINI_PATH and than mantra starts up.
> 
> Have all a nice weekend!
> 
> Seb
> 
> On Fri, Jan 20, 2012 at 6:44 AM, Mark Elendt <mark at sidefx.com> wrote:
> 
> > VRAYprocedural is processed by CPP.
> >
> > I'd create a site-wide file, say "MyPlugins.inc" which contained
> > something like:
> >
> > --- CUT-HERE ------ CUT-HERE ------ CUT-HERE ---
> > #define DRIVE /myDrive
> >
> > #if defined(WIN32)
> >    #define DSO_FILE(FILENAME, VERSION) DRIVE/mantra/FILENAME-VERSION.so
> > #else
> >    #define DSO_FILE(FILENAME, VERSION) DRIVE/mantra/FILENAME-VERSION.dll
> > #endif
> >
> > // Always include plug-in A.  If the caller hasn't specified a
> > // particular version, use the latest.
> > #define LATEST_A_VERSION 1.3.4
> > #if !defined(A_VERSION)
> >    #define A_VERSION LATEST_A_VERSION
> > #endif
> >
> > #if defined(A_VERSION)
> >    DSO_FILE(PluginA, A_VERSION)
> > #endif
> >
> > #if defined(B_VERSION)
> >    DSO_FILE(PluginB, B_VERSION)
> > #endif
> > --- CUT-HERE ------ CUT-HERE ------ CUT-HERE ---
> >
> > Then, since you need control on a per-shot basis, I'd create a
> > VRAYprocedural file for each shot, with something like:
> >
> > --- CUT-HERE ------ CUT-HERE ------ CUT-HERE ---
> > #define A_VERSION 1.2.0
> > #define B_VERSION 1.5.3
> > #include "/myDrive/MyPlugins.inc"
> > --- CUT-HERE ------ CUT-HERE ------ CUT-HERE ---
> >
> > Of course, since the path is searched according to the HOUDINI_PATH,
> > you can have different VRAYprocedural files at each level.  So,
> > site-wide, you could have one set of procedurals, then override them
> > as needed on a per-show/per-shot basis.
> >
> > That's how I'd do it, though I'm sure there are other approaches.
> >
> > On Thursday Jan 19 at 18:00, Sebastian H. Schmidt wrote:
> > > Hi All,
> > >
> > > i'm running into a problem where I have mutiple VRAYprocedural files,
> > which
> > > are somewhere in the $HOUDINI_PATH.
> > > and the $HOUDINI_PATH changes depending what i'm doing
> > >
> > > so sometimes i have
> > >
> > > /myDrive/myPluginA-1.2.0/VRAYprocedural
> > > /myDrive/myPluginB-1.5.3/VRAYprocedural
> > > /myDrive/myPluginC-0.2.3/VRAYprocedural
> > >
> > > and another time i have
> > >
> > > /myDrive/myPluginA-1.3.0/VRAYprocedural
> > > /myDrive/myPluginF-2.5.3/VRAYprocedural
> > > /myDrive/myPluginC-0.7.0/VRAYprocedural
> > >
> > > etc.
> > >
> > > BUT i'm only alowed to have one VRAYprocedural. :/
> > >
> > > I cant build one general VRAYprocedural,  because the version-numbers &
> > > plugins  are changing depending even on a shot-basis.
> > >
> > > Am I the first who encountered this ?
> > > Does anybody have an idea how this can be solved ?
> > >
> > > Thanks for your help!
> > >
> > > Seb
> > > _______________________________________________
> > > Sidefx-houdini-list mailing list
> > > Sidefx-houdini-list at sidefx.com
> > > https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
> >
> > --
> > Mark Elendt
> > _______________________________________________
> > Sidefx-houdini-list mailing list
> > Sidefx-houdini-list at sidefx.com
> > https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list
> >
> _______________________________________________
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list

-- 
Mark Elendt



More information about the Sidefx-houdini-list mailing list