Friday Flashback #99

In Dec 2012, there’s a rumor that ICE is “going to Maya” that’s causing some concern. Nobody wants to lose ICE 🙂

Let’s flash back five years to Dec 2007 when, in something of an ironic counterpoint, there was concern that rampant speculation about Moondust (aka ICE) would result in disappointment and a negative backlash.

…looking at all the nonsense floating around on the forums about Moondust, I already can see the negative posts when people realize it doesn’t do feature XYZ…

…It’s not going to go well for Softimage at launch if Moondust doesn’t meet expectations, and at this point, I’d be willing to bet that it won’t…

…Although it’s fun to speculate about Moondust, the over excited anticipation can only lead to disappointment…

Looking back, I don’t think that ICE did disappoint. What do you think?

web.archive of page

The case of the dotXSISceneConverter that wouldn’t load into Maya

In this case, a customer installed Crosswalk for Maya, but he got “Unable to dynamically load dotXSISceneConverter.mll” errors when he tried to load the plugin.

// Error: line 1: Unable to dynamically load : C:/Program Files/Autodesk/Maya2013/bin/plug-ins/dotXSISceneConverter.mll
The specified module could not be found.
// Error: line 1: The specified module could not be found.
// Error: pymel : Failed to get controlCommand list from dotXSISceneConverter // 
// Error: pymel : Failed to get modelEditorCommand list from dotXSISceneConverter // 
// Error: pymel : Failed to get command list from dotXSISceneConverter // 
// Error: pymel : Failed to get constraintCommand list from dotXSISceneConverter // 
// Error: pymel.core : Failed to get depend nodes list from dotXSISceneConverter // 
// Error: line 1: The specified module could not be found.
 (dotXSISceneConverter) // 

Now, this is pretty much the same error you get in Softimage if your PATH is missing the C:\Program Files\Common Files\Softimage location. That’s where the main Crosswalk DLL is installed. To verify this, I fired up Dependency Walker and loaded dotXSISceneConverter.mll (the Maya Crosswalk plugin). And sure enough, I saw that the Maya plugin depends on Crosswalk_2013.0.64.dll (the other errors are for Maya DLLs, so they can be safely ignored, and anything about IESHIMS.DLL can always be ignored).


So the fix is to add the missing Common Files\Softimage path to the PATH environment variable. The Crosswalk installer is supposed to take care of adding C:\Program Files\Common Files\Softimage to the PATH environment variable, but in this case, it apparently didn’t.

Wednesday Word Cloud – ICE node usage in shipped compounds

Here’s a word cloud of the top 50 nodes used in the ICE compounds that ship with Softimage 2013
That’s 3303 Get Data nodes, 2051 “embedded” nodes, 1889 PassThroughs, and 1071 If nodes.

Embedded nodes are compounds that are embedded directly inside another compound (instead of being references to a .xsicompound file on disk). Like Calculate New Velocity, Limit Turning Rate, Limit Acceleration, and Align Particle with Goal in this compound:

Not all embedded compounds are that interesting though. There’s over a thousand embedded compounds in the ICEFlowBuilder compounds; where even Set Data was embedded (probably so that the ICEFlowBuilder compounds wouldn’t break if something changed in an external compound, which did happen a few times).

Brush properties saved in scene file

Brush properties are stored in the scene file. Who knew? I certainly didn’t. Given where Brush Properties appear in the explorer, I didn’t expect them to be saved in a scene file.

What happened was that I loaded up a customer scene, activated the vertex paint brush, and it didn’t work. But I had just been painting vertex colors before I loaded their scene! I didn’t think to check the brush properties until later, so I spent a bit of time scratching my head over this…until finally I noticed that Selection was set to Use, not Ignore.


I tested this by saving scenes with different brush settings, and then reloading them. And different brush settings came in with each scene.

Screenshots of the week

Exploring the power of Non-Linear Character Setup with Autodesk Softimage
by Adam Sale

Transform polygons (from the PolygonTopoPack)
by iamVFX


Triple subdivide (with the latest PolygonTopoPack)
by iamVFX

Change context from polygons to vertices (with the latest PolygonTopoPack)
by iamVFX

Squash Stretch Volume Preservation with ICE (Fstretch like)

Negative scalar slider range
by NNois

Saturday snippet – simple example of Python list comprehensions

Here’s something I was trying to do in ICE (without using any Repeats).

Given an array like

a = [ 5, 2 ,3 ]

create an array like

b = [ 0, 0, 0, 0, 0, 1, 1, 2, 2, 2 ]

See the pattern? (a[0] is 5, so array b has five elements with value 0).

In Python, using list comprehension, you can do it like this:

a = [ 5, 2, 3 ]

print [ i for i in range( len(a) ) for j in range( a[i] )]

The list comprehension is the equivalent of:

for i in range( len(a) ):
	for j in range( a[i] ):
		print i

Friday Flashback #98


3d.archive.9712.Sumatra.revisitedWhat were they talking about 15 years ago on the SOFTIMAGE|3D discussion group? Well, for one thing, they were wondering about “Sumatra (codename)” and whether they’d lose the beloved spartan SOFTIMAGE|3D interface:

Aside from the possibility of losing certain favorite tools I am very concerned with what Sumatra’s design will be like. I really love the spartan modular SI interface. It’s elegant, clean and very responsive.

I agree about the Interface. I really don’t care if they change the “look” of the interface, do that goofy rounded thing with the buttons, as long as they keep the functionality and general layout: The menu cells along eachside of the four views.

My vote is to KEEP THE SPARTAN INTERFACE. 10-15 hrs/day, I really don’t want to be looking at colorful icons and layers of hidden functionality collapsed into an insufficient number of modules.

The answer back from Softimage makes for interesting reading (keep in mind that “Sumatra (codename)” wouldn’t be released for another couple of years):

Subject: RE: Sumatra… revisited
From: Dan Kraus
Date: Mon, 22 Dec 1997 10:45:21 -0500


>I think we should all think about it and be a little concerned that
>after SIGGRAPH SI has not even whispered the word ‘Sumatra.’

Although we’ve been coding hard since well before Siggraph ’96, we
haven’t spoken too much about it, except at the yearly Siggraph users’
group, because we want to be certain of our ship date before starting to
set concrete user expectations.

Sumatra is a complete replacement for the currently 3D product –
modelling, animation, rendering, particle, mental ray, etc, all
integrated into a single, seamless multi-threaded environment. We’re
coding Sumatra simultaneously both on IRIX and NT – there’s no ‘port’
involved this time, which also means that we get to take max advantage
of the hardware on both sides. Of course, there’s a lot of new tools –
performance, modelling/animation, etc – but our first priority is the
v3.7 toolset, to guarantee that you can use Sumatra for exactly the same
thing for which you use SI3D today.

Sumatra will actually be preceded by Twister – a standalone rendering
product which uses the Sumatra interface/architecture, and also
incorporates the next-gen of mental ray (v2.0). Twister is designed to
be used in tandem with SI3D, so you can start using/learning the new
interface as you’re comfortable, and integrate it into your current

We currently expect Twister to ship in Q3 (Calendar) of ’98, and Sumatra
(Q4). This is behind our original target dates, but we want to be
completely certain that Sumatra is a true replacement for the current 3D
product. From the upgrade point of view, we’ll be treating Sumatra as
the release version of SI3D, which means users under maintenance will
recieve an automatic upgrade, just as you would to a point release or
service pack.

>>I wanna know what the interface will look like

Can’t blame you 😉 One of the most time-consuming tasks of the
Sumatra/Twister effort has actually been understanding and replicating
the existing user model. This extends way beyond pure interface issues,
and it’s taken us almost 2 years of work with our PM and internal
development teams (including several professional animators) to
guarantee that we understand why and how data is passed through Soft,
and propose an interface re-design which improves on what we have today.
We also have the benefit of having a true in-house production team (the
Softimage Content Group), who works closely with us on tool design,
putting things into immediate practice as soon as they’re coded.

Here’s a peek at a few of the key UI issues, and what’s happening:

Speed of Access – things like parent, cut etc are not available in all
the modules in Soft. One of the things you’ll notice when working with
Sumatra is that the right-hand panel provides you with all the general
controls you need – all the time.

Tools Organization – The Sumatra UI puts things in more sensible and
intuitive places, yet respecting where the most important controls (ex keyframe)
sit today.

Quick Selection Model – Sumatra has filters and presets which make life
much easier by not just making them ‘unselectable’ as is the case in
v3.7SP1, but actually letting you pre-select the type of objects you
want to grab. Makes repeated actions on a certain object type a whole
lot easier

Existing Workflow – The Sumatra UI has been designed with a constant
preoccupation (‘obsession’ is probably more accurate, actually 🙂 with
maintaining the existing workflow. Specifically, things like keeping all
the major tools two clicks away, providing contextual menus (ok, that’s
new :-), work-centric focus (manage your character, not the tools) – and
most of all, pure interface speed.

Please keep the comments coming, and keep an eye on our web page early next year – we’ll start rolling out the info as we draw closer to ship.


Dan Kraus Softimage/Microsoft
Product Manager, 3D Montreal, Quebec

There was also a side-discussion of whether or not a context-sensitive UI would be a good thing; surprisingly (to me at least), opinion seemed to be split on that.

Showing per-sample colors in ICE

Suppose you have some per-sample attributes on a mesh. For example, suppose you’re getting the texture map colors from another mesh like this:
The Show Values makes it look like you’re getting one color per vertex, but that’s not true.

If you do a Show Values like this (numeric), you’ll see that you’re getting multiple values (one per sample).

To see all the values as colors, you need to offset each Show Value. Otherwise they just stack up on each other, and it looks like just one color.

The case of McAfee antivirus, VBScript, and the Softimage startup crash

As I’ve mentioned before, Softimage cannot run without VBScript. You won’t get any errors with xsi.exe, just a crash, usually sometime after the splash screen. But xsibatch will give you some errors that tell you what the problem is:

C:\Program Files\Autodesk\Softimage 2013\Application\bin>xsibatch -processing -script %TEST%\test.vbs
Autodesk Softimage 11.0.525.0

ERROR : 2000 - Failed creating scripting engine: VBScript.
ERROR : 2000 - Failed creating scripting engine: JScript.

It turns out the problem is related to McAfee antivirus, which for some reason has overwritten some important VBScript and JScript registry values.

To fix this, you need to get back the VBScript and JScript registry entries. I haven’t had to do this myself, but I think this page gives a good explanation of the problem and what to do:

You’ll find a number of other pages on the Web about this. For example, here’s a thread on Note that fixing just VBScript is probably sufficient to get Softimage to start, but you’d still be missing JScript.

Related post: The case of the missing vbscript