This section provides general FAQs.
→
Return to Overview
General
Sending your tracking configuration for encryption
The tracking configuration file (also known as TrackingData file) is used by the Unifeye Viewer to configure the tracking system. It configures the tracking approach to be used (currently only planar markerless tracking also known as feature tracking) and the targets/pattern to be tracked. The format of this file is the exact same format as in other Unifeye products like Unifeye SDK, Unifeye Design or the Unifeye Mobile SDK with the exception that Unifeye Viewer only accepts encrypted tracking configuration files which you can't edit/create by yourself. But the Unifeye Viewer package contains sample tracking configuration files which you can use during your development phase.
Before deployment you will need to purchase the deployment license and metaio will encrypt your specific tracking pattern for you. Please refer to the section:
Sending the tracking configuration to metaio for more details on what information is needed during that process.
Before that you should make sure to provide an appropriate configuration. Please refer to the
tracking configuration section.
Adobe Shockwave/Unifeye Viewer does not activate my camera on Mac OS. I only see a black screen.
If you are running on Mac OS and have installed the google talk plugin/google chat plugin this can block your camera even if google chat is not using it. You only get a black screen with the Unifeye Viewer Shockwave Xtra when your camera is about to start.
In such cases update to the latest version of the Adobe Shockwave plugin (at least 11.6.0.626) here:
http://get.adobe.com/de/shockwave/ and make sure to install the Shockwave for Mac Full 64 bit version. After downloading the .dmg file open it. Now close all open browser windows and run the Shockwave uninstaller first. This makes sure that Adobe Shockwave gets uninstalled properly. After that run the installer provided within that .dmg package.
Shockwave/Flash on 64-bit systems
Please note that currently the Adobe Shockwave and Adobe Flash plugins are only available as 32-bit version. For Windows based operating systems (Windows XP, Vista, 7) you simply have to use a 32-bit version of the browser to run Shockwave or Flash.
On Mac OS 10.6, the Safari browser runs in 64-bit mode per default, which prevents the Shockwave and/or Flash plugin from being executed. However with newer versions of Safari Apple has introduced a so called compatibility layer that allows running 32-bit browser plugins (like Flash and Shockwave) in the 64-bit browser. So the following only has to be performed if Adobe Flash or Adobe Shockwave content does not show up/work when running in Safari on Mac OS.
To force Safari to 32-bit mode, please follow these steps:
- Quit the Safari browser
- In the dock click and hold the Safari icon
- Select "Options -> Show in Finder"
- Select Safari and choose "File -> Get Info" from the menu, or use Apple-i keyboard combination.
- Select the option "Open in 32Bit mode" on the new window and uncheck the option "Open using Rosetta"
- Close the window. You might have to restart your computer.
- Start Safari by clicking on the icon in the dock. It should now start in 32-bit mode and you should be able to run the Shockwave plugin in. If not, please repeat the steps 1 – 7
Installation of Shockwave player on MacOS now uses the Shockwave Full 64 Bit installer (potentially leading to instability. Only valid for Shockwave versions below 11.6.0.626)
Please note that the behaviour described below seems to be fixed starting with Adobe Shockwave 11.6.0.626. So forwarding users to
http://get.adobe.com/shockwave/ when Adobe Shockwave is not installed on
MaOS works again. However it now installs the Mac Full 64-bit Shockwave version. Sometimes the installation seems to fail or does not work properly. In such cases a re-installation of the Adobe Shockwave plugin is recommended.
Adobe recently changed the Shockwave player download offered when a Mac user doesn't have Shockwave installed and you forward to
http://get.adobe.com/shockwave/. It used to install the Shockwave Slim package but now usually installs the unstable Shockwave Full 64Bit installer. This leads to strange system behaviour, slow performance and crashes.
To circumvent this behaviour you should forward the user directly to:
http://fpdownload.macromedia.com/pub/shockwave/default/english/macosx/latest/Shockwave_Installer_Slim.dmg if Shockwave isn't installed on the user's PC. The index.html page provided in the Unifeye Viewer example applications can be adjusted accordingly (see "New Shockwave detection logic below"):
...
if(tShockwaveFound) {
if (is_firefox && is_minor >= 3.5)
{
//Firefox 3.5 seems to have problems with preMovie forwarding to another page. But loading the HTML page seems to work...
location.href="res/PreMovie.htm";
}
else
{
location.href="res/PreMovie.htm";
}
//comment in for analytics
//pageTracker._trackPageview("/show-swf");
} else {
//alert("no shockwave found error...")
document.write('<table id="Tabelle_01" width="640" height="284" border="0" cellpadding="0" cellspacing="0"><tr><td colspan="3"><img src="images/compatible-popup_01.gif" width="640" height="181" alt=""></td></tr>');
document.write('<tr><td rowspan="2"><img src="images/compatible-popup_02.gif" width="214" height="103" alt=""></td>');
//------------------NEW MacOS Shockwave detection logic--------------------------------
if ( is_mac ) // link to slim installation package
document.write('<td><a href=" [[http://fpdownload.macromedia.com/pub/shockwave/default/english/macosx/latest/Shockwave_Installer_Slim.dmg][http://fpdownload.macromedia.com/pub/shockwave/default/english/macosx/latest/Shockwave_Installer_Slim.dmg]]" target="_blank"><img src="images/compatible-popup_03.gif" width="199" height="31" alt="Get Shockwave Player!"></a></td>');
else
document.write('<td><a href=" [[http://get.adobe.com/shockwave/][http://get.adobe.com/shockwave/]]" target="_blank"><img src="images/compatible-popup_03.gif" width="199" height="31" alt="Get Shockwave Player!"></a></td>');
document.write('<td rowspan="2"><img src="images/compatible-popup_04.gif" width="227" height="103" alt=""></td></tr>');
document.write('<tr><td><img src="images/compatible-popup_05.gif" width="199" height="72" alt=""></td></tr></table>');
//comment in for analytics
//pageTracker._trackPageview("/no-shockwave");
}
} else {
document.write("<object classid=\"clsid:233C1507-6A77-46A4-9443-F871F945D258\" codebase=\" [[http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=11,5,0,593\][http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=11,5,0,593\]]" id=\"splash\" width=\"640\" height=\"480\" viewastext>");
document.write("<param name=\"src\" value=\"res/PreMovie.dcr\" />");
document.write("<param name=\"swRemote\" value=\"swSaveEnabled='true' swVolume='true' swRestart='true' swPausePlay='true' swFastForward='true' swContextMenu='true'\" />");
document.write("<param name=\"swStretchStyle\" value=\"meet\" />");
document.write("<param name=\"PlayerVersion\" value=\"11\" />");
document.write("<param name=\"bgColor\" value=\"#000000\" />");
document.write("<param name=\"swStretchHAlign\" value=\"Left\" />");
document.write("<param name=\"swStretchVAlign\" value=\"Top\" />");
document.write("<embed src=\"res/preMovie.dcr\" bgColor=\"#000000\" swStretchHAlign=\"Left\" swStretchVAlign=\"Top\" width=\"640\" height=\"480\" swRemote=\"swSaveEnabled='true' swVolume='true' swRestart='true' swPausePlay='true' swFastForward='true' swContextMenu='true' \" swStretchStyle=\"meet\" type=\"application/x-director\" PlayerVersion=11 pluginspage=\" [[http://www.macromedia.com/shockwave/download//"></embed][http://www.macromedia.com/shockwave/download/\"></embed]]>");
document.write("</object>");
//comment in for analytics
//pageTracker._trackPageview("/show-swf");
}
}
...
Downloading Tracking Data from protected folders with the Unifeye Viewer Shockwave Xtra
When instantiating the Unifeye Viewer Xtra with "new" or calling "loadTrackingData()", you pass an URL to the Xtra referencing the Tracking Data. If the URL points to a Tracking Data stored on a protected web-server folder, the download will fail in Firefox because of Firefox does not cache user names and passwords. Store the Tracking Data outside an unprotected folder of your web-server to solve this problem.
Unifeye Viewer Shockwave Xtra version updates
If a new version of the Unifeye Viewer becomes available and you want to make use of the new version, please follow the guideline:
Adobe Shockwave
If a new version of the Unifeye Viewer Shockwave Xtra becomes available, you’ll have to update your existing Shockwave applications only if you want your existing Shockwave applications to automatically download and use the new version of the Xtra. This can be done by manually unchecking/rechecking the "download when needed" checkbox in the Director "Modify -> Movie -> Xtras" dialog for the metaio Unifeye Viewer Xtra. If you now upload the new Shockwave movie to your web server, the users will again receive the Xtras download dialog.
Please note that some browsers (e.g. Firefox 3.5) require a reload of the page before they actually use the new version of the Xtra after download. You might work around this issue by manually checking the version number of the used Unifeye Viewer Xtra inside your Shockwave application (use the Lingo "the xtralist" for this task).
Adobe Flash
If a new version of the Unifeye Viewer SWC library for Flash becomes available and you want to use it in your application you will have to recompile your existing application with the new version of the SWC file and distribute/upload it afterwards.
My Flash web application does not run when I copy it and put it to another PC or folder to run it locally
Published Flash applications can usually only load files (e.g. the tracking configuration file) from specific locations (due to security restrictions of Flash/Flex). Therefore your published application (if you just copy it somewhere to a non-web server) might not work correctly, especially when it loads files directly (like tracking configuration files or content/assets). In order to get your application to work and test, you should simply upload the HTML page, the Flash part and all referenced content to a web server and test it from there. You may also consult your development environments help file for more details on the security restrictions.
For testing purposes you can e.g. try to adjust the settings of Flash player using the Flash settings manager and add the folder of your application:
http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html. After you have done so your Flash application will have access to files within the same directory.
Please also note that running an application locally will prevent it from accessing content from the Internet. For testing purposes you can however "work-around" by giving the flag "local-with-networking". Please also adjust the URL policy file accordingly.
For more information please refer to:
http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7e3f.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7c8f
Adobe Director
Programming in Director/Lingo
If you are looking for an introduction/documentation for Director and Lingo please refer to
http://help.adobe.com/en_US/Director/11.5/UsingScripting/index.html.
Also the following forums can be very helpful:
The Unifeye Viewer package also contains simple and extensive examples
here.
Path separator in Adobe Director on a Mac system
Please note that a Shockwave application executed on a Mac system internally uses “:” as path separator (instead of “/”). This needs to be taken into account when passing pathes to the Unifeye Viewer Xtra. The Unifeye Viewer internally works with the correct Mac path separator “/”. See the ShockwaveARFrame example application where appropriate path conversion is done via the method “GF_getCorrectOSPath()”.
Restarting problems inside Director
Please note, that you should use the Unifeye Viewer Xtra as global variable inside your Shockwave application. Otherwise there might be problems when restarting the script from within Director.
Director and .swf movie textures
When scrolling in Director while a .swf movie texture is playing, the movie texture freezes and only starts again after you stop and start the movie again. This seems to be a Shockwave related bug.
Publishing as projector
When publishing your application as projector for Windows systems, it is necessary that you check “Exclude all Xtras” in the “publish settings” menu of Director. A new subfolder relative to you Shockwave executable will be created that is called Xtras. All dependent Xtras will be copied there automatically. Additionally you will have to copy all dependent DLL’s (cv100.dll, cxcore100.dll, ESMlib.dll, highgui100.dll, license.txt, Microsoft.VC80.CRT.manifest, msvcp80.dll, msvcr80.dll) for the Unifeye Viewer Xtra into this folder. For Macintosh systems in contrast make sure that “Exclude all Xtras” is unchecked and best is if you publish the project on a Macintosh!
Projector asks for missing scripts
If your projector asks for missing scripts on your hard disk but still works, click on any script, navigate to the label “cast” in the “property inspector” and make sure that the option “on request” is chosen from the drop down box “preload”.
Icons for projectors
If you want to change the icon of your projector file on Windows, you can’t use the icon-option from the “projector settings” as it doesn’t work properly. Instead, you’ll have to use the icon editor:
http://collab.directorforum.com/Resource_and_Icon_Editor.
The icon editor allows you to load the projector executable and exchange the icon manually.
In case of Macintosh projectors, create an icon with the included “icon editor” and embed it into the .app file. To do this, open the contents of the .app file and exchange the standard icon with your icon.
Shockwave 3D Content/renderer
Maximum polygon count
In general you should not use more than 30.000 to 50.000 polygons at the same time. Please refer also to
(Bad) Rendering performance/DTS article.
(Bad) Rendering performance/DTS
Sometimes the user gets bad rendering performance from Shockwave 3D, even when the application is running on a powerful system. By default, Shockwave estimates and runs the best renderer for the system. Unfortunately, this estimation might sometimes be incorrect. Shockwave 3D can use different render modes: OpenGL, DirectX or Software rendering. If you encounter problems, you can try switching the render mode manually to get the best performance. Adding the following line to your Lingo code, might also result in better performance:
_movie.preferred3dRenderer = #auto
(call it once in your code).
In addition to that, the "DTS" (direct to stage) option also influences the performance of the rendering (especially when using larger model data). If you turn off DTS of the 3D member the background video image is drawn into a separate background image. This enables the application to set the background of the 3D member to transparent. On windows systems this solution is pretty fast. Everything is still rendered on hardware. Macintosh computers can’t handle this approach by using a hardware renderer (e.g. OpenGL), so they fall back to software rendering mode which slows down the rendering process.
If you turn DTS on the video background image is rendered into the 3D member. In return no transparency is possible anymore and also the 3D member is always placed on top of all other sprites. In this mode, no 2D GUI elements are possible and any other sprites can’t be placed over the 3D member. Nevertheless, this mode is pretty fast on both systems, Windows and Macintosh.
The occlusion mode is turned on automatically if you configure at least one occlusion model in the application configuration. You might use a .w3d model without any content just to meet the intended purpose.
What kind of 3D format does the Unifeye Viewer support? What programms can I use to generate it?
A Unifeye Viewer project has to be created in Adobe Shockwave which supports w3d as the main 3D-model format.
The wd3-format is strongly related to Autodesk and can therefore be exported mainly from their products. 3ds max has an exporter in most of its version, for example also in the actual release 3ds max 2010 (only 32Bit-version). Maya had its w3d-exporter only untill version 8.0. So be sure to check if you have access to a software that can produce w3d-files.
Although several AutoCAD-programs can create w3d-files they are usually not able to produce/export animations, which makes them quite useless for our purpose to create an appealing experience.
What kinds of animations can I use?
w3d supports both:
- standard affine transformations, like animated scaling, rotating and translating of objects,
- as well as skeletal-animations.
Although Bone-animation gives you lots of possiblities in creating nice animations, you have to be aware that most exporters do not support much more than the "basic"-animation stuff. So e.g. effectors, constraints or special attributes will most likely not make their way into the final w3d-file. Be sure to check your that your animations can be exported, before you spend too much time on animating a rigg, that has to be rebuilt.
Can I have movie-textures with an alpha-channel?
Yes, that's possible. Therefore you have to export your movie as a flv-file. This movie-format supports transparency and can be used as a texture for 3d-models in Shockwave.
Why is my movie not playing on the movie texture of the 3D model?
Please make sure that you have activated the following tags in your application configuration file:
<VideoTextures>
<videoTexture>
<name>MyMovieTexture</name>
<path>http://www.myserver.de/myMovie.flv</path>
</videoTexture>
… another video texture definition here …
</VideoTextures>
Screensaver issues
You should deactivate the screensaver if you have access to the system that is running your application because any shockwave 3D content might not be rendered anymore after resuming from screensaver mode.
Lock/Unlock screen
The problem described above might also occur after locking and unlocking the screen. Avoid logging off and on while a Shockwave application is running.
Flash 3D content/rendering
Maximum polygon count
At the moment Adobe Flash does not provide a native 3D rendering engine. If you want to render 3D elements you will have to use a so called Software renderer. The Unifeye Viewer package e.g. uses the popular Papervision3D engine (
http://code.google.com/p/papervision3d/). Due to the restriction to a software renderer polygon count is very limited. We suggest to use not more than approx. 1000 polygons at the same time.
Low resolution of the camera on Linux systems
Currently there are problems to set the right resolution of the camera on Linux systems when using Adobe Flash player. At this time this issue can only be solved on client side. There are several workarounds available on the web for this problem, e.g.
http://www.swift-tools.net/Flashcam/
My Flash application stops when loading content files. Why?
Several reasons can cause this behaviour:
- One reason can be a missconfiguration of the crossdomain security policies, you should create and place a crossdomain.xml file to the root of your server.
- Some servers (e.g. Microsoft Internet Information Service - IIS) will not serve your application with content if the MIME type of the content is not known (e.g. md2, .xml_enc, .dae). In this case you have to provide the information about MIME types and add them to server configuration. More information how it can be done for IIS 6.0 you will find here.
Why textures appear distorted / with artefacts?
This is an known issue of the Papervision3D renderer. The reason is that Papervision3D uses
affine texture mapping for texturing 3D geometry. This algorithm doesn't take care of the depth information and can produce described artefacts. You can moderate this problem by increasing the number of polygons of your geometry.
Tracking
Can I use and track more than one image/reference pattern at the same time?
Yes. In general the amount of reference images/tracking patterns you can track and use at the same time is mainly driven by the CPU power. As (especially for Unifeye Viewer Flash) the overall system performance is also influenced by your application and the assets being displayed we recommend to use not more than 6 - 10 patterns at the same time for Unifeye Viewer Flash and around 20 for Unifeye Viewer Shockwave. However giving exact numbers depends very much on the overall application.
→
Return to Overview
--
SupportMetaio - 2010-03-19