Table of Contents - Equipment
- Stitching
- Hotspots
- Flash
Preparation - Embedding
Flash
|
1. Equipment
Ok, here goes. First a note regarding my equipment. Pictures are taken using a Nikon Coolpix 880 with a circular fisheye lens and a Kaidan KiWi 990 (with 880 extension). I'm using a TiBook running Mac OS X for all production. If you're using Mac, I strongly suggest downloading and installing the "Apple QuickTime AppleScripts". They help tremendously. The download link is in the end of this document. 2. Stitching
Every panoramic image is stitched from four images (three + zenith) using the PTMac interface to prof. Dersch's Panorama Tools and exported as multi layer PSD for correcting light differences between the layers. Performing the actual stitching is way out of the context of this tutorial. 
Figure 1. PTMac after having imported four circular fisheye images.
After having adjusted each equirectangular image in Photoshop, I used PSphere2Cube in PTMac to extract the six cube faces for each node for some zenith and nadir magic. Back in PTMac, I finally created the QuickTime Movie nodes by using the cube faces as rectilinear source images with HFOV=90.

Figure 2. Use PSphereToCube within PTMac to extract six cube faces that simplifies editing of zenith and nadir.
3. Hotspots
I know many of you prefer to embed all nodes in a single movie. I'm in the camp of the ones that like to keep every node in a separate file. This is so because of a few reasons: - The moment a QTVR
Movie contains more than one node, the fast start feature is disabled. - The file size
grows very quickly making it tempting to reduce the quality to increase loading speed. - Keeping files separate
makes it possible to create Flash navigations using plain HTTP links without having to bother with any scripting.
There are many tools out there for managing hotspots. One might generate the QuickTime Movie using the free Apple tool MakeCubic instead of PTMac and then throwing in a hotspot file in the generation process. However, I prefer CubicConnector from Click Here Design. If you're on a Mac, check it out. 
Figure 3. CubicConnector's layout mode. Drop nodes into this window.

Figure 4. CubicConnector's hotspot mode. Define hotspot areas.

Figure 5. CubicConnector's connection mode. Wire hotspots with their destination. Define a custom view that will show after the jump is made and the target panorama is loaded.

Figure 6. CubicConnector's movie preview mode.
CubicConnector have the feature to save the resulting scene as a single multi-node movie (with internal links) or as a number of single node files (with http links). I chose the latter. 4. Flash Preparation
I created a very simple Flash movie that contains nothing more than four white buttons. I set the alpha for 70% initial transparency, 95% on MouseOver and 100% on MouseDown. 
Figure 7. The Flash MX stage showing an overview over the navigation project.

Figure 8. Clicking the ActionScript symbol in Flash enables simple altering of an object's behaviour. In this context this means adding HTTP links to the buttons in the Flash navigation.

Figure 9. Adding actions such as HTTP links is as easy as clicking a couple of buttons and filling in a simple form.
To force the new movie to load in the same QuickTime canvas as the current one, make sure the target window is set to "myself" whenever you're creating a HTTP link. The Flash actionscript that is created when you created the link might look like this: on (release) { getURL("AnotherNode.mov", "myself"); } 5. Embedding Flash
I realize that the way I merge QuickTime and Flash might seem a little backward to some of you. I chose to embed Flash into QuickTime rather than QuickTime into Flash as some of you seem to be doing. Since the end result are QuickTime files, I simply feel more comfortable trusting QuickTime Pro than another environment. Also, I imagine that this procedure probably will be more consistent in the future if/when new types of media other than Flash gets implemented in the QuickTime standard. If you're using Flash MX, stop by "Publish Settings..." and change to "Flash Player 5". Then choose "File/Export Movie..." and make sure you select "QuickTime" as export format. Set Alpha to "Alpha-transparent".

Figure 10. Setting the necessary Flash export information to enable embedding into QuickTime Pro.
Open the movie in QuickTime Pro, "Get Movie Properties", change to the Flash Track and set "Graphics Mode" to "Straight Alpha". This makes things more clear so to speak. Then "Select All" and "Copy".

Figure 11. Enabling transparency for the Flash Track.
Open the first QuickTime VR node file, "Get Movie Properties" and change "Controller" to "Movie Controller". Then "Add Scaled" and your navigation will show. To change position of your navigation, there's two ways: the universal way that works for both Mac and PC and the AppleScript way which I strongly recommend but that is available only for Mac users. Universal Method: "Get Movie Properties" and switch to the navigation layer. Select "Size" and click "Adjust". The Flash navigation will show selected. Drag and drop to wherever you want it. 
Figure 12: The controller is changed to "Movie Controller" thus enabling edit functionality. The Flash navigation layer has been embedded though "Add Scaled" but is located in the wrong place of the canvas.

Figure 13: The Flash Track has been selected and under "Size/Adjust" has enabed dragging of the Flash layer.
AppleScript Method: Use the QuickTime AppleScript called "Set Position of Track(s)", select the Flash Track, click "Set Position" and simply enter the X and Y coordinates for the position within the QuickTime canvas where you want the navigation to be.

Figure 14: Using the QuickTime AppleScript "Set Position of Track(s)" is the easiest way of positioning the Flash navigation within QuickTime Pro. Every Mac user should use this method.
Repeat final steps in all QuickTime movies. In order not to have to reposition the track every time, you can select and copy the panorama track once more after having repositioned it the first time and all subsequent copies will shop up at the correct position immidiately. |