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 upload to Facebook, VRchive, Flickr and other platforms or uploading as 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”

The Illiastra Panoramic Camera: 360-degree images of Second Life

Illiastra Camera Test; Inara Pey, October 2016, on Flickr A static panoramic view of our home island produced using the Illiastra Panoramic Camera and the Hugin Software.

I received a generous gift from Illiastra Ascendent (NVZN, aka James Reichert in the physical world) over the weekend, who sent me the Illiastra Panoramic Camera (MP link) to try-out in Second Life.

This is a HUD-based system which can be used to produce set of images of an in-world scene which can be stitched together using suitable software to create a static 360-degree view. These can in turn be uploaded to Facebook or websites such as VRchive and YouTube, as scrollable, 360-degree views of a location.

The system comprises two camera HUDs, “basic” and Pro, together with a photosphere for viewing captured images in-world. The difference between the two cameras being that the “basic” model uses 8 images to create a 360-degree panorama, while the Pro version takes a total of 26 (including directly above and below you) to produce either a panoramic view using 24 images, or a spherical view using all 26 images.

Producing your static panoramic image is a 2-step process:

  • Capturing your in-world shots using the camera
  • Stitching them into a panoramic mosaic using a suitable software application.

Once this is done, you can proceed to prepare them for 360-degree viewing on Facebook, VRchive, etc. Illiastra provides comprehensive set of videos on producing your panoramic shots, stitching them together and uploading them to Facebook, which I highly recommend.

For the rest of this article, I’ll take you through producing a panoramic shot and then uploading it to VRchive and converting it to a 360-degree video for You Tube.

Taking the Shots

There are some basic steps to follow when preparing to take shots using the system:

  • Position yourself at the centre of the location you want to capture in a 360-degree image. Be careful of where you select – too close to building or trees, etc., could have them dominating a part of the view.
  • 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
  • Hide yourself from view  – used the supplied alpha mask after removing all attachments or use something like a Vanish gesture. Otherwise, the top of your head will be in every shot.
  • Tap ESC on your keyboard to free your camera (and free it from any other influences acting upon it).

Once you’re set, click the camera HUD your camera will rotate and position itself for the first shot. Use the Snapshot shortcut CTRL-‘ (tilde) to save the image – you’ll be prompted for a file name and location on your computer for the very first short after the HUD is attached.

The Pro version of the camera produces 24 shots using the left / right keys (+ CTRL-' for image capture), the chevrons denoting the progress through upper / lower sets of 8 images apiece. The up and down buttons position the camera for taking sky / ground shots respectively, which can be used to create spherical views
The Pro version of the camera produces 24 shots using the left / right keys (+ CTRL-‘ for image capture), the chevrons denoting the progress through upper / lower sets of 8 images apiece. The up and down buttons position the camera for taking sky / ground shots respectively, which can be used to create spherical views

When you’ve saved the shot – which is effectively the first frame of your panoramic image – click the right arrow on the HUD to advance the camera to the next point (indicated in green on the HUD), and take another snapshot (CTRL-‘). You won’t be prompted for a file name for this and the remaining frames – simply progress on around the HUD, capturing a snapshot at each of the highlighted views in turn.

If you are using the “Basic” camera, you’ll be taking a total of 8 shots – once around the HUD. If you are using the Pro camera, you will be taking 24 shots around you – that’s 3 times around the HUD clicking the right button, giving you 8 horizontal shots, 8 angled upwards, and 8 angled downwards – just follow the prompts on the HUD. When you’ve taken all 24, click the UP arrow on the HUD to capture an overhead view, and the DOWN arrow to capture a shot of the ground under your feet. Again – remember to press CTRL-‘ to save each image.

Note that after the very first instance of asking you to select a file location / name for your shot for image ever captured using it, the HUD will automatically save any subsequent set of shots you capture to the last location on your hard drive you used to save images captured using the snapshot floater

Producing your Panoramic Image via Hugin

Once you have taken your shots, you’ll have either 8 (“basic” camera) or 26 (Pro camera) shots of your location. These now need to be stitched together. GIMP or PhotoShop can be used for this for those proficient in using them, otherwise Illiastra recommends using the Hugin Panorama Stitcher available through Sourceforge.net.  I opted to use this.

With Hugin installed and launched, proceed as follows:

  • In the Assistant tab, click on Load Images…
    • If you have been using the “Basic” camera, select all 8 of your shots
    • If you have been using the Pro camera, selected the first 24 shots  – do not include the final overhead sky shot or ground shot – these can be added later, if required.
  • A dialogue box will appear. Enter a value of 90 in the Horizontal Field of View (HFOV).
  • Click OK to load your images into Hugin – things will initially look a mess – don’t worry!
  • Click on the Align button to initially align your shots – this may take a while to process, depending on your system, the image resolution, etc., and then may end-up upside down. Again, don’t worry!
Loading and aligning your images in Hugin
Loading and aligning your images in Hugin
  • When Align has completed, click on the Move/Drag tab and click Straighten. If your shots are upside down, enter 180 in the Roll text box and click Apply. Your images will further align and flip the right way up.
Straighten and correct inverted image, if required
Straighten and correct inverted image, if required

Continue reading “The Illiastra Panoramic Camera: 360-degree images of Second Life”

Lab presents “Tips and Tricks from the Community”

secondlifeA curious blog post appeared on the official blogs on Wednesday, March 9th, 2016.

Entitled [Tips and Tricks from the Community] Video: Lighting Tutorial from Brookston Holiday, it appears in the Tips and Tricks section of the blogs. As the name suggests, it features a video tutorial by Brookston Holiday (aka ProMaterials) in which he provides an introduction to using the viewer’s in-build tools and options for producing lighting effects, including  projectors (which I’ve covered myself). If you’re unfamiliar with using the tools, it’s a handy introduction.

I call this a “curious” post not because of the content – as the author of the post notes, SL users are generally the best placed when it comes to demonstrating capabilities in the viewer and techniques for achieving a desired result. Rather, I find the post curious because it is the first time anything has been posted to Tips and Tricks in almost four years – the last item having appeared back in June 2012; and even that came with just over a year’s gap between it and the preceding post.

So are we seeing a revival of the Tips and Tricks section of the blog in the form of a  new regular / semi-regular series, or just a one-off post? Right now, your guess is as good as mine. That being the case, I’ll leave you with  Brookston’s tutorial.

 

Reshade: post-processing Second Life in real time

Reshade: injecting shader effects into Second Life (or any game) in real time
ReShade: overlaying your SL world view with shader effects. In this image, I’m using the ReShade split screen option to show a real-time view of Oyster Bay, with the original windlight-based view on the left, and a preview of effects overlays on the right. (which have been deliberately exaggerated for effect)

ReShade is an application which has been generating a bit of buzz around Second Life for the last couple of weeks. When installed on a Windows PC (7, 8 or 10), it allows you to overlay you Second Life world view with a wide range of shader-based effects, which can be used in screen captures for images, or when recording machinima to offer real-time visual effects.As it is an overlay system, it also works with OpenSim environments.

I first got to hear about ReShade from Whirly Fizzle at the start of August (she in turn got to learn of it through Caetlynn Resident), and having been playing with the beta since then. Just how practical it might be is a matter of personal choice / want / ability with more traditional post-processing tools, etc. However, as version 1.0 launched on August 10th, with some much-need clean-up, I thought I’d offer a write-up on it, together with a few thoughts.

Remember, ReShade is third-party application, LL and TPVs cannot provide assistance in using it – and nor can I. If you need help with it, please refer to the ReShade forums. As relatively new software, it can be a little buggy, and it doesn’t always run with the viewer when installed – again, if you have problems getting it going, neither viewer support teams nor I can really help.

A quick and dirty demo video showing how ReShade effects can be used in real-time machinima capture in Second Life

Set-up

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

  • Download the ReShade Framework ZIP file from the ReShade website.
  • Unzip the contents of the downloaded file to a location of your choice.
  • Navigate to the unzipped folder location and right-click on ReShade Mediator and Run As Administrator.
  • The Mediator will launch to display the configuration tab (shown below). This is the UI element used to apply and adjust effects.
  • You now need to create a profile for Framework to work with your viewer.
Your first step is to configure the Framework Mediator to recognise your viewer
Your first step is to configure the Framework Mediator to recognise your viewer
  • Under the Profile section on the left of the Mediator, click Add. A file picker will open Use it to navigate to your viewer’s installation folder.
  • Locate the viewer’s .EXE file in the installation folder and click it once to highlight it, and then click the Open button in the picker
  • You will be returned to the Mediator panel, and the viewer name or “Second Life” should be displayed in the profile drop-down (below) – note that some TPVs may display their own name or may display “Second Life”, it makes no difference.
  • Make sure OpenGL has been correctly identified. Click on the Confirm button to create a profile for your viewer.
When adding a viewer to ReShade Framework, note it may display as
When adding a viewer to ReShade Framework, note it may display as “Second Life” rather than the viewer’s name – this doesn’t prevent things from working
  • When Mediator has finished creating the profile, click Apply at the top right of the panel.

The set-up process is now complete. However:

  • Note that this has created two files in your viewer’s installation folder: reshade.fx and opengl32.dll. These must be deleted if you decide to remove ReShade from your PC.
  • Also, as I’ve found ReShade to be slightly flaky, before going any further, copy the opengl32.dll and save the copy in another location – I’ll explain why later.

Continue reading “Reshade: post-processing Second Life in real time”