Home    About me    Publications    Blog    Undergrad memories

Fabio Ruini's blog

'cause Italians blog better

Archivio per luglio, 2008

MacRadiant for drawing Quake 3 maps on Leopard

L’idea di poter importare mappe Quake 3 in Irrlicht mi ha proprio pigliato bene, non c’è niente da dire. Così oggi mi sono cercato un bel software per elaborare questo tipo di ambienti. Sembra che il più utilizzato, in ambiente Windows, sia GtkRadiant. I sorgenti dell’editor sono scaricabili e compilabili anche su Linux/MacOS, ma pare che l’operazione non sia delle più agevoli. Tanto per dire, non si compila con i classici Autotools, ma bensì con tale SCons. Motivo per cui mi sono messo alla ricerca di un editor per Mac. Esiste un porting di GtkRadiant, chiamato MacRadiant, che purtroppo non è più aggiornato dai tempi di Tiger e che su Leopard non gira. Per fortuna è disponibile un workaround.

MacRadiant screenshot

Innanzitutto occorre scaricare il pacchetto di MacRadiant da questo link. Una volta downloadata e montata l’immagine, bisogna lanciare “Packs installer” ed installare da qualche parte il modulo Quake 3 (saltando pure l’installazione degli altri). Ora si puo’ spostare il .app di MacRadiant 1.4 e l’ultima operazione da fare è manovrare da terminale per risolvere alcuni problemi di librerie. I comandi da impartire sono i seguenti:

cd /Applications/MacRadiant\ 1.4 app/Contents/Resources/sw/lib
mv libiconv.2.dylib libiconv.2.dylib.orig
ln -s /urs/lib/libiconv.dylib libiconv.2.dylib

Tutto qua. In questo modo si ottiene una versione di MacRadiant perfettamente funzionante anche su Leopard.

Sull’utilizzo del software trovate una bella (uhm, forse ho un po’ esagerato… diciamo decenti) serie di tutorial a questo link. Finchè non li avrò comunque studiati con calma non mi sbilancio oltre…

In chiusura di post, beh, già lo sapete cosa vi aspetta. Si conferma infatti il momento di fuoco pokeristico. Purtroppo non riesco a centrare la qualificazione per il San Marino Poker Tour. Nel satellite da €11 “winner take all” organizzato da GoldWin, chiudo al 17esimo posto su 29 partecipanti. Struttura veloce, ho visto buone carte ma ho legato poco. Ed ho preso due brutte legnate: la prima con QQ mio contro AK, riesco a salvarmi solo perchè esce subito un asso al flop. Poi, quella quasi letale, quando sono di BB con KQ, tutti foldano allo SB che va all-in, io corto lo chiamo e mi scopre AQ. Riesco in quadruple-up della disperazione, poi dal cutoff mando la vasca in un tentativo di steal con 89-o, ma trovo KK nello SB che mi manda a casa. Detto ciò, sono riuscito comunque a togliermi una bella soddisfazione, centrando la qualificazione al 150,000$ garantiti in programma per domani su CDPoker. Il tutto a prezzo zero, utilizzando un gettone offerto ai nuovi depositors della poker room.

CDPoker - Satellite to $150,000 GTD (31st July 2008)

Da segnalare uno dei più bei call della mia carriera pokeristica. Di fatto la mano che mi ha fatto vincere la qualificazione e che potete vedere riepilogata qui sotto (considerare che il mio avversario stava giocando molto bene e tendenzialmente tight-solid):

CD Poker - great call

Vediamo un po’ come andrà domani. Al momento, per il vincitore ci sono in palio $33,000. Che proprio schifo non farebbero…

Share

Irrlicht: import di modelli 3D ed ambienti

Si’, questo Irrlicht mi piace davvero un sacco. Ho iniziato a studiare i tutorial e giocare un po’ con qualche istruzione ed i risultati sono stati estremamente soddisfacenti. E’ la semplicita’ d’uso che mi ha colpito in maniera davvero impressionante.

Supponiamo ad esempio di voler caricare un modello 3D, in formato md2 (id Tech Engine 2), come quelli che potete trovare a questo link.

3D models

Niente di piu’ facile, giusto due righe di codice (che in teoria sono quelle per un modello animato, ma che nel caso dei modelli linkati qui sopra funzionano altrettanto bene):

IAnimatedMesh *mesh = smgr->getMesh(“file.md2″);
IAnimatedMeshSceneNode *node = smgr->addAnimatedSceneNode(mesh);

E se invece volessimo caricare un intero ambiente, mettiamo ad esempio un mappa di Quake 3 (formato pk3) come questa?

Quake 3 map (pk3) - example

Ancora una stupidata:

device->getFileSystem()->addZipFileArchive(“file.pk3″);
scene::IAnimatedMesh* mesh = smgr->getMesh(“file.bsp”);

Ora, quello che devo trovare e’ un editor di ambienti (magari proprio un editor di mappe per Quake 3?) per poter ricreare il mio Canary Wharf (ammesso che qualcuno, perso nel mare magnum di Internet, non abbia gia’ provveduto), disegnare un bel modello 3D dei miei aeroplanini e poi buttare il tutto dentro ad Irrlicht. Dopo di che, integrazione con le Qt in maniera tale da poter recuperare un po’ di codice, scrittura delle funzioni di movimento e di rilevamento dati dai sensori ed il gioco e’ quasi fatto. Nel senso che poi si potra’ iniziare a ragionare sul modello in termini scientifici. La grafica non e’ importantissima d’altronde, anche se durante le demo/presentazioni fa la sua sporca figura. Ma chissa’, magari un giorno anche io saro’ in grado di creare un modello fantastico come quello che trovate nel video qui sotto…

Prima di lasciarvi, poteva mancare la parentesi pokeristica? Ovviamente no, visto che anche ieri, nell’ormai tradizionale torneo serale di PIW, sono riuscito a chiudere ITM. Terza piazza su un totale di 45 iscritti, per circa $80 di vincita netta.

Bettway - PIW Tournament (30th July 2008), 3rd place

Ma la vera notizia non e’ questa. Bensi’ il fatto che, per la prima volta in vita mia, ho centrato una scala reale!

Betway - Royal flush

E dire che stavo pure per foldare! Nonostante la posizione, con il mio AQ-s pre-flop mi ero limitato al call, data la presenza di un autentico barbaro di SB ed il limpaggio di due giocatori prima di me, tra cui il chip leader (oltretutto piuttosto loose). Il flop esce come vedete con J e K diamonds. Il chip leader spara all-in, immediatamente chiamato dal giocatore alla sua sinistra. Io ci penso su, sono li’ li’ per buttare le carte. Poi faccio due conti e vedo che nel caso dovessi imbroccare il colore volerei primo in chips, di fatto con l’ITM garantito. Cosi’ ci provo. Ed il turn mi premia. Altroche’ se mi premia!

Share

Apple ed Irrlicht

E’ arrivato questa mattina. A sorpresa, siccome secondo il calendario ufficiale sarebbe dovuto arrivare il prossimo venerdi’, oggi e’ giunto via mail il responso per il concorso interno all’universita’ legato ad Apple ARTS.

Apple logo (fac-simile)

Breve riassunto delle puntate precedenti. La vicenda ha inizio ad ottobre 2007, quando mi torna alla mente l’esistenza di questo programma di finanziamento della Apple (vedi link qui sopra) e decido di parlarne con il mio supervisor. Subito l’argomento viene un po’ ignorato. Poi, quando si accorge che al di la’ dell’aspetto meramente economico ($30,000 di finanziamento sono considerati una cifra abbastanza risibile, per la quale non vale la pena di sbattersi piu’ di tanto…) ci sarebbe la possibilita’ di far entrare la nostra universita’ all’interno di un ristretto circolo di accademie e centri di ricerca tra i piu’ prestigiosi al mondo, le cose cambiano. Il mio supervisor prende la questione di punta e malgrado le reticenze dei piani alti riesci ad andare avanti. Il 15 maggio scorso, due omini della Apple sbarcano a Plymouth. Viene loro dedicata un’intera giornata, nella quale vengono portati a zonzo per il campus ed assistono alle presentazioni da parte dei vari gruppi di ricerca, sia per quanto riguarda la robotica autonoma, sia per il campo delle digital arts. I due personaggi rimangono favorevolmente colpiti ed accordano il finanziamento. Bingo. Questo il comunicato diffuso dall’universita’ per celebrare l’evento. Ora che l’universita’ ha ottenuto i soldi, occorre vedere a chi darli. Scatta il concorso interno, al quale, con un gruppetto guidato dal buon Angelo, partecipa anche il sottoscritto. Non in prima persona, dato che come PhD non avevo i requisiti per partecipare: il nostro portabandiera e’ infatti il buon Davide Marocco. Il nostro proposal viene sottomesso il 14 luglio e oggi e’ arrivata la risposta. Abbiamo vinto!

Thank you again for your application. The internal panel has considered the six applications submitted and I am delighted to be able to inform you that you have been selected to receive the university’s nomination for the Apple award. [...]

Congratulations on your success.

Ora aspettiamo che ci vengano indicate le procedure per utilizzare il finanziamento. In programma vi e’ l’arrivo di 4 Xserve, un MacBook Air, un Macbook, un iMac 24″ e qualche licenza software. Anche noi avremo finalmente il nostro cluster per le simulazioni.

Chiusa la parentesi Apple (a proposito, simpatico l’articolo uscito oggi su Macity: iMac, ma quanto mi costi?), parliamo un po’ di lavoro. Messo momentaneamente da parte ODE, oggi sono andato alla ricerca di qualche bel motore di grafica 3D. Appurato che al momento non ho particolarmente bisogno di una fisica realistica (l’idea sulla quale si era discusso era quella di settare la simulazione ODE su gravita’ zero e scrivere a mano le funzioni per il volo degli aeroplanini) oggi ho dato un’occhiata ad Irrlicht, di cui potete trovare un’ottima introduzione su Wikipedia.

Irrlicht logo

Volete sapere qual e’ la bella notizia? E’ che questo affare pullula, letteralmente pullula, di documentazione. Abbiamo infatti a disposizione almeno questo bel popo’ di roba:

Ci sono pure due editors per ambienti (purtroppo solo per Windows): irrEdit e Sourena. Per il primo di questi, l’unico che ho guardato e testato un po’ in virtual machine, esistono a sua volta dei tutorials. Ben tre:

Irrlicht, insieme alle Qt, e’ usato da due laraliani doc: Andrea Di Ferdinando ed Orazio Miglino. Il progetto che hanno sviluppato attraverso questi strumenti, chiamato Sisine e dedicato all’e-learning, merita senz’altro uno sguardo approfondito. Potrei avere bisogno di una mano nei prossimi giorni, quindi il buon Andrea si consideri avvisato. In cambio della collaborazione, prometto di linkare tutti i giorni cose simpatiche come questo articolo trovato oggi sul Corriere.

Bene. Siamo quasi in chiusura di post. Ma ho ancora un paio di cose cui accennare. Prima di tutto, vi presento il Dell Studio Hybrid, un bel desktop dai bassi consumi, dal look simpatico (anche se non riesco a capire questa mania dei case verticali, scelta anche per l’eeeBox, che pregiudica un po’ il loro utilizzo quali media centre) e dal prezzo piu’ che accessibile. Per quanto riguarda il software, da Macity la segnalazione di un software interessante, appartenente alla sempre piu’ vasta famiglia degli applicativi in grado di aiutare gli appassionati di astronomia. Trattasi di Where is M13?, disponibile su tutte le piattaforme principali e liberamente scaricabile. Da provare se siete interessati all’argomento.

Poteva poi mancare un paragrafetto pokeristico? In serata ottima performance al torneo PIW su FTP, NLHE freeze-out double-stack da $5+1 di buy-in e $200 di added. Chiudo al primo posto, per $170 di profitto, dopo una battaglia durata 3 ore e mezzo ed un heads-up finale durato una singola mano. Stiamo tornando in forma…

FullTiltPoker - Torneo PIW $200 added (29/07/2008) - Lobby

Share

Ritorno alla normalità

Ok. Con la sveglia di questa mattina, il rincoglionimento da sonno e l’approdo zoppicante e con gli occhi chiusi all’università alla tentennante ricerca del bar per il caffè, posso dichiare che è ufficialmente terminato il mio periodo di convalescenza e che la vita riprende a scorrere regolare. Lo farà tuttavia solo per questa settimana, prima di subire un altro brusco (va beh, relativamente…) cambiamento. Lunedì prossimo, infatti, si parte per Winchester (giunta oggi la notizia che, invece che in treno, io e il buon Vadim viaggeremo in macchina). Si rimarrà là fino a giovedì, poi si rientrerà a Plymouth. Qui, ancora qualche giorno di lavoro e finalmente, il 14 agosto, è previsto il mio rientro in patria. Appena prenotato il solito trenino per Bristol ed il solito volo Ryanair per Bergamo. E come al solito vado a spendere più di treno (53 sterline) che non di volo (una quarantina….). Pazienza. Rientrando il 14 agosto, dovrei essere teoricamente in tempo per una bella grigliata ferragostana, ammesso e non concesso che a Roteglia ci sia qualcuno… Gli ascoltatori in linea hanno qualcosa da dire a riguardo?

Mentre pensate a cosa scrivere, breve riepilogo della giornata di oggi. Innanzitutto, facendo il solito giro informativo mattutino su Internet, mi sono imbattuto in una intervista a Tony Belpaeme, membro semi-senior del nostro Adaptive Behaviour and Cognition Research Group, pubblicata su The Engineer online. L’intervista potete trovarla accedendo direttamente a questo link. Il giornalista di turno ha improvvisato un po’ troppo, quindi il testo contiene un po’ di inesattezze e non-sense vari, ma rimane comunque una lettura veloce e simpatica.

In mattinata e’ venuto a farci visita, visto che era quasi di strada per Epigenetic Robotics 8 (una bella conferenza alla quale mi sarebbe piaciuto andare, anche perche’ mi sarebbe stato rimborsato tutto, caduta purtroppo in un periodo gia’ troppo affollato di eventi…) (a proposito, qui e qui due improponibili foto del sottoscritto trovate sul sito di Fusion 2008, scattate mentre era intento a presentare), Takashi Gomi, ricercatore molto conosciuto nel nostro campo, nonche’ fondatore della AAI (Applied AI Systems) Canada. Un po’ di chiacchiere, solito giro di demo e poi pranzo, veloce quanto a scrocco, all’Isaac. Sembre a proposito di scienza, durante la chiacchierata pomeridiana pre-ferie con il mio supervisor (al quale devo ricordarmi di far vedere, prima o poi, questo ad) abbiamo deciso di preparare un articolo sui miei cari aeroplanini da sottomettere ad Information Fusion. Ci lavorero’ ad agosto, nella calma rotegliese. In caso di accettazione sarebbe davvero un bel colpetto.

Novita’ anche riguardo al mio povero aeroplanino bruciato. Il buon Joerg si e’ infatti preso la briga di aprirmelo e darmi la sua interpretazione dei fatti. Innanzitutto, il circuitino principale sembra in ottime condizioni. Ad essersi fusa pare sia stata soltanto la batteria, a suo avviso per via di quel caricatore ultrarapido che ho usato, il quale spara probabilmente troppa corrente. Con il ricorso ai tecnici dello Smeaton abbiamo ordinato per pochi pounds una nuova batteria identica a quella che mi ha abbandonato ieri. Quando arrivera’ ci sara’ da modificare il caricatore, con l’aggiunta di un piccolo ponticello per ridurre il numero di pile da impiegare. Vediamo un po’ se riusciamo a salvare il povero Silver Eagle II.

Da un punto di vista softwaristico, nel pomeriggio ho finito di studiare uno dei tutorial su ODE/OpenGL. Ora posso dire che e’ davvero fatto male (nel codice ci sono alcune castronerie non indifferenti: avevo scritto all’autore per un chiarimento la settimana scorsa, ma ovviamente nessuna risposta) e che non ha aiutato quasi per niente la mia comprensione dell’engine. Anche l’esempio non funziona come dovrebbe: i cubi appaiono con una sorta di piano che li interseca, mentre i piani che disegno e che dovrebbero rappresentare il “suolo” non vengono renderizzati. Domani proviamo con un altro tutorial, quello di Alan Baylis, sperando di iniziare a dipanare un po’ di dubbi. Ho provato un po’ rapidamente anche libusb, una libreria C/C++ per interagire con l’USB (l’idea e’ quella di leggere i dati inviati da un simil-telecomando RC, nello specifico il mio ESKY 0905A ed usarli per guidare un aeroplanino in un ambiente ODE), ma con scarso successo. L’idea, seppur simpatica, verra’ accantonata in attesa di essere ripresa quando lo sviluppo del simulatore sara’ ad uno stadio molto piu’ avanzato.

Prima di tornarmene a casa, un po’ di shopping on line. Visto che da quando hanno presentato MobileMe mi e’ salita una scimmia incredibile, di quelle che non si possono proprio combattere, e visto che quei maledetti della O2 non vendono ancora, qui in Inghilterra, l’iPhone privo di contratto, ho approfittato della mia mammina. Che in quel di Casalgrande mi ha prenotato un bel telefono Apple, nero, da 16GB. Dovrebbere arrivare mercoledi’, dopo di che sara’ pronto a passare il ferragosto insieme a me. Needless to say, con un iPhone e’ indispensabile una custodia. Dopo lungo meditare ho optato per una
Gear4 IceBox Pro Case, che mantiene il telefono in bella mostra, ma al tempo stesso ben protetto. Infine il dock, immancabile, per ospitare il mio futuro pargolo mentre sono in ufficio.

Infine, poker. In serata, al rientro a casa, ho provato un doppio torneo. Prima un 6,000$ GTD su Titan, da 5$ di iscrizione, chiuso malamente intorno al 600esimo posto su 1,400 iscritti. Meglio, decisamente meglio, al Wild West di Goldwin, dove con un singolo re-buy (per una spesa complessiva di 6€) ho messo in cassa 100 euro. Piu’ che ottimo per il morale, soprattutto di questi tempi.

GoldWin - Wild West tournament (28th July 2008), 10th place

Per questo lunedi’ direi che e’ veramente tutto.

Share

Prove tecniche di volo

Stamattina mi tiro su da letto a mezzogiorno. E la giornata che mi stava aspettando fuori era quantomento spettacolare. Sole, caldo e, soprattutto, neanche un filo di vento. Un trittico di condizioni che a Plymouth si verifica una volta ogni 27 anni. Impossibile non approfittarne. Mi doccio e volo in università a recuperare il mio aeroplanino. Sì, quello cui avevo accennato qualche post fa e che era puntualmente arrivato in ufficio lunedì scorso. Complice l’attacco di influenza lampo che mi aveva pigliato ad inizio settimana, non avevo ancora avuto modo di provarlo. Oggi si rimedia. Si va a Central Park (si, abbiamo Central Park anche a Plymouth… fico, vero?), si cerca uno spiazzo privo di vecchi e/o bambini potenzialmente a rischio decapitazione e finalmente si è pronti per volare.

Me and my Silver Eagle II

Eccola, la bestiolina volante, in tutta la sua anti-esteticità:

Silver Eagle II

Pronti, via. Il primo take off si conclude dopo uno/due secondi, con l’aeroplanino che rovina malamente al suolo. Seguono altri due o tre tentativi, dove finalmente, grazie ad un’improvvisa folata di vento, riesco a sfiorare la soglia dei tre secondi di volo ininterrotto. Necessario fermarsi ad analizzare la situazione. Non capendone nulla di ‘ste cose, decido che la colpa è della batteria. D’altronde l’avevo caricata lunedì scorso poi non avevo più toccato l’aggeggio. Magari ha perso un po’ di carica, mi dico. Così opto per il pit stop.

Silver Eagle II (pit stop)

Dopo dieci minuti, le indecifrabili spie del carica-batteria si spengono. Dò per buono che l’aereo sia carico. E così possono ricominciare le prove. Stavolta danno un po’ piu’ soddisfazione. L’aereo sembra avere abbastanza energia per stare in aria, ma la sua direzione è un po’ random. Riesco a centrare un albero (per fortuna un pino o qualcosa di simile, comunque morbido) e fare altri due voli di 4/5 secondi l’uno e di nuovo mi fermo. Questa volta per dare un’occhiata al telecomando. Che dovrebbe avere delle levette per regolare l’inclinazione di default delle varie ali dell’aeroplano. L’unico problema è che queste leve ci sono, ma non si muovono. Le tento tutte, compreso aprire il telecomando, ma senza successo. Nel frattempo l’aeroplanino è tornato a fare il pieno. Rimonto il telecomando, stacco l’aeroplanino dal suo caricatore e vado per farlo partire. Niente. Nessun segno di vita. Penso di aver fatto qualche danno con il telecomando, ma d’un tratto sento una gran puzza di bruciato. Giro l’aeroplanino e mi accorgo che il vano della batteria si è sciolto.

Silver Eagle II (battery burnt)

Posso tornarmene a casa, tra le bestemmie mie e le risate, miste a sguardi un po’ compassionevoli, della mia quasi-consorte…

La mia tata

Share

Pagina successiva »