Sponsored By

Product Review: Virtools Dev 2.0

For those new to the product, Virtools is a production environment (such as Director) designed to allow the rapid creation of 3D-interactive applications.The second version of Virtools clearly builds upon previous releases, keeping a similar look while adding a host of new features that greatly improve the final package.

August 9, 2002

8 Min Read

Author: by Daniel Sánchez-Crespo Dalmau

The second version of Virtools clearly builds upon previous releases, keeping a similar look while adding a host of new features that greatly improve the final package. For those new to the product, Virtools is a production environment (such as Director) designed to allow the rapid creation of 3D-interactive applications.

It features importers for many popular file formats, an intuitive drag-and-drop scene manager, and a behavior engine that allows users to assign behaviors graphically to the different entities in the world. Import your Character Studio files (other supported formats are discussed later), make them move by dragging the appro-priate behavior from the palette, and off you go. No recompiling, no coding: all the actions are performed graphically.

For this reason, Virtools is a great tool for game designers needing to create working prototypes. In fact, it works so well that it can be used to create full-blown games of moderate size (no, that does not include Everquest). Thanks to the web player supplied with the package, Virtools can create some of the best web-based content around, with top-notch 3D graphics and interaction. It’s rather impressive to see some of the Virtools-based Doom clones available online.

Version 2.0 offers a wealth of new stuff for Virtools aficionados. To begin with, the number of behavior building blocks (BBs) has expanded to a whopping 400.

That includes everything from basic transforms or texture assigns, to rich and complex behaviors such as skin/bones con-trollers and Bézier patch support. Another highlight of the new features is the way Virtools handles progressive meshes. You can adjust your triangle count by moving one slider and modifying it on the fly to guarantee a good frame rate. Another impressive feature is the portal system that culls away large parts of the geometry to optimize rendering speed. All these features give Virtools the ability to produce professional-looking applications.

Should you require additional behaviors, there are several tracks you can follow. Your first stop should be to investigate purchasing the add-on Physics Pack (new in version 2 of Virtools), a version of the Havok toolkit designed to run with Virtools. The Physics Pack adds 30 new BBs, which implement gravity, friction, and the like in your project. If you don’t want to spend the extra cash to get more behaviors, Virtools sports a large fan base, and many community web sites have free downloadable behavior and composition collections. You can also create new behaviors using the supplied SDK.

As far as the interface goes, the overall philosophy has remained unchanged since the previous release: three stacked panes display the scene, behavior library, and current script. All actions are performed via drag-and-drop, with no coding required. Still, the interface has several problems that have remained from previous versions. For one thing, it does not follow a “standard” Windows design. In addition, the interface’s structure is counterintuitive: it lacks an undo feature, it does not follow standard key mappings, and there is a huge amount of information displayed on-screen. All these issues can make for a long and steep learning curve. An extra effort could have been made to make this otherwise strong product a bit more accessible.

Workflow with Virtools is, despite the flaws of the interface, a breeze. After importing your content (.3DS, .X, .MP3, .WMA, and Maya files are among the formats supported) you can begin assigning scripts to the items by dragging building blocks to the lower pane. Click the play button, and your composition will run interactively within the environment.

You can even select the renderer of your choice (DirectX 5, DirectX 7, or software/hardware OpenGL; DirectX 8.1 support is being added with the immi-nent 2.1 release) and limit your frame rate should you need to do so. While you are in play mode, the Trace feature shows you which BBs are activated at any given time, their parameter values, and other information. You may also set breakpoints, which will pause the execution once it reaches the marked BB. This way you can avoid losing vital information about its inner workings when the script is running at full speed. All these debugging features make working with Virtools very easy.

The documentation is a mixed bag. Virtools comes with a printed manual that, aside from being slick and well laid out, does a great job of introducing us to the basic components and terminology.

The 230-page manual covers the program operation and interface as well as the inner structure of the behavior engine in a fair amount of detail. It also features two complete tutorials that guide users through the different features of the sys- tem. Despite offering a strong introduction, however, the manual is not sufficient to gain real knowledge of the system: I had to depend on online help files, context- sensitive help, and the like to learn about specific building blocks and — surprisingly — the SDK.

One of the main strengths of Virtools Dev is the access to the SDK, allowing users to create specific building blocks. Do you want to create a complex AI? Then you need to use the SDK. Sadly, the SDK is not even mentioned in the manual, and the available online documentation is “under construction.” Several extensive samples are supplied (an AVI player, a Max exporter, among others), but if you want to go on with the SDK, you are left on your own.

The Bottom Line

Virtools 2.0 is a great tool with some annoying problems. On the plus side, it allows you to create great interactive content rapidly with its intuitive building block system. Being a programmer, I’m more used to coding, but it’s good to know that there’s something out there worth using for those of you that don’t know (or like) down-and-dirty coding.

The workflow is very intuitive and, given some time, can produce stunning results. In fact Microsoft selected Virtools as the first official Prototyping Tool: you can have a working prototype with final art and gameplay within weeks, not months, and if the game is good enough for Xbox, you can then move on to a final working environment (or stay with Virtools should you wish to do so), while keeping all of the art assets you have created. This pre-production or production-planning method, greatly encouraged by Virtools, can be a real advancement from traditional production techniques.

On the minus side, the first hours with the system are rather harsh: the interface is not intuitive, and the manuals only cover part of the picture. It’s true that using the manual tutorials can get you up and running fast, but Virtools needs more and better documentation. I have the sense that many interesting features are hidden in there somewhere, but the lack of documentation is preventing me from discovering them. And that’s a shame.



Read more about:

Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like