360 Snapshots

From Second Life Wiki
Jump to: navigation, search

The existing viewer snapshot system (control-shift-s) is being extended to add a mode where you can take a picture that encompasses all directions at once.

Placed in a suitable web site with some HTML and JavaScript, the image can then be scrolled to look around as though you had a window into Second Life at the moment the picture was taken.

This is also integrated with a number of other Snapshot improvements contributed by the author of the Black Dragon viewer.

KBcaution.png Important: This is a project in active development, not yet a part of the standard viewer


Sample 360 snapshots and related news

There's also a Second Life 360° Panoramic group on Flickr — add your pics to this group!


The Viewer

Download the latest version from the Alternate Viewers Page


Known Issues

  • Typically there is lots of movement in a Second Life region. Clouds, animated objects, avatars etc. Right now, this movement can cause discontinuities in the image (because we actually take several separate pictures in sequence). We hope to be able to freeze everything while we take pictures, but this has not been done yet.
  • The viewer interest list system only sends information about objects that are in your field of view. Objects outside this range are not sent or updated. This presents a problem when you are forcing the camera to look all around you while capturing the snapshots. We believe we can overcome this, but for the moment it helps to turn around and look in all directions slowly before taking the picture.
  • The current viewer saves the resulting image to your local disk as a zip file; see below for how to view it. Before this becomes a standard viewer feature, we will provide ways for you to share the images.


Tips and Workarounds

These may become moot as this feature is improved. Until then, here are some things you can do to improve your images:

  • To stop cloud movement:
    1. Go to World menu > Environment Editor > Sky Presets > New Preset.
    2. Click the CLOUDS tab.
    3. Next to Cloud Scroll X and Cloud Scroll Y, click the Lock checkboxes.
  • For now, turn off the Depth of Field feature in your Graphics preferences — it doesn't work as expected, and shallow DOF usually isn't used in panoramic pictures anyway:
  • Wear a local light or a facelight to illuminate the area around you. This can be very effective in a 360° snapshot, since it helps focuses the subject. Try it in a night-time scene for additional contrast.
  • Experiment with taking 360° snapshots in Mouselook, because that can provide a more personal perspective — since it's what you're directly seeing through your avatar's eyes, not a camera positioned elsewhere. This can make a big difference when doing shots like standing on a bridge or another height-proportionate focal point. In Mouselook, you can still use the shortcut Ctrl-Shift-S to take the snapshot, then hold down the Alt key to make the mouse cursor independent of your Mouselook movement, so you can click the Save to 360 Snapshot button.
  • If the Do not show my avatar checkbox in the SNAPSHOT window doesn't work as expected, you can make your entire avatar invisible:
    1. Search your INVENTORY window for "Invisible Avatar". It will show up multiple times (since it's used for starter avatars).
    2. Wear one of those alpha layers and detach everything else. You'll now be totally invisible.


Viewing Your Images

When this feature is complete, it will support ways for you to upload your images to different places to share them, as you can with conventional pictures now, but in the mean time...

We have assembled a web framework for viewing your images; it is available at the Bitbucket Repository

https://bitbucket.org/callum_linden/360-snapshot-web-viewer

If you are comfortable with using Mercurial, the best thing to do is to make a local clone of that repository.

A simpler way is to download and unzip a copy from:

https://bitbucket.org/callum_linden/360-snapshot-web-viewer/get/tip.zip

The contents of that directory should be placed in the content area of your web server (see below for how to create a temporary local server).

Add any new 360 image .zip files you save from the test viewer to the "shots" directory, and then access them:


Creating a temporary local server

To set up a local web server, you can use Python. If you have Python installed on your system, you can run a local server by setting your current directory to this one, and then running the command:

python -m SimpleHTTPServer

It will serve the files in this directory so that you can browse them using a URL like:

http://localhost:8000/index.html?shot=shots/NAME.zip

where NAME is the name of the zip file you saved.

Note: For the current build, callum_linden-360-snapshot-web-viewer-f97ab8f57dcf, browse using an URL like:
 http://localhost:8000/demo/index.html?shot=shots/NAME.zip
where NAME is the name of the zip file you saved.

If you need Python for your system, go to https://www.python.org

If you need more help with the above on Windows, Inara Pey has graciously provided a step-by-step walkthrough with instructions.

With the web viewer, you can also export a .jpg that you can upload to Facebook, Flickr, and so on. It contains XMP metadata specifying "ProjectionType", and should be recognized as a 360 image.

Other Related Efforts