Hands-on: Second Life 360-degree snapshot viewer

Credit: Linden Lab
Credit: Linden Lab

On Wednesday October 26th Linden Lab announced the release of the 360o snapshot viewer, which I’ve had the good fortune to be able to play with for the last week.

The viewer is still very much under development, and has been released as project viewer with a number of caveats against it as development continues. Essentially, it allows you to take a set of images (6 in total) of the location around your camera, and then produce these as a scrollable 360o view – you can see the results in action on this sample page. Just click drag on an image to manually scroll around it.

The viewer is available via the Alternative Viewers wiki page as project viewer, with documentation on the wiki. As noted there are some caveats concerning it, which need to be kept in mind:

  • The 360o capture operates all around your field of view simultaneously. This can lead to conflicts with the viewer’s Interest List, so that objects which may be “behind” your camera position may not be properly rendered, etc. To avoid this, always pan your camera around  (or turn your avatar around if you are taking a picture from your avatar’s position) to completely view the scene and allow things to initially load, before taking a shot.
  • The current viewer saves the resulting image to your local disk as a zip file. You’ll need to set-up your own local web host in order to view them (or if you have your own website, you could set one up there). Again, this will be changing as the project develops
  • However, even in this format, once you are viewing an image, you can download it in a 2:1 aspect ratio suitable for upload to Flickr for sharing with friends and viewing in 360o.

As I’ve covered three of the 360o camera HUDs available in Second Life, I’m offering the rest of this article as a walk-through in using the new viewer and viewing your photos.

Note – these instructions apply to Windows, I don’t have access to a Mac to provide guidelines for that platform.

Setting Your Viewing Environment

Before taking your photos, you’ll need – for the time being at least – to set-up a simply local web server. Callum Linden has made this relatively easy.

  • Download Python from the Python website. You can select to install either Python 3.5.x (latest) or Python 2.7.x (the Lab uses Python 2.7 as a point of reference).
  • When installing Python, make sure you add the installation to your Windows path.
    • If you are installing Python 3.5.x, simply check the box in the installer
    • If you are installing Python 2.7, click the Advanced button in the installer, scroll down the list of customisable options and set Add Python .EXE to Path to Will be installed on local hard drive.
Adding the Python 2.7 EXE to the Windows path
Adding the Python 2.7 EXE to the Windows path
  • Download the Lab’s 360 snapshot web viewer ZIP file from the Lab’s 360 snapshot wiki page.
    • If you are familiar with Mercurial, you can clone the existing web framework via the link given in the wiki page. I found going the ZIP file route easier.
  • Unzip the web viewer files to a location on your hard drive.
Web you have unzipped the web viewer package, you should have a folder looking like this - note the SHOTS folder, this is where you'll be wanting to save your snapshot sets
When you have unzipped the web viewer package, you should have a folder looking like this – note the SHOTS folder, this is where you’ll be wanting to save your snapshot sets (Windows environment)

Using the Viewer

When you have downloaded and installed the 360o snapshot viewer, proceed as follows:

  • Position your avatar  / camera at the centre of the area you wish to photograph. If you are using your avatar, not that you should “hide” it via removing all attachments and alpha-masking, or by using something like a “vanish” gesture.
    • Note that you can positioning your camera for a 360o snapshot simply by positioning your camera (e.g. using ALT-zoom or by flycamming).
  • Make sure you freeze the clouds in order to assist the image “stitching” process, and to avoid visual discontinuities in the finished image. Use Menu > World > Environment Editor >Sky Presets > Edit Presets. You should also avoid using Depth of Field.
  • Set your preferred windlight / time of day setting.
  • Turn your camera / avatar slowly around in a circle to view everything in the field of view around it, and allow everything to render.
  • Open the Snapshot floater and click on the 360 option – not that although this displays the filter options for snapshot, the filter effects are not currently captured when taking  360o shots.
  • When you are ready, Click Save to save the image set – you will be prompted to save a ZIP file to your hard drive.
    • Navigate to the location where you unzipped the web viewer files (above) and then save the ZIP file (with a suitable file name) in the SHOTS folder.

Continue reading “Hands-on: Second Life 360-degree snapshot viewer”

Advertisements

Revisiting the Reshade injector with Second Life

Reshade is a real-time post-process injector allwoing you to overlay Second Life with various shader options, individually or collectively, to produce assorted effects and results
Reshade is a real-time post-process injector allowing you to overlay Second Life with various shader effects, individually or collectively, to produce assorted results, real-time, in both images and video

Back in August 2015, I blogged about Reshade, a post-processing injector for games and video software available for Windows. When installed and associated with a game or application like Second Life, it can be used to overlay the screen with a wide range of shader-based effects. These can them be used in screen captures or when recording machinima, to provide “real-time” visual effects.

Since that time, Reshade has been through a couple of iterations, with version 3.0.3 appearing on October 21st. As I’ve not revisited Reshade since that 2015 article, I thought I’d provide a short overview of installation and general use of this latest version.


A quick and dirty demo video I made with Reshade 1.0, showing how it can be used used in Second Life machinima filming

Installation

Please ensure you’re logged out of Second Life when setting-up ReShade.

  • Go to the Reshade website and download the installer, double-click to run it.
  • You will be prompted to select a programme for association with Reshade:

install-1

  • Click Select Game and navigate to the installed folder of the viewer with which you want to use Reshade and click on the viewer EXE file.
  • You will be prompted to Select Rendering API:

install-2

  • Click on OpenGL (note this may already appear to be selected – click on it anyway). You will be asked if you want to install the shaders- make sure you do.
  • The shaders will be downloaded and installed in a folder in your viewer’s installation location on your computer.
  • The Reshade installer will report Done, and can be closed.

To associate Reshade with any other viewer you have installed on your PC, you will have to follow these instructions again. You do not necessarily have to install the shaders again (although this is easiest) – you can set any additional versions of Reshade to point to shaders already installed.

Using Reshade

Note: the following is not intended to be an exhaustive guide to using Reshade. It is intended to get you started. The best way to gain familiarity with Reshade is to use it; should you need additional assistance, please refer to the Reshade forums. I don’t profess to be an expert in the applications, and will probably not be able to help with detailed technical support!

Reshade is available whenever you launch the viewer with which it has been associated. To access it, press SHIFT-F2. This will display the UI panel which may enter Tutorial mode, if you haven’t saved any presets.

  • Click the Continue button in the Reshade panel.
  • The preset selection bar will be highlighted. Click on the + button to the right of it to open the Name bar, and type in anything you like – this will become the name of a preset INI file, which yo can save and then select at a later date, loading all the sahder settings you have established in it.
  • The available shaders are loaded (and highlighted in red in the tutorial). Read the explanatory text and click continue.
  • The settings panel is highlighted and briefly explained. Read and click Finish.
  • The full Home tab will be displayed.
The Reshade Home tab
The Reshade Home tab – click for full size

This comprises 5 sections:

  • Preset selection area (top), with + (create a new preset INI) and – (delete selected preset INI)
  • The shader search bar  – type in all or part of a shader to display just that shader and its settings options. This also includes the Collapse / Expand toggle for opening / collapsing all shaders in the upper and lower panes of the tab
  • A scrollable list of available shaders. Clicking on any one of these will open it to display the activation button (1), above, and the hotkey toggle option (2), above – you can type-in any key combination you like here to automatically select the shader.
  • A scrollable list of settings, by shader (3), above).
  • The Reload button (reset everything to defaults) and Show error log buttons.

The two main panes in the tab – shader list and settings – can be adjusted by clicking on the divider between them and moving it up or down.

Continue reading “Revisiting the Reshade injector with Second Life”

VR Photosphere: a further Second Life 360 photo HUD

VR Creations 360 Photosphere demonstration; Inara Pey, October 2016,VR Creations 360 Photosphere demonstration  – click image to view in Flickr with 360o scrolling

Following my reviews of the Illiastra Panoramic HUD and the Camera Panoramic system (see links below), I was handed a further HUD system to look at.

The VR Creations 360o Photosphere HUD is a system that does exactly what it says on the packet: produces a set of images (26 in all) suitable for stitching together into a 360o spherical images suitable for uploading to the likes of Facebook, VRchive and Flickr. It falls between the Camera Panoramic and the Illiastra HUD in price, and is quite possibly the easiest of the three to use to take a set of shots.

The system comes in a basic package of the HUD, sufficient notes to get you going, and a link to a video overview.

The HUD

The VR Photosphere HUD comprises ten buttons, as shown below, with the key buttons highlighted.

The VR Creations 360 Photosphere HUD
The VR Creations 360 Photosphere HUD

The HUD cannot be minimised, but can be positioned off to one side or the other of the screen to keep it out-of-the-way.

Of particular note with the HUD is the top set of six buttons, which are related to positioning your camera to capture images. You can effectively position your camera anywhere you like using ALT-zoom or flycamming, and use the Add button to save the camera’s location as the centre of your sphere of photographs.This also allows you to take “seflies” through careful positioning of the camera close to you.

Saved camera positions can then be paged through using the left and right arrow buttons either side of the Release Camera button – so if you return to a location and wish to re-capture a set of images, you can do so easily, while the Delete button will delete the current camera position from the HUD.

Taking Your Shots

This is very much a point-and-shoot HUD system, requiring minimal set-up.  However, prior to taking your shots, there are some things you need to do:

  • Set your preferred windlight and daytime settings.
  • Make sure you freeze the clouds – you’ll be taking up to 26 images which will need to be stitched together, and moving clouds could make that a bit of a bugger to do. Use Menu > World > Environment Editor >Sky Presets > Edit Presets or PhotoTools > Clouds and check the scroll lock check boxes
  • Make sure the viewer’s camera is set to the default view  angle, FOV and focal length.

Once you’ve done this:

  • Position your camera at the centre point for your image capture – remember, you will be capturing 26 images in a sphere around this point, so you should have the camera view set to about a couple of metres off the ground.
  • Click Add on the HUD to set the camera position.
  • Press Esc on your keyboard to set your camera under HUD control.
  • Click on Begin Photosphere. Your camera will move to the nadir (lowest point) of the image set (generally pointing at the ground) ready for you to start capturing frames.
  • Press CTRL-~ (tilde), the snapshot shortcut, on your keyboard. You will be prompted for a location where you wish to save your first image. Select the folder and give a file name for the image.
  • Click the right arrow next to Done on the HUD to advance the camera to the next frame. Press CTRL-~ to save this shot automatically to the same location as the first.
  • Continue on round the photo a frame at a time using the right arrow button at the bottom of the HUD, saving each shot in turn via CTRL-~.
  • When you have captured all 26 frames, the camera will once more be pointing to the nadir point (generally the ground). Click Done to return the camera to the start position.
  • If you are satisfied with your frame captures, click Release Camera on the HUD to free the camera back to default control.

Producing your Image

Once you have taken your shots in-world, you need to “stitch” them together to produce your final image. There are several software tools you can use for this. My preferred choice is the Hugin Panorama Stitcher available through Sourceforge.net, as I’ve found it to be fast and efficient.

With Hugin installed and launched, proceed as follows:

  • In the Assistant tab, click on Load Images… Navigate to where your images are locally saved and select all 26 in the set, then click Open.
Loading and aligning your images in Hugin
Loading and aligning your images in Hugin
  • The Camera and Lens Data dialogue box is displayed. Enter 90 in the HFOV field and click OK. You images will load in the editing panel.
  • Once your images are loaded, use the Align button to arrange them. This may take a few minutes, just keep an eye on the processing window that opens.
  • When Align has completed, click on the Move/Drag tab and click Straighten. If your shots are displayed upside down, enter 180 in the Roll text box and click Apply to flick them the right way up.
Straighten and correct inverted image, if required
Straighten and correct an inverted image (if required)
  • Click on the Crop tab in Hugin and adjust the values to ensure your entire images is selected – set Left and Top to 0; Right and Bottom to 9999 – note the latter two will snap to the maximum size of your image.
  • Click on the Assistant tab once more and click Create Panorama. A dialogue box will open:
    • Set the image format to JPG and set the quality to 100%
    • Click OK to run the output process.
  • You’ll be asked to give a file name for the Hugin .PTO batch process file and the rendered image file. Enter a name for both, confirming each in turn.
  • Image processing will start, and could take several minutes.

Once completed, you’ll have an image ready to upload to Facebook, VRchive, Flickr, etc.

Do be aware that Hugin can be sensitive in handling images, particularly those with poor contrast / brightness, or which feature a lot of water, and this can lead to problems during the alignment process or in production of the finished image.

Continue reading “VR Photosphere: a further Second Life 360 photo HUD”

The Camera Panoramic: 360 photo fun in Second Life

Camera Panorama 360 demonstration via Flickr; Inara Pey, October 2016,Camera Panoramic 360o spherical demonstration via Flickr – click to view with 360o scrolling

Following my look at the Illiastra Panoramic Camera HUD, Lalwende Leakey invited me to try the HUD system she has been developing for 360o cylindrical and spherical images from within Second Life.

Called Camera Panoramic , the system is a comprehensive package for producing cylindrical (rectangular) images, full 360o spherical images suitable for direct upload to Facebook, VRchive, Flickr and other platforms or uploading at 360o videos on YouTube,  as well as planar images and 360olittle planet” images. A set of image presets are coded into the HUD to make taking shots easier – including the ability to take “selfies” of your avatar in 360o views.

Full documentation for the HUD is available on the web and via a downloadable PDF file file. In this article I’ll be looking at some of the core aspects of the system and running through how to produce a 360o image for uploading to Flickr.

The HUD

The Camera Panoramic HUD comprises 8 buttons, summarised below and described in detail in the supporting documentation.

Camera Panoramic HUD
Camera Panoramic HUD

Note that some of the camera placement buttons may appear greyed-out; this is because they are toggle activated; clicking one shows it in blue (active), while the others turn grey – as is the case with the camera placement options in the image above. The camera image options are only available when the HUD is capturing images.

All of the options can be accessed by gesture-driven hot keys and chat commands on channel /3, as detailed in the camera documentation. I’ll be referring to the HUD buttons throughout this article.

hud-textWhen worn, the HUD also displays information in text. Again, full details on this information can be found in the camera documentation, but in brief, the information comprises: the image type you’re using (cylindrical or 360o) with the selected preset; the number of pictures to be captured: whether you are using a camera offset (X,Y,Z axis), and the required camera defaults.

Note that FOV and Focal Length are determined by the preset, but you must manually set the Camera Angle within your viewer (you may also need to remember the Focal Length value for stitching your shots together into a single image during post-processing).

To set the camera angle, use either the debug setting – use CTRL-ALT-SHIFT-S to open the debug floater and type CameraAngle – or use the Cam tab in Phototools.

Setting the camera angle via debug or Phototools (if you use a TPV other than Firestorm, you may be able to use any shortcut to camera options that viewer provides to set the required value)
Setting the camera angle via debug or Phototools

Before starting to take shots with the HUD, there are a some things you’ll need to do:

  • Set your preferred windlight and daytime settings.
  • Make sure you freeze the clouds – you’ll be taking up to 26 images which will need to be stitched together, and moving clouds could make that a bit of a bugger to do. Use Menu > World > Environment Editor >Sky Presets > Edit Presets or PhotoTools > Clouds and check the scroll lock check boxes
  • If you are using the At Avatar position, hide yourself from view  – used the supplied alpha mask after removing all attachments or use something like a Vanish gesture. Otherwise, parts of your avatar will appear in some of the shots.

Taking Your Shots

Important Notes:

If you want to upload your images to something like Flickr, VRchive or Facebook, you should use the 360o spherical image type, as this will produce an image in the required 2:1 (width:height) pixel aspect ratio (PAR).

Setting your viewer window size for 360 spherical shots
Setting your viewer window size for 360 spherical shots

When using the 360o spherical image type, you must set your viewer’s window size to a square aspect ratio. Use Advanced > Set Window Size (click CTRL-ALT-D to display the Advanced menu option, if required) or if you have Phototools, click on Aids > Set Window Size.

Either option will display the Window Size floater (right) – type 1024×1024 in the text box and click Set. Your viewer window will resize itself.

Image Capture Basic Steps

Detailed instructions on taking shots with the HUD can be found in the documentation. The following is a summary of key steps:

  • Prepare your viewer windlight, freeze the clouds and, for 360o spherical images, set the viewer window size.
  • Wear the camera HUD and select your desired preset.
  • Make sure the preset’s Camera Angle is set for the viewer’s camera (see above)
  • Select the require camera position in the HUD (remembering to hide yourself if using At Avatar)
  • Tap ESC to free your camera, then click the Start button on the HUD to position the camera for your first shot, and pressing CTRL-‘ (tilde) to capture your first frame to disk.
    • The first time the camera is used, you’ll be asked for a file name and location for the shot & all subsequent shots will be automatically saved to this location
    • Subsequent uses of the HUD will automatically save shots to the last location you used to save snapshots to disk when using the snapshot floater.
  • Click the Right arrow on the HUD to advance the camera and use CTRL-‘ (tilde) to save all remaining shots. After saving the last shot, the camera will automatically exit the capture mode.

You should now have a set of images ready for stitching together.

Selfies / Camera Offsets

Camera Panoramic has a set of presets for “selfies”, allowing you to include your avatar in your images. The process for capturing is the same as above, and the presets are selected by clicking the Offset button on the HUD, then selecting Preset from the dialogue box. The presets are defined by starting position.

Remember, as well, the offset option also allows you to offset the camera in increments of 0.1, 1.0 or 10 metres in the X, Y and Z axis’s – refer to the camera’s documentation for more on this.

Continue reading “The Camera Panoramic: 360 photo fun in Second Life”