Sgdk - Sega Megadrive / Genesis Development Kit
+31
JoanCZ
vincent2105
Fax
Orion_
chrilith
Templeton
F.L
Tryphon
uran
Hpman
fourchette
65c02
drfloyd
chiss
Spirale
maldoror68
Top l'âne
troudki
tetsuro
emultion
Ricco59_59
dub
ganon551
TotOOntHeMooN
philip
ichigobankai
vingazole
bfg
Stef
r_songo
pckid
35 participants
Page 22 sur 34
Page 22 sur 34 • 1 ... 12 ... 21, 22, 23 ... 28 ... 34
Re: Sgdk - Sega Megadrive / Genesis Development Kit
struct c'est en minuscule, le C respecte *toujours* la case
Sinon dans le cas présent, tu as un typedef, donc soit tu fais commevingazole ichigobankai l'a dit :
mais je pense que la 2eme forme n'est pas acceptée par tout les compilos C, il faut préférer la première.
Sinon dans le cas présent, tu as un typedef, donc soit tu fais comme
ou// déclaration et init
CourtT_ TerrainTennis = {0, ... etc ...};
// declaration
CourtT_ TerrainTennis;
// init
TerrainTennis = {0, ... etc ...};
mais je pense que la 2eme forme n'est pas acceptée par tout les compilos C, il faut préférer la première.
Dernière édition par Stef le Jeu 6 Avr 2017 - 15:36, édité 3 fois
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
@Stef: mon cousin Vingaloze me charge de te dire que ce n'est pas lui qui a écrit ça....
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Sgdk - Sega Megadrive / Genesis Development Kit
vingaloze, pas Vingaloze !
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
vingazole a écrit:@Stef: mon cousin Vingaloze me charge de te dire que ce n'est pas lui qui a écrit ça....
Désolé, en plus je n'ai pas respecté la case
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Au-delà de la typo, je voulais surtout dire que je n'ai pas écrit de choses de ce genre :
Tu dois me confondre avec TOUKO ou ichigobankai...
ou// déclaration et init
CourtT_ TerrainTennis = {0, ... etc ...};
// declaration
CourtT_ TerrainTennis;
// init
TerrainTennis = {0, ... etc ...};
Tu dois me confondre avec TOUKO ou ichigobankai...
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Non la c'est moi hein !
Rien à voir avec vous, les pros.
Rien à voir avec vous, les pros.
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
vingazole a écrit:Au-delà de la typo, je voulais surtout dire que je n'ai pas écrit de choses de ce genre :
...
Tu dois me confondre avec TOUKO ou ichigobankai...
Ah mais oui, quel boulet ! c'était ichogobankai que je voulais citer
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Ah bravo monsieur, pour une fois que je ne disais pas une énorme connerie
PS. lol le vingaloze, je garde pour la prochaine fait que je l'ai au tel ^^
PS. lol le vingaloze, je garde pour la prochaine fait que je l'ai au tel ^^
Re: Sgdk - Sega Megadrive / Genesis Development Kit
On fait quand même de belle réalisation avec le SGDK, j'ai trouvé cette RHYTHM MACHINE.. j'imagine que c'est réalisé sous SGDK vu tous les exemples sur le site en Japonais..
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Une bonne petite basse slapée par dessus et tu as une OST de chez Marc Dorcel des années 80
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Moi, j'ai compris ça quand je t'ai lu...vingazole a écrit:Une bonne petite fesse claquée par dessus et tu as une OST de chez Marc Dorcel des années 80
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18166
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: Sgdk - Sega Megadrive / Genesis Development Kit
vingazole a écrit:Une bonne petite basse slapée par dessus et tu as une OST de chez Marc Dorcel des années 80
Non mais t'es vraiment chaud comme la braise ce soir toi
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
C'est pas de ma faute, c'est troudki (ce pseudo^^) qu'a posté de la musique de vieux film de boule !
Ça marche aussi...TotOOntHeMooN a écrit:Moi, j'ai compris ça quand je t'ai lu...vingazole a écrit:Une bonne petite fesse claquée par dessus et tu as une OST de chez Marc Dorcel des années 80
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: Sgdk - Sega Megadrive / Genesis Development Kit
vingazole a écrit:troudki (ce pseudo^^)
Je me suis déjà fait cette réflexion. Surtout que la dernière lettre que j'avais en tête est juste à côté, je me demandais si c'était pas une faute de frappe
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Bonjour tout le monde.
Merci de m'accueillir dans votre petit monde .
Je débute avec SGDK et je rencontre pas mal de difficultés.
J'aimerais savoir comment utiliser correctement les palettes de couleurs.
Mon but est d'écrire avec trois couleurs différentes.
J'essai en vain de gérer ça avec les palettes. Je m'y prend mal c'est certain mais je ne parviens pas à trouver ce qui coince.
Merci aux bonnes âmes qui sauront m'aider.
EDIT : Je ne comprends pas encore pourquoi mais j'ai réussis à faire ce que je voulais en utilisant 3 palettes différentes et en modifiant la couleur 15 de chacune des palettes (a priori c'est cette couleur qui est utilisée pour écrire du texte).
Ainsi j'obtiens :
Si d'autres solutions sont possibles je suis preneur.
Merci de m'accueillir dans votre petit monde .
Je débute avec SGDK et je rencontre pas mal de difficultés.
J'aimerais savoir comment utiliser correctement les palettes de couleurs.
Mon but est d'écrire avec trois couleurs différentes.
J'essai en vain de gérer ça avec les palettes. Je m'y prend mal c'est certain mais je ne parviens pas à trouver ce qui coince.
- Code:
//Modifie la couleur 1 de la palette 0 en bleu
VDP_setPaletteColor((0*16) + 1, RGB24_TO_VDPCOLOR(0x3e71ca));
//Modifie la couleur 2 de la palette 0 en rouge
VDP_setPaletteColor((0*16) + 2, RGB24_TO_VDPCOLOR(0xcb4343));
VDP_setTextPalette(PAL0); //Pour associer la palette 0 à mes textes
VDP_setTextPlan(PLAN_A); //Pour mettre mes textes sur le plan A
VDP_drawText("Biere Pong", 16,5); //Affiche le texte à l'écran
VDP_drawText("30 Ans Edition", 14, 6);
VDP_setTextPalette(1); //Ici j'aimerais utiliser la couleur 1 de ma palette 0
VDP_drawText("PRESS START", 5, 14);// Afin d'écrire ce texte en bleu
VDP_setTextPalette(2);//Ici j'aimerais utiliser la couleur 2 de ma palette 0
VDP_drawText("PRESS START", 24, 14); //Afin d'écrire ce texte en rouge
Merci aux bonnes âmes qui sauront m'aider.
EDIT : Je ne comprends pas encore pourquoi mais j'ai réussis à faire ce que je voulais en utilisant 3 palettes différentes et en modifiant la couleur 15 de chacune des palettes (a priori c'est cette couleur qui est utilisée pour écrire du texte).
Ainsi j'obtiens :
- Code:
//Modifie la couleur 15 de la palette 0 en blanc
VDP_setPaletteColor((0*16) + 15, RGB24_TO_VDPCOLOR(0xFFFFFF));
//Modifie la couleur 15 de la palette 2 en bleu
VDP_setPaletteColor((2*16) + 15, RGB24_TO_VDPCOLOR(0x3e71ca));
//Modifie la couleur 15 de la palette 1 en rouge
VDP_setPaletteColor((1*16) + 15, RGB24_TO_VDPCOLOR(0xcb4343));
VDP_setTextPlan(PLAN_A);
VDP_setTextPalette(PAL0);
VDP_drawText("Biere Pong", 16,5);
VDP_drawText("30 Ans Edition", 14, 6);
VDP_setTextPalette(PAL1);
VDP_drawText("PRESS START", 5, 14);
VDP_setTextPalette(PAL2);
VDP_drawText("PRESS START", 24, 14);
Si d'autres solutions sont possibles je suis preneur.
Re: Sgdk - Sega Megadrive / Genesis Development Kit
C'est parce que les lettres dans la mémoire vidéo sont tracées en utilisant la couleur 15. Tu ne peux donc utiliser que les couleurs 15 des 4 palettes.
Si tu souhaites utiliser plus de couleurs, il faut que tu charges en mémoire vidéo, toi-même avec tes petits doigts, d'autres versions de la police (et accessoirement que tu codes ta propre routine d'affichage, puisque tu n'utiliseras plus la police par défaut).
Oui c'est chiant, mais y'a bien une raison pour laquelle on voyait pas du texte de toutes les couleurs dans les vieux jeux 16 bits
Quelques conseils :
1) as-tu vraiment besoin de beaucoup de couleurs ?
2) si oui, et si tu souhaites faire ce que j'ai dit plus haut, ça peut valoir le coup de ne dessiner que des polices réduites au strict minimum (chiffres + majuscules + caractères de ponctuation strictement nécessaires) (voire virer certaines lettres si tu ne t'en sers jamais)
3) si tu as de l'expérience en programmation, tu peux aussi écrire une routine de rendu dynamique, qui crée directement le texte en VRAM (regarde ce que fait Shining Force en VRAM avec un émulateur qui le permet pour comprendre ce que je veux dire) ; c'est beaucoup plus difficile, beaucoup plus long à l'exécution, mais beaucoup plus souple (tu peux jouer sur les couleurs, mais aussi faire des caractères de taille différente, ce qui est vachement plus beau)
Si tu souhaites utiliser plus de couleurs, il faut que tu charges en mémoire vidéo, toi-même avec tes petits doigts, d'autres versions de la police (et accessoirement que tu codes ta propre routine d'affichage, puisque tu n'utiliseras plus la police par défaut).
Oui c'est chiant, mais y'a bien une raison pour laquelle on voyait pas du texte de toutes les couleurs dans les vieux jeux 16 bits
Quelques conseils :
1) as-tu vraiment besoin de beaucoup de couleurs ?
2) si oui, et si tu souhaites faire ce que j'ai dit plus haut, ça peut valoir le coup de ne dessiner que des polices réduites au strict minimum (chiffres + majuscules + caractères de ponctuation strictement nécessaires) (voire virer certaines lettres si tu ne t'en sers jamais)
3) si tu as de l'expérience en programmation, tu peux aussi écrire une routine de rendu dynamique, qui crée directement le texte en VRAM (regarde ce que fait Shining Force en VRAM avec un émulateur qui le permet pour comprendre ce que je veux dire) ; c'est beaucoup plus difficile, beaucoup plus long à l'exécution, mais beaucoup plus souple (tu peux jouer sur les couleurs, mais aussi faire des caractères de taille différente, ce qui est vachement plus beau)
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Je suis malheureusement pris par le temps. Je dois finir mon jeu avant le 14 juillet (pour un anniversaire).
Je vais me contenter des 4 couleurs (amplement suffisant pour moi).
J'enchaîne maintenant sur la gestion des touches et des images.
Merci beaucoup en tout cas.
Je vais me contenter des 4 couleurs (amplement suffisant pour moi).
J'enchaîne maintenant sur la gestion des touches et des images.
Merci beaucoup en tout cas.
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Salut à tous,
Un petit soucis avec SGDK, j'ai une ligne de 10 sprites 4x1 qui fait la largeur de l'écran, et lorsque j'essaye de faire passer un 11ème sprite sous/sur cette ligne, les tiles de ce dernier au niveau de l'intersection disparaissent...
Pour illustrer le cas, en haut ce que j'attends, en bas ce qui se passe réellement :
A noter que si je passe un des sprites 4x1 en 3x1, le problème ne se pose plus.
Note: je n'ai aucun autre sprite sur la même ligne
Si quelqu'un a une idée du problème.
Un petit soucis avec SGDK, j'ai une ligne de 10 sprites 4x1 qui fait la largeur de l'écran, et lorsque j'essaye de faire passer un 11ème sprite sous/sur cette ligne, les tiles de ce dernier au niveau de l'intersection disparaissent...
Pour illustrer le cas, en haut ce que j'attends, en bas ce qui se passe réellement :
A noter que si je passe un des sprites 4x1 en 3x1, le problème ne se pose plus.
Note: je n'ai aucun autre sprite sur la même ligne
Si quelqu'un a une idée du problème.
fourchette- Patient en incubation
- Nombre de messages : 84
Age : 54
Localisation : L'ion
Date d'inscription : 10/10/2009
Re: Sgdk - Sega Megadrive / Genesis Development Kit
C'est juste que tu dois arriver à la limite de sprite / ligne de la MD, donc tout ce qui dépasse de cette limite n'est plus affiché .
La limite est celon la résolution :
En 256 pixels de large, 16 sprites ou 256 pixels (les transparents comptent)
En 320 pixels de large, 20 sprites ou 320 pixels (les transparents comptent)
Donc si tu remplis une ligne entière forcement tu peux plus en rajouter sur la même ligne, sans que les suivants soient pas pris en compte .
La limite est celon la résolution :
En 256 pixels de large, 16 sprites ou 256 pixels (les transparents comptent)
En 320 pixels de large, 20 sprites ou 320 pixels (les transparents comptent)
Donc si tu remplis une ligne entière forcement tu peux plus en rajouter sur la même ligne, sans que les suivants soient pas pris en compte .
Dernière édition par TOUKO le Mar 9 Mai 2017 - 21:55, édité 1 fois
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
c'est pas 16 ou 20 sprites par ligne sur megadrive ? de plus si je diminue un seul de ces sprites d'un tile, le problème ne se pose pas.
fourchette- Patient en incubation
- Nombre de messages : 84
Age : 54
Localisation : L'ion
Date d'inscription : 10/10/2009
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Oui, ou 256/320 pixels donc le premier qui est atteint .
PS: dsl j'avais édité pour apporter plus de détails avant de voir ta question.
PS: dsl j'avais édité pour apporter plus de détails avant de voir ta question.
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
si je fais le compte : 9 x (4x1) + 1 x (3x1) + 1 x (2x2) = 41 tiles de large soit 328px donc > 320px, pourquoi ça passe dans ce cas ?
fourchette- Patient en incubation
- Nombre de messages : 84
Age : 54
Localisation : L'ion
Date d'inscription : 10/10/2009
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Parce que les 8 pixels qui dépassent sont dans l'overscan, donc pas visibles de toutes façons .
et 10 sprites 4x1 font bien 320 pixels
et 10 sprites 4x1 font bien 320 pixels
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
EDIT : c'est bon je crois que j'ai compris le système maintenant. Merci Touko pour les explications.
fourchette- Patient en incubation
- Nombre de messages : 84
Age : 54
Localisation : L'ion
Date d'inscription : 10/10/2009
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Grâce à un autre post de ce forum (qui mériterait d'apparaître en lien sur la page 1 de ce thread "https://www.gamopat-forum.com/t63668p120-la-programmation-mega-drive-pour-les-nuls-expliquee-par-les-pros"), j'ai mieux compris les palettes de couleurs.
Je ne parviens toutefois pas à afficher correctement mes images.
Une idée :
Ce que j'ai dans mon fichier à gauche, ce que j'obtiens à droite :
EDIT : En faisant un "VDP_fadeIn(0, (4 * 16) - 1, palette, 20, FALSE);"
J'obtient bien ma balle avec les bonnes couleurs mais la couleur supposée être transparente ne l'est plus et l'ensemble de mon fond devient rose. De plus, après ce Fade, je perds les couleurs de mes textes.
Je ne parviens toutefois pas à afficher correctement mes images.
Une idée :
- Code:
VDP_setPaletteColors(0, (u16*) palette_black, 64);
//Palette 2
VDP_setPaletteColor((2*16) + 0, RGB24_TO_VDPCOLOR(0xfc00fc)); //Couleur transparente
VDP_setPaletteColor((2*16) + 1, RGB24_TO_VDPCOLOR(0xd8d8d8));
VDP_setPaletteColor((2*16) + 2, RGB24_TO_VDPCOLOR(0xb4b4b4));
VDP_setPaletteColor((2*16) + 3, RGB24_TO_VDPCOLOR(0x050505));
VDP_setPaletteColor((2*16) + 4, RGB24_TO_VDPCOLOR(0xfcfcfc));
memcpy(&palette[0], balle_sprite.palette->data, 16 * 2);
sprites[0] = SPR_addSprite(&balle_sprite, fix32ToInt(200), fix32ToInt(20), TILE_ATTR(PAL2, TRUE, FALSE, FALSE));
SPR_update();
Ce que j'ai dans mon fichier à gauche, ce que j'obtiens à droite :
EDIT : En faisant un "VDP_fadeIn(0, (4 * 16) - 1, palette, 20, FALSE);"
J'obtient bien ma balle avec les bonnes couleurs mais la couleur supposée être transparente ne l'est plus et l'ensemble de mon fond devient rose. De plus, après ce Fade, je perds les couleurs de mes textes.
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Pour ton souci de palette j'ai comme l'impression que la palette de ton sprite est mal initialisée, style juste les 3 première couleurs .
Donc je pense que tu initialises mal la palette de ton sprite,je comprends mal tes vdp set palette, on dirait que tu initialises les couleurs 1 par 1 .
Donc je pense que tu initialises mal la palette de ton sprite,je comprends mal tes vdp set palette, on dirait que tu initialises les couleurs 1 par 1 .
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
C'est ce que je fais oui, une par une.
Sauf que dans l'exemple sprite, les images s'affichent correctement sans avoir besoin de cette étape "manuelle". Ce qui me fait penser que je m'y pends mal.
Ce code
Comme mon image fera pas plus de 16 couleurs, c'est pour ça que dans l'exemple il fait &palette[0], &palette[16], &palette[32]...
Ça permet de trier les différentes palettes au sein de la variable palette.
Toutefois, même en retournant le problème dans tout les sens, je n'arrive pas à afficher correctement mon image.
Sauf que dans l'exemple sprite, les images s'affichent correctement sans avoir besoin de cette étape "manuelle". Ce qui me fait penser que je m'y pends mal.
Ce code
- Code:
memcpy(&palette[0], balle_sprite.palette->data, 16 * 2);
Comme mon image fera pas plus de 16 couleurs, c'est pour ça que dans l'exemple il fait &palette[0], &palette[16], &palette[32]...
Ça permet de trier les différentes palettes au sein de la variable palette.
Toutefois, même en retournant le problème dans tout les sens, je n'arrive pas à afficher correctement mon image.
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Désolé d'être absent, j'ai de gros soucis persos.
Pour bien afficher ton image/sprite, il faut veiller a bien l'indexer en 16 couleurs ( la 0 est la transparente ), même si l'image de base fait 3 couleurs, indexes la en 16 couleurs ! ( en .png de base )
Bon courage.
Pour bien afficher ton image/sprite, il faut veiller a bien l'indexer en 16 couleurs ( la 0 est la transparente ), même si l'image de base fait 3 couleurs, indexes la en 16 couleurs ! ( en .png de base )
Bon courage.
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Rien de trop embêtant j'espère !
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Page 22 sur 34 • 1 ... 12 ... 21, 22, 23 ... 28 ... 34
Sujets similaires
» Sgdk - Sega Megadrive / Genesis Development Kit
» SGDK scrolling ... (encore) - (MEGADRIVE/GENESIS)
» Sgdk - Sega Megadrive / Sprite
» [EST] Jeu Console Sega - 32X/Sega CD/Mega CD/Megadrive/Genesis
» BIERE PONG MegaDrive SGDK
» SGDK scrolling ... (encore) - (MEGADRIVE/GENESIS)
» Sgdk - Sega Megadrive / Sprite
» [EST] Jeu Console Sega - 32X/Sega CD/Mega CD/Megadrive/Genesis
» BIERE PONG MegaDrive SGDK
Page 22 sur 34
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum