Technically that works, but much too laborious as there are many inter-object 
and intra-object dependencies.  Duplicating objects means we have to set up all 
the inter-object relationships again too.  Ideally, we need a solution that 
processes the texture projection in place.

I tried using MakeLocal() and SIMakeLocal() from the SDK, but they don't do the 
job either.  MakeLocal() throws errors and doesn't return what it says it'll 
return, and SIMakeLocal() doesn't seem to do anything.

I'll have to script something to replace the texture projections and redo all 
the relationships.

Matt





From: [email protected] 
[mailto:[email protected]] On Behalf Of Grahame Fuller
Sent: Tuesday, June 12, 2012 10:21 AM
To: [email protected]
Subject: RE: Localizing a shared texture projection

Duplicate the duplicates again, but this time make sure that your duplicate 
options are set to always duplicate or freeze projections. Then delete the 
"original duplicates".

gray

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Matt Lind
Sent: Monday, June 11, 2012 06:33 PM
To: [email protected]<mailto:[email protected]>
Subject: RE: Localizing a shared texture projection

...and what do we do if the objects don't have a texture support?  (explicit UV)


Matt


From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Grahame Fuller
Sent: Monday, June 11, 2012 3:25 PM
To: [email protected]<mailto:[email protected]>
Subject: RE: Localizing a shared texture projection

If I understand correctly, Get > Property > Texture Projection > Connect to 
Support, then pick the existing support. You'll also need to make sure that the 
textures use the correct projection in the render tree.

gray

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Matt Lind
Sent: Monday, June 11, 2012 06:01 PM
To: [email protected]<mailto:[email protected]>
Subject: RE: Localizing a shared texture projection

Let me add - without having to resort to using the SDK, which I already know I 
can do.



From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Matt Lind
Sent: Monday, June 11, 2012 2:58 PM
To: [email protected]<mailto:[email protected]>
Subject: Localizing a shared texture projection

Have a unique one that pops up from time to time, but one of those things I 
keep forgetting what the solution is.

One of our environment artists has created a very large scene consisting of 
25,000+ objects.  Many of which are duplicated from a common source object.  By 
default, when duplicating an object Softimage reuses/shares the texture 
projection(s) between source and duplicate as a means of efficiency.

The problem is she needs to animate the texture projection's translation on 
only a few of the duplicates.  However, keying any parameter in the Texture 
Projection Def property causes all objects in the scene (derived from the same 
source object) to have it's textures animated the same way.  We've looked in 
all the menus, tried freezing projections and so on, but cannot find a way to 
localize the texture projection to the duplicated object to break the 
relationship.  We have resorted to a workaround of using the copy/paste UV 
tools in the texture editor - which is OK if we only had to do this for one 
object.  Unfortunately she must do this for many objects and this workaround is 
quite laborious.

We tried CTRL + dragging the cluster between objects since they have identical 
topology, but softimage only copied the cluster, not the texture projection 
inside of it.  So we tried CTRL + dragging the texture projection onto the 
duplicate which copied the projection, but still shared the texture Projection 
def property underneath.


Anybody remember how to localize a texture projection so it isn't shared with 
anything else in the scene?


Matt



Reply via email to