Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In Editor Adjustment

This is a breakdown of the Unreal Camera SystemIgloo Manager component, and what is possible to be adjusted.

Default

...

Create on Awake

Type: FPS Boolean | Default: 30true

Changes the set FPS of the game, we have found that 30fps is best for realtime content.

Gamma

Type: Float | Default: 1.0

The Output gamma for the render textures and spout sender

Capture Source

Type: Enum <SceneCaptureSource> | Default: Final Color [HDR] in Linear sRGB gamut

How the cameras should capture the scene, and store it in a render texture to send to the Igloo System.

Note

Choices with Alpha produce sub optimal results in the Igloo software, use the preview app whilst adjusting this value.

...

Creates the 360 camera system on Begin Play. If you would like to script the plugin to output only after a certain condition is met, disable this, and write a script to activate the functions within Begin Play on the Igloo Manager.

Follow Object

Type: Actor | Default: null

Place an Actor component here, for the camera system to follow.

Exposure Compensation

Type: Float | Default: 10.0

The cameras adjust their exposure separately to global exposure, and adjusting this value adjusts how much light the cameras pickup when capturing the scene.

Use Igloo Crosshair

Type: Boolean | Default: Truetrue

For Spawns the Igloo Structure Type, if true, all the default values will be set on play. Overwriting any changes made.

Igloo Structure Type

...

Specifies how the camera system should output. Choices are:

  • Flat Wall - Will create a full 360 cubemap output using the Cube camera system

  • Curved Wall - Will create an equirectangular output using the Stereo camera system

Follow

Object to Follow

Type: Actor | Default: null

Place an Actor component here, for the camera system to follow.

Follow Object

Type: Boolean | Default: false

Follows the actor that is played in the Object to Follow slot.

Follow Rotation

Type: Boolean | Default: false

The camera will mimic the rotation of the object is its following, based on the rotation axis multiplyer, when true.

Follow Camera

Type: Boolean | Default: true

The camera system will follow the current active camera in the level.

Rotation Axis Multiplyer

Type: Vector3 | Default: 0, 0, 1

Changing this multiplyer will make the camera system copy the rotation of the actor that it is following.

Note

Rotating the Igloo Camera can produce nausiating effects. Please be carefull using this feature.

Best to only have it active for cutscenes.

3D

Eye Seperation

Type: float | Default: 3.0

The amount of seperation between the left and right eye when 3D is active

Igloo 3D Active

Type: Boolean | Default: false

When active, creates double the amount of cameras within the scene. This will cause a significant performance overhead.

Equirectangular

Equirectangular Output

Type: Boolean | Default: True

Uses an equirectangular shader to merge the output of the stereo cylindrical camera system into a single texture

Equirectangular Resolution

Type: Vector2 | Default: 8000x4000

The texture size for the render textures to be created and then sent to the Igloo warper via Spout

Equirectangular Spout Name

Type: Name | Default: UnrealCam

The name of the Equirectangular spout sender, this is what you’ll find in Receiver, or under External Application Inputs, on the Igloo Preview app, and warper app.

Cylindrical Camera

Camera Count

Type: integer | Default: 4

The amount of cameras for the cylindrical camera system to create. We have found 4 is the best for most projects.

Camera Spout Name

Type: Name | Default: UnrealCam

The prefix for the spout senders for each camera (if not using equirectangular)

Igloo Radius

Type: float | Default: 360

The radius of the Igloo structure, 360 is most commonCrosshair actor on Begin Play. Disable this if you’re using a custom player.

Command Line Ending Adjustment

Several adjustments can be made to the final ‘cooked’ game by adding command line endings to the shortcut, or to the correct box within the ICE software.

These CLI values can adjust how the output to the Igloo software is rendered, and can be used to speed up the build at the expense of quality, or increase quality at the expense of frame rate.

Configuring a build with CLI using Igloo ICE

  1. Run the Built Unreal executable.

  2. Add a Spout Layer and select IglooUnreal as the Sender

  3. Within Effects, add the Cubemap to Equirectangular modifier, and then True Perspective modifer.

  4. Within General, change the name to something appropriate

  5. Within Misc, set the Exe path to your executable location and place the arguments you require in the Arguments box below.

Info

You do not need to use all the arguments, and if your application works with default values. There’s no need to do anything at all.

...

You will then need to save this session as something appropriate.

Close the Unreal application.

Then delete the spout layer you’ve created

Load the session you created, it should:

  • Load the executable

  • Apply the arguments you’ve set

  • Open the spout layer

  • Wait for the sender

Available CLI Adjustments

Adjust Amount of Cameras

CLI Argument: -iglooSenderName | Value: string | Default: IglooUnreal

Example: -iglooSenderName=IglooSpoutOut

Changing this value will rename the spout sender output that is sent to the Igloo software.

Adjust Number of Cameras

CLI Argument: -iglooNumCams | Value: integer | Default: 6 | Min: 0 | Max: 6

Example: -iglooNumCams=4

Changes the number of cameras that is generated to output to the large render texture that then outputs to the Igloo software via Spout.

Info

This doesn’t alter the size of the texture. It will always be 6:1 regardless of the amount of cameras generated.

Space with no cameras will be just black, which doesn’t cause any noticeable framerate drop. The main workload is done when the camera draws the scene.

Adjust output resolution

CLI Argument: -iglooSetResolution | Value: integer | Default: 1000 | Max: 2780

Example: -iglooSetResolution=1500

Adjusts the vertical output size (in pixels), which is then multiplied by 6 to achieve the horizontal output size.
The output of the camera system will always be 6:1.

Inputting a value of 1500 will result in an output texture size of 9000x1500.

2000 will result in an output size of 12000x2000.

The level of detail will be altered dramatically by adjusting this value higher or lower. This will also radically control the framerate of the unreal build.

The maximum size is 2780, as this will roughly correlate to a horizontal width of 16384, the limit of openGL shaders.