Programming
Fundamentials
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Core Library
Containers
Engine Classes
Node-Related Classes
Rendering-Related Classes
Physics-Related Classes
Bounds-Related Classes
GUI-Related Classes
Controls-Related Classes
Pathfinding-Related Classes
Utility Classes

Panoramic Rendering with AppPanorama Plugin

AppPanorama plugin makes it is possible to render impressive 180 degree panoramas on one monitor. To increase the total resolution of the rendered image, this viewport can be spanned across several monitors, if required.

Rendering Modes of AppPanorama

The following rendering modes are supported:

  • Panorama with curved edges
  • Linear panorama without distortion at the edges
  • Fisheye (spherical panorama)

Curved Panorama

Curved Panorama

Linear Panorama

Linear Panorama

Fisheye

Fisheye

How AppPanorama Works

AppPanorama seamlessly stitches four viewports into one for extra-wide field of view. Images are overlapped and blended along the border shown below.

4 viewports of AppPanorama

Four viewports used to render AppPanorama

Launching AppPanorama

To launch the application in one of the panoramic views:

  1. Specify an engine plugin library (lib/AppPanorama_*) together with the rest of required start-up arguments (such as rendering API, window size, etc.). For example:
    Shell commands
    main_x86 -extern_plugin AppPanorama
    You can use 32-bit, 64-bit, debug or release versions of the library. (The engine automatically loads the appropriate version of the library depending on the specified main application.)
    Notice
    It is not possible to use AppPanorama with:
  2. To change a rendering mode, specify -mode CLI option:
    • panorama (by default)
    • linear
    • fisheye (requires a square aspect ratio; otherwise, it will be cut)
    For example:
    Shell commands
    main_x86 -extern_plugin AppPanorama -mode linear
  3. If necessary, override the default overlap boder size via -border CLI option (this option affects the performance). It is possible to set a value within [0;1) range.
    • By the minimum value of 0, there is no seam correction between viewports.
    • By the maximum value of 1, the overlap area of each viewport equals half of its size.
    • The default is 0.1.

When AppPanorama plugin is loaded, Tools panel -> Camera tab -> Field of view option is not applicable.

Multi-monitor Mode

It is also possible to span AppPanorama across several identical monitors (only) in the fullscreen mode without decorations. For that, you need to specify on the start-up:

  • The summed resolution of two displays (for example, for two 1280x1024 displays, that would be 2560x1024)
  • video_fullscreen 2

For example (do not forget to specify other required start-up options):

Shell commands
main_x86.exe -video_mode -1 -video_width 2560 -video_height 1024 -video_fullscreen 2

Curved Panorama

Last update: 2017-07-03