Rob Bateman, Alexander Zadorozhny, Fabrice Closier, Peter Kapelyan, Greg Caldwell, Andreas Engstrom, Stephen White, David Lenaerts, Richard Olsson, Cauê Waneck[1]
Away Builder is an open-sourceintegrated development environment for importing, refining, preparing and exporting 3D models and animations.[5] It can import 3D models from various 3D applications such as Autodesk 3ds Max, and can bake lighting into texture maps.[5] The primary purpose of Away Builder is exporting 3D model packages for the Away3D engine.[5] It supports the compressed AWD binary format, enabling smaller sizes for 3D models than ASCII-based formats such as OBJ.
The Away Extension's plugin enables exporting 2D and 3D content from Adobe Animate into Away3D or AwayJS.[14]
Away3D 4 and onwards fully supports GPU-accelerated graphics using the Stage3D API introduced in Flash Player 11, freeing up the CPU for other computational tasks.[17] Since GPUs are capable of rendering many more textured triangles per second, it allows for much more detail and quality, and up to 100,000 triangles per frame instead of the typical 1,000 ceiling with CPU-based Flash rendering.[18]
Away Physics is a physics engine based on the Bullet physics library, for collision detection, soft and rigid body dynamics.[7] The engine is built jointly by the Away3D team and the JiglibFlash team, and is tightly integrated with the Away3D render pipeline.[7]
AwayJS can render 2D and 3D graphical content using WebGL for GPU-accelerated rendering.[23] It enables developers to use the existing Away Builder toolkit for editing, refining, compressing and texture baking 3D models and animations.[24] AwayJS also supports the compressed AWD binary format, enabling smaller sizes for 3D models than ASCII-based formats such as OBJ.[25]
The AwayJS API is consistent with the Flash version of Away3D, enabling existing developers to migrate from Flash to HTML5 seamlessly.[19] To preserve backward-compatibility with Away3D, AwayJS enables developers to write GPU shaders in the Adobe Graphics Assembly Language (AGAL), or the standard OpenGL Shading Language (GLSL).[19]
History
Away3D was started in 2007 by Alexander Zadorozhny and Rob Bateman[2] as a fork of Papervision3D.[3]
Away3D saw active community involvement since its introduction in 2007, and superseded Papervision3D after it was updated to support GPU-accelerated rendering using Stage3D. Three guide books have been published on 3D content development with Away3D.[26][27][28]
The author states that the engine began as a spare-time project, and was created for fun. After large ad agencies and game publishers started it, they had to "evolve to keep pace". In an interview he further states:
We never realized how big it would become, but our intention has always been to provide accessible tools and libraries that assist in the creation of 3D content, for anyone, all for free and open source. Seeing what amazing things people build with our libraries never gets boring, and there is still so much we want to improve and add.
— Robert Bateman, Founder, Interview with Robert Bateman, founder of Away3d, by JetBrains[10]
In 2009, the Away3D community released Away3D Lite, a lighter version of the engine for Flash advertisements and other size-constrained content.[29][30] Away3D Lite was the fastest and smallest full-featured 3D engine built for Flash. It weighed in at 25 KB and performed 4 times faster than the full Away3D engine.[30] No future versions were released.[29]
In 2011, a Flash book noted in the section on "3D with Flash" that "Away3D and Alternativa3D are currently the preferred solution for performance and features because they have a more active development community".[3]
In 2013, Adobe chose Away3D as the sole 3D engine included within the Adobe Gaming SDK.[31][32] Since then, Adobe has funded further development in Away3D and Away Builder,[33] and has updated the Adobe Gaming SDK with new releases of Away3D.[34]
In 2016, Away3D 1.2 was ported to the Haxe multiplatform language, enabling it to be cross-compiled to JavaScript and other languages that support 3D graphics.[35] This also enables Away3D to run on OpenFL, a software framework with an API that is very similar to Adobe Flash Player API.[36]