Développement Shoot them up

Le coin des demomakers et des programmeurs en herbe.

Modérateurs : SirG, Redfield1, shubibiman, Laucops

Répondre
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Développement Shoot them up

Message par Hero_Tonma »

Salut. Il faut bien commencer un développement de jeu quelque part et se donner des objectifs. Je me lance dans un shoot them up. A priori horizontal (gradius, r-type, ...) ou vertical (raiden, super star soldier, ...)
Donc du bon jeu d'arcade.

Le soucis est que je suis novice sur PCE et dans le codage 8bits. J'ai vu l'outils HUC pour développer en C, mais est-ce suffisant pour un bon jeu d'arcade avec au moins un double scroll ? Ou Est-ce qu'il vaux mieux utiliser huc avec une base en assembleur pour les fonctions les plus gourmande ?

Si vous avez des conseils ou des liens pour débuter (même en anglais).

Aussi, peut-on envisager un développement pour les 2 consoles dès le départ : PC Engine et Supergrafx. Suivant la bécane, on a un mode amélioré pour avoir plus d'animation ou d'effets spéciaux?
Je posterai directement mes autres questions ainsi que l'avancement du projet au fur et à mesure de mon apprentissage.
Merci de votre lecture.

Version test :
https://www.dropbox.com/s/f8iexf3ia4s86f7/tonma.zip
Dernière modification par Hero_Tonma le dim. 04 oct. 2015 16:21, modifié 1 fois.
Avatar de l’utilisateur
Warhol
Backup RAM Full!
Messages : 5888
Inscription : sam. 03 mars 2012 17:41
Localisation : IDF

Re: Développement Shoot them up

Message par Warhol »

Super projet!

Touko, présent sur le forum, a réalisé un shoot them up sur PCE (super CD) il y a quelques temps.
Il pourra surement t'aider ;)

http://forum.necstasy.net/memberlist.ph ... ile&u=1386
Image
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: Développement Shoot them up

Message par Kaminari »

Salut Tonma,

Pour du développement sérieux, HuC (qui n'est plus mis à jour depuis 12 ans) va malheureusement vite te poser des problèmes. Il existe quelques outils, resources et portails de dev dédiés à la PCE, mais c'est un peu le foutoir et dresser une liste complète ne serait pas superflu.

Dans l'immédiat, je te recommande chaudement le forum de notre ami MooZ : http://pcedev.blockos.org/

Il n'y a pas d'effets spéciaux sur SuperGrafx ;) C'est essentiellement une CoreGrafx avec deux GPUs identiques au lieu d'un (donc deux backgrounds indépendants, et 2x64 sprites max), et un peu plus de RAM. Tu dois prévoir tes développements (surtout graphiques) en conséquence.
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

Merci pour ces conseils.
Comme environnement de développement, j'ai installé HUC que je vais mettre de côté alors. Et j'ai réussi à configurer l'asm avec pceas2, étant sur du 64 bits, le pceas classique ne veux pas se lancer et je ne vais pas commencer sur une image virtuelle.

C'est plutôt cool pour la SuperGrafx, ça demande pas trop de développement supplémentaire pour des processeurs spécifiques et ça peut s'intégrer au jeu pour une meilleure expérience ludique.

Donc je dois partir sur l'assembleur. J'ai effectivement regardé un peu partout sur le net et c'est vrai que les informations sont bien éclatés. Pas facile de s'y retrouver. Je vais commencer par afficher un simple sprite que je pourrais déplacer. J'ai trouvé un tutoriel intéressant en assembleur sur le site de magicengine pour son mkit.

Touko, si tu peux m'aider par des conseils ou des liens. Ca serait super sympa. D'après ce que j'ai lu le processeur de la pc-engine est le huc6820 ou plutôt un custom du 65C02. Il va falloir que j'apprenne l'assembleur 6502 si je comprends bien.

Et je vais de ce pas me présenter à MooZ sur son forum.
Avatar de l’utilisateur
MooZ
Administrateur
Messages : 2090
Inscription : jeu. 16 déc. 2004 14:25
Contact :

Re: Développement Shoot them up

Message par MooZ »

Salut!

Ouaip la dernière version d'HuC date un peu. Je crois qu'un port de cc65 est en cours.
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

Ca serait bien, ça pourrait simplifier quand on veut utiliser les sources pour un développement à plusieurs.

Pour l'instant, assembleur assembleur. Je suis en train de lire les docs et les exemples pour avoir une bonne vu d'ensemble.
Avatar de l’utilisateur
MooZ
Administrateur
Messages : 2090
Inscription : jeu. 16 déc. 2004 14:25
Contact :

Re: Développement Shoot them up

Message par MooZ »

Je pense que le plus compliqué au début est de générer une image valide (qui se charge correctement).
Avatar de l’utilisateur
Luciole
NECromancer
Messages : 3320
Inscription : mar. 10 mai 2005 15:19
Localisation : Calais

Re: Développement Shoot them up

Message par Luciole »

Hero_Tonma a écrit :Salut. Il faut bien commencer un développement de jeu quelque part et se donner des objectifs. Je me lance dans un shoot them up. A priori horizontal (gradius, r-type, ...) ou vertical (raiden, super star soldier, ...).
Alors pour le forum ce sera un vertical, dans la lignée des super star Soldier avec son célèbre mode caravan.
Bref tu nous ponds ça, tu as directement le statut de "Héros" sur le forum. 8) :wink:
Semper Fidelis.
Avatar de l’utilisateur
Warhol
Backup RAM Full!
Messages : 5888
Inscription : sam. 03 mars 2012 17:41
Localisation : IDF

Re: Développement Shoot them up

Message par Warhol »

Héros?! Tu peux carrément dire "Dieu"! 8)
Image
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

Warhol a écrit :Héros?! Tu peux carrément dire "Dieu"! 8)
Maitre suffira :lol:

Pour l'instant j'ai une image valide hucard (du moins lisible par l'émulateur) et qui affiche 2 sprites. Mais la j'ai quelques soucis pour créer une animation de sprite, je pense que j'ai du me mélanger dans les zones mémoires parce que sinon mes variables et comparaisons sont bonnes.

J'utilise les macros déjà définies dans pceas (spr_set, spr_pattern, ...). Est-ce que c'est la bonne solution ? Vu qu'elles sont en assembleur, je ne pense pas que ca va ralentir le jeu.

Je vais donc relire les sources à disposition pour comprendre les bases. Donc pour le shoot, c'est pas pour ce week-end mais pour le prochain 8)
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

J'ai réussi à faire mon animation. J'avais mal compris la notion de bank de sprites avec les groupes.

Même si je pense que je vais encore me planter avec ça, ça me parait plus clair. Je voulais loader plusieurs "group" dans une même "bank", alors qu'on doit loader une "bank" avec le nombre de groupe associés.
Une "bank" peut avoir au max 8 sprites de 32*64, d'après ce que je vois. Correction c'est plutôt 16 ($1FFF / $200)

Prochaine étape, déplacer le sprite dans l'écran.
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

Hier j'ai fini mes tests pour animer un sprite et ça marche.

Image
Bon c'est pas grand chose mais ça plaisir quand on débute.

Mooz tente de m'expliquer pour le background, mais je suis un boulet, je dois certainement me mélanger les pinceaux lors de l'écriture en vram ou sur la rom. J'aimerai écrire dans le BG Color puis le BG Plane pour commencer, en asm bien sûr, mais je m'accroche.

Vous pouvez tester le rom plus haut, je la mettrais à jour au fur et à mesure au même endroit.
Avatar de l’utilisateur
MooZ
Administrateur
Messages : 2090
Inscription : jeu. 16 déc. 2004 14:25
Contact :

Re: Développement Shoot them up

Message par MooZ »

Au fait tu utilises quel émulateur?
Je te conseille mednafen. Il possède un debugger intégré bien pratique.
Tu peux voir l'état de la mémoire, le code, et surtout le contenu de la mémoire vidéo.
Avatar de l’utilisateur
Hero_Tonma
Push Run Button!
Messages : 89
Inscription : lun. 20 juil. 2015 14:26

Re: Développement Shoot them up

Message par Hero_Tonma »

Génial. C'est celui que j'utilise mais j'avais pas regardé le debugger.

C'est cool, j'ai accès aux à tous et je peux voir les sprites en mémoire. Ca va m'être utile pour mes tests sur le background et vérifier les registres.

Merci :mrgreen:
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: Développement Shoot them up

Message par touko »

Ouuuuuh, j'avais raté ça ...

salut Hero_Tonma, ça fait plaisir de voir un nouveau venu dans le dev PCE/SGX . :wink:
Comme certains te l'ont déjàs dit, Huc est une bonne base pour commencer mais date une peu en plus d'être loin de l'optimal .
Pour un shoot tu peux oublier, tu verras très vite les limites de huc pour ce genre de jeu .
Tu peux facilement mixer de l'asm avec huc, ça arrange bcp les choses, mais franchement huc est trop crade, car fait pour les débutants .
Il faut le customiser à mort pour le rendre intéressant .
L'idéal est de commencer avec huc pour comprendre la console, et ensuite passer à l'asm ,tu réécris tes fonctions C en asm, perso j'ai fait comme ça, la transition se fait tout en douceur .

Si tu commences direct en ASM, c'et plus difficile car tu devras assimiler les 2 choses, le hardware et l'asm, mais rien d'impossible .
Bon c'est pas grand chose mais ça plaisir quand on débute.
Au début si tu pars vraiment de 0, c'est pas super facile de tout comprendre, mais si tu t'accroches tu ferras bcp de progrès en peu de temps .
Aussi, peut-on envisager un développement pour les 2 consoles dès le départ : PC Engine et Supergrafx.
Tout ce qui est appris pour PCE, l'est à l'identique pour la SGX, seul le VPC est à apprendre en plus, le second VDC fonctionne comme le 1er, juste accessible via des adresses différentes .
La ram en plus fonctionne comme une bank en ROM/CDRAM ..

Pour des infos regroupées sur la PCE/SGx tu as ça : http://www.archaicpixels.com/Main_Page

@warhol: Meric pour la pub,mais c'était vraiment un petit shoot . :wink:
Même si je pense que je vais encore me planter avec ça, ça me parait plus clair.
Ce qui est chiant avec les sprites c'est l'alignement en VRAM qu'il faut respecter, rien de dramatique, mais des fois tu comprends pas que ton sprite soit pas celui que tu attends à cause de l'alignement pas respecté .
Répondre