maggio 2005 Blog Posts
Quale personaggio dei videogiochi siete? Scopritelo!http://quiz.ravenblack.net/videogame.pl
Io sono un Defender-ship, ecco qua:
"I am a Defender-ship.I am fiercely protective of my friends and loved ones, and unforgiving of any who would hurt them. Speed and foresight are my strengths, at the cost of a little clumsiness. I'm most comfortable with a few friends, but sometimes particularly enjoy spending time in larger groups."
Leggendo per bene il codice delle routine di StarTrooper (specialmente il Render di ciascun sprite) mi sono accorto di una cosa interessante: ogni volta la scena viene ridisegnata da zero. Stavo cercando di scrivere qualche linea di codice usando DirectInput e facendo spostare una label sul form.
In pratica, ho scritto un loop in cui:1) leggo lo stato della tastiera e gestisco eventuali tasti premuti (tastierino numerico)2) misurando il tempo trascorso, mantengo 60fps3) ricomincio daccapo
La gestione dei tasti è fatta attraverso una Sub ManageKBD(). Controllo le frecce direzionali (LEFT, RIGHT, UP, DOWN) del tastierino numerico. Ad esempio:If aKeys(DIK_NUMPAD4) = True Then Me.etcLabel.Left...
E' finita un'altra settimana, una settimana che si preannuncia bella calda. Ho passato gli ultimi weekend sempre in giro (Marina di Ravenna e Cesenatico ) a prendere un po' di sole e a fare un po' di movimento e bene o male il tempo non è che sia sempre stato magnifico. Guarda caso, destino vuole che questo weekend faccia caldissimo e io me ne starò a casa tranquillo tranquillo. Beh, ogni tanto ci vuole, no? Vediamo il lato positivo: niente autostrade, niente benzina e un po' di relax nelle campagne del mio lodigiano.Se tutto va bene, recupererò qualcosa all'Idroscalo, se...
La strada si fa ardua fin dal principio. Mentre soffro con il Milan, che dopo uno spettacolare 3 a 0 del primo tempo, come un cocomero si è fatto infilare 3 goal dal Liverpool in 15 minuti. Tutta colpa di questo, del fuorigioco, per non parlare della manovra un po' lenta.......come? ok, ok, sono OT, ritorno in argomento.
Dunque, sempre nell'ottica di voler usare C# e DirectX per programmare un qualche bel giochino, ecco che mi preparo: Windows XP Pro, Visual C# 2005 con framework 2.0, DirectX 9.0 SDK. Apro il progetto StarTrooper e vedo subito che nel folder References ci sono tutti...
Sul mio blog personale vi ho parlato dei webcast a cui ho preso parte in questo periodo. I punti salienti dei webcast, che in linea di massima ho trovato molto interessanti, sono stati:
1) Programmazione in C# 2.0, e quindi usando Visual C# 20052) Creazione di un videogioco (StarTrooper) che, seppur semplice rispetto a quanto siamo abituati a vedere oggi, propone una serie di logiche che non mi avevano mai interessato e non avevo mai visto3) Programmazione di DirectX che ho sempre inseguito da tempo immemorabile (non dimenticherò mai il momento in cui ho potuto aggiungere ad un progetto Visual Basic i...
Ieri sera settimo e penultimo webcast della saga "Video Game Development". Argomento: Game Music and Sound Effect. Nulla di particolarmente eclatante ed interessante, dato che il tutto si riconduce bene o male alla struttura già vista nel webcast precedenti. In breve vi rimando alla pagina http://www.digipen.edu/webcast/ che è il sito ufficiale organizzatore della serie di webcast che ho seguito. Se scaricate i sorgenti all'url potete dare un'occhiata (cosa che farò anche io) al codice C# scritto finora.
Avevamo detto che l'oggetto Game è il padre di tutti. Esso contiene sprite, animazioni, background, i trooper e il condor e così via, fino...
Questa settimana riprenderò la partecipazione ai webcast "Video Game Development in C#". Dico riprenderò perchè ho saltato due appuntamenti (quelli del 17 e del 19 Maggio) relativi a "Transformation and Collision of Sprites" e "Player Control of Sprites". E' stato un vero peccato, però, si sa, quando si ha a che fare con la saga di Star Wars non si scherza e quindi i webcast in questo caso sono passati in secondo piano.
Però ho comunque una buona notizia. Per chiunque si fosse perso gli episodi precedenti o volesse rivederli per qualche motivo, è possibile andare all'url http://www.digipen.edu/webcast per poter scaricare i...
Sono stato un po' lontano dal blog in questi ultimi giorni, altre attività principali mi hanno un po' impegnato. Oggi è venerdì, ma non uno qualunque...
1) è il venerdì in cui vede la luce "Star Wars Episodio III". Dopo aver tenuto fede al mio impegno (vedere il mio vecchio post), questa sera andrò con qualche fedele amico a vedere la conclusione della più grande saga che abbia mai conosciuto. Ho già i biglietti in tasca belli belli caldi.
2) è il venerdì della Nove Colli, una delle più grandi cicloturistiche d'Europa, che si svolge questa domenica a Cesenatico. Migliaia di partecipanti...
Spinto dall'entusiasmo dei webcast che sto seguendo, ho fatto qualche esperimento per vedere di prendere i tasti premuti dall'utente in modo un po' più veloce rispetto a quanto si fa tramite i classici eventi messi a disposizione del framework. Normalmente, per esempio, si utilizza il seguente codice:
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown Select Case e.KeyCode Case Keys.A Case Keys.Space End SelectEnd Sub
e così via per ogni tasto di cui si vuole recuperare il valore. Però mentre seguivo l'ultimo webcast ho buttato un'occhiata veloce al codice C# che faceva la stessa cosa usando DirectX. Non ricordavo quasi...
Ho appena aperto questo articolo su punto-informatico.it che riprende per l'ennesima volta la questione pirateria che è stata tirata in ballo da diversi articoli sul sito e da me sul mio blog. Mi piace l'articolo, è pacato e racconta per bene il suo punto di vista. Inoltre, bella idea quella di mettere nelle confezioni dei CD/DVD di software/musica non solo il CD originale, ma anche una "copia di backup" da usare tutti i giorni.
Osservazione interessante: quando compro un CD originale, è mio diritto farne una copia di backup. Però questo diritto mi viene automaticamente negato dal momento che i CD...
Ebbene sì, lo ammetto, a me non piace. Ho provato ad usare Firefox, a casa l'ho installato, ma proprio non mi ci trovo. E vi dico anche il perchè. Se apro 10 Internet Explorer, li vedo tutti nella barra di Windows. Basta che vado sopra e mi appare il tooltip con il titolo della finestra, altrimenti lo posso leggere (se non è troncato) direttamente. Secondo me, niente di più comodo.
Con la tabbed-navigation invece mi succede sopra una cosa scomoda. Allora. Io posso avere aperte un certo numero di sessioni diverse di Firefox: nella barra di Windows vedo tutti i "pulsanti"...
http://blogs.ugidotnet.org/idamiani/articles/16362.aspx
Dopo aver letto e raccolto i comment del primo articolo (che ha avuto un certo riscontro), ecco una seconda stesura. Devo dire che bene o male il succo del discorso sembra essere quello economico (manco a dirlo!!), tutti gli altri problemi ci sono a cascata. Per chi vuole, buona lettura!
Il link dell'articolo è http://blogs.ugidotnet.org/idamiani/articles/16353.aspx.
Ieri sera ho partecipato alla quarta sessione del webcast Video Game Development e questa volta sono rimasto piuttosto soddisfatto. Ho visto codice C# interessante, ho visto il mitico Star Trooper in movimento (con la limitatezza della velocità di rete) e mi sono entrate in testa diverse logiche a cui non avevo mai pensato. Non che fossero complicate o che richiedessero chissà quali conoscenze, però non avendo mai creato videogiochi, non ho mai pensato a come affrontare certi problemi e quale fosse il modo migliore per rendere tutto veloce e ben strutturato.Ma andiamo con ordine.
Innanzitutto il gioco si chiama Star Trooper....
Ecco qua per tutti quelli che si sono sentiti spezzare il cuore dal post di Lorenzo un po' di pagine prese direttamente dal Web che dimostrano che VB.NET è migliore di C# nel 3,1% dei casi.:-)))
http://dotnet.sys-con.com/read/49040.htmhttp://www.vbrad.com/pf.asp?p=source/src_top_10_vb.htmhttp://codebetter.com/blogs/peter.van.ooijen/archive/2003/10/22/2778.aspxhttp://visualbasic.about.com/od/usingvbnet/l/aa090802a.htm
A parte scherzi, non sono molto convincenti, però dovevo farlo per tenere alto il morale delle truppe (e del mio)!!! Però effettivamente, piccola considerazione: quando si *interopera* (passatemi il termine) con i vari applicativi Office (Word o Excel, per esempio), capita spesso di trovare metodi con un miliardo di parametri. C# a quanto sembra obbliga a dover passare uno ad uno tutti i parametri, mentre...
Qualche giorno fa, ho discusso con mio fratello (in macchina mentre venivo a Milano) sul grande tema della lotta alla pirateria. Motivo scatenante: uno spot pubblicitario di Giorgio Faletti proprio su questo argomento.
Discussione che poi è degenerata in un più acceso litigio. Risultato? Ho dato sfogo ai miei pensieri ieri sera e ho scritto questo articolo che vi vorrei proporre. L'ho scritto a caldo, diciamo, e un po' innervosito, per cui potrei aver scritto cose che adesso potrei rimangiarmi. Ma prima di postarlo l'ho riletto, e confermo tutto!
Grazie a blogs.ugidotnet.org per questa possibilità.
Guardando su blogs.msdn.com ho trovato questo articolo veloce veloce che permette di usare le regular expression nel T-SQL di SQL Server. Non conosco molto le regex, ma so che fanno cose incredibili.In pratica, crea una funzione fn_regex nel database master e consente di fase SQL del tipo:
SELECT au_lname FROM authors WHERE fn_regex('G.*',au_lname) <> 0
Ho dato un'occhiata al codice, ho visto che usa VBScript per creare un oggetto di tipo VBScript.RegExp. Mi sembra un bel potenziamento rispetto all'SQL normale, no? Da qualche parte ho visto regex per verificare la validità di numeri di cellulare, di carte di credito, etc. etc.: con...
Il genere umano è davvero bizzarro. Ci sono persone che in un’ora ci fanno stare il mondo, manco fossero dei Winzip viventi. Se ci si distrae un attimo mentre queste persone parlano (uno solo, credetemi, ma maledettamente importante), va a finire che ci si perde concetti enormi, come la spiegazione di cos’è la relatività ristretta, oppure come gestire la concorrenza dei dati su una DataGrid con un db MSDE. Massimo rappresentante di questa categoria è Fabio Santini, che in 50-60 minuti riesce a condensare e a spiegare per bene la struttura molecolare di buona parte delle stelle della nostra galassia:...
Avremo mai sul serio codice ad alto livello? Questo post mi è stato ispirato all’articolo di Daniele su Comega, dalla compattezza del linguaggio e dal tentativo (secondo me) di rendere meno leggibile il codice, allo scopo però ovviamente di ottenere costrutti più efficienti, veloci o comunque sorgente da dare in pasto al compilatore. Mi è tornata in mente una cosa. Quando ero ancora bambino (parlo dei grandiosi anni 80, lo ricordo ancora oggi perché ogni tanto i miei genitori me lo ricordano, eh eh eh) credevo che i computer (all’epoca miseri 8 bit) si programmassero semplicemente scrivendo qualcosa tipo: voglio un...
Un piccolo e breve racconto sul mio primo volo (virtuale) di ieri sera. Uao.http://blogs.ugidotnet.org/idamiani/articles/15865.aspx
E pensare che il primo Flight Simulator lo comprai io, alcuni anni fa, ma poi non mi ha mai appassionato più di tanto. Dopo aver visto le meraviglie della nuova versione (mio fratello è un genio :-) ieri sera mi son fatto un volo sul mio monitor da 19 pollici. Meraviglia!
Ringrazio mio fratello per avermi fatto da navigatore e Microsoft Flight Simulator 2002 Professional Edition Italiano per tutto il resto! :-)
Qualche giorno fa Gabriele Gaggi ha pubblicato un post sul Google Web Accelerator. Spinto dalla curiosità, l'ho scaricato ed installato. Sono circa 72 ore di utilizzo, ho deciso di trarre le mie conclusioni.
Una volta installato, mette un'icona nella tray-bar da dove si possono vedere le performance della nostra cache. Una delle (tante) cose che non mi sono piaciute è che l'accelerator va startato, altrimenti non fa nulla. Lo start lo si dà da questa icona. Diciamo che sono un po' prevenuto contro questo tipo di software, perchè ritengo la cache un elemento inutile nella navigazione, perlomeno al giorno d'oggi, dove...
Ieri sera, ore 22:00, secondo appuntamento con il mio amico webcast Creare videogiochi con C# Express Edition. Rispetto alla prima volta (si sa, la prima è sempre un po' più problematica delle altre), nessun problema hardware e software. Fino alle 21:45 sfrecciavo veloce con la mia Lancia Delta integrale in Colin Mc Rae Rally 2005 (rally di Spagna), comprato usato su ebay.it, alle 22:00 ero già bello connesso con Live Meeting pronto a seguire in santa pace il webcast. La platea mi è sembrata più numerosa rispetto all'appuntamento di martedì scorso. Alle 22 Matthew il relatore ha cominciato, introdotto da...
Sul sito di Punto Informatico ho beccato questa interessante news: il 29 maggio a Varese ci sarà il Varese Retrocomputing 2005, una manifestazione dedicata alla storia di home & personal computer. Ho sempre voluto andarci, ma alla fine ho sempre cliccato sul pulsante Abort. Di solito prendeva in considerazione solo retrocomputing nel senso stretto, quest’anno invece la cosa è stata estesa al retrogaming, per cui, in breve, si parlerà di console e computer storici. Ci sarà la possibilità di fare qualche partita e saranno organizzati tornei con i grandi videogame del passato.
Io non so se ci andrò. Anzi, se proprio...
Non so quanti di voi abbiamo realizzato il proprio sito Internet personale e/o aziendale. Io, come libero professionista (da….vediamo, dal 2001) ho creato da zero <spot>il mio sito Web</spot>, pubblicando pagine sui software che ho scritto e che commercializzo, con screenshots e via dicendo. C’è una parte riservata per il download della documentazione. Poi, pian piano, ho allargato un po’ il tutto, mettendo on-line cose che non c’entrano con il lavoro: il sito Web del complesso chitarristico della mia ex-ragazza, la saga di Shannara, etc. etc. etc. Però resta preponderante il sito aziendale.Il mio provider mi ha installato anche un...
Uffa, maledetto disguido. La Cyotek è (o era) una società che creava componenti freeware/shareware per VB6; io usavo il CommandButtonX, un ottimo sostituto del classico CommandButton. Questa mattina mi sono portato a dietro su una compact-flash i sorgenti di un piccolo programma in VB6 perchè dovevo sistemare un piccolo bug, però il progetto su uso proprio di questo componente.
Quindi, vado sul sito ufficiale ma non mi appare la classica home-page che mi appare di solito. ?????? Maledetto disguido. Ho detto: vado su google.com, cerco lì, tanto è freeware, per cui magari ci sono altri siti (www.download.com, per esempio) fare il...
Ieri ho segnalato sul mio blog i webcast sulla creazione in C# di videogiochi: i webcast sono previsti per tutto il mese di maggio. Ieri sera c'era il primo, e giusto per curiosità, per la prima volta, mi sono collegato e ho seguito tutta la lezione (non prima dall'inizio, a causa di un problemino di cui parlerò a breve).
Quindi, riassumendo: l'inizio del webcast era prevista per la 1:00pm ora del pacifico (-8). Qua in Italia erano circa le 22:00 quando mi sono visto recapitare un'e-mail da Microsoft avvisandomi che il webcast stava per iniziare. Ovviamente per ricevere questo reminder mi sono...
Onestamente, ho letto molte volte "crea il videogioco di qua" e/o "crea il videogioco di la", però quando la fonte è il blog di MSDN di Robert Burke (????) la cosa è almeno un po' più interessante. Si tratta di una serie di web-cast (il primo è proprio oggi) in cui gli sviluppatori affrontano i temi principali nella creazione di un videogioco: collisioni, sprites, musica, interazione, etc. etc. Spero che poi i web-cast siano disponibili anche off-line, e non solo in presa diretta, altrimenti son fregato. Mi piacerebbe seguirne qualcuno, giusto per vedere un po' se vale la pena...non tanto per fare...
Ogni tanto partendo dall'homepage di MSDN vado a vedere se viene pubblicato qualche bel articolo che parli di qualcosa di strano o di particolare. Questa mattina, sfogliando di qua e di là, ho trovato questo articolo di Dare Obasanjo su uno strano linguaggio. Strano per me, sia chiaro, perchè non ne avevo mai sentito parlare. Si chiama Cw...non ho voglia di cercare il carattere giusto, perchè quella non è sicuramente un vu-doppia. :-)
A me personalmente non sarà molto utile, però mi ha attirato molto l'idea di poter definire una proprietà con l'operatore choice, cioè poter dire che, per esempio, la...