Friday, July 6, 2012

Here's an ICE 2 Bone IK chain with UV support that I've been working on for a while.  I think I've got it stable now (no weird flipping).  If you've got ideas to maybe optimize or expand this, I'd love to hear it.

Hopefully you can follow my screenshot for setting this up.  First I create 4 nulls and 2 implicit bones.  2 of the nulls are the root and effector controllers, 1 of the nulls is the Up Vector controller, and 1 of the nulls is for the ICE rig.  I had problems with reference names, that's why you see the same name in the screenshot.  Make sure to update both names with your own names.  To calculate the bone lengths, I first create a temp 2 bone chain (Animate/Create/Skeleton/Draw 2D Chain) and get the lengths from that.  Occasionally ICE fails to update the bone lengths of the implicit bones.  To set the correct length, temporarily Show Values between Get Rig.L_Thigh_Length and self.length.  Seems to fix it for me.

Let me know what you think!


Download ICE compound:  http://www.si-community.com/community/viewtopic.php?f=15&t=2515

Tuesday, June 5, 2012

Offset Camera Position/Rotation By Object

A user on XSIBase was wanting to point the camera at an object, but offset its position when it gets too close.  Not the best ICE Tree, but it sort of works...

Friday, April 13, 2012

"Hiding" Particles Based on Texture Map


After creating a texture map on my grid, I read the Texture Map color's brightness and tested if it was Less Than or Equal to .5.  If it was, I "hid" the particles by scaling them to 0,0,0. 

I couldn't figure out how to delete the points; if you could, I'm not sure it would work correctly with an animated texture.

Also note, I scaled the texture projection down slightly to avoid incorrect values around the edge of the image.

Hopefully this helps.

Sunday, March 25, 2012

Emitting Particles At Fixed Intervals

Emitting particles at fixed intervals is primarily achieved by using the Modulo node.  By Modulo-ing our Current Time by a value of 48, we generate a looping set of numbers 0, 1....47, 48, 0, 1...47, 48, etc.

In order to emit our particles for only 3 frames, we can test the result from Modulo, and see If it is Less Than or Equal to 3.  If it is we emit 1000 particles (per second), if not 0.

Thursday, December 22, 2011

Setting a keyframe at the current time in Softimage with Javascript

With some help, I learned how I could set a keyframe at the current time in Softimage via Javascript.  Now, thanks to Myara, I can complete my synoptic page....

SaveKey(oObj.posx + "," + oObj.posy + "," + oObj.posz, getValue("PlayControl.Current"))


I couldn't get that syntax working, but I got a slightly different variation working:

function TL_MainBody(in_obj,in_mousebutton,in_keymodifier)
{
oObj = "Bkpk-Controls.NULL_MainBody";
SelectObj(oObj, null, true);
SetValue(oObj + ".kine.local.posx", -1, null);
SetValue(oObj + ".kine.local.posy", 1, null);
SetValue(oObj + ".kine.local.posz", 0, null);
SaveKey(oObj + ".kine.local.posx," + oObj + ".kine.local.posy," + oObj + ".kine.local.posz", getValue("PlayControl.Current"), null, null, null, null, null);
DeselectAll();
}

Sloppy, but it works!

Friday, September 16, 2011

Painting textures in Photoshop CS5

I experienced a problem with several models that I've tried to texture in Photoshop CS5.  The problem was that I could paint on the UV tile, but I could not paint on the model itself.  In addition, in order for my texture to appear, I needed to change 3D/Render Settings to Constant.  When I tried painting directly on the model, it brought up an error stating that the current Render mode didn't allow for it.

Well, it turns out that it was a problem with exporting the model from Softimage.  When exporting an .obj file, if you uncheck Export Material, you can then paint away directly on the model in Photoshop and you can also set Render Setting to Unlit Texture.