Skip to content

Warping and blending#


If you are only using flat screens and your blending zones are purely horizontal and/or vertical, you can use MiddleVR's viewport blending.


MiddleVR supports multiple warping types:

  • Mesh warping: Distorts the render based on a given a 3d file of the geometry.

  • Vioso AnyBlend and ScalableDisplay EasyBlend to support any type of warping and blending. The warping can be updated in realtime depending on the user's eyes position.

Mesh Warping#

Note: Supported renderers: Built-in legacy pipeline & HDRP. URP is not supported at this moment

  • Start by adding a new Warper Mesh

  • Browse for the geomety file (fbx,...) and set Unit accordingly

  • Assign the warper to a Camera


  • UVs: The 3D model of the warper must have UVs correctly setup.

-- UV (0,0) must correspond to the lower-left corner of the mesh.

-- UV (1,1) must correspond to the top-right corner of the mesh.

-- If you have multiple meshes, each mesh must have UVs going from (0,0) to (1,1).

  • It is best if the mesh is triangulated although quads should work.

Scalable Display#

  • Start by adding a new Scalable Display Warper

  • Enter the configuration file. MiddleVR supports both POL files and OL files. POL files are required for dynamic update of the warping based on the user point of view

  • Assign the warper to a Camera

  • Make sure the Window Mode is set to Compositor and Compositor Mode is Direct3D11


Note: You don't need to have the Vioso Unity integration in your application

Note: Make sure all cluster nodes have access to all the .VWF files

  • Start by adding a new Vioso Warper

  • Enter the configuration file and a channel name. You can find a template of a .ini file in MiddleVR2/data/Vioso_MiddleVR_Template.ini

  • Assign the warper to a Camera

  • Make sure the Window Mode is set to Compositor

Note: It is advised to create a parent node for all the Vioso Warpers. This node will represent the zero position of the Vioso calibration. This is typically the position of the webcam/camera that was used for the calibration.

Note: If when moving the head node the view is getting darker, you are probably getting out of a "Vioso box". You can change the size of this "box" by changing the autoViewC value in the .ini file. Try values like 2, 5, 10 but try to find optimal values because increasing this value too much will decrease the quality of warping.


MPCDI support is in progress, contact us for more information.