With Axel Edge 1.5, a modeling, animation, and publishing tool available for the PC and Macintosh (OS 9 and X), Canada's MindAvenue continues its pursuit of stalwarts such as Macromedia's Director. Version 1.0 showed promise as an easy-to-use product with a pure web focus, and newly released version 1.5 builds on that foundation. I'll take a look at this new release with an eye toward its suitability for creating web games.
Axel comes in two different flavors: Axel Edge (retailing for $950) is the flagship product, while Axel Core (retailing for $350), is the light version, lacking the IK, advanced reactions, and Lightwave import features of its big brother. Both the PC and Macintosh versions have modest system requirements and should run well on virtually any studio machine. Testing on a dual P3-800 workstation with 512MB RAM and an Nvidia Quadro 2 graphics card found the software to be both stable and speedy.
In addition to its animation and interactive capabilities, Axel differs from most 3D web-authoring packages by including a relatively full-featured polygonal modeler. In most other systems, you create 3D content in a stand-alone package and then import the scene file into the authoring system. With Axel you get a full modeling environment with an interface (on the PC) that is a happy combination of 3DS Max and Maya. Object hierarchies, and indeed everything else, are viewable through the Project Manager, a complete tree view of the entire 3D world and current project settings. Individual object parameters are also easily accessible through a parameter editor window.
Animation and control frames and menus available in Axel Edge 1.5
Internal modeling tools were important in Axel 1.0, as its 3D import capabilities were limited to VRML. With Version 1.5, you can now import Lightwave objects and scenes, as well as 2D shapes in .EPS format, and a 3DS Max importer is currently in beta testing. Axel's modeling tools include all of the usual suspects, such as extrusion and lathing. Text can be displayed either as extruded 3D geometry or a 2D overlay. Axel Edge also provides a capable skeletal (bones) system with forward and inverse kinematics.
Object shading and texturing is basic but more than sufficient for most web purposes. Vertex shading is supported, as are animated textures (AVI, QuickTime, MPEG, and Flash). Texture maps can be up to 5123512 pixels in size, but projection methods are limited to cylindrical or planar. Environment mapping is supported to simulate reflections. Axel also smartly provides the option to stream large texture files to minimize the initial download time. Also new to this latest release are multiple rendering styles (standard, cartoon, or wireframe) that can be assigned on a per-object basis. Scenes can be lit with directional, point, or spotlights.
Building animation is also straightforward. Axel utilizes a standard keyframe metaphor, and all animated parameters are represented in a timeline, which Axel refers to as the Sequencer. It's interesting to note that Axel measures animation in seconds, not frames, with the smallest keyframeable time slice being 1/10th of a second. As such, it's not possible to set a specific animation frame rate (the playback system's capabilities determine the frame rate). A capable constraint-and-joint system allows for the creation of logical object hierarchies. The package does not include a physics system per se, but it does include a nifty spring constraint to create a springy joint between two objects. There's also a usable particle system, and shape morphing for geometry is supported. Individual animation clips can also be encapsulated as an animation reaction, which takes the clip off the main timeline and makes it available for playback based on an interactive trigger such as a mouse click.
Once a project is complete, publishing for the web is cake. The program creates a stream (content) file, which is embedded into a web page using standard <OBJECT> and <EMBED> tags. A download simulator allows content authors to replicate the dial-up experience. Axel can also publish windowless animations if the host browser supports them. By default, the Axel web player renders content using its own software renderer, although hardware rendering (OpenGL) can be enabled.
MindAvenue doesn't have statistics on the installed base of Axel players, but it's safe to assume it's far smaller than web old-timers like Shockwave and Flash. Fortunately, the Axel player download is quick and painless, and Flash export is promised for Fall 2002.
The mostly scriptless interface makes Axel Edge very easy and flexible to use in terms of building projects. For game developers, however, it's also its biggest drawback. The lack of any user-definable data structures means there are no variables, no dynamic or user-entry text capabilities, and no internal tools to query server-side data. Therefore, common game functions such as scorekeeping can't be accomplished practically with Axel. The built-in sensors and reactions address most of the basic tasks for projects such as an interactive product demonstration, and the basic scripting interface does allow for some customization, but they fall short for creating games of any serious depth.
MindAvenue's web site (www.mindavenue.com) hosts a few clever examples of game content (including a cute first-person shooter where the object is to blast clogged noses with nasal spray) and there are some ingenious workarounds to the limitations of the scripting system.
But game development at that level isn't really what Axel was designed for. Instead, the program excels at what could best be termed "interactive animations." Obviously, many game projects actually fall into this category, and Axel would be an ideal tool for those. It should appeal in particular to web designers, especially those working on a Macintosh, who have limited experience with 3D and/or a scripting language. Its integrated modeler is a plus for those who don't own a stand-alone 3D package, but those developers who need more depth and power will require bigger guns than Axel.