You know QuicktimeVR movies (aka Object VR) where you can look at an object from different angles?
Now you want have your own Object VR movie on your website but can't afford the authoring tools?
Here's your chance:
All you need to do is to:
A) photograph or render the images of the different viewing positions
B) download the open source object vr player "ObjectiveVR"
C) change a few lines of javascript code to configure the player
D) (optional) change the player design using css, just like you style the rest of your page
No extra authoring tool required, no fee, no ads, no hidden costs,
although I would be happy about a comment, bugreport (or better: a fix), a link to my site or a free beer from time to time.
Why do I think that this player can be of any use? Easy:
- It's intuitive to use, both on a normal monitor and on a handheld touch device.
- It's based purely on html, css and javascript - you know this stuff.
- No browser plugin required, no Flash, no Java, no Quicktime.
- No authoring tools needed, no hidden costs.
- Works on most currently used browsers (IE6+, Firefox3.5+, Safari 4+, Chrome 4+, Opera 10+).
- Works in iOS devices like iPhone, iPod, iPad, using touch events. (Seems to be working on Androids, too - but I could only test on 2 devices ... )
- Absolutely free tp use - although I would really appreciate a gift, a comment or whatever.
But again - it's your choice :)
- GNU GPL license. Use, modify, distribute - and hopefully - enhance it.
Just don't forget to upload the modifications an leave the copyright note intact.
Now check the source of this page and you will have your Object VR up and running within minutes.
BR
MikeMyDay (Michael Hermes)
Versions:
- V0.5.1:
- Restructured and commented the loading logic for both scenarios (no. of images on y and x axis known or unknown)
- Bugfix: Image loading and autodetection (ff3).
- IMPORTANT: License change: Moved away from GPL V3 to the much lesser "GPL V2 and later". So you can decide for yourself which license to use.
- V0.5:
- Added Motion Blur: you can now set the motion blur with settings.motionBlur. Use 0 (no motion blur like before) to 20 (max motion blur ... way too much)
- BEWARE: activating motion blur will cost a lot of cpu cycles - making the movie pretty much unusable on slower devices (like iPhone).
- Updated some errorhandling routines and added the initializeWithSettings(settings) method that can be called to restart a movie using a new settings object.
- Known Bugs: Autodetection of images won't always work on Firefox. Workaround: Please set settings.imagesCountX and settings.imagesCountY
- V0.4.2:
- Errorhandling: if imagesCountX or imagesCountY is set to 0 it will now automatically be changed to 1 within the script
- Errorhandling: if the first image could not be loaded an error message will be shown.
If later on an image is not found the script will continue to use the already found ones, just like all the versions before did.
- V0.4.1:
- Errorhandling: setting maxAngleY to 0 would cause the script to not initialize. Workaround: set it to 1. Fixed in this version. (Thanks to Steven Poe)
- V0.4:
- Minor change to the scrips: sped up movement when using touch devices to make it feel snappier, more like the other flick gestures
- Added html5 manifest to be able to store the page as webapp and use it in offline mode, also a .htaccess to add the correct mime type is included
- Added iOS webapp images: icon, loading screen and some more optimizations for mobile devices. Hide address bar, changed resolution and height to better match smartphone screens
- V0.3:
- New controls. Now we've got buttons to move the camera up and down, not only left and right.
- Clicking on a move-the-camera-into-this-or-that-direction-button will immediately move to the next available viewing angle -> immediate response even if the viewpoint grid has a rather low resolution for that axis (e.g. in this example the y axis [up 'n down] is about 18 degrees per row)
- V0.2.1:
- Hotfix for an unintuitive handling of desceleration in cam movement
- Minimum distance for mouse/finger movement set to 10 pixels per axis befor the camera will be adjusted accordingly
- V0.2:
- Added second dimension for the image buffer. Now the object can be viewed not only from a fixed horizontal position but from anywhere between 0 (side) and 90 (top) degrees (KNOWN BUIG: Be warned that old iOS devices will have trouble displaying objects with too many views, i.e. my 3G (not S) will only display a black box from time to time when moving around an object with 300+ viewpoints)
- a few minor loading optimizations when no imagesCountX or imagesCountY is set
- changed image storage to multidimensional array for future optimizations, i.e. being able to move around the object while the images are still being loaded, limiting the movement to the already loaded positions
- V0.1:
- initial Version
- moving on a fixed height around the object (0-359°)
- all images are loaded in the viewport and dynamically hidden/displayed for speed improvements (webkit uses 7% in contrast to dynamically appending the current image which uses about 12%)
Comments? Used this script? Found bugs? ->Please let me know: http://twitter.com/mikemyday