Introduction
→
Return to Getting Started
General Background
Since 2003 metaio designs, develops and markets Augmented Reality (AR) solutions in many different fields. Using this innovative technology, virtual 3D information can be superimposed seamlessly into the real environment at real time. Taking online scenarios into account, the technology was only available as web browser plugin for the Microsoft Internet Explorer.
As this introduced limitations in terms of supported operating systems and browsers metaio has been constantly looking at different solutions for overcoming this drawback.
The new Unifeye Viewer approach leverages the powerful architecture of both Adobe's® Flash® and Adobe’s® Shockwave® technology, wide distribution and availability for different operating systems and browsers.
The Adobe Flash and Shockwave players are available as a browser plugin for all major browsers on the Windows® and Mac OS operating systems
(see
http://www.adobe.com/de/products/flashplayer/systemreqs/ and
http://www.adobe.com/products/shockwaveplayer/). The Flash player is already installed on 99% of Internet-enabled desktops (
http://www.adobe.com/products/player_census/flashplayer/) and the Shockwave player is already pre installed on over 50% of the web users PCs (
http://www.adobe.com/products/player_census/shockwaveplayer/).
Flash and Shockwave Players are both free web Players from Adobe. Together, they bring you the best rich media content on the Internet. Each has a distinct purpose. Flash Player delivers fast loading front-end web applications, high-impact web site user interaction, interactive online advertising, and short to medium form animation.
Shockwave Player displays destination web content such as interactive multimedia product demos and training, e-merchandising applications, and rich-media multi-user games.
If you need to chose between Shockwave and Flash then in general Shockwave will be better suited if you plan to create complex 3D models, animations etc. Adobe Flash at the moment does not support native 3D which implies that 3D rendering happens purely on the CPU (so called Software Renderer) which only allows a very limited set of 3D models/objects, especially regarding polygon count. For Flash we recommend displaying not more than approx. 1000 polygons at the same time. For Shockwave we recommend using not more than 30.000 - 50.000 polygons at the same time. Also due to the possibility that Shockwave can be extended by third-party components, so called Xtras (which is how the Unifeye Viewer for Shockwave is implemented), the overall performance and camera resolution can be higher with Shockwave. In Shockwave you can easily run your webcam at 640x480 or higher wheras for Flash we recommend 320x240.
Please note that this is subject to change in the future as Adobe is currently thinking of bringing native 3D support into Flash, which would speed up the 3D rendering tremendously.
For a quick comparison between Flash and Shockwave, please also refer to:
Unifeye Viewer for Adobe Shockwave
Unifeye Viewer for Shockwave is implemented as a so called Xtra which is Shockwave’s native plugin interface. By using the Xtra mechanism Unifeye Viewer for Shockwave can take full advantage of modern computer architectures as it is written in native C++ code, compiled for the two available platforms: Microsoft Windows and Apple Mac OS. It builds on top of the powerful and flexible Unifeye architecture and thus delivers fast and high quality tracking and camera access for interactive augmented reality scenarios.
Shockwave also contains:
- a native and high performance 3D rendering engine,
- a physics engine (NVidia® PhysX ™),
- precision sound control,
- support for more than 40 video, audio and image file formats and
- allows the integration of native Flash® content.
The authoring environment for Adobe Shockwave is called Adobe Director® (
http://www.adobe.com/products/director/) and is used by artists, game developers, multimedia authors and programmers. For Shockwave examples please refer to the following websites:
There are also a couple of very intersting online forums that deal with Adobe Shockwave and Lingo:
And of course the Director/Lingo online help at:
http://help.adobe.com/en_US/Director/11.5/UsingScripting/index.html.
Architecture and development
The metaio Unifeye Viewer Shockwave Xtra is based on the core libraries of the Unifeye SDK without the Unifeye SDK rendering engine. The rendering engine is provided by Adobe in terms of the Shockwave renderer.
Depending on the user’s background, development for the Unifeye Viewer Shockwave Xtra can be done in different ways.
For programmers or designers familiar with Adobe’s authoring environment for Shockwave (Director), the functionality of the Unifeye Viewer Xtra can be accessed by according function calls (using the Lingo or JavaScript programming language within Director). More details on the development based on the Xtra are described in the
Installation Guide, the
Quickstart, the
Tracking Configuration and the
Shockwave examples.
Even without programming a Unifeye Viewer application can be created using the configurable sample application called ShockwaveARFrame. For more details please refer to the
Application Configuration documentation.
Unifeye Viewer for Adobe Flash
Unifeye Viewer for Flash is implemented as a ActionScript3.0 library (a so called SWC file) which can easily be integrated into Flash applications. It delivers fast tracking for interactive augmented reality scenarios. Camera access is not provided by the library itself as Flash itself already gives access to the webcam. You will only have start the camera using ActionScript and forward the camera images to the Unifeye Viewer library. For more details on getting started please refer to
the "Getting Started" section and the
examples for Flash.
As authoring environment for Flash we recommend using Adobe Flash Builder (
http://www.adobe.com/products/flashbuilder/) as the examples provided with Unifeye Viewer were also build using Flash Builder. There is also a free and open source development tool available for Flash/Flex called FlashDevelop (
http://www.flashdevelop.org/) which could also be used.
Please also note, that as Adobe Flash does not provide a native 3D rendering engine you will have to use so called Software renderers in Adobe Flash if you want to display 3D content. Unifeye Viewer uses (as an example) the Papervision3D engine (
http://code.google.com/p/papervision3d/). But you are free to use any other 3D rendering engine available for Flash.
Architecture and development
The metaio Unifeye Viewer Shockwave Xtra is based on the core libraries of the Unifeye SDK without the Unifeye SDK rendering engine and camera access. Camera access is provided by Flash itself. As Adobe Flash lacks native 3D support it is provided by 3rd party Software Rendering engines (like Papervision3D:
http://code.google.com/p/papervision3d/). Please note that it is not mandatory to use Papervision3D. You can choose whatever engine you like to use or even go without a 3D rendering engine (e.g. if you only want to display 2D content).
Depending on the user’s background, development for the Unifeye Viewer Flash library can be done in different ways.
For programmers or designers familiar with Adobe’s authoring environments for Flash (we recommend using Flash Builder), the functionality of the Unifeye Viewer SWC library can be accessed by according function calls (using the ActionScript programming language). More details on the development based on the SWC library are described in the
Installation Guide, the
Quickstart, the
Tracking Configuration and the
Flash examples.
Even without programming a Unifeye Viewer application can be created using the configurable sample application called FlashARFrame. For more details please refer to the
Application Configuration documentation.
Application configuration development
For non-programmers the implementation details of the Unifeye Viewer Shockwave Xtra and Flash library are hidden through a standard application which can be easily configured based on a XML configuration file. Information on XML-based application configuration can be found in the
Application Configuration documentation. The Lingo and ActionScript source code for the according sample applications for Shockwavee and Flash that interpret the application configuration files is also provided within the Unifeye Viewer package and can be used as elaborate
programming example in Lingo/Shockwave and
programming example in ActionScript/Flash.
→
Return to Getting Started
--
SupportMetaio - 2010-07-08