#KUB's TSE saves 3DS!!!!!
For those of you who don't know, "KUB, Inc." is the company which
developed the Keyframer Scripting .KXP Plug-In which is included in 3D
Studio Release "4" (I STILL say it should've been called 3.5, but
that's another topic). Also, they have announced and I believe are
now shipping a more extensive scripting package called TSE (The
Scripting Extension) for 3DSr"4". But I think even THEY don't
realize the full ramifications of what they've done! THEY'VE
SINGLE-HANDEDLY SAVED THE FUTURE OF 3DS!!
TSE does for the 3D Editor .PXPs, Material Editor .SXPs, Renderer
.AXPs, and Video Post .IXPs what the bundled Keyframer Scripting
Plug-In does for the Keyframer's .KXPs. Each implements a similar
BASIC-like high-level language which provides most if not all of the
full power of the IPAS4 plug-in API to "the rest of us" (to borrow an
advertising slogan from a company named after both a fruit and a
Beatles recording company). If you learn one, you've gone a long way
toward learning the others: the main structure of the language
(control structures, variables, arrays, definable types, etc.) remains
the same, and only the API-specific stuff differs. The .PXP module
even replaces the .KXP module bundled with 3DSr"4" since the IPAS3/4
API allows for "universal .PXPs" which act as both .PXPs and .KXPs
and can be called from either module (the Texture Browser is an
example of this) and can act differently accordingly (the Perspective
Matcher/Fast Preview is an example of this). The only Plug-In type
which is now not scriptable via a BASIC-like language is .BXPs, used
primarily for graphics file import/export!
Think about what this means, folks. Yes, it now means that just
about anyone can write plug-ins. That's important. It's VERY
important. But it's not the most important thing. The BIG
ramification here is this: IT REMOVES THE MAIN BARRIER HOLDING 3DS
BACK to the aging Intel/DOS/Phar Lap platform!
Those of you who have been reading message threads on porting 3DS
here in this forum in the past several months know that one of the
main things keeping 3DS from being ported to, say, Windows NT or OS/2
Warp or PowerMac or the SGI or DEC Alpha AXP, is the huge library of
IPAS plug-ins. While 3DS _itself_ could be ported relatively easily,
getting all those vendors to rewrite their plug-ins wouldn't be. Some
smaller vendors just couldn't afford to buy development systems and
cross-compilers for the numerous and sundry platforms which 3DS might
be ported to. What would 3DS be without these plug-ins? Would YOU
buy a fast Alpha rendering slave platform if you couldn't use most of
your .AXPs and .SXPs and .IXPs on it? None of your .PRJs that use,
say, FLOCK.AXP or EXPLODE.AXP or SMOKE.SXP or FLARE.IXP could be
rendered on those machines until those IPASes were translated to
them! And 3DS MUST be ported to other platforms, and SOON, if
Autodesk wants it to maintain its market share or even survival in
the face of such new competitors as the PC Magazine Technical
Excellence Award-winning Calagari trueSpace for Windows (3DSr"4"
wasn't even a runner-up for that award!), Real-3D, Lightwave for
Windows & Mac, etc.
But TSE eliminates that problem by providing a PLATFORM-INDEPENDENT
LANGUAGE for writing plug-ins! Assuming that KUB, Inc. themselves
ports TSE itself to those platforms to which 3DS is ported, then any
scripts written for it should run as-is or with VERY minor changes on
the new platforms! If everyone starts developing future plug-ins
using TSE rather than going the 32-bit C++ / IPAS4 SDK route
(expen$ive!), then all such plug-ins will be PORTABLE, most of them
WITHOUT MODIFICATION!
"But isn't TSE BASIC an interpreted language, and thus, y'know,
SLOW!?" Well, yes, it is. But from what I've seen, nothing about the
language HAS to be interpreted. There are no "execute contents of a
string variable as if it were TSE BASIC code" functions, for
instance. KUB could easily make translators for the various TSE
BASICs which would generate C++ code that could be compiled the usual
way, allowing TSE BASIC to act as a prototyper for compiled
plug-ins. With more work, they could develop an actual TSE BASIC
compiler that would generate executable .?XPs directly! And they
could do so for each platform that 3DSr"4" and TSE themselves are
ported to! Such compilers would cost more than the $400 price for
the complete TSE interpreter package (including all four modules),
but only developers who wish to market faster plug-ins that people
can't just load into a text editor (including the 3DSr3/"4" [F11]
editor) and peruse and learn all of their secrets would need them.
Those of us who wish to develop shareware or freebie scripts and
upload them for the benefit of all in this forum would need only the
interpreters. And, of course, the underlying common language remains
the same, so when new platforms for 3DS are available the sources
need only be recompiled with the new ported TSE BASIC compilers and
voila! New machine-language plug-ins for the new platform, without
changes (for the most part)!
So TSE has the potential to save 3DS by allowing it to be ported to
other platforms while retaining compatibility with new plug-ins
developed in TSE BASIC. But for this to work, everyone who has
3DSr"4" also needs to have TSE. The FULL TSE, not just the Keyframer
Scripting Package.
I therefore propose that Autodesk and KUB, Inc. enter into an
agreement to bundle the FULL TSE with all copies of r"4" sold from
now on, and to permit existing owners of r"4" to obtain it for free.
Those who already purchased it from KUB should get a rebate or
perhaps a credit toward other Autodesk products (including the Yost
IPAS Boutiques). This would be an acceptable compensation for the
lack of the promised Spline Patch model (which Autodesk is LEGALLY
BOUND to provide, since they promised it in an Official Press Release
which did NOT contain any legalese about "these specifications
subject to change without notice" or any such gobbledygook– but if
Autodesk gives us KUB TSE instead, I'll never mention the spline
modeller again).
KUB benefits by having lots of TSE customers, and Autodesk would
pay an acceptable license fee for them. Autodesk benefits by freeing
3DS from the Intel/DOS/PharLap Dark Ages. And we users benefit by
not having to give up our investment in 3DS in the near future to
prevent our Caligari trueSpace etc.-using competition from swallowing
us whole as they otherwise will if something isn't done and soon.