Java >> Programma Java >  >> Java

Confezionamento di un gioco Java2D:caratteri personalizzati e PNG trasparenti

un po' indietro (si scopre che erano circa 8 anni fa) ho iniziato a lavorare su un semplice gioco 2D nello stile del gioco nintendo e ho guardato i giochi lcd che erano popolari negli anni '80, ma non l'ho mai finito completamente.

ho recuperato il sorgente e l'ho inviato a github nel suo stato originale, come l'ho lasciato l'ultima volta, quindi ho dato un'occhiata alla conclusione degli ultimi problemi e all'aggiunta di ritocchi finali.

ecco la fonte per il gioco, ed ecco la fonte per un framework di gioco 2D generico che ho estratto dal gioco mentre lo stavo sviluppando. ecco un paio di post di quando stavo lavorando attivamente allo sviluppo di questo, qui e qui.

c'erano un paio di bug nell'animazione che non ho mai corretto e volevo perfezionarlo un po'.

non ha mai avuto l'aspetto di un vecchio display lcd monocromatico

ay, quindi ho prima cambiato lo sfondo (usando un contagocce per scegliere un colore dalle foto online), ma poi mi sono reso conto che nessuna delle immagini era trasparente, quindi è finito così:

nota che la banca in alto a sinistra ora ha aggiornato il primo sprite per aggiungere trasparenza. l'ho fatto aggiungendo uno strato alfa in gimp per semplici passaggi qui. ho aggiornato ciascuno degli sprite dell'immagine per salvarli di nuovo come png con un livello trasparente.

il risultato finale ora appare così:

il carattere del segmento lcd proviene da http://www.styleseven.com/ . per caricare il carattere personalizzato, usa:


ge = graphicsenvironment.getlocalgraphicsenvironment();
ge.registerfont(font.createfont(font.truetype_font, system.class.getresourceasstream("/fonts/digital-7.ttf")));

e poi quando devi usarlo, crea un nuovo font usando il suo nome e puoi usarlo al posto di qualsiasi normale font di sistema:


g.setfont(new font("digital-7", font.bold, 20));

i risultati aggiornati per il gioco sono qui e il motore di gioco 2D qui .


Etichetta Java