Lumiverse

Lumiverse provides a technology to run web (HTML5) applications on projected screen from your device (LUMITRIX outdoor or indoor). Apps can be projected together with movie clips and number of apps on screen is limited only by computing performance of your LUMITRIX device. Lumiverse provides real-time perspective deformation for apps and movie clips. Apps and movie clips can be transparent (alpha channel is supported).

Application isn't just an ordinary web page because it has to be prepared for Lumiverse API.

You can control web pages or applications which are running on desktop/mobile device by computer mouse or touchscreen. But how can you control applications on projected screen? Answer is mobile phone, because everybody has a mobile phone in a pocket.

Object deformation on wall

Object deformation

Lumiverse architecture

Lumiverse architecture

Type of applications

We can split applications to two parts – interactive and non-interactive.

Noninteractive apps

This apps is only visualizing some information without interactivity with user. For example: app shows clock, twitter feed (facebook), etc... These apps have canvas part only.

Interactive apps

User can interact with app throught computer/mobile device. User open special page (part of app) controller or editor, the page contains controll elements (for example arrows buttons) and user‘s events will be sent to canvas part.

Controllers and editors of apps are avaible in Lumiverse app (http://my.Lumiverse.com), which provides access to all functionality.

Parts of application

It was mention in introduction, interactive apps have to be split least to two parts – controller and canvas. However, possibilities are wider.

  • canvas - part running on LUMITRIX device and it is projected on the screen. Canvas is mandatory part.
  • controller - part running on mobile device and users use it to control or play your app. This part is available on Lumiverse app.
  • editor - part running on mobile device where users can adjust settings of your app. This part is available through editor in Lumiverse app.

Lumiverse app and public mode

Lumiverse app is web interface (available everywhere on the internet) controlling LUMITRIX devices. You can edit scenes (insert and perspective deform apps or movie clips) and control apps in Lumiverse.

Customer, who owns LUMITRIX device, has account in Lumiverse app with full rights (apps control, edit scene, projector control, etc...).

Public installations with many unknown visitors need special mode with access restricted only for apps control – this is named public mode. You can put a QR app to the scene and this app will project generated QR code with url of Lumiverse app with public mode restricted access only to controlling apps and with limited time of session.

Lumiverse app

Lumiverse APP Lumiverse APP

Technology

Because Lumiverse applications are based on web technology, we will talk about backend and frontend.

Frontend

You will use common web languages as HTML5, JavaScript and CSS.

You have to optimize the controller part for all common mobile phone browsers (android, iPhone...).

The canvas part will run in a special browser based on Chromium in your LUMITRIX. You have to optimize for it, you can use your device or software emulator (is part of a development kit).

Backend

You can distribute to LUMITRIX devices frontend part of your app only. Reason is safety of the Lumiverse app environment. Frontend can be simply sandboxed in web browsers, backend scripts not.

You need to implement backend solution for communication between parts of application and for enhanced functionality as storage.

Solution is Lumiverse API or your server with backend part.

Lumiverse API runs on LUMITRIX servers and provides:

  • very quickly websocket API for general communication between parts of your application
  • ajax api for storage (persistence of data) or for slow communication between parts of application

Your own server

We strongly recommend to use Lumiverse API anytime you can. But for special cases you may need additional backend support. You can implement your solution on your server and frontend of your application can be used together with Lumiverse API. However, LUMITRIX can't provide any support for your backend solution.

Possibilities

What is possible and what (meantime) not:

Possible

  • quick web-socket communication: canvas part can communicate with controller part with very low latency, so you can develop interactive games as tetris, snake, etc...
  • HTML5 canvas – you can draw anything what you want
  • HTML5 video – you can show your video content
  • Alpha channel – your app can be transparent and you can insert it over other contents
  • Storage – Lumiverse API provide ajax API for storage content to database
  • External API – you can use any external http(s) API to get/save some data. This API can run on your server.
  • Extracting data from other sites – canvas part has disable CSRF protection, so you can do cross-site requests for get/parse data from other pages for visualization purposes
  • WebGL – Chromium supports WebGL, but rendering performance is limited, you have to test your app.

Register as Developer

Developer tools and full documentation are available for LUMITRIX customers and friendly developers. If you want to start developing apps for the Lumiverse, please send email to support@LM3X.com with info about you, your project, and your company. Please type "LUMIVERSE API" in subject of email. You should receive full access to documentation, SDK and Lumiverse developer account. If not, please contact your contact person from Lumitrix.

Lumiverse API Documentation