Notebookcheck Logo

Lo sviluppatore di giochi costruisce un motore di gioco VR personalizzato usando Python

Motore di gioco VR alimentato da Python (Fonte: DaFluffyPotato)
Motore di gioco VR alimentato da Python (Fonte: DaFluffyPotato)
Per la maggior parte degli sviluppatori, utilizzare Python per lo sviluppo di giochi VR non sembra l'uso più efficiente del linguaggio di programmazione. Tuttavia, lo sviluppatore DaFluffyPotato ha affrontato la sfida e ha scoperto alcuni risultati entusiasmanti.

Lo sviluppatore DaFluffyPotato non è nuovo al mondo dello sviluppo di giochi VR. Purtroppo, i motori open source come Godot hanno dimostrato di avere dei limiti e non sono più un'opzione preferita dagli sviluppatori. Con un titolo 3D in arrivo che necessitava di un nuovo stack di sviluppo, DaFluffyPotato ha trovato una combinazione unica di Python, GLFW, ModernGL e OpenAL per creare uno sparatutto VR sorprendentemente ottimizzato.

Parte della magia che rende possibile tutto questo è un progetto noto come PyopenXR. PyopenXR fornisce legami Python per OpenXR, un insieme aperto di API destinato ad aiutare gli sviluppatori a sviluppare applicazioni XR per diverse cuffie VR e AR. Questo standard aperto pone le basi per il resto dello stack tecnologico. Poiché openXR non esegue il rendering della grafica e si limita ai server per comunicare con i dispositivi XR, lo sviluppatore utilizza ModernGL, un modello di rendering ad alte prestazioni per Python. Inoltre, lo stack utilizza GLFW per creare finestre e gestire l'input, poiché PyopenXR lo supporta già. Purtroppo, durante il test di questa configurazione, DaFluffyPotato scopre una perdita di memoria proveniente da PyopenXR, ma risolve il problema dopo aver trovato il bug e averlo corretto.

A questo punto, lo stack è pronto per essere utilizzato per sviluppare un gioco 3D. DaFluffyPotato crea un prototipo funzionale con una configurazione di asset completa, composta da un paio di armi, un personaggio, la fisica del gioco, un ambiente a blocchi ispirato a Minecraft e PNG nemici che compaiono sulla mappa. L'unica cosa che manca è l'audio spaziale; fortunatamente, OpenAL può facilmente fornire l'audio 3D e presenta un flusso di lavoro di implementazione simile a ModernGL. Dopo aver dedicato un po' di tempo alla rifinitura del gioco, i risultati sono sorprendentemente buoni. Il gioco è veloce da avviare, con un tempo di avvio di circa un paio di secondi, che è molto più veloce della maggior parte dei giochi VR. Inoltre, il gioco non richiede un consumo eccessivo della CPU su cui viene eseguito. Nel complesso, si tratta di un progetto entusiasmante e DaFluffyPotato ha già in programma aggiornamenti futuri, tra cui migliori PNG nemici e Multiplayer.

Please share our article, every link counts!
Mail Logo
> Recensioni e prove di notebook, tablets e smartphones > News > Newsarchive 2024 12 > Lo sviluppatore di giochi costruisce un motore di gioco VR personalizzato usando Python
Stephen Pereyra, 2024-12-10 (Update: 2024-12-10)