TOYS
(C) 2009/Sept. - Francesco Settembrini - f.settembrini@poliba.it - www.dft.poliba.it
[ clicca qui per vedere il filmato ad alta risoluzione ]
Introduzione.
Toys, i giocattoli dei teneri anni della nostra infanzia ora riproposti in chiave informatica : un ambiente virtuale interattivo dove poter afferrare gli oggetti e spostarli in lungo e in largo per la stanza.
La semplicita` di questa demo e` solo apparente : essa nasconde uno degli engine di Fisica piu` potenti attualmente disponibili, il PhysX di Ageia/N-Vidia (www.nvidia.com).
Chi disponesse degli ultimi modelli di acceleratori grafici prodotti da N-Vidia (ad es. GTX295, 285, ...) puo` beneficiare di una interattivita` pressocche` immediata perche` questa famiglia di processori supporta le API di PhysX direttamente in hardware (cioe` questi processori grafici sono specializzati e quindi accelerati per i calcoli di fisica ).
PhysX e` attualmente utilizzato dai piu` noti produttori di videogiochi .
In particolare vorrei far notare come questo engine non si limiti solo alla descrizione delle geometrie dello scenario e delle relative proprieta` fisiche (masse, tipi di materiali coi relativi coefficienti di attrito, di elasticita`, ecc...) ma integra un completo set di vincoli per simulare situazioni assolutamente simili alla realta`.
Se si prova a sollevare il trenino agganciandolo per uno dei vagoni si notera` come questi si porti appresso anche gli altri : i ganci che uniscono i diversi vagoni sono infatti dei vincoli di tipo 6DoF (a sei gradi di liberta`) .
Anche il coperchio della scatola e` incernierato al corpo della stessa : provate ad aprire la scatola e vedrete una bella ... sorpresa !
Installazione.
PhysXGames_Toys e` una applicazione per WindowsXP con ServicePack 2.
Per installarla basta semplicemente avviare l'apposito programma di setup PhysXGames_Toys_setup.exe e seguirne le istruzioni.
Codice sorgente.
Per i piu` curiosi e per chi, come me, condivide la passione per l'informatica, ho riportato il codice sorgente relativo al modulo principale di questo simulatore: CSimToys.cpp .
Ringraziamenti.
Ringrazio la N-Vidia per aver reso disponibile gratuitamente questo potente engine : cio` mi ha dato la possibilita`, come programmatore appassionato di computer-grafica, di ... divertirmi alla grande !
Ringrazio tutti gli amici e colleghi del mio Dipartimento.
Uno speciale ringraziamento ai proff. Ettore Cirillo e Dino Borri.
Francesco Settembrini, settembre 2009.
^ ^ ^ ^ ^