How to Create 360 Screenshots in Unreal Engine

How to Create 360 Screenshots in Unreal Engine

finalmarm.mview

360 scene viewers are becoming increasing popular for showing off art and environments in the Unreal Engine. With the support of many visual social platforms including the Cubebrush forums, showing off your work in 360 can be a inspiring and immersive way to bring the viewer inside your art. In this guide we will go through the steps to capture a 360 screenshot view of your scene in Unreal engine. First we will go through the traditional setups of using native Unreal setup and then again using the Ansel plugin for UE4. I will be using my newest unreal scene, the CCA Subway Train, to preview this tutorial. This scene is available for sale on my Cubebrush store located here.

Let's get started!

Capturing a 360 screenshot using Unreal's Scene Capture

Unreal naturally has a way to capture 360 screenshots. It was originally created and used for creating cubemaps to simulate reflections in the scene. While this process does work to capture the scene there are a few issues involved. First as you will notice with my example, Unreal's version is unable to capture all the post process settings correctly within the image captured. Also the size of the image capture is limited as it was not initially intended for high resolution captures of scenes. Let's continue on so you can see the results first hand.

1. With your scene open navigate to the place mode and search for the Scene Capture Cube actor.

2. Select the Scene Capture Cube actor and drag it to the desired central location from where the perspective of the viewer will be.

3. Next navigate to the content browser and right click in any empty space in the browser to navigate and select the option to create a Cube Render Target. Name this render target whatever you would like.

4. Now with the Scene Capture Cube selected in the scene and the Cube Render Target selected in the content browser navigate to the details of the Scene Capture Cube and input the Cube Render Target in the Texture Target space. You should now see the Cube Render Target update to display the locally captured scene.

5. You can now double click the Cube Render Target in the content browser to see a close up of the texture. In the options here you can also increase the resolution of the capture by changing the option for Size X. Remember that the bigger the texture to more slow down the constant capturing of the scene will incur, so make sure to disable, hide, or delete your Scene Capture Cube actor after completing the screenshot capture.

6. You can also now edit what is visibly shown in the capture by selecting the Scene Capture Cube actor and enabling of disabling the visible features by turning on or off the flags. Often disabling "Capture Every Frame" will help speed up performance to avoid from always updating the texture in real time.

7. You can now export an HDR image to edit and finalize in Photoshop by selecting and right clicking the Cube Render Target. Then select "Asset Actions" and choose "Export". This will bring up an export menu to export the texture as an HDR texture.

8. Now we can open and edit this texture in Photoshop. In Photoshop well want to edit the image to be usable in other applications. For instance if you are uploading this to Artstation you will need to convert it into a .jpg file format. When the image comes into Photoshop it comes in at default as a 32 bit image. This type of image cannot be saved as a .jpg and we must change it into a 8 bit image. This can be done in the "Image" dropdown menu, then select "Mode" and then select "8 Bit / Channel"

9. Next you will be presented with a menu on how you want to convert the image from 32 bit to 8 bit. The default will typically be the "Local Adaptation" option, but in order to preserve the look of your image the option I choose is "Exposure and Gamma".

10. Now your image has been changed to 8 bit and is ready to be saved as a .jpg and uploaded to Artstation or other similar online viewer.

Note: To upload on the Cubebrush forums, watch the video at the bottom of the article on how to create a Marmoset viewer file with your image, and simply upload the viewer file in your post!

Capturing a 360 screenshot using Nvidia's Ansel Unreal Plugin

The Nvidia Ansel Plugin is a super handy tool for getting great screenshots with all post process included at much larger sizes than the first method. It takes a little bit more work to get it set up and going but after a few simple steps you will be taking 360 screenshots in no time! Let's go through the steps together.

1. First with unreal open navigate to the top menu and choose "Settings" and go to "Plugins". This will open a window for you to search for the Nvidia Ansel Photography Plugin. Enable this feature with the check box and the engine will prompt you to restart. Go ahead and confirm the restart. Make sure to save your work beforehand.

2. Next on your computer navigate to the configuration .exe file to confirm that the plugin is installed correctly. You will find the .exe file typically on your computer at: C:\Program Files\NVIDIA Corporation\Ansel\Tools\NvCameraConfiguration.exe. Double click to run this file.

3. A new window will open with a few options. The first two empty slots will allow you to direct where videos and images are saved on your computer from the captures. Go ahead and path these directories to the desired location on your computer. The rest of the options are optional for now, just make sure the bottom has the enable feature turned on. Save these settings to close and confirm.

4. The next step is a bit technical. Click on the windows icon on your computer in the bottom left hand corner and search for "Command Prompt". Confirm this selection and a black window should appear. In this window paste this information in and hit the enter key:

"C:\Program Files\NVIDIA Corporation\Ansel\Tools\NvCameraEnable.exe" whitelisting-everything. This command enables your scene to use the plugin properly.

5. Now we can go back into the unreal engine and go to the top menu and click on the dropdown arrow next to the play option. From this menu we will select the "Standalone Game" selection. This will open a new window with the game being played in it. It may take a moment to load the first time.

6. With the standalone game loaded we can now enable the plugin to use in real time. Move your view to where you wish to center your pivot for your 360 view and hit the Alt+F2 keys. This will enable the plugin interface to appear. It will also sometimes turn on unlit mode. You can easily switch back to lit mode by hitting the F3 key once.

7. Now you can access all the options that the plugin has to offer. There are plenty of cool options to work with here but the most important one that we are looking for is at the bottom where it says "Capture Type" you want to change it to say "360". This will also enable the feature below it to change the capture resolution. Also I typically change the Field of View to something a bit less distorted with a value between 45-65. This number is at your discretion.


8. Lastly simply choose the "Snap" option in green at the bottom left of the screen to capture the scene in 360 view. The plugin will then capture the scene one image at a time and compile them all together for the final result presented in your output directory. This file comes out as a .jpg image so it is all ready to be used online!

Conclusion

As you can see while both methods produce results, the best method depends on your project and what resolution you want you final output to be. Now you can upload your 360 shots to multiple outlets to display your work!

To download the free video files and documentation I have created for 360 screenshots in UE4, click here.


Additional Resources

For more information on Nvidia's Ansel Plugin go here:

https://docs.unrealengine.com/latest/INT/Engine/Pl....

or

http://www.geforce.com/hardware/technology/ansel

Guide to use your 360 shot in Marmoset Viewer:

Google VR View which allows embedding online: https://developers.google.com/vr/concepts/vrview