Happy Windows 7 and SI2010 SP1 launch day everyone!
Sorry for missing my self-imposed deadline, but I’m not feeling too well these days.
Regardless, I’ve managed to finish up the basic features. You can download the plug-in from here:
http://cid-485226d6dd07a5e2.skydrive.live.com/self.aspx/Softimage/SO%5E_UvGeometryConstraint%5E_x64.dll.rc1.zip
Unfortunately, I wasn’t able to build a 32-bit version, but I’ll get around to this as soon as I can.
About the plug-in: Install it by extracting the only file in the zip archive into your plug-ins folder, just as you would with any regular JS or Py plug-in. Once that is done, you should see a new menu item under the Constraints menu in the MCP, titled “UV Geometry Constraint.”
Under that you’ll find two submenu items, “Generate UV to Geometry cache” and “Constrain to Geometry using UV coordinates.” You might have noticed that capitalization is all over the place, and I promise you it will get fixed as soon as I regain most of my currently misbehaving brain cells.
Using the constraint is a two-step process:
Step 1: Setting up the constraining object:
Prerequisites: Constraining object should be a polygonal mesh with one or more texture maps.
a. Select the object you’ll be using as a constraining object. Invoke the aforementioned “Generate UV to Geometry cache” menu item.
b. A dialog box will appear asking you to select a cache map resolution and a texture map. The default resolution of 256x256 should be good enough for most cases.
c. Click OK and wait for a few seconds.
d. Once the command is finished, you should see a new property created under the constraining object with a name that starts with "UvToGeoCache_"
Step 2: Apply the constraint to the constrained object
a. Select the constrained object(s).
b. Run the “Constrain to Geometry using UV coordinates” menu item.
c. This will start a pick session. Go to the explorer and pick the property that was created in Step 1 above (the one with a name beginning with “UvToGeoCache_”.
d. Done! Navigate to the kine.global property of the constrained object, where you should know see a scripted operator named “SO_UvGeometryConstraintOperator” under it. Inspect it, and play with the U and V parameters.
Feedback is always appreciated, and I’ll do my best to finish the remaining work as soon as I feel better.