PNRR Sviluppo applicazioni Realtà Virtuale e Aumentata

Formatore: Prof. Piero Luigi Radice – pieroluigi.radice@itis.pr.it

Tutor: prof. Luca Flavio Ferrarini

Tipo: Presenza

Durata: 10h

Appuntamenti: 5

Iscrizione: Scuola futura codice: (…)

Contenuti

(contenuti generali; il formatore specificherà in dettaglio)

Introduzione a VR e AR
Definizioni e differenze: Realtà Virtuale (VR), Realtà Aumentata (AR) e Realtà Mista (MR). Tecnologie e applicazioni: Settori di utilizzo (educazione, medicina, industria, intrattenimento, ecc.). Architettura delle applicazioni VR/AR: Componenti principali (hardware, software e framework).

Dispositivi e Piattaforme
Hardware per VR: Visori. Hardware per AR: Smartphone, tablet, visori. Piattaforme di sviluppo: Unity 3D, Unreal Engine, ARCore (Google), ARKit (Apple), Vuforia, WebXR.

Concetti di Grafica 3D
Modelli 3D: Formati di file (FBX, OBJ, GLTF) e loro utilizzo nelle applicazioni. Rendering e texture: Illuminazione, materiali e ottimizzazione grafica per esperienze fluide. Animazioni: Implementazione di movimenti e interazioni con oggetti 3D.

Sviluppo in Unity per VR e AR
Introduzione a Unity: Configurazione dell’ambiente di lavoro e integrazione di SDK VR/AR. Creazione di scene interattive: Aggiunta di oggetti, illuminazione e navigazione in ambienti virtuali. Interazione utente: Implementazione di controlli (controller VR, touch AR) e interazioni (clic, trascinamento).

Framework e SDK Specifici
ARCore e ARKit: Creazione di esperienze AR per Android e iOS. Vuforia: Utilizzo di marker e riconoscimento di immagini/oggetti per esperienze AR. WebXR: Sviluppo di applicazioni VR/AR accessibili da browser web.

Programmazione e Scripting
Linguaggi di programmazione: C# per Unity e Blueprint per Unreal Engine. Script per interazioni: Movimenti, collisioni, eventi e fisica. Gestione della scena: Caricamento dinamico, cambi di prospettiva e gestione delle risorse.

Progettazione delle Esperienze
User Experience (UX): Principi di progettazione per ambienti immersivi e intuitivi. Interazione naturale: Gestione di gesti, comandi vocali e input tramite controller o touch. Ottimizzazione delle prestazioni: Riduzione del lag, miglioramento del frame rate e gestione delle risorse.

Test e Distribuzione
Test su dispositivi: Configurazione per test su hardware specifico (visori, smartphone). Deploy: Distribuzione su piattaforme come Google Play Store, Apple App Store e SteamVR. Debugging e ottimizzazione: Risoluzione di problemi legati a prestazioni o compatibilità.