EN FR
EN FR


Section: New Software and Platforms

Platforms

WildOS

Participant : Michel Beaudouin-Lafon [correspondant] .

WildOS is middleware designed to support applications that run in an interactive room, such as our WILD and WILDER rooms, with various interaction resources, including a tiled wall display, a motion tracking system, interactive tabletops, tablets, smartphones and custom-made or 3d printed interactive devices. The conceptual model of WildOS is a platform, such as the WILD or WILDER room, that can be described as a set of devices on which one or more applications can be run.

WildOS consists of a server running on a machine that has network access to all the machines involved in the platform, and a set of clients running on the various interaction resources, such as a display cluster or a tablet. Once WildOS is running, applications can be started and stopped and devices can be added to or removed from the platform.

WildOS relies on Web technologies, most notably Javascript and node.js, as well as node-webkit and HTML5. This makes it inherently portable (it is currently tested on Mac OS X and Linux). While applications can be developed only with these Web technologies, it is also possible to bridge to existing applications developed in other environments if they provide sufficient access for remote control. Sample applications include a web browser, an image viewer, a window manager, and the BrainTwister application developed in collaboration with neuroanatomists at NeuroSpin.

WildOS is used for several research projects at ExSitu and by other partners of the Digiscope project. It was also deployed on several of Google's interactive rooms in Mountain View, Dublin and Paris. It is available under on Open Source licence at https://bitbucket.org/mblinsitu/wildos.

  • ACM: H.5.2 [User Interfaces]: Graphical user interfaces (GUI)

  • Software benefit: helps development of multisurface applications.

  • OS/Middleware: Crossplatform

  • Required library or software: node.js, node-webkit

  • Programming language: Javascript

Unity Cluster

Participants : Cédric Fleury [correspondant] , Olivier Gladin [SED-SAC] .

Unity Cluster is middleware to distribute any Unity 3D (https://unity3d.com/) application on a cluster of computers that run in interactive rooms, such as our WILD and WILDER rooms, or immersive CAVES (Computer-Augmented Virtual Environments). Users can interact the the application with various interaction resources.

Unity Cluster provides an easy solution for running existing Unity 3D applications on any display that requires a rendering cluster with several computers. Unity Cluster is based on a master-slave architecture: The master computer runs the main application and the physical simulation as well as manages the input; the slave computers receive updates from the master and render small parts of the 3D scene. Unity Cluster manages data distribution and synchronization among the computers to obtain a consistent image on the entire wall-sized display surface.

Unity Cluster can also deform the displayed images according to the user's position in order to match the viewing frustum defined by the user's head and the four corners of the screens. This respects the motion parallax of the 3D scene, giving users a better sense of depth.

Unity Cluster is composed of a set of C Sharp scripts that manage the network connection, data distribution, and the deformation of the viewing frustum. In order to distribute an existing application on the rendering cluster, all scripts must be embedded into a Unity package that is included in an existing Unity project.

  • ACM: C.2.4 [Distributed Systems]: Distributed applications, I.3.7 [3D Graphics and Realism]: Virtual reality

  • Software benefit: adapts existing Unity 3D application to a rendering cluster of an interactive room.

  • OS/Middleware: Crossplatform

  • Required library or software: Unity 3D

  • Programming language: C Sharp

WILDER

Participants : Michel Beaudouin-Lafon [correspondant] , Cédric Fleury, Olivier Gladin.

WILDER (Figure 1) is our second experimental ultra-high-resolution interactive environment, which follows the WILD platform developed in 2009. It features a wall-sized display with seventy-five 20" LCD screens, i.e. a 5m50 x 1m80 (18' x 6') wall displaying 14 400 x 4 800 = 69 million pixels, powered by a 10-computer cluster and two front-end computers. The platform also features a camera-based motion tracking system that lets users interact with the wall, as well as the surrounding space, with various mobile devices. The display uses a multitouch frame (the largest of its kind in the world) to make the entire wall touch sensitive.

WILDER was inaugurated in June, 2015. It is one of the ten platforms of the Digiscope Equipment of Excellence and, in combination with WILD and the other Digiscope rooms, provides a unique experimental environment for collaborative interaction.

In addition to using WILD and WILDER for our research, we have also developed software architectures and toolkits, such as WildOS and Unity Cluster, that enable developers to run applications on these multi-device, cluster-based systems.

Figure 1. The WILDER platform.
IMG/WILDER-1.jpg IMG/WILDER-2.jpg