6 August 2001
Reported, written and edited by David Duberman
for editorial/subscription inquiries, send mailto:firstname.lastname@example.org
Search the Spectrum archives at http://www.3dlinks.com/spectrum
There will be no edition of Spectrum next week; we'll return August 20 with a special Siggraph report. To keep you busy until then, we've included in this week's report an in-depth comparison of two Flash output plug-ins for 3ds max: Illustrate! 5 and Swift 3D Max. Check it out below.
- David Duberman
AudioBase last week released a free MP3 streaming applet, AB3, for the Web developer community. The software reportedly lets developers integrate playback of MP3s into their Web pages.
The goals of AudioBase's Web developer initiative are to grow the overall market for Internet audio, broaden the use and awareness of AudioBase's seamless streaming technologies, and seed the market for AudioBase's Enterprise solutions.
AB3 is available for free download at AudioBase's developer portal http://www.audiobase.com/developer. This support site provides demos using AB3, user forums, support information, and an online code generation application for the integration of AB3 into a developer's Web page.
Turquoise Technology, a developer of multimedia content management and storage solutions for the advertising and marketing industries, last week shipped its flagship product, ContentCube, technology for centralized storing, retrieving, manipulating, and managing multimedia content.
ContentCube is a 16 inch by 16 inch appliance that plugs into a desktop computing environment, PC or Mac. It accepts both digital and analog content, converts the content to standard digital formats, and stores it for retrieval. ContentCube is controlled by Turquoise-developed proprietary software that provides a user interface combined with content-management functionality. The software organizes, tracks and provides versioning control for all types of content.
In the content-creation stage, users are able to build content in virtually any format they choose with any device, and then store it in a digital format in ContentCube for retrieval with a predefined taxonomy.
Pricing starts at $40,000 per unit, depending on storage capacity.
New from 9X Media is the modular X-TOP DVI (Digital Visualization Interface) multiple-screen system. The system will be unveiled at the Siggraph trade show August 14-16, in Los Angeles CA.
Targeted applications include personal and collaborative workgroups (typically two to six screens), presentation system (typically three to nine screens), as well as real estate-hungry individual applications such as schedule maintenance, spreadsheet analysis, stock trading, research, CAD/CAM, video-conferencing, electronic publishing, graphic arts production, video/audio editing, Web site layout, software application development, gene sequencing, laboratory work, multi-media, simulation, and gaming.
A display system ranges from two to nine LCD screens. Screens and their supporting arms literally snap into position since all digital and power cable connections are made automatically and cleanly through the system's adjustable mechanical arms and hub.
The system is compatible with multi-screen computing features already incorporated into such operating systems as Windows NT, MAC, Unix, and Linux.
LaCie, announced last week that it is equipping its external drives with a new FireWire controller said to double the data throughput performance of previous FireWire drives. Available in 20GB, 40GB, 60GB and 75GB capacities, the 7200 rpm drives stream data to the computer at a sustained transfer rate of 35MB/s and provide burst performance to 50MB/s. LaCie's new FireWire controller is a 400 Mbps interface that is based on a 1394-to-IDE bridge dual chipset. The drives are suitable for storing, exchanging and working on large files such as graphics, audio and digital videos, and reportedly eliminate quality and video frame loss.
The 3.5" drives can store up to five hours of DV video. They can be connected to the native FireWire ports that are standard with Macintosh G3, G4 and iMac DV systems as well as PCs incorporating Windows 98 Second Edition or Windows 2000.
With latest-generation FireWire support, the drives are hot-pluggable. Users can plug a LaCie drive in, remove it or swap it with others without shutting down or rebooting the computer. The drive mounts automatically as soon as it is connected. When properly formatted, the drive can be used to share video and graphics files between Mac and Windows computers.
LaCie says the new drives have been optimized to provide an access time of 8-9ms and a sustained transfer rate of up to 35 Mbytes per second (burst performance of 50MB/s). The drives have an enclosed, integrated universal power supply and two 6-pin IEEE-1394 connections.
InfoExpress's new personal firewall suite, CyberArmor 2.0, is a centrally managed distributed firewall that lets companies extend policy-based security to remote users who access corporate networks through risky Internet and broadband "always-on" connections. Configuration and remote management tools provide control over security policy implementation without the need for end-user intervention. The new version includes a Policy Wizard that lets non-security experts develop customized security policies for their users.
Other new features:
The new version also includes CyberConsole software for remote viewing of system configurations, alarms, status notifications, support for VPNs such as Nortel's Contivity, Cisco's VPN, Check Point's VPN-1 SecuRemote, Microsoft's PPTP, Alcatel VPN (formerly TimeStep) and integration with third-party databases including Oracle and Microsoft SQL Server.
CyberArmor Suite 2.0 comprises four components:
Web Crossing, Inc. last week announced its newest specialized community solution, Campus Crossing. The intranet/extranet solution is intended for educational use and corporate training. Features include setting up na online education space with public and private discussion areas, event areas for classroom demonstrations or guest speakers, course-building tools, student enrollment, graded online exam tools with student-tracking reports, and calendars, and more. Campus Crossing is available as a server-hosted solution or as a licensed product on all major platforms.
Campus Crossing courses contain personal study folders with classroom discussion areas for course material and related discussion, and private homework submission and discussion capabilities, all with email notification of new activity. Teachers and corporate trainers can manage enrollment, develop course material and give exams with technology modules that are easy to use. Educators and trainers can conduct real-time live classroom events using pushed content such as slides, Web pages and streaming video, alongside a chat interface for dialog.
Campus Crossing also provides a campus or corporate training center with a full email infrastructure including personal mailboxes, Webmail, POP3, IMAP and SMTP, plus email list serving. Campus Crossing serves either static or dynamic Web pages, with calendaring, polls, surveys and exams. Private and public group features provide a campus with the discussion infrastructure for administration and faculty meetings, student activities and communication with the public. New students can be set up with no client downloads or separate software installation necessary.
At SIGGRAPH 2001 later this month, Pulse, a developer of interactive rich media for the Web, will announce a suite of new products and technologies.
Among the solutions Pulse will debut and demonstrate at the show are:
Just out from Germany's Dosch Design are Comics Vol. 1 & 2, with a total of 40 3D comics-type characters. Supported apps/formats include 3D Studio MAX (3DS), Cinema4D (C4D), LightWave (LWS & LWO), and DXF.
Montréal-based Kaydara Inc. last week announced the availability of FiLMBOX 3.0, the latest release of the company's $5,000 real-time 3D content authoring and delivery tool.
Kaydara FiLMBOX 3.0 brings real-time "mixedmedia" authoring capabilities to Apple computers, with support for Mac OS X. The product also supports Windows 2000, Irix, and Red Hat Linux .
Enhancements made to FiLMBOX 3.0 include improvements to the Control Sets feature, enabling 3D artists to animate CG characters without having to program complex IK rigs and constraints. These enhancements also let animators interactively work with both inverse and forward kinematics, to generate keyframe animation, and modify existing motion-capture data.
FiLMBOX 3.0 also natively supports Kaydara's FBX, an interchange format for 3D data that lets users acquire and exchange 3D assets and media from a variety of sources. FBX has received industry support from 3D content vendors such as MOTEK, Zygote, Turbo Squid and NewTek, and streaming 3D content vendors such as QEDSoft.
New Zealand-based Right Hemisphere recently updated its Deep Paint 3D and Deep Paint 3D with Texture Weapons software with V1.61 patches.
MacTreasures, a Web site specializing in Macintosh software and hardware not found on retail shelves has added Art•lantis, Katabounga, and Zoom to its Web site.
Art•lantis is 3D software for photo-realistic rendering and animation featuring a new rendering engine. Art•lantis is available as a Mac/Windows CD.
Katabounga is interactive multimedia authoring software.
ZOOM is multi-platform software for 3D modeling, available as a Mac/Windows CD.
Microsoft last week released both trial and retail versions of its new MechCommander real-time strategy game last week MechCommander 2 lets players simultaneously command up to 16 BattleMechs in real-time combat. The 3D title features terrain that influences player tactics. Players knock down trees, blow through walls, jump jet onto cliffs and crush anything standing in their way to victory.
While a lone MechWarrior wields up to 100 tons of "Mechanized" death, the MechCommander rules the battlefield from above, commanding his units from the orbital dropship. MechCommander 2 also includes full support for Internet play, with matchmaking available on Zone.com.
The demo version is available on the game's official Web site at http://www.microsoft.com/games/mechcommander2. Players will be able to sample the single-player campaign mode as they take a journey into the Chaos March.
Also, at last week's Gen Con in Milwaukee, Microsoft showed five upcoming titles, including Dungeon Siege. The gaming convention attracts science fiction, fantasy, and general game-playing fans.
Gamers were able to try out two new role-playing games from Microsoft: Dungeon Siege, the new action fantasy RPG; and Asheron's Call: Dark Majesty, the expansion pack to the MMORPG. Outside the RPG genre, two games based on the BattleTech universe will also be demonstrated: MechCommander 2 and MechWarrior 4: Black Knight expansion pack. In addition, the company showed recently acquired Ensemble Studios' 3D real-time strategy title, Age of Mythology.
Zona, Inc., a massive multiplayer online game (MMOG) server solution provider, last week announced Gary Chang, Ph.D., former engineering lead of the Ariba Messaging Platform, as chief technology officer (CTO). Dr. Chang will drive the research and development effort at Zona, Inc.
At Ariba, Chang was responsible for the product integration and channel development of the Ariba Messaging Framework. He won the first Ariba “Individual Excellence Award” for the product development and was elected worldwide “top performer” for Ariba Global 2000.
Zona, Inc., Inc., is partnering with video game entertainment companies to enhance massive multiplayer online games with proprietary server and infrastructure solutions. Founded in August 2000, Zona, Inc., has developed a scalable, fault-tolerant server engine for online 3D games and environments capable of supporting tens of thousands of users on a server.
Macromedia Web World 2001 will be held September 17 to 20 at the San Francisco Hilton. The conference will focus on how developers use Macromedia products to design, develop, deliver, and display Web content and applications to multiple platforms and devices. Kevin Lynch, president of Macromedia products, and Jeremy Allaire, chief technology officer for Macromedia, will give the event's opening keynote.
The conference will feature 45 conference sessions and more than 25 speakers, including members of the Macromedia development team and independent industry experts. Jared Spool, a founding partner of User Interface Engineering, will also keynote. The conference faculty includes Dreamweaver gurus and authors Joseph Lowery and Al Sparber; Lisa Lopuck, a designer, Fireworks author, and teacher; Kelly Goto, who will discuss workflow and project-management with Macromedia Sitespring; and Flash experts Manuel Clement, Samuel Wan, and Joe Sparks. The conference is chaired and will be hosted by Jim Heid, a contributing editor of Macworld magazine and columnist for the Los Angeles Times.
The show, which also features product exhibitions and an opening party, is broken down across six events: The Dreamweaver Conference, Fireworks Focus Day, Shockwave Summit, The Macromedia Flash Conference, the Dynamic Publishing Summit, and the Macromedia Usability Summit.
By David Duberman
For those working in 3D graphics these days--according to a recent issue of Computer Graphics World, there are 200,000 of us--the World Wide Web is the final frontier. We conquered the gaming world long ago, and cinema is falling fast. But, try as they might, tools companies have thus far failed to make noteworthy progress in their ongoing battle to popularize 3D graphics on the Web. One reason often given by the experts is limited bandwidth: 3D, like other graphics, requires fast transfer speeds to be practical, but most people are still stuck with modems at 56K and slower.
Unlike most Web-based imagery, 3D graphics is vector based; to oversimplify somewhat, virtual three-dimensional objects are defined as clusters of vertices in space, connected by lines (specified as pairs of points), and then smoothed over with mathematically calculated surfaces. If that's all it was, it could be transmitted fairly efficiently. But when you add surface textures into the mix, and that's most of the time, you're back in the bitmapped world, which slows things right back down.
A different vector-based graphics technology that's achieved significantly greater success in online affairs is Macromedia's Flash. The main difference is that Flash is two-dimensional: lines connecting points on a plane, with optional fills. There are still bandwidth issues with Flash, but they're minimized by the fact that the content is relatively simple, and animation is done by the numbers, rather than flip-book style. This greatly reduces the amount of data that must be sent, but places severe limitations on what can be done in the context of Flash animation.
For objects moving within or perpendicular to the picture plane, Flash uses tweening animation, where the artist simply specifies starting and ending points for motion, known as keyframes, and the software calculates the intermediate positions. This is fine for simple effects, using much the same methods as in the early days of video games, and can be performed easily in Flash by those lacking in professional animation skills. But as we've seen in gaming, much greater verisimilitude can be achieved by simulating true dimensionality, thus approximating the reality we live in. Unfortunately for those of us less artistically skilled, to simulate dimensionality you've got to be able to draw objects from different angles, in small turn increments; Flash's animation automation doesn't cover this particular requirement. Even if you're good at it, drawing 3D animation by hand gets old really quick; it's just not fun. Fortunately, we've got programs like 3ds max to automate the 3D animation, and we've also got plug-ins like Swift 3D MAX and Illustrate! 5 to output 3D animations in Flash format.
The most important fact to remember about these plug-ins is that they save SWF files--the final output from Flash, intended for Web publishing--rather than FLA files. While Macromedia has published the specs for the SWF format, making software like Swift 3D MAX and Illustrate! possible, the FLA format, used for Flash authoring (it contains keyframe and layer information and other project-related data), is still proprietary.
Thus, while you can certainly bring the output into Flash and combine it with animation from other sources, add sound and interactivity and more, you can't really do much tweaking of the animation itself. You can, of course, edit the shapes, and even set keyframes for such editing, but to do this over many animation frames would be too labor intensive.
There's no tweening in these files; each animation frame is, in effect, a separate image. Thus, while Flash animations are known for their data efficiency and low bandwidth requirements, these plug-ins can easily save files that are as bloated as their bitmap equivalents or even bigger. So you've got to choose your rendering options carefully; that's one of the things this review will help you to do.
Swift 3D MAX
While Swift 3D MAX (hereafter called just Swift 3D) from Electric Rain offers a full range of output vector formats, including SWF, AI (Adobe Illustrator), EPS, and the new SVG (Scalable Vector Graphics), recently endorsed by the W3C (see http://www.w3.org/Graphics/SVG/), it's clearly oriented toward Flash output. The plug-in's user interface appears in the 3ds max Render Scene dialog after you choose it as a render, and offers a relatively sparse, although more than adequate, palette of output options. If you're outputting to SWF, you can choose Flash 3, 4, or 5 format. If you're saving as SVG, you can opt for native or scripted output, with or without compression.
More to the point are the output options, which apply to all of the formats. These settings apply to every object in the scene; you can't set rendering options on a per-object basis.
You can choose to have Swift 3D render with or without fills (surfaces) and/or edges (outlines). Settings for edges include Entire Mesh, which renders a wireframe (all polygons are outlined), or the generally more-desirable Outlines, with an option to include interior edge detail. In the latter case, you can set the maximum angle between faces at which the intervening edge will appear in the rendering. You can also set the line weight and color, and opt to include hidden edges.
For rendering object surfaces, Swift 3D offers five flat fill options and two gradient options. The former category's members, called cartoon fills, perform flat shading (i.e., large areas of one color each) and include:
If you want a more natural look to your rendered surfaces, you might opt for gradient fill rendering. The choices here are:
Additional options that augment the realism of the rendered image are shadows and specular highlights. The highlight effect depends on the fill option; sometimes it's white, but sometimes it's the same color as the surrounding area. With shadows, you can set a single light source that casts them, but no other lights can act as shadow fills, so they're always inky black.
Interestingly, the documentation illustrations shows the fill and edge type options in isolation, but not in combination. That is, example images show edges-only rendering and fills-only rendering, but not objects with both edges and fills. A possible reason for this is that edges can all too easily appear where you might not want them. They're applied to object outlines, of course. But they also show up between shaded areas in the two- and four-color fills, and between areas with different material IDs and different smoothing groups. So if you want multicolored, outlined objects, you'll have to put up with outlines around each differently colored area as well. It should be noted here that Swift 3D doesn't render maps (e.g., bitmapped textures) in 3ds max materials, but rather the underlying color.
To compare the different fill options, I created a simple animation of a subdivided box twisting, bending, moving, and rotating, so that the shading and curve of the sides varied significantly throughout the animation. I rendered 50 frames at 640 x 480 in each fill mode, with edges, shadows, and specular highlights all turned on. I left the other settings at their defaults. And for comparison, I also rendered the animation as an AVI file, which ended up being 266K in size.
I was looking for a compromise between rendering quality and file size. It's no surprise that the single-color fill option produced the smallest SWF animation at a minuscule 8K, but of course it didn't look the best. It didn't look bad; the twisting edges clearly depicted the animated changes in the object's shape, but the flat surface coloring did not, although it lent a solid appearance. The shadowing and specular highlight also helped. The next step up--average color fill--rendered at a slightly larger size of 20K. This option also produced flat fills, but these reflected lighting changes as the object rotated and changed shape. Thus, a bit of storage efficiency was lost, without much gain in the 3D look of the surface.
The two- and four-color fill modes rendered at 27K and 39K respectively, and did add a bit of dimensionality. But because Swift 3D apparently uses polygon edges as shading area borders, the dividing lines were quite jagged, giving the animations an unreal look. The visible edges between shading areas accentuated this effect, but it was obvious even when rendered without edges. Of the cartoon fill options, the full-color fill option was by far the most realistic, but at the cost of file size--961K--and playback speed.
That leaves the two gradient modes. Area gradient shading resulted in a file of only 23K. The gradients were somewhat unrealistic, but looked okay, and were a big improvement over the two- and four-color fill options. Mesh gradient shading looked the best of all the fill options, but produced a gargantuan file of over 1.5MB, which played back unevenly. This option is ideal for rendering high-quality still images of 3D objects with complex surfaces, but I don't recommend it for animations.
Rendering time is also an important consideration; Swift 3D isn't the fastest renderer I've encountered. While the AVI animation rendered in about two-and-a-half minutes, Swift 3D took more than eight minutes for most of the fill modes, and almost 11 minutes for the mesh gradient. Other tests resulted in even higher ratios. These results are skewed by the fact that the 3ds max standard renderer is multithreaded (I used a dual-processor machine for tests) and the Swift 3D renderer is not.
More on the manual, which comes in electronic format only: The author tries to come off as friendly and clever, but ends up being mainly annoying. Here's an example, from a section explaining an option that deals with surface normals: "I'm sorry, but I'm still getting used to that word because it just doesn't seem to jive with my logical vocabulary...but that's not really your problem." Indeed.
He also doesn't do a very good job of explaining some fairly technical topics, probably because he didn't understand them. For example, one output setting is a slider, called Curve Fitting, that goes between Lines and Curves. The writer discusses this in a vague way, where he could have illustrated it much more effectively, as I did for myself. In 3ds max I added a circle shape, made it renderable and thick, and then rendered it to two Flash files with the slider at either end of the scale. The Lines file was 548 bytes, while the Curves file was only 229 bytes. When loaded into Flash and edited, it was easy to see that the Lines file contained many more vertices than the Curves file. So if your scene can easily be approximated by a few simple curves, you'll save bandwidth by using Curves, but if you're dealing with more complex shapes, you might need to use Lines. Of course, for the most flexibility, use a setting somewhere in between, as the manual recommends.
Despite any minor gripes, at the end of the day I liked Swift 3D's 3ds max plug-in a lot. The product is easy to use, and for a broad range of Flash output styles, nothing else comes close. Even if you use only one or two of the fill options most of the time, it's great to have the others available. When Electric Rain speeds it up a bit, allows rendering edges on object outlines only, and lets you apply different styles to the various objects in the scene, this will be a killer product. Until then, it's still eminently useful.
Comparing Illustrate! 5 and Swift 3D is bit like comparing avocados and kumquats. While the latter seems more or less dedicated to producing Flash animations, the former is more of an all-around vector-graphics renderer, as evidenced by the fact that it can render in bitmap formats as well as vector. In fact, you get the best results and greatest variety of available effects from rendering to a bitmap, although the end product still generally looks like a vector image. When rendering to vector format, you can choose AI, DXF, or SWF.
Another reason it's difficult to compare the two is because Illustrate! 5 is a more mature software. Indeed, the first version worked with 3D Studio DOS, well before the Flash format became popular (it's still available, as a free download from http://www.davidgould.com). Thus, Flash output was added later in the plug-in's development, rather than designed in from the outset. Perhaps it's for this reason that the Flash output option takes advantage of relatively little of Illustrate! 5's overall rendering capabilities.
I'll start with a brief overview of how Illustrate! 5 works, before delving into the Flash capabilities. Like Swift 3D, it includes a renderer, but most of the setup work is done in a dedicated dialog that's accessed from the 3ds max menu bar. It's in this dialog that you choose a preset styles--Cartoon, Cel, Comic, Flat Toon, Hidden-line, etc.--assign it to the selection or all objects, get the style from the selection, or select all objects bearing the current style. You can also define your own style. The latter process is roughly analogous to building a material in max, except that instead of assigning maps and so on, you're assigning surface and line properties.
The Surface section lets you up to three colors for shadow, main, and highlight areas respectively. For each of these, you can set the opacity, brightness, relative size, and the amount of blending between them. You can also set the color source for each; this can come from just about any element of the assigned material, such as diffuse or specular color, or even the bump map. Thus you can apply the same style to several objects and get vastly differing results based on the materials in the scene.
Things get even more complex when you start to work with lines, of which a style can encompass up to 10 different types. Typically you'll use only a few of these in a style, such as Silhouette, essentially the object outline, or Crease, where two smoothing groups meet, or Surface Intersection. For each line type, you can define shape (round or square), size, color source--a solid color or derived from the object's material, as well as a brightness modifier--and a stroke/linestyle, such as dashed, dotted, or solid lines. There doesn't seem to be any provision for variable line widths, such as are found in hand-drawn cartoons.
When you're rendering to Flash output, all of the line options work, but. unfortunately, the surface options don't. You can apply any of them, but the only thing you'll get in the rendered output with Shading turned on in the renderer is flat, per-polygon shading. This is close to what you see if you set Facets mode for a shaded viewport in 3ds max. If you turn off Shading in the renderer, all objects receive simple, one-color fills. Sometimes turning off shading in the style caused an object's color to "bleed," replacing the designated background color. This doesn't always happen, so it might be a bug.
When you render to Flash in format in Swift 3D, you can preview your results without rendering to a file; the software produces a reasonably faithful facsimile in the 3ds max virtual frame buffer. Not so with Illustrate! 5, though; if you simply render to the frame buffer, you get a wireframe view that shows the lines but not the surfaces. In order to see the final output, you need to render to a Flash file, and then tell the renderer to open the file in Flash Player. This happens automatically, and it's nice because you can see the actual Flash output, but it opens up a new Player window each time you render, so you have to make sure to close it each time to avoid clutter.
To benchmark Illustrate! 5, I used the same animation as with Swift 3D. In shaded mode, roughly the equivalent of Swift 3D's full-color fill mode, rendering took about two-and-a-half minutes and resulted in an 827K file. In outline mode, rendering took about 20 seconds, and resulted in an 15K file. In the latter case, I needed to turn off the Surface option in the renderer to avoid having the surface color affect the background, resulting in a flashing animation. With Surface on but Shading off, roughly the equivalent of Swift 3D's Single Color Fill mode (but without the highlight option), rendering took a fast 23 seconds, and produced a relatively compact 47K file. So if you're rendering to Flash with Illustrate! 5, that's probably the best way to go.
Illustrate's manual, which comes in printed and online formats, is quite good in that it offers a number of instructive tutorials. However, the reference section could use filling out; sometimes you just want to look something up without having to dig through a step-by-step procedure. Admittedly, I'm giving short shrift to the software's many rendering capabilities; this is a very impressive plug-in in many ways. If you want flexible toon/comic/cel-style rendering with lots of options, and have occasional need to render to Flash format, this is the one to get.
Because of the clear distinctions in their capabilities, the choice of which to buy should be easy. Determine your needs, and make your decision based on which fulfills them best. Swift 3D provides the widest range of Flash output styles, at a cost in speed. Illustrate!, while limited in its Flash output choices, offers an impressive breadth of general vector-style rendering options, and is significantly faster.
Spectrum is an independent news service published every Monday for the interactive media professional community by Motion Blur Media. Spectrum covers the tools and technologies used to create interactive multimedia applications and infrastructure for business, education, and entertainment; and the interactive media industry scene. We love to receive interactive media and online development tools and CD-ROMs for review.
Send your interactive multimedia business, product, people, event, or technology news to: email@example.com. We prefer to receive news by email but if you must, telephone breaking news to 510-549-2894. Send review product and press kits by mail to David Duberman, 2233 Jefferson Ave., Berkeley, CA 94703.
If you contact companies or organizations mentioned here, please tell them you saw the news in Spectrum. Thanks.
Please send address changes (with old and new addresses), subscribe and unsubscribe requests etc. to the above address. If you use the Reply function, please do _not_ echo an entire issue of Spectrum with your message.
Publisher's note: We are now accepting limited advertising. If you'd like to offer your company's products or services to Spectrum's elite audience of Internet and multimedia professionals, send an email query to mailto:firstname.lastname@example.org, or telephone 510-549-2894 during West Coast business hours.
- David Duberman
©Copyright 2001 Motion Blur Media. All rights reserved. No reproduction in any for-profit or revenue-generating venue in any form without written permission from the publisher.