![]() |
|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Ouvrir sur le forum | Recherche | Messages du jour | Marquer les forums comme lus |
Projets Projets de développement amateur sur d'autres supports |
Publicité |
![]() |
|
Outils de la discussion | Modes d'affichage |
|
![]() |
#1 |
Super Modérateur
Date d'inscription: 10/11/2005
Localisation: Un pays avec beaucoup de banques
Messages: 3 229
|
![]() Certains se souviennent peut être de la PatrickBoy RGB: http://playeradvance.org/forum/showthread.php?t=32838
Dernièrement la nostalgie m'étant revenue j'avais envie de faire des petits jeux style 16 bits, mais j'avais envie de pouvoir jouer avec plus de puissance qu'une Mega Drive. La GBA aurait été parfaite j'avais un peu envie de la faire "revivre" (enfin l'esprit) sur une plate-forme moderne. En effet, les outils modernes offrent un modèle de programmation pour la 2D qui a des avantages, mais est complètement différent. Si tu veux faire des effets linescroll, reprogrammer la palette, faire des rotations de couleur, animer des tiles, etc. c'est juste pas aussi simple et marrant. J'ai donc eu l'idée de faire une console virtuelle mais qui n'aurait que la partie graphique émulée, qu'on programme en Javascript et qui donne un jeu web. L'émulation se ferait sur le GPU pour un max de performances (et le challenge). Les capacités sont assez similaires à une GBA, regardez plutôt : - 4 BGs, pouvant être scrollés, redimensionnés et rotationnés, masqués (window, sauf qu'un BG n'appartient qu'à une window), supportant une combinaison d'alpha blending et addition entre eux. Possibilité de reprogrammer les 6 paramètres (équivalents à PA, PB, PC, PD, HOFS, VOFS sur GBA) à chaque ligne ou même colonne pour des effets comme Mario Kart, etc. - 2048 tiles par BG, pouvant chacune utiliser une de 16 palettes. - J'avais aussi prévu bit de priorité par tile mais je ne le mettrai peut-être pas car c'est super dur à implémenter avec la transparence (d'ailleurs la GBA avait une circuiterie merveilleuse et complexe pour les effets d'alpha blending ![]() - 512 sprites (dont 32 pouvant utiliser la transparence), pouvant être étirés et/ou mirrorés individuellement. - Mode 16 et 256 couleurs par sprite/BG. Total 256 palettes parmi 4096 couleurs (la master palette est en 16 bit RGBA4444). - Résolution: 320x240 (4:3) ou 400x224 (16:9) Les graphismes du jeu sont convertis avec un outil ressemblant à GBA Graphics, qui produit une image qui est chargée sur le GPU. On l'utilise comme base pour la VRAM, et elle contient donc tout le jeu (dont tous les graphismes sont accessibles à tout moment). Elle peut faire jusqu'à 4 Mo (extensible à 16 dans le futur), et est accessible en lecture et écriture par le programme. L'outil de conversion prend un fichier comme ceci (les fichiers source genre mario.png n'auront pas à être inclus avec le jeu, et le .tmx est une map pour Tiled): Code:
palette Persos { sprite mario: 'mario.png' sprite luigi: 'mario-luigi-2.png' [rect(80, 20, 96, 36)] } palette Level1 { map mainbg: 'mainbg.tmx' } palette Level1-brighter {} Code:
function *main(vdp) { while (true) { vdp.drawBG('mainbg'); vdp.drawObj('mario', 0, 0); yield 0; // Wait VBLANK } } Code:
function *main(vdp) { // Modify palette const colors = vdp.readPalette('Level1'); colors.forEach( (col, index) => { colors[index] = color16.multiply(col, 2.0); }); vdp.writePalette('Level1-brighter', colors); // Copy tile 2 over tile 1 (simulates arbitrary DMA) const tile2 = vdp.readSprite(vdp.tileset('mainbg').tile(2)); vdp.writeSprite(vdp.tileset('mainbg').tile(1), tile2); while (true) { // Normal intensity vdp.drawBG('mainbg'); // x2 color intensity vdp.drawBG('mainbg', { palette: 'Level1-brighter', scrollX: 2 }); // Use custom palette and grow our Mario up vdp.drawObj('mario', 0, 0, { palette: 'Luigi', width: 32, height: 24 }); yield 0; } } ![]() Alors, qui que ça intéresse ? ![]() |
![]() |
![]() |
![]() |
#2 |
Membre confirmé
Date d'inscription: 15/10/2007
Messages: 69
|
![]() intriguant ...
|
![]() |
![]() |
![]() |
#3 |
Super Modérateur
Date d'inscription: 10/11/2005
Localisation: Un pays avec beaucoup de banques
Messages: 3 229
|
![]() Merci =) Enfin un peu plus d'infos ?
![]() |
![]() |
![]() |
![]() |
Liens sociaux |
Publicité |
Utilisateurs regardant la discussion actuelle : 1 (0 membre(s) et 1 invité(s)) | |
Outils de la discussion | |
Modes d'affichage | |
|
|
![]() |
||||
Discussion | Auteur | Forum | Réponses | Dernier message |
[PSP] 3036 - Geronimo Stilton - Return to the Kingdom of Fantasy | Release List | PSP | 0 | 23/07/2013 19h30 |
![]() |
archilolo | Articles | 92 | 07/07/2010 22h43 |
[Divers] PMP (Portable Game & Media Player) : La nouvelle console cheap! | vgiant | Articles | 46 | 07/01/2010 13h46 |
[Projet] PatrickBoy | Brunni | Projets | 9 | 23/06/2009 23h06 |