XSI 1.0 first shipped 10 years ago


As Luc-Eric pointed out on the XSI list today, yesterday was XSI’s 10th anniversary.

Softimage Co. Announces First Customer Shipment of SOFTIMAGE/XSI Version 1.0

MONTREAL–(BUSINESS WIRE)–May 30, 2000

Softimage Co., a subsidiary of Avid Technology, Inc. (NASDAQ: AVID), today announced the first shipment of its groundbreaking 3-D animation SOFTIMAGE(R)|XSI(TM) system. The next-generation of 3-D animation technology, the SOFTIMAGE|XSI system is a significant breakthrough in the international digital media industry because it allows animators in the broadcast, feature films and games industries to take advantage of a first-of-its-kind, truly non-linear animation system. Within the first few weeks of availability, Softimage anticipates delivering the new software to over 17,000 users worldwide.

“SOFTIMAGE|XSI represents a tremendous amount of hard work, talent and energy from Softimage and we are extremely proud of it,” said Marc Petit, vice president of 3-D products for Softimage. “This project has been an amazing challenge from day one. The mandate was simple: completely re-invent a piece of software that had set the standard in the industry and redefine the benchmark.

“The SOFTIMAGE|XSI system is a strong platform on which we’ll be able to quickly build the next generation of tools for media professionals. With SOFTIMAGE|XSI, the .xsi file format and the XSI viewer, Softimage is ideally positioned to extend its leadership into online 3-D interactive content.”

Here’s some vidcaps from the XSI launch tour:

Python – Adding parameter to SCOP


Here’s a Python version of the CustomOperator.AddParameter example in the SDK docs, which shows how to add parameters to a scripted operator (SCOP).

from win32com.client import constants
from win32com.client import constants

null1 = Application.GetPrim( "Null" )
f = XSIFactory

s = """def MySOP_Update( ctx, out ):
   xsi = Application
   xsi.logmessage( 'update' )"""

sop = f.CreateScriptedOp( "MySOP", s, "Python" )


sop.AddOutputPort( null1.posx )

param1 = sop.AddParameter( f.CreateParamDef2("text", constants.siString, "hello") )
param2 = sop.AddParameter( f.CreateParamDef2("bool", constants.siBool, True) )
param3 = sop.AddParameter( f.CreateParamDef2("int", constants.siInt4, 10, 0, 100) )
param4 = sop.AddParameter( f.CreateParamDef2("dbl", constants.siDouble, 0.5, 0.0, 1.0) )

sop.Connect()

Application.InspectObj( sop )