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 31 sur 34
Page 31 sur 34 • 1 ... 17 ... 30, 31, 32, 33, 34
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Merci à vous, j'ai étudier un peu l'exemple sprite directement depuis le git (je suis pas chez moi) et c'est tout de suite plus clair.
Plutôt astucieux quand même, car au début quand j'ai vu dans l'exemple que la musique de Sonic était directement chargée sans que la ressource soit définie quelque part, je me suis dit "un truc m'échappe", mais en regardant le contenu des fichiers *.res, tout s'est expliqué.
Je trouve que c'est assez pratique comme fonctionnement.
Il y a une taille maximale pour importer un background ?
Plutôt astucieux quand même, car au début quand j'ai vu dans l'exemple que la musique de Sonic était directement chargée sans que la ressource soit définie quelque part, je me suis dit "un truc m'échappe", mais en regardant le contenu des fichiers *.res, tout s'est expliqué.
Je trouve que c'est assez pratique comme fonctionnement.
Il y a une taille maximale pour importer un background ?
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Pas de taille max mais après bien sur tu ne pourras peut etre pas le charger entièrement en VRAM :p
Pour construire ton background je te conseille un logiciel comme Tiled :
http://www.mapeditor.org/
Ca te permet de construire une image à partir de tuiles. Sur MD la taille des tuiles est de 8x8 mais bien sur tu peux travailler avec des multiples comme 16x16, 24x24 ou 32x32 si c'est plus pratique pour toi. Aussi chaque tuile ne doit pas faire plus de 16 couleurs (4bpp)...
Pour construire ton background je te conseille un logiciel comme Tiled :
http://www.mapeditor.org/
Ca te permet de construire une image à partir de tuiles. Sur MD la taille des tuiles est de 8x8 mais bien sur tu peux travailler avec des multiples comme 16x16, 24x24 ou 32x32 si c'est plus pratique pour toi. Aussi chaque tuile ne doit pas faire plus de 16 couleurs (4bpp)...
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Merci Stef :)
Par contre j'essaie d'afficher le background du premier stage d'Art of Fighting, sauf qu'en lançant la ROM j'ai que du rouge et noir. J'ai changé le paramètre PAL0 à PAL2, c'est passé à d'autres couleurs, mais rien avoir avec les couleurs qui devraient s'afficher.
Je suis obligé de définir une palette ?!
edit : j'ai réussie à me dépatouiller, j'avais oublier de préparer les palettes. :)
Par contre j'essaie d'afficher le background du premier stage d'Art of Fighting, sauf qu'en lançant la ROM j'ai que du rouge et noir. J'ai changé le paramètre PAL0 à PAL2, c'est passé à d'autres couleurs, mais rien avoir avec les couleurs qui devraient s'afficher.
Je suis obligé de définir une palette ?!
edit : j'ai réussie à me dépatouiller, j'avais oublier de préparer les palettes. :)
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Oui il faut bien préparer les palettes en effet, du moins s'assurer que la couleur transparente est à l'index 0 :)
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
J'ai déjà lu la réponse à cette question quelque part, mais impossible de remettre la main dessus, donc :
Quelles sont les positions en VRAM réservées (plane A, plane B, SAT, ...) ?
Quelles sont les positions en VRAM réservées (plane A, plane B, SAT, ...) ?
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
- Plan B
- Plan A
- Window
- SAT (Sprite Attributs Table)
- H Scroll table
Tu peux les positionner où tu veux en VRAM sachant les alignements ne sont pas les mêmes pour tous (SGDK doit donner le détail dans la doc des fonctions). Si tu n'utilises pas la window, alors tu peux l'allouer dans l'espace tiles (comme ça tu as plus de VRAM pour les tiles).
Voici l'organisation de la VRAM par défaut dans SGDK (depuis la 1.3 je crois) :
Sachant que je réserve aussi 96 tiles en haut de la VRAM (juste en dessous de la première table, soit ici BPLAN à 0xC000) pour la font et 16 tiles en bas pour les 16 tiles "plain" soit 1424 tiles dispo pour l'utilisateur.
Après tu peux aussi utiliser l'espace 0xF000-0xFFFF si tu gardes le plan A en 64x32, soit 128 tiles de plus (1552 tiles).
- Plan A
- Window
- SAT (Sprite Attributs Table)
- H Scroll table
Tu peux les positionner où tu veux en VRAM sachant les alignements ne sont pas les mêmes pour tous (SGDK doit donner le détail dans la doc des fonctions). Si tu n'utilises pas la window, alors tu peux l'allouer dans l'espace tiles (comme ça tu as plus de VRAM pour les tiles).
Voici l'organisation de la VRAM par défaut dans SGDK (depuis la 1.3 je crois) :
- Code:
#define WINDOW_DEFAULT 0xD000 // multiple of 0x1000 (0x0800 in H32)
#define HSCRL_DEFAULT 0xD800 // multiple of 0x0400
#define SLIST_DEFAULT 0xDC00 // multiple of 0x0400 (0x0200 in H32)
#define APLAN_DEFAULT 0xE000 // multiple of 0x2000
#define BPLAN_DEFAULT 0xC000 // multiple of 0x2000
Sachant que je réserve aussi 96 tiles en haut de la VRAM (juste en dessous de la première table, soit ici BPLAN à 0xC000) pour la font et 16 tiles en bas pour les 16 tiles "plain" soit 1424 tiles dispo pour l'utilisateur.
Après tu peux aussi utiliser l'espace 0xF000-0xFFFF si tu gardes le plan A en 64x32, soit 128 tiles de plus (1552 tiles).
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Woww Woww !!
L'interview de Stef chez ... Tectoy !!
http://blogtectoy.com.br/desenvolvendo-games-para-o-mega-drive-confira-entrevista-com-o-criador-do-kit-sgdk/
Après moi, c'est la revanche des chauves !!
Super interview !!!
L'interview de Stef chez ... Tectoy !!
http://blogtectoy.com.br/desenvolvendo-games-para-o-mega-drive-confira-entrevista-com-o-criador-do-kit-sgdk/
Après moi, c'est la revanche des chauves !!
Super interview !!!
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Mon Dieu Stef, mais tu parles super bien portugais !!!
Et tu es super chauve !
Toi aussi papy ?
Je vous préviens les gars que si mon Shinobi marche et qu'on voit ma photo, je rétablis à moi seul la moyenne capillaire
Et tu es super chauve !
Toi aussi papy ?
Je vous préviens les gars que si mon Shinobi marche et qu'on voit ma photo, je rétablis à moi seul la moyenne capillaire
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
Vetea est chauve et .. nu
uran- Patient contaminé
- Nombre de messages : 373
Age : 45
Localisation : 34980
Date d'inscription : 17/10/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Coucou,
J'aurai une petite question sur la fonction SPR_init(x1,x2,x3)
x1 est le nombre de sprite Hard à initialiser pour le moteur.
Ma question est : Sprite oui, mais de quelle taille ?? 8x8 ?
Merci !
J'aurai une petite question sur la fonction SPR_init(x1,x2,x3)
x1 est le nombre de sprite Hard à initialiser pour le moteur.
Ma question est : Sprite oui, mais de quelle taille ?? 8x8 ?
Merci !
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
@ Vetea : Tu programmes dans la piscine ? :)
tetsuro- Patient contaminé
- Nombre de messages : 593
Age : 47
Localisation : Carcassonne
Date d'inscription : 27/12/2015
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Vetea a écrit:Coucou,
J'aurai une petite question sur la fonction SPR_init(x1,x2,x3)
x1 est le nombre de sprite Hard à initialiser pour le moteur.
Ma question est : Sprite oui, mais de quelle taille ?? 8x8 ?
Merci !
Je crois même que c'est le nombre de sprite tout court (pas forcément hard), ça peut être des métasprite donc la taille importe peu
A l'avenir je vais simplifier ça, je vais enlever ce paramètre (tu auras toujours 128 sprites même si techniquement tu ne pourras pas tous les afficher en même temps) et je vais juste laisser le paramètre pour l'allocation de la VRAM :)
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Au fait Stef, je te félicite pour le petit post sur l'Instagram de TecToy, t'es un champion !
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Ah parce-qu'ils ont mis ça sur instagram aussi ? en tout cas merci ^^
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Bah ouais, en tout cas c'est comme ça que je t'ai aperçu ^^ C'est vraiment super ce que tu nous as offert. Je commence a découvrir petit à petit SGDK et je trouve que c'est un bel outil !
Au passage j'en profite pour demander si serait possible de coder plutôt en C++ qu'en C ? Je t'avoue être novice en C et je maîtrise bien mieux le C++. Du coup je suis un peu perdu, car si j'ai bien compris, tout le code en C doit être contenu dans le fichier main.c ?
Au passage j'en profite pour demander si serait possible de coder plutôt en C++ qu'en C ? Je t'avoue être novice en C et je maîtrise bien mieux le C++. Du coup je suis un peu perdu, car si j'ai bien compris, tout le code en C doit être contenu dans le fichier main.c ?
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Hello,shingosama a écrit:Bah ouais, en tout cas c'est comme ça que je t'ai aperçu ^^ C'est vraiment super ce que tu nous as offert. Je commence a découvrir petit à petit SGDK et je trouve que c'est un bel outil !
Au passage j'en profite pour demander si serait possible de coder plutôt en C++ qu'en C ? Je t'avoue être novice en C et je maîtrise bien mieux le C++. Du coup je suis un peu perdu, car si j'ai bien compris, tout le code en C doit être contenu dans le fichier main.c ?
Non pas du tout, tu fais un main.c et autant de fichiers .c/.h que tu as besoin. Il suffit de les inclure dans ton fichier main.c, c'est pareil qu'en C++ mais c'est du .c et .h
uran- Patient contaminé
- Nombre de messages : 373
Age : 45
Localisation : 34980
Date d'inscription : 17/10/2016
Re: Sgdk - Sega Megadrive / Genesis Development Kit
@uran merci :)
Sinon vous avez pas une technique pour définir la première couleur de la palette, car à chaque fois la couleur utilisé pour le fond passe en dernière position et je ne vois pas comment la déplacer. Merci :)
Sinon vous avez pas une technique pour définir la première couleur de la palette, car à chaque fois la couleur utilisé pour le fond passe en dernière position et je ne vois pas comment la déplacer. Merci :)
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Je suis pas certain de comprendre ta question mais peut-être que tu souhaite faire ceci :
- Code:
//Modifie la couleur 15 de la palette 1
VDP_setPaletteColor((1*16) + 15, RGB24_TO_VDPCOLOR(0x30e018));
//Dans ton cas on peux aussi modifier la première couleur qui est la couleur transparente
//Modifie la couleur 0 de la palette 0
VDP_setPaletteColor((0*16) + 0, RGB24_TO_VDPCOLOR(0x30e018));
//Modifie la couleur 0 de la palette 1
VDP_setPaletteColor((1*16) + 0, RGB24_TO_VDPCOLOR(0x30e018));
Re: Sgdk - Sega Megadrive / Genesis Development Kit
@Fax en fait j'ai compris que SGDK utilisait la première couleur de la palette pour la transparence. Hors dans la palette de mon sprite, la première couleur ne correspond pas à la transparence. A chaque fois, elle se positionne à la fin de la palette et du coup, le sprite est affiché avec le fond...
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Tu peux utiliser GIMP pour les images
1) tu bascules ton image en 16 couleurs par le menu Image > Mode > Indexed, tu devrais laors voir dans l'interface la palette de couleur indexée
2) tu cliques boutons droits sur la palette et choisi l'option Rearrange colormap, il suffit alors de glisser déposer les couleurs les unes par rapport aux autres à l'aide de la souris
3) tu exportes le résultat au format que tu veux (png...) File > Export as...
1) tu bascules ton image en 16 couleurs par le menu Image > Mode > Indexed, tu devrais laors voir dans l'interface la palette de couleur indexée
2) tu cliques boutons droits sur la palette et choisi l'option Rearrange colormap, il suffit alors de glisser déposer les couleurs les unes par rapport aux autres à l'aide de la souris
3) tu exportes le résultat au format que tu veux (png...) File > Export as...
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
Hello à tous..
petite question sur les timers
Je ne comprends pas comment déclencher ma séquence 5 secondes après le startTimer.
petite question sur les timers
Je ne comprends pas comment déclencher ma séquence 5 secondes après le startTimer.
- Code:
int main()
{
sequencer =0;
startTimer(TIMER0);
while(1)
{
VDP_waitVSync();
check_sequence();
}
}
void check_sequence()
{
switch (sequencer)
{
case 0:
if (getTimer(TIMER0,FALSE) > (SUBTICKPERSECOND*5))
{
VDP_drawText("Sequence : A " , 2, 18);
}
sequencer++;
break;
}
}
Re: Sgdk - Sega Megadrive / Genesis Development Kit
tu peux faire un truc simple à 60hz faut 60 vblank pour 1 sec ^^
Re: Sgdk - Sega Megadrive / Genesis Development Kit
- Code:
u32 temps, tempsRef, t;
//A déclencher une seule fois pour lancer le timer.
if(chronoLance == 0){
chronoLance = 1;
tempsRef = getTick();
}
temps = getTick();
t = temps-tempsRef;
//Lorsque le timer atteint 5 sec
if(t >= 5000){
//Ton code
}
Variante :
- Code:
u32 temps, tempsRef, t;
//A déclencher une seule fois pour lancer le timer.
if(chronoLance == 0){
chronoLance = 1;
tempsRef = getTick();
}
temps = getTick();
t = temps-tempsRef;
//A chaque seconde
if(t >= 1000){
tempsRef = getTick();
//Ton code
}
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Petit conseil !
Si vous voulez compiler la librairie SgdK suite au modification du Config.H, ne touchez pas aux paramètres de Logo de SgdK :
Laissez les à 0 par défaut !!
Si vous voulez compiler la librairie SgdK suite au modification du Config.H, ne touchez pas aux paramètres de Logo de SgdK :
- Code:
/**
* \brief
* Set it to 1 if you want to have the kit intro logo
*/
#define ENABLE_LOGO 0
#if (ENABLE_LOGO != 0)
/**
* \brief
* Set it to 1 if you want zoom intro logo effect instead of classic fading
*/
#define ZOOMING_LOGO 0
#endif // ENABLE_LOGO
Laissez les à 0 par défaut !!
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Salut, quelqu'un pourrait m'indiquer comment récupérer la position actuelle d'un sprite ? Je suis en train de bosser sur la gestion des bullets et je ne vois pas comment récupérer leur position.
Merci !
Merci !
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
Ben c'est à toi de la gérer et de l'imposer
Tu fais comment ?
Tu fais comment ?
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 bizarre, je pensais qu'on pouvait récupérer la position d'un sprite, du coup je dois obligatoirement la stocker dans un tableau ? C'est ce que j'ai fais du coup, je suis pas du tout habitué à bosser comme ça
Invité- Invité
Re: Sgdk - Sega Megadrive / Genesis Development Kit
C'est ma faute. Tu dois parler de sprites SGDK, je parle de sprites hardware.
Un simple sprite.x ? Ça marche pas ?
Un simple sprite.x ? Ça marche pas ?
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
Merci pour ta réflexion, car je viens de remarquer que je voulais faire un sprite_player.x alors qu'il fallait récupérer la valeur directement dans le tableau de sprites sprites[0]->x
Je voulais simplement récupérer la position du joueur afin de définir un point de départ pour les bullets :p
Je voulais simplement récupérer la position du joueur afin de définir un point de départ pour les bullets :p
Invité- Invité
Page 31 sur 34 • 1 ... 17 ... 30, 31, 32, 33, 34
Sujets similaires
» Sgdk - Sega Megadrive / Genesis Development Kit
» SGDK scrolling ... (encore) - (MEGADRIVE/GENESIS)
» Sgdk - Sega Megadrive / Sprite
» BIERE PONG MegaDrive SGDK
» Lot de jeux sega megadrive / genesis
» SGDK scrolling ... (encore) - (MEGADRIVE/GENESIS)
» Sgdk - Sega Megadrive / Sprite
» BIERE PONG MegaDrive SGDK
» Lot de jeux sega megadrive / genesis
Page 31 sur 34
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum