HomefieldOfView | SPi-V dev



Summary of changes in SPi-V 1.3

While SPi-V 1.3 is entering its final stages, outlined below are the major changes, fixes and additions to this new version. This dot release is the biggest update so far, and all in all it is shaping up very nicely.

Before we start, a very quick history of changes so far:

  • SPi-V 1.0, november 2004: initial release
  • SPi-V 1.1, december 2004: backported to Shockwave 8.5 for wider install base
  • SPi-V 1.2, januari 2005: introduction of scriptlets to make xml scripting easier
fix: black lines/seams issue

In order to display panoramas using hardware accelleration, they are chopped up in chunks. In previous versions, these chunks would not always line up perfectly, resulting in either visible mismatches or black/multicolored seams.

fix: Safari offset (webkit build 416.11 and newer)

A bug in Webkit caused hardware accelerated 3d content (including SPi-V scenes) to render too heigh. SPi-V contained a partial workaround. In Webkit builds 240 and newer, the bug was fixed. The workarounds present in SPi-V conflicted with the official fix.

fix: UI elements may disappear on ATI graphics cards

At some window widths, all ui elements would disappear on computers with certain ATI graphics cards and driver combinations.

fix: ui element top line

UI elements would sometimes be unable to 'touch' the top line of the display.

add: template for simple mode

Simple mode (loading single images as panoramas) now supports an optional xml template. This xml template can contain branding elements, toolbars, etc. In simple mode, the engine tries to open an xml file named 'default.xml' in the same folder as the engine. This is a regular SPi-V xml file, and the simple mode panorama will be added in the first scene available in this panorama.

add: right mouse button zoom

Zooming can now be done by dragging with the right mouse button, as well as using ctrl/command and shift

add: cursor key pan/tilt

Looking around can now be done using the cursor keys, as well as using the mouse

add: early error debug window

If an error occured before initialising the panoramic scene (eg while loading/examining the XML file), previous versions on the engine could not report the error leaving the viewer with an empty view.

add: start up with empty scene

If no file is specified, the engine now opens an empty scene. This scene is fully active and can be used to easily find out the current version of the viewer (by pressing 'a'). A scene can be loaded using the LocalConnection interface, pressing ctrl/command 'O' in the standalone viewer, or - in case of running the movie as an LDM - the API.

add: control antialiasing for pano- and uielements

Antialiasing can now be forced on or off for panoelements and uielements.

fix: metering fixes

Meter node was rather buggy.

chg: ramp behavior

For better controllability, a non-looping, non-pingponging ramp no longer resets itself when it stops. This may break older content.

chg: licensing changes

Changed the wording in the about box when no license is found. A licensed viewer can optionally add back the bottom right corner branding (but does not show the about box on startup).

add: background image

Added a subtle background image when loading a scene, akin to Quicktime's grey grid on a black background (but different). The background image inherits the color of the engine background (black by default).

add: build/destroy api

Objects (panoelements, uielements, images, etc) can now be destroyed and built on demand, offloading their resources from the video memory.

chg: simple flat layer handling ('imagezoom')

Changed the way 'flat' images are handled in simple mode, or when no HFOV is specified. The image is now treated as a low field of view image, resulting in less distortion when panning in the image.

fix: better handling of cameralimits

Slightly improved the way cameralimits are handled, though horizontal limits may still show some 'outside the image' areas.

add: ready event for (pano/ui) element

Panoelements and uielements now fire an event when they are ready to be displayed.

add: local connection object/API

The SPi-V engine now sets up a flash LocalConnection object. An API and demo movies will be available to communicate with the SPi-V engine from a Flash movie through this LocalConnection object.

fix: LDM stability and performance fixes/API

This release of SPi-V is a lot more stable and has better performance in the Director authoring environment when included as a Linked Director Movie. An API and a set of behaviors will be available to use and extend SPi-V in Director projects.