[Sidefx-houdini-list] Different otl version per node instance

Andrew Lyons tstexture at gmail.com
Tue May 10 16:30:39 EDT 2011

Its pretty standard to do the versioned hda naming described above. If
you're really careful you should be able to use switch SOPs and
promote the switches as toggles to make fairly serious changes to HDAs
backwards compatible. (Also be careful when setting the default for
the switch toggle after promotion.)

Hipfile merging may be appropriate in some cases. You might also want
to look at HOM solutions. You can do all kinds of switches in python
for different shots etc.


On 10 May 2011 10:27, Antoine Durr <antoinedurr at gmail.com> wrote:
> On May 9, 2011, at 10:12 PM, François Duchesneau wrote:
>> Lots of interesting ideas so far but nobody has given an opinion on why it
>> couldn't be possible to make a new feature to allow more than one version at
>> the same time of the same otl definition.
> There are already numerous places from which the asset can be defined,
> namely any place on the HOUDINI_PATH, and then there's the internal/embedded
> version, then you have the 'otprefer' on top of that to direct which one to
> really use.  We've gotten nailed more times than I can remember by
> accidentally using incorrect definitions.  And this is on a setup where you
> can only have *one* definition per OTL active.  I can easily extrapolate OTL
> Hell by having each node picking its own definition.  So while conceptually
> it seems like a good idea, practically I am extremely skeptical.
> But let's say you could, how would you do it?  How would you store v1 and v2
> of your otl?  You'd probably have foo_v1.otl and foo_v2.otl, each of which
> internally defines OBJ_myFoo, let's say.  Now you have two OBJects, foo1 and
> foo2.  foo1 is of type OBJ_myFoo (so optype returns OBJ/myFoo).  foo2 is v2
> (but optype also returns OBJ/myFoo).  Now le's make it fun: the storage
> location for foo_v1.otl is really:
> /this/is/a/really/long/path/at/the/end/of/which/is/some/version/of/foo_v1.otl
> As a user, you have foo1 and foo2, the difference of which is that foo2 is:
> /this/is/a/really/long/path/at/the/end/of/which/is/some/version/of/foo_v2.otl
> This is a lot of visual verbiage for differentiating two types, who
> ultimately differ by one character.  Now can you tell the difference between
> these two?
> /this/is/a/really/long/path/at/the/end/of/which/is/some/version/of/foo_v1.otl
> /this/is/a/really/long/path/at/the/end/of/which/ls/some/version/of/foo_v1.otl
> These are two different otls.  It's 2:30am, and your foo is not rendering
> correctly.  Find the problem fast!
> -- Antoine
> _______________________________________________
> Sidefx-houdini-list mailing list
> Sidefx-houdini-list at sidefx.com
> https://lists.sidefx.com:443/mailman/listinfo/sidefx-houdini-list

Andrew D Lyons | Digital Artist | http://www.tstex.com

More information about the Sidefx-houdini-list mailing list