Skip to content

Revision history#

Migrating your project from MiddleVR 2.0 to MiddleVR 2.1#

  • Delete the folder Assets/MiddleVR
  • Follow the tutorial "Setup MiddleVR in Unity"

MiddleVR 2.1.0.2#

  • Fix: Autocreate stereo cameras from screen was not creating cameras with a correct name
  • Fix: Wand ray now correctly is green when hovering a MVRActor Game Object
  • Fix: Autodetect cluster infos was still detecting some infos even if disabled

MiddleVR 2.1.0.1#

  • Fix bug where couldn't type values in MiddleVR config
  • Add ability to type math expression in MiddleVR config. Examples: '1+2', 'Pi * 3'
  • MVRAttachToNode: -- Rename VRParentNode to MVRParentNode -- Add property "Disable Game Object If Parent Not Found"
  • MVRManager now automatically adds a MVRClusterObject to itself so when it is manipulated it is automatically synchronized
  • Time.timeScale and Time.fixedDeltaTime are now automatically synchronized
  • Animators CullingMode is now automatically set to AlwaysAnimate for better chances of animations being correctly synchronized

MiddleVR 2.1.0#

  • ** Important: You need to install the new MiddleVR Daemon on all your cluster nodes. The simplest way to do this is to run the MiddleVR installer.

Unity#

  • Support for Universal Render Pipeline (URP) and High Definition Render Pipeline (HDRP)
  • Support for Warping & Blending with Vioso AnyBlend and Scalable Display EasyBlend
  • Preview Window: Visualize your multi-display cameras in a preview window inside Unity Editor. Also supports active stereoscopy.
  • DirectX 12 is now supported, starting from Unity 2019.3
  • Use new Unity Package Manager instead of the .unitypackage method -- All the packages are now in Program Files/MiddleVR2/unity_packages
  • Ability to debug any cluster node from Unity Editor
  • Cluster Clients can send messages to cluster server
  • Experimental: Cluster Object can sync any MonoBehaviour field
  • The MiddleVR nodes hierarchy is now created under the MVRManager
  • New MVRManager option: Attach To Camera: Parent the MVRManager to the first active camera.
  • New MVRManager options layout
  • Support for Unity 2020.1
  • Remove MVRManager options: VRRootNode, DontChangeWindowGeometry, GrabExistingNode, Debug Node & Debug Screen
  • Support for IL2CPP
  • Fix bug where clients near/far might be wrong

MiddleVR#

  • New window mode: Compositor. Use this mode for better performances, stability, but also live preview of your multi-display window (even stereoscopy) in Unity Editor!
  • New default configuration: VirtualStage.vrx
  • Rename "VRSystemCenterNode" to "SystemCenter"
  • Documentation: new theme
  • Fix bug where you lost keyboard/mouse input when clicking outside Unity's Game view
  • Add SteamVR/OpenVR trackers support
  • Installer and all .exe files are now digitally signed
  • Installer opens firewall ports automatically: -- TCP: 9995,9997,9998,9999 -- UDP: 9996,9998
  • Enable trial even if trial was activated with MiddleVR 1.x
  • API: Change some keyboard VRK_ constants. Check "Keyboard keys".
  • API: Rename vrClusterManager::GetClusterClientNb to vrClusterManager::GetClusterClientsNb
  • Fix Windows 7 compatibility

MiddleVR Config#

  • New Autodetect feature: Speed up your setup by automatically detecting all cluster nodes on a network that have a daemon running.
  • Update Display tab to show all the cluster nodes and their displays along with the viewports
  • You can now assign a viewport to a cluster node in the Displays tab
  • Add buttons for automatic creation of viewports, cameras, cluster nodes and screens
  • Add "Fit to display" button to automatically resize a viewport to the display
  • Add "Enable All" and "Disable All" buttons for cluster nodes
  • Add "Start local MiddleVR daemon" button
  • Add "Connect a network folder" section
  • Ability to zoom in and out in the Displays view
  • Ability to drag X/Y/Z & Yaw/Pitch/Roll values by drag the property label
  • New feature in MiddleVR Config: ServerUnityWindow. Creates a standard Unity window that can be moved and has no VSync
  • Remove MiddleVR Config option DisableVSyncOnServer
  • Remove MiddleVR Config option WindowBorders
  • Remove "maximum packet size for image distribution" property which was no longer used
  • Add menu: File > Reload current configuration
  • "Tracker Simulator - Mouse" : In config and unity editor mode, enable mouse tracker simulator only if 'shift' is pressed
  • Devices: don't automatically reconnect drivers when getting focus back. Added new button "Reconnect drivers" for that.
  • MiddleVR config: Press 'F' to Focus on the selected node
  • MiddleVR config: Don't show cameras frustum unless selected for more clarity

MiddleVR 2.0.1#

  • Fix scale of demo_outpost
  • Fix navigation of demo_outpost that could result in a desynchronization between screens

Migrating your project from MiddleVR 1.7 to MiddleVR 2.0#

  • Make sure to read MiddleVR 2.0 Changelog first
  • Note all the parameters of the VRManager
  • Delete Assets/MiddleVR (and Assets/MiddleVR_FirstPersonController if you have it)
  • Import the new MiddleVR unity package from C:\Program Files\MiddleVR2\data
  • Add the new MVRManager
  • Update your MiddleVR configuration file by simply loading it in MiddleVR Config 2.0 and saving it
  • Apply the parameters from the old VRManager and use the new configuration
  • Modify your scripts:
    • Remove using MiddleVR_Unity3D
    • Add using MiddleVR and using MiddleVR.Unity
    • Rename MiddleVR.VR to MVR.. Example: MiddleVR.VRKernel is now MVR.Kernel
    • VRCommands and VRSharedValue are now replaced by [Cluster.BroadcastMessage]
  • WebViews and VRMenu have been deleted. The best option is to use Unity GUI
  • MiddleVR does not support HMDs anymore, so if your application is also using HMDs, you should use Unity XR

Version 2.0 Changelog#

Major updates#

Suppression#

  • MiddleVR is now focused on projector based VR system so there is no more native support for HMDs
  • Removed Web views
  • Removed support for haption devices
  • Removed support for: Colibri, Kinect 1&2, LeapMotion, TrackIR, Vuzix
  • Removed WorldScale
  • Removed support for 32-bit builds. 64-bit is now required
  • Removed support for DirectX 9
  • Removed VRMenu

Setup#

  • You can have MiddleVR 1.x and MiddleVR 2.x installed at the same time
  • You don't need to install MiddleVR on all the cluster computers, except for the VRDaemon. All the MiddleVR dlls are now embedded in the Unity application
  • When running MiddleVR installer you can choose to automatically run the MiddleVR daemon at startup

Licensing#

  • Licensing is now per projector
  • Only one "Pro" license
  • A license is now required for every computer using MiddleVR
  • The license file is now stored in %programdata%/MiddleVR so every user in the system can access it

Unity#

  • Unity >= 2018.4 required
  • Support for Unity 2019.4 LTS
  • The MiddleVR package now embeds all the MiddleVR dlls.
  • New standard demo: Outpost, shipped in C:\Program Files\MiddleVR2\demo\demo_outpost
  • Cluster commands have changed: See "Sharing custom data" and "Sending events" in documentation.
  • Initial support for coexistence with UnityXR so your application can both support MiddleVR and UnityXR
  • Beta support for High Definition Render Pipeline (HDRP) & Universal Render Pipeline (URP)

MiddleVR config#

  • You cannot run a MiddleVR 1.x application with MiddleVR Config 2.0
  • New Log Folder parameter. This parameter is especially useful to output logs to a shared network folder so it is easier to gather the logs from all the clients.

Display#

  • Add support for VIOSO to support curved systems (spheres, cones, cylinders ... ) and blending of multiple projectors
  • No need for the d3d11.dll to be copied in the same folder as the exe
  • MultiGPU option is always on so it is hidden from MiddleVR config

Drivers#

  • Optitrack: Update to NatNet 3.1
  • ART: Update to DTrack 2.5
  • Vicon: Update to Datastream 1.10

Minor updates#

Licensing#

  • Update to LMX 4.9.20

Unity#

  • Interactions: Support for Unity Event system
  • MiddleVR now automatically picks the first camera from the project as its Template Camera
  • Kernel.Time is now correctly synchronized on all cluster nodes
  • Renamed MiddleVR.VR to MVR.. Example: MiddleVR.VRKernel is now MVR.Kernel

MiddleVR config#

  • New skin
  • Renamed Simulations tab in Apps tab
  • No need to run the VRDaemon if you are running multiple GPUs in one computer. MiddleVR daemon is still required if you run a cluster
  • Log Level is now in Apps / Debug
  • You can now change the Log Folder in Apps / Debug
  • You can now change if log names should be prefixed by date/time
  • Custom Arguments, Log Level, Log Folder and Log prefix are now persistent settings
  • When running MiddleVR config it will automatically ask if you want to load the latest configuration file loaded
  • Hide Camera::Near/Far from MiddleVR config and use the Near/Far from the Unity Template Camera

Misc#

  • Logs are now stored in %tmp%/MiddleVR_date_time folder and prefixed by the date/time of launch by default. This can be changed in MiddleVR Config / Apps / Debug
  • MiddleVR daemon now has its own log file