Making circles on the surface of a mesh

Taking a cluster of points and moving them on to a circle turned it to be easier than I thought… At first it seemed more complicated to get at the points, because sometimes the Show Values on the output of a Filter node is, let’s face it, misleading. Based on what a certain Show Values showed me, I started off using arrays instead of Filters, and that made the graph a little messier.

First, I calculate the point I want to use as the center of the circle. That gives me the first vector I need.

Subtracting the CC (circle center) vector from the PP (Point Position) vectors gives me a set of vectors that take me from the circle center to the points.

I just resize the PP-CC vectors to get point positions that fit on a circle:

Creating ICE Trees after you create a cluster

In brief: don’t click Create ICE Tree immediately after you create a cluster that you want to use in your ICE tree, because the ICE tree will be created on the cluster. And the ICE tree will be in the wrong place in the operator stack.

Check this out: in the ICE Tree view expolorer, I have two ICETree operators with the same name.

So, how did this happen? Like this:

  • Create a polygon cluster.
  • In the ICE Tree view, click Create ICE Tree (this creates an ICETree on the cluster, not on the mesh).
  • Select the mesh object.
  • In the ICE Tree view, click Create ICE Tree (this ICETree is on the mesh).

This can lead to problems when you use the cluster in the ICE tree. For example, if you use IsElement, it will return False for everything, and NbElements will return 0.

To understand why, take a look at the dump of the connection stack.

Line 6 is the ICETree on the cluster. That ICETree is below the ops that create the cluster, so you cannot use IsElement in that ICETree.

# sphere1.polymsh.modelingmarker
# sphere1.polymsh.ICETree (out)
# sphere1.polymsh.ICETree (in)
# sphere1.polymsh.cls.poly.clslist.Polygon.AddToClsOp (out)
# sphere1.polymsh.cls.poly.default_Polygon.SetClsOp (out)
# sphere1.polymsh.ICETree (in)
# Unnamed Operator (out)
# sphere1.polymsh.geom (in)

Making parts of an object circular

A first try at making part of an object “circular”. I usually try to start with something simple, and then update it to handle different/more complex scenarios.
Hat tip to Gustavo E Boehs, I got the idea to try this after watching his video.

I take cluster of points:

In the Move to Circle compound, I just move the points onto a circle on a specific plane (here, the XZ plane):

MX_Roundish does a lot more, but it’s a compiled operator. I’m just using a few ICE nodes 😉

Using vector subtraction to move a point onto a circle

Circles, spheres, and radii…

For a couple of reasons, I was playing around a bit with spherifying/circulizing this weekend:

Based on this basic idea: “every point on a sphere/circle is the same distance from the center”, I was able to rough-out a couple of ICE trees:

Creating a circle on the surface of a mesh required just a little bit of 3d vector math. Here’s a little video that goes over using vector subtraction to move a point onto a circle. I spent more time setting up the “Show Values” in my demo then I did recording the thing.

Instance master models and point clouds

Point clouds are just another type of 3D object, so you should be able to safely put them in an instance master, and have them show up in the instances.

This ICE tree adds a point for each person in the instance master. Here I added some spheres, but I could just of easily instanced some geometry and put a halo over everyone’s head.

If the instance master model is not at (0 0 0), then when I parent the point cloud to the model, the point cloud gets a local pos offset. So, I can either manually reset the local pt cloud pos to 0 0 0, or handle it in the ICE tree (by undoing the local pos offset by multiplying by the inverse transfo matrix).

Friday Flashback #55 NL3D: To infinity…from behind

After last Friday’s flashback about the origins of the name XSI, several readers asked why I didn’t mention “NL3D”…

Between the code name Sumatra and the eventual product name XSI, there was the infamous NL3D name.

In brief:

  • Sumatra was already taken
  • NL3D was being considered but both the dev team and the beta testers really really didn’t like it.
  • There was a naming contest on the Sumatra Beta list to replace NL3D, but nobody won.
  • The internal name “XSI” was chosen.
  • The runners-up in the naming contest were “Mantra” and “Tyhoo”.
  • Avid still owns the copyright on the NL3D name.

So, for the record, here’s a timeline of the NL3D naming debacle 😉

Someone leaked the “NL3D” name to the beta testers:

The truth is I got an anonymous email from some one at soft letting me know the plans for the name….and then I lobbied for a name change.
Lyn Caudle made the Anal (NL) 3d box art that we sent to soft, that was the end of that name 🙂 Thank god

Greg Punchatz*

And a “ex-Sumatra” thread sprang up on the Sumatra beta list:

“NL3D? Now there’s an emotive name ;-)” — Kim Aldis

“To infinity….. from behind!” new slogan!?” — Greg Punchatz

David Miller, the Softimage Director of Business Development, responded quickly:

Hi All:
Quick background and update on the naming of Sumatra. Over the past year, we have entertained many names for Sumatra and narrowed it to several candidates (through a long and most painful legal process). One line of thinking focused on NLA (non-linear animation) and thus Softimage|3D NLA was born and then modified to become NL 3D. Despite the obvious crappy connotations, we continued to use it as a place-holder and potential name.

Big mistake!

Obviously due to the passionate and focused response from our own staff and key customers (thank for getting the ball rolling, Greg) we will now remove this as a contender and as suggested by the forum, place the naming responsibility in the hands of the people who know the product best – our beta testers. Thus, starting next week, we will introduce a contest (with prizes) to help name Sumatra (details to follow early next week).

On 25 Feb, Softimage Marketing announced the “winner”. More accurately, they announced that a winner had been chosen:

And the winner is…

We want to thank all of you for your contributions to our name contest, your choices were great additions.
After much deliberation, we finally chose a name which we developed internally, so there was no beta forum winner.

We intend to announce the new name at the Sumatra (codename) kick-off launch held in Montreal on March 16.

Our worldwide launch locations and details will follow in a week or so.

On March 16, the new name “XSI” was announced. This press release explains the origins of the name.

Softimage Announces New Name for ‘Sumatra’; Company to Unveil New 3-D Strategy at NAB.

Following months of industry speculation, Softimage Co., a subsidiary of Avid Technology, today unveiled the new name for its next-generation 3-D animation solution code named `Sumatra’. From now on `Sumatra’ will be called SOFTIMAGE(R)|XSI

Softimage’s Vice President of Worldwide Product Marketing, Patrick Dumas, explains:

“Today, we are opening a brand new chapter in the Softimage story. `Sumatra’, after several long years of hard work, dedication and passionate belief in a true vision, is about to be released into the hands of our customers. And after many months of discussions , `Sumatra’ now has a new name: SOFTIMAGE|XSI.”

“The origins of this name are humble continues Dumas. “.xsi started as an interactive media file format intended to streamline the games development process. Today, .xsi is becoming an integral part of the overall creative process for digital media, whether in the film, broadcast or games industries. Hence, the famous software formerly known as `Sumatra’ will be the first component of this new way of streamlining the creative process.”

Building on this concept, the XSI initials will be at the core of Softimage’s new 3-D branding strategy, which will be unveiled, in detail, at NAB in Las Vegas on April 9th 2000(1).

From .xsi to SOFTIMAGE|XSI

The current development pipeline for the film, television and interactive markets is characterised by disjointed and discontinuous pipeline in which data flows without the need for translation and modification.

It soon became clear that what developed as a means to create, validate and deliver content for games was applicable across the whole spectrum of 3-D animation and could be used as a means to integrate disparate elements of the production pipeline. The .xsi file format is the mechanism utilised within this integration process, but the means to fully realise this process goes far beyond a file format.

The first stages towards this creation and delivery environment are already in place with the file format itself and the SOFTIMAGE|XSI Viewer, a feature that games designers can use to validate artwork before it is passed to the games development team. The SOFTIMAGE|XSI Viewer greatly reduces the need to re-engineer objects due to geometric or animation problems.

The next milestone in this process is the highly anticipated release of the SOFTIMAGE|XSI system that will introduce revolutionary functionality for the creation of 3-D animation and will set the standard against which other animation systems will be judged. The SOFTIMAGE|XSI system will be the 3-D engine driving the creative process.

Luc-Eric on the name “XSI”:

I believe the name ‘Sumatra’ was dropped purely for marketing reasons,
to reboot the product. After a frantic search for a new name, the
application was then named after the .xsi file format, to indicate its
game pipeline friendliness. Back then, a lot of plans were built around
.xsi, and the app called XSI would be the authoring tool for it.
This didn’t go as smoothly as expected, as the first version of XSI
ironically did not support .xsi and with the emphasis on Mental Ray and
NURBS-only tools, the game story wasn’t there. The origin of the name
was stated in an official press release:

The next day, 17 March, the runners-up (“Manta” and “Tyhoo”) were announced on the Sumatra beta list. Originally there had been a $1000 prize for the winner; since there was no winner, the two runners up split the prize.

Since we’ve finally announced the new name of the product: SOFTIMAGE|XSI
(aka: Sumatra (codename)), we can now announce the “runner-up” winners:

The $1000 will be divided between two contestants. The two names which made it into the final round were:

  • Mantra – submitted by Robin Trembley (and also Steve Gaconnier, but Robin Tremblay submitted first)
    • Inspiring.
    • Linked to your mind.
    • Maje reach the next level.
  • Tyhoo – submitted by Shinichi Hanada
    • TYHOO is typhoon in Japanese.
    • This is same as hurricane, but it take place in Asia (including Sumatra island and Japan).
    • TYHOO is the real phenomenon occurs in Sumatra.
    • TYHOO can explain Sumatra becomes real released product.