Checking if an optional panel is open

The View > Optional Panels menu lists the optional panels of the current layout. In the default layout, this includes the main command panel (MCP), the timeline, time range slider, and the Main Shelf.

To check if a panel is open, get the panel from the ActiveLayout.Views collection and check whether it’s visible:

LogMessage( Application.Desktop.ActiveLayout.Views("main_shelf").Visible );

The case that wouldn’t clone points

Select Case doesn’t want to clone points. Suppose you have a set up like this:

If you plug Clone Point nodes into two consecutive Case ports, the first Clone Point only is executed.

If you plug something else into a Case port, between two Clone Points, then both Clone Points work:

But unfortunately I couldn’t trick ICE by multiplying the shapeID by 2. When I did that, ICE went back to evaluating the first Clone Point only.

Searching the SDK docs

For the searching the current SDK documentation, I would install the SDK docs locally. The local docs use a different search that works better.

To download a single installer for both the User Guide and SDK Guide:

Just the SDK:

Local search results are much better than the online search:

Visual representation of Softimage 2013 SP1 Fixes

As a word cloud

Full list of fixes

I had added the words “Softimage” and “2013SP1” and “Fixes” to the word cloud on purpose, as a sort of title tags for the cloud. Here’s a cloud without them. Note that some words, like “SDK” and “Crosswalk” and “Rendering”, are there because I added an occurrence of those words for each fix in that category.

Friday Flashback #75

Email blast for an “Experience Softimage XSI 5.1 and Face Robot 1.0” event in Orlando, June 2006.

The “jellyfish solver” bit caught my eye. I’d forgetten about that phrase. Here’s the “jellyfish solver” graphic:

and a description of the jellyfish solver from an xsibase interview with Thomas Kang, a co-creator of Face Robot:

The core of Face Robot is based on what we call the “jellyfish solver,” which is a densely interconnected web of nonlinear interpolation algorithms that can be tuned and manipulated through a common set of interfaces.