Peter Eastman (software Engineer)
   HOME

TheInfoList



OR:

Art of Illusion is a free software, and
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
software package for making
3D graphics 3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for the ...
. It provides tools for
3D modeling In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, an ...
, texture mapping, and
3D rendering 3D rendering is the 3D computer graphics process of converting 3D modeling, 3D models into 2D computer graphics, 2D images on a computer. 3D renders may include photorealistic rendering, photorealistic effects or non-photorealistic rendering, no ...
still images and
animation Animation is a method by which image, still figures are manipulated to appear as Motion picture, moving images. In traditional animation, images are drawn or painted by hand on transparent cel, celluloid sheets to be photographed and exhibited ...
s. Art of Illusion can also export models for
3D printing 3D printing or additive manufacturing is the Manufacturing, construction of a three-dimensional object from a computer-aided design, CAD model or a digital 3D modeling, 3D model. It can be done in a variety of processes in which material is ...
in the STL file format.


Overview

Art of Illusion is
3D graphics software 3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for the ...
, such as Blender and Wings 3D (which are both free software), and Autodesk 3ds Max and Autodesk Maya (which are both proprietary software). Although some sources seem to confuse
3D modeling In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, an ...
with computer-aided design (CAD), Art of Illusion does not provide any CAD-like features, such as parametric modeling. Some user reviews describe Art of Illusion as 'intuitive' 'straight forward to learn' and 'good candidate for the first 3D modelling tool', while some characterize it as 'software for experienced CAD users' or taking plenty of time to figure out. For its capabilities it has been described 'powerful, comprehensive and extensible'. Art of Illusion has been entirely written in Java.


History

The development of the software was started in 1999 by Peter Eastman. Peter was the lead developer until the year 2016, when at Peter's request, Lucas Stanek started to host the development, while Peter assumed a more supervisory role. Lucas took the development from SourceForge to GitHub and the SourceForge-site serves as the software's discussion forum and delivery channel. Since 1999 there have been over 40 releases of the software. The latest stable version, 3.2.0, was released on January 13, 2021.


Features


General buildup and the core software

Art of Illusion consists of the core software and various feature extensions, which come as
plugins Plug-in, plug in or plugin may refer to: * Plug-in (computing) is a software component that adds a specific feature to an existing computer program. ** Audio plug-in, adds audio signal processing features ** Photoshop plugin, a piece of software t ...
and
scripts Script may refer to: Writing systems * Script, a distinctive writing system, based on a repertoire of specific elements or symbols, or that repertoire * Script (styles of handwriting) ** Script typeface, a typeface with characteristics of ha ...
. The core software package contains basic modelling, texturing, animation and rendering tools. Scripts are used either to create and edit objects or to modify behavior of the software. Plugins can add features, like tools and object types to the software or alter the user interface. Some of the core features like the renderers are implemented as plugins as well to facilitate maintenance.


Object types and modeling

Art of Illusion provides several types of objects with their specific editing tools for modeling: Primitives (cube, sphere, cylinder), Curve, Tube, Spline mesh, Triangle mesh, Polygon mesh (plugin), Implicit object (plugin), Hologram (plugin).


Animation

All 3D-objects can be animated by changing their position and orientation. In addition to that, properties of each object can be animated and procedural textures and materials can have animated features. Mesh objects can be rigged with a skeleton, that can be used to control shape changes. With skeletons it is possible to save predefined gestures that can be combined as poses, to generate complex repeatable movements. Animation data of each object is stored into animation tracks as key frames.


Rendering

Art or Illusion uses multi threading for rendering images and it provides several options for lighting. The core software package comes with two built in renderers: :The '' Ray Tracer renderer'' provides anti-aliasing, soft shadows, depth of field, transparent background, photon mapping caustics and subsurface scattering. :The ''Raster renderer'' provides a few options for shading methods and super sampling


Feature-extensions


Scripting

Art of Illusion supports two scripting languages, BeanShell and Groovy and it comes with a basic level text editor for writing, editing and running scripts. There are three different types of scripts each for their specific purpose: ''Tool scripts'', ''Scripted objects'' and ''Start-up scripts''. Tool scripts operate at the same level as the ''commandSelected()'' function of a modeling tool. This means that with only minor changes the code from a script could be placed into a more permanent plugin, or the code from a plugin could be pulled out into a script to allow for changing the code within the environment.


Plugins

Art of Illusion provides a programming interface for plugins. The code for the plugins are written in Java like the core software. This code is combined with an ''extensions.xml'' file that describes what the plugin does and most importantly, which class implements it. In some cases the XML file specifies methods that are exported for use by other plugins or specifies plugins that are imported for use by the plugin. Tags used in the ''extensions.xml'' file are Author, Date, Plugin, Export, Import, Description, Comments, History, and Resource. The compiled .jar-files are added to the Plugins folder in Art of Illusion root directory and they are effective immediately at the next start up. A large number of plugins have been developed for Art of Illusion that are available on the scripts and plugin repository. These include object types and their accompanying editors, user interface enhancements and various tools. These include the Scripts and Plugins Manager, that is used to download and update the extension parts. The types of plugins that can be created for Art of Illusion are, Plugin, Renderer, Translator, ModellingTool, Texture, Material, TextureMapping, MaterialMapping, ImageFilter, Module. Plugin — A general plugin type used for all plugins that don't fit one of the other categories. Renderer — Methods used to render a scene, such as a special ray tracer. Translator — Used for importing or exporting a scene to another file format. ModellingTool — For tools that appear on the tools menu. They usually manipulate objects in the scene. Texture — Defines a texture that is applied to an object. Material — Defines a material that is applied to an object. TextureMapping — Describes how a texture is mapped to an object. MaterialMapping — Describes how a material is mapped to an object. ImageFilter — Used for post-processing of a rendered image. Module — Used for user defined 2D and 3D textures.


Cloth Simulation

A cloth simulator does not come with the basic install package but the capability is available as a plugin. The second edition of ''Extending Art of Illusion'' includes the ClothMaker plugin as one of the examples in the book. The author classifies the cloth simulator as "beta" and describes a number of problems with the tool. The ClothMaker plugin makes use of the Distortion class. The user selects an object in the scene to convert to a cloth. The user then selects the command to tell Art of Illusion to generate the cloth simulation. An editor window is provided for the user to select various settings. When the user selects ok the tool spends several minutes generating many frames of the simulation. Once the window closes the user can play simulation using the animation score.


Procedural editor

There are procedurally controlled options available of textures, materials, movements, lights and even some objects. Procedural editors provide a graphic interface, where you can combine input values, library patterns and mathematical expressions to create the desired output values.


Audio

Art of Illusion does not have any sound/audio processing capabilities. Audio is not mentioned in the documentation.


File formats and interoperability

Art of Illusion scene files are saved in their specific format, marked by the extension ".aoi". The core package contains a built-in import function for Wavefront (.obj) and export functions for Wavefront (.obj), Povray 3.5 (.pov) and VRML (.wrl). Additional translators are available as plugins.


Language support

The user interface of the core software has been translated to 14 languages. Plugins may not have complete sets of translations available.


System requirements

Art of Illusion 3.2.0 runs on
Java Virtual Machine A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally describes ...
(JVM) versions 8 or later. Assembly packages are available for Mac OS, Windows and Linux and there is a generic zip package available for other systems or for cases, where a self-extracting package can not be used. OpenGL acceleration is available for interactive rendering. Absolute minimum requirements or recommendations for the hardware have not been informed. By default Art of Illusion allocates 16 GB of memory for the JVM. This can be changed by launching Java by a command-line. Art of Illusion is capable of multithreading and therefore utilizing multicore processors, when rendering images. Art of Illusion is designed to have full functionality either with a single button
mouse A mouse ( : mice) is a small rodent. Characteristically, mice are known to have a pointed snout, small rounded ears, a body-length scaly tail, and a high breeding rate. The best known mouse species is the common house mouse (''Mus musculus' ...
or a 3-button mouse with a
scroll wheel A scroll wheel is a wheel used for scrolling. The term usually refers to such wheels found on computer mice (where they can also be called a mouse wheel). It is often made of hard plastic with a rubbery surface, centred around an internal rotary ...
. A keyboard with a numberpad is recommended as some of the keyboard shortcuts are assigned to the number keys. An interface for a 3D-controller, such as one of
3Dconnexion 3Dconnexion is a German manufacturer of human interface devices for manipulating and navigating computer-generated 3D computer graphics, 3D imagery. These devices are often referred to as 3D motion controllers, 3D navigation devices, 6DOF device ...
devices is available as a plugin.


References


Further reading

*


External links

* {{Animation editors 3D graphics software 3D animation software Global illumination software Cross-platform free software Free 3D graphics software Free software programmed in Java (programming language) Portable software