Cool things in XSI no one knows!


to add to that:

  1. with your object selected, rightclick the Selection button in the Select MCP and you have quick access to all ppg’s related to you object like kinematics and material

  2. If you use xsi selection model its even easier; alt+LMB is for Range and alt+MMB is for Loop


Few more tricks on transform panel.

When in the transform mode : ([font=Verdana]Changing keys between x,y,z in S,R,T mode)[/font]
-Double click the lmb activates the x axis
-Double click the mmb activates the y axis
-Double click the rmb activates the z axis
-[font=Verdana]Ctrl key+Doubleclick on *left *middle *right mouse button to add any transform axis[/font]
-Double clicking the activated axis again brings back all three axis


These arejust some tips not really things in XSI necissarily…

  • boolean is bad. dont do it unless you have to. (learned it the hardway)
  • Buy a keyboard, do not try to do 3d wtih a laptop keyboard, it just doesnt work. (like if you want to meshsmooth something and its pitch dark in your room, you have to go turn on the numkey, and hten search for the lil + sign in the middle of your keyboard on the side of the 1/8th of inch tall keys… then you have to remember to turn it back off[always forgot that part])


probably not something that no one knows about, but regardless i found it quite handy once i found it:

Gauge the Render Progress
Sometimes on really complex photon or f.g scenes, xsi seems to take forever to render and i was never really sure if it was working and how long it would take. To get xsi to log progress reports on renders, go to the render options, select the logged messages tab and then select the level of messages you please. Now open up the script editor before renders and it will show the progress of the render, including how far it is along sampling gi or fg or whatever else.

This is also very useful for checking to see that your photon effects or raytracing is working properly because xsi churns out all sorts of details like number of photons reflected and the sampling rates.


Just found this.

You can hide selected polygons. I had no idea until I did it by accident one day.

Sorry if someone already mentioned this.


You forgot to say how do you do this, and maybe someone knows how to do the oposite, like isolating the selected polygons only, when I used isolate selecte, it isolates the whole object. if i am working in lests say the hand of a character, how can I isolate just the hand=?

You can customize the layout to work in a kind of EXPERT MODE.
Aplication > Layouts > Auto Hide. Full sreen.

But this lets the animation panel at the botton still visible, sot that frequently used when you are just modeling… I then created a new layout based on this one, and delete the animation panels.

Cool, but, I cant find a way to map this to a key, since this new layout does not appear in the keymapping panel.

The nice thing about these, is that if you need to go to the panels on the sides, you just have to move the mouse to one of those areas and the panels would pop-up.




Just select the polygons you want to hide and hit the “H” button.


Sorry if this is a repeat. I’m just so excited I have to post about it… er… without searching first. Wouldn’t no what to search for. Anyways, enough babbling.

I’ve been modeling a human head by working on one half and having a cloned mirror for the full effect. It was bugging me how the ortho viewport only has the “Right” option and not left. I tried object mode, but if you’ve tried object mode before, you know how it’s not the same as a true ortho view.

The reason why this was such an annoyance to me is because I like to switch between wireframe, hidden line removal, and depth cue rendering styles, depending on how much I need to see. The problem with depth cue and hidden line removal modes is that the cloned half would obscure my working model (I removed selectability on the clone so not to get mixed up but the lines are still visible) and again, object mode can’t help me in this situation.

So how did I resolve this? See those XYZ buttons in the viewport menu, just to the right of the camera and eyeball icons? RIGHT MOUSE click on the X and it flips the viewport on that axis. So for this Right ortho camera view, it does exactly what I need it to do, show me the left side without messing with the geometry itself (I tried scaling it on the -x to invert it and clone it again so that my working model would be “on top”).

The side view is the only view that I run into this problem, simply because of the 2 halves overlapping each other in that view. Just a bit of XSI “sum-ting sum-ting” that I just learned (and prolly would have learned earlier if I RTFM). So again, if it’s been discussed before or if it’s just common knowledge I appologize for the redundancy!


Thanks for the tip, but to add to it:

I just tried your method (because I too have had renders that I thought simply were not progressing) and discovered that you don’t need the script editor open. Once you set logged messages to “progress reports” you can watch the progress in the status bar.



-Another useful hotkey I use quite often while modelling is: I + Alt + MMB . This selects a line going around the object, such as a newly created edge loop for example.
-The F hotkey also frames the selected object in the explorer aswell.


yes the new edgeloop selection features are great.

to get an edge ring select 1 edge then alt + MMB a parallel edge and it will do a ring select.

there is also a range select. select 1 edge then a alt+LMB another edge anywhere. and it will try to find the quickest route to the other edge.

also keep in mind pressing alt is assuming your using default selection options. for anyone using the older SI|3D model. then its actually ctrl + ___


I often bring meshes into XSI using the OBJ format, and then always have to remove the “User_Normals” clusters, and sometimes other material or UV clusters.
It’s not too hard to delete these clusters, but it can be a pain to navigate to them for every object and select the right one.

Solution ? Copy either of these lines to the script editor and run them. Afterwards you can drag them onto a toolbar if you want to create a permanent button.

DeleteObj “*.polymsh.cls.User_Normal_Cluster.User_Normal”

= Deletes the User Normal element from the User Normal Cluster, but leaves the other clusters like UV information, from every object in the scene.

DeleteObj “.polymsh.cls.

= Deletes all clusters, including user normals, UV and material definitions.


Just discovered this shortcut, was new to me so…

Right clicking the “selection” button opens up this practical menu:

Surface Shader…
Last operator in stack…

General Properties
Modeling Properties
Animation Properties
Rendering Properties
Simulation Properties
Viewing Properties
Custom Properties
All Properties

also accessible via alt-RMB but I find this nicer. The alt-RMB menu is huge.

A trick I use during modeling on highres models, which is similar to ZBrush’s “hide outside rect”.

If you’re reaching your machine’s speed limit with your model, do an “extract from polygons (delete)” on the part of the model that you’re working on.

Then freeze the extracted part and continue working with it instead of the grand model. This will be much faster obviously. Just take care not to modify the boundary points.

When finished then, just merge the two parts together again.


Posted by Sil3 who obviously still doesnt know where to post this stuff :slight_smile:


Here is a small trick to be abble to export/import Ploted Shape clips from scene to scene like regular animation clips:

  • Select the froozen shape clip.
  • RMB and choose Source, in the PPG that opens, simply Save it using the save button.
  • Then just load it into the mixer in another scene with Load from file.

Hope it helps someone not loosing hair on it "


Someone correct me if I’m wrong, but I’m pretty sure those buttons are a little more complex than that. They’re still really cool though. With any object selected, they actually show an orthagonal view from the objects local axis. LMB for the positive axis and RMB for the negative axis. I’ve found them quite handy for seeing any necessary view of any object in a scene, especially ones that have been rotated in various ways.


Hey here’s a cool one I found last week I didn’t know about and I’ve been using XSI forever…

In XSI you can draw curves that go through the control points exactly with Curve > Draw Curve by Knot points. But if you want to rig up behavior that always sticks through the points it’s trickier.

Previously I was either using operators like the one’s at the bottom of this page:
or making little bezier handles by doing a bspline left handle point, 3 points in a row for the center then a right handle point and rigging them under a single parent and rotate it around to control the interpolation.

However I just figure out there is a way easier faster way to do it… what I didn’t realize is that Model > Curve > Fit on Curve goes exactly through the control points on a linear spline. That’s very different that the old SI3D where it just tried to fit the linear shape.

So the trick is:

  1. Draw a linear curve through the points you want to go through. Rig to control that curve.
  2. Model > Curve > Fit on Curve to have a curve that goes exactly through the points.
  3. Tweak the Subdivsion level for how tightly to fit.

Could be this is commen knowlege or others know about it, this has been possible since 1.0, but it slipped by me so I figured it’s a good tip.

Take care,
Michael Isner


Ok here’s another area in XSI with lots of secrets that are not well known: springs.
In general there are 3 different kinds of springs in XSI and they all are good depending on what you are doing:

======== Spring Type 1: Rigid Body Spring ==========
located: Simulate > Rigid Body > Rigid Constraint > Spring
> These springs are bests for dynamics like robots or plates of lava or anywhere where you need bi-directional control like a necklace on a character or hanging telephone pole.
> You can also wire the springs into explosions and stuff like that to make chunks of debris stick together.

======== Spring Type 2: Evolve Op Spring ==========
> This is the newest Spring in XSI it was introduced in 4.2. The main purpose of this spring is for secondary animation that works over a renderfarm.
> located: (draw a linear curve for tail shape) > Animated > Skeleton > Create Tail.
> also located in Essentials + Advanced Biped Guide if you duplicate off the tail bone to create a tail or use a stomach.

This spring is very powerful having lots of options to blend between animation and simulation. It also has a bunch of different caching modes so you can do stuff like scrub backwards through your dynamics.

You can also apply this spring on single objects through scripting:

//— start jscript here
[font=Courier New]var mysource = ActiveSceneRoot.AddActionSource(“MySpringSource”); [/font]
[font=Courier New]var a = CreatePrim(“sphere”, “NurbsSurface”) [/font]
[font=Courier New]var b = CreatePrim(“Sphere”, “NurbsSurface”) [/font]
[font=Courier New]Translate(a,10,10,10); [/font]
[font=Courier]var opcoll = ApplySpringOp [/font]
[font=Courier New](a+","+b, // simulated object, control object [/font]
[font=Courier New]40, // mass [/font]
[font=Courier New]5, // stiffness [/font]
[font=Courier New]3, // damping [/font]
[font=Courier New]mysource.FullName // spring simulation cache [/font]
[font=Courier New]); [/font]
//— end script here

Make sure you experiment with Rest State and Initial State it’s on a bit of a diagonal by default.

======== Spring Type 3: Special Projects Spring ==========

A couple years ago Special Projects put a spring operator in XSI scripting to help solve some of the challenges at high end accounts. That spring operator is still in XSI and even has some new features not well known.

> located: Scripting (ApplyOp)

In general this spring carries bounce a lot more than a textbook spring algorithm. The only disadvantage is it’s live like a videogame so you need to plot if you are going to send it to a renderfarm.

The new features in 4.0 were:

> mute slider: Will blend between the spring being active and inactive. So you can blend out springy animation.

> init: When active drains all the energy out of the simulation. So if you have a very bouncy system you can blend the mute to 0, key init on for one frame and then when you blend back out you won’t have the carry over of all the bouncy energy.

//— start jscript here
[font=Courier New]var a = CreatePrim(“Cube”, “MeshSurface”) [/font]
[font=Courier New]var b = CreatePrim(“Cube”, “MeshSurface”) [/font]
[font=Courier New]a.length = 3;[/font]
[font=Courier New]b.length = 3;[/font]
[font=Courier]var op = ApplyOp(“Spring”,a +";"+b); [/font]
//— end script here

Hope people find this useful,
Michael Isner


I thought I would add my Favourite.
Under transform set the mode to Enable tranform manipulators'. You can now toggle between your previous transform mode and theEnable transform manipulator’ mode by middle clicking on the Transform' button. While inEnable transform manipulator’ mode in a scene with a few poly objects select a point and then grab one of the manipulator handles and hold down control and the point will snap only on the axis selected in relation to any point which falls under the square (which in this mode appears) under the mouse.
Snapping to deadly accuracy.


nice post Isner

For those who are intrested in the spring operator and dont have a clue whats going on in the above post :argh: . u can easily test it out by doing the folowing

  1. open script editor

  2. type this
    applyop “spring” ,2

(the editor should be VB script by default but if its in jscript mode change it to vb)

3 select two objects and “Run” the script from the editor. The first object u selected will be “attached to the end of the spring” and the Spring will follow the second selected object.

  1. to edit the spring properties= open the explorer and expand the “First selected object” to >kinematics>Global>pos>posx,y or z. you should see an “S” on the posistion values, Expand one more time and click that "S"Spring to get the spring properties

  2. PLAY, key the “Second Selected Object” in a few positions and see what the values will do


or use Isners Quick little script
(Change editor to jscript and make sure immediate mode is off the run his script :D)
//— start jscript here
var a = CreatePrim(“Cube”, “MeshSurface”)
var b = CreatePrim(“Cube”, “MeshSurface”)
a.length = 3;
b.length = 3;
var op = ApplyOp(“Spring”,a +";"+b);
//— end script here

just mentioned the other way of making them incase you want to start using the spring on different obects than cubes and to give a better understanding of whats going on when u make the spring :smiley:


Chad Fox


This next tip was given to me by close friend of mine and is very useful

If you want to Cut (knife tool) but dont want it to go across the whole object. Select the Polygons you want to Cut and use the Knife Tool!
GREAT for making strait Lines across Large Distances of polygons

I find that no one knows this but its one of those things staring us right in the face :smiley:

Chad Fox