Apocalyx
Apocalyx | |
---|---|
![]() | |
Uscita | 2002 |
Genere | Motore grafico |
Versione attuale | 1.0.0 (25 Novembre 2024) |
Sviluppatore | Leonardo Boselli (1001avventura) |
Sistema Operativo | Microsoft Windows |
Lingue | Inglese, Italiano |
Linguaggio | C++ |
Licenza | Licenza MIT |
Apocalyx è un motore grafico 3D open source sviluppato nel 2002 da 1001avventura. E' basato su librerie libere come OpenGL e OpenAL, progettato principalmente per lo sviluppo di programming games, un genere di videogiochi in cui i giocatori programmano l'intelligenza artificiale di squadre di bot per competere in combattimenti strategici contro team creati da altri giocatori. Questo genere include titoli come GUN-TACTYX e JROBOTS .
Il motore si distingue per la sua vasta gamma di funzionalità avanzate, che includono rendering di alta qualità, simulazioni fisiche complesse e supporto per diversi linguaggi di scripting.
Apocalyx è particolarmente indicato per sviluppatori interessati a creare giochi strategici basati sulla programmazione, offrendo un ambiente versatile e accessibile per la realizzazione di mondi virtuali complessi e interattivi. La sua architettura modulare e l'uso di tecnologie open source lo rendono una scelta ideale per progetti innovativi nel campo dei programming games.
Storia
L'Apocalyx Engine è stato originariamente sviluppato da Leonardo Boselli a partire dal 2013. Boselli iniziò a lavorare al motore grafico in solitaria, traendo ispirazione da un contest online del 2001 di demo grafiche basate su OpenGL a cui aveva assistito, denominato "Apocalypse Contest ". La decisione di creare l'engine e di rilasciarlo pubblicamente maturò dopo uno studio del codice sorgente di diversi videogiochi.
Il motore ricevette aggiornamenti fino al 2004, anno in cui il suo sviluppo venne interrotto. Il progetto è rimasto inattivo per molti anni, fino al Novembre 2024, quando Boselli per uno speciale 5000 del suo canale ne ha ripreso lo sviluppo, rilasciando la versione aggiornata 1.0.0.
Caratteristiche
Tra le principali caratteristiche di Apocalyx figurano:
- Rendering grafico avanzato: Supporto per skybox, strati di nuvole, lens flare, terreni piatti e campi di altezza con riflessi, terreni infiniti, superfici ondulate, sprite, cartelloni pubblicitari e mesh con mappatura diffusa, lucida, ambientale e bump mapping.
- Effetti visivi: Emettitori di particelle, ombre planari e shader programmabili tramite GLSL (OpenGL Shading Language) per vertex e fragment.
- Supporto per formati 3D: Caricamento di mesh nei formati 3DS e OBJ , animazione di modelli nei formati MD2 , MD3 , MS3D e Cal3D , e gestione di livelli BSP con rilevamento delle collisioni e lightmap.
- Audio immersivo: Riproduzione di tracce audio nei formati MIDI , OggVorbis e MP3 , spazializzazione del suono 3D e cattura di campioni sonori.
- Simulazioni fisiche: Un motore fisico basato su particelle adatto alla simulazione di bandiere, tessuti, corpi articolati e oggetti rigidi o morbidi. Include anche il supporto per il motore fisico ODE (Open Dynamics Engine).
- Collisioni e animazioni: Integrazione con il ColDet Collision Detector e la Cal3D Animation Library per animazioni realistiche e rilevamento preciso delle collisioni.
- Scripting flessibile: Supporto per linguaggi di scripting come LUA , AngelScript , SMALL e C , oltre al compilatore Tiny C per una rapida compilazione di codice time-critical. Questi strumenti permettono di descrivere e controllare le scene senza necessità di ricompilazione, facilitando lo sviluppo e il controllo dell'intelligenza artificiale dei bot.