VrScript: il nuovo ambiente di scripting per la VR

L’altro giorno abbiamo riportato gli speaker della prossima Oculus Connect 2, la conferenza dedicata agli sviluppatori Rift. Avevamo riportato che, tra gli ospiti, ci sarebbe stato naturalmente John Carmack, Chief Technology Officer di Oculus. Ora, abbiamo qualche indiscrezione su quello che sarà il tema del suo intervento. A quanto pare, Carmack si concentrerà su un nuovo ambiente di scripting, interamente ideato per la VR.

Sarà basato su Scheme, si chiamerà VrScript e nasce specificamente per lo sviluppo di applicazioni in VR. Durante il suo speech, potremo assistere a una sessione di coding in diretta. Ecco cosa recita la sinossi del suo intervento: “John Carmack dimostrerà il processo di sviluppare una semplice applicazione VR usando un nuovo ambiente per lo sviluppo rapido e il deployment aperto su Gear VR. Imparerete inoltre di più a proposito di elaborazione dei media, sviluppo remoto, deployment e setup multi-utente.”

Nei mesi precedenti Carmack aveva espresso sul web le ragioni dietro Vrscript:

Fare sviluppo da interfaccia in VR nelle app native è poco piacevole. Potete anche affrontarlo in C++ con le attuali interfaccia, ma i tempi di iterazione e la struttura del codice fanno sì che non sia così divertente.

Il prototipaggio in-editor è buono in Unity, ma i tempi dei cicli del testing su device sono terribili, e alla fine dovete avere a che fare con la pesantezza di Unity e con l’accesso scarso alle feature VR native, come i livelli TimeWarp. Con la necessità di firmare di app, non c’è modo per gli sviluppatori di condividere il lavoro con gli altri o con comunità limitate.

Da queste motivazioni nasce la necessità di un ambiente di sviluppo interamente pensato per la VR, che punta quindi a diventare lo standard per chi lavora alla creazione di esperienze immersive. Ecco quindi quali saranno i punti di forza di VrScript e le diverse modalità in cui funzionerà:

Web Like: in questo modo lo script viene scaricato dalla rete a ogni esecuzione e viene fatto girare da una single app firmata che forniamo (NetHMD). Completamente specificato da un URI con schema ad app, questo permette alle esperienze VR di essere lanciate direttamente dalla pagine web o dagli app-link su Facebook, il che credo sia molto potente. Potrete leggere di quanto sia grandioso qualcosa mentre navigate sul vostro telefono, e a quel punto vi basterà cliccare il link, aspettare la finestra “inserisci dentro HMD” ed entrarvi subito dentro. Gli script VR possono linkare ad altri script VR senza lasciare la VR. Non c’è monetizzazione diretta, ma alla fine possono essere supportati degli acquisti in-app.

App Like: in questo caso lo script viene fornito all’interno di un apk convenzionale distribuito presso il negozio, e lo scripting viene semplicemente usato come un ambiente di sviluppo più efficace per alcune classi di applicazioni.

Sviluppo remoto: in questo lo caso lo script viene eseguito sull’IDE di un PC, comunicando con NetHMD attraverso una connessione TCP. Questo permette dei cicli d’iterazione nel passaggio dal codice alla VR più brevi di un secondo, e l’uso di un debugger. Potrebbe anche essere implementato l’uso di una modalità relativa dove un server centrale guida direttamente uno o più client.

Al di là delle questioni più tecniche, lo scopo di VrScript sembra essere piuttosto facile da intuire. Carmack vuole un ambiente di sviluppo accessibile, dove sia facile prototipare. Allo stesso tempo, VrScript permetterà agli utenti di creare delle attività social in VR, come giochi da tavolo e di carte. Una delle feature più interessanti è la possibilità di creare immediatamente delle web app in VR: immaginate le possibilità che questo apre, soprattutto alla luce di Facebook. Potrebbe presto realizzarsi la visione di Zuckerberg di una condivisione immediata delle esperienze tramite la VR. Per il momento VrScript sembra essere rivolto principalmente allo sviluppo VR per Android, ma non è escluso che quest’esperienza confluirà anche nella sua controparte desktop.