CompuServe Messages

#KUB's TSE saves 3DS!!!!!

    02-Jan-95 17:21:49
Sb: #KUB's TSE saves 3DS!!!!!
Fm: Marion K. Marks 70700,2777
To: KUB, Inc. & ALL 3DSfans!
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.