IRENA

Page 7 sur 7 Précédent  1, 2, 3, 4, 5, 6, 7

Aller en bas

Re: IRENA

Message par StudioVetea le Jeu 13 Sep 2018 - 10:37

Bravo Shingo !!
Faut continuer !!! rambo

StudioVetea
Patient en incubation

Nombre de messages : 47
Date d'inscription : 10/09/2018

http://www.rolango.fr

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 11:07

Oui doucement, mais sûrement vieux

Voici ma feuille de route pour la fin de l'année :

- Intégrer et définir le comportement des astéroïdes
- Permettre aux modules de se déplacer autour du vaisseau
- Refonte complète du menu principal
- Création d'un utilitaire destiné au scénario des niveaux

C'est déjà pas mal de boulot en perspective !
avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par StudioVetea le Jeu 13 Sep 2018 - 11:16

On trouvera une soluce pour tes modules. Wink
avatar
StudioVetea
Patient en incubation

Masculin Nombre de messages : 47
Age : 47
Localisation : Hérault
Date d'inscription : 10/09/2018

http://www.rolango.fr

Revenir en haut Aller en bas

Re: IRENA

Message par Tryphon le Jeu 13 Sep 2018 - 11:19

C'est quoi le problème avec les modules ?
avatar
Tryphon
Docteur *
Docteur *

Masculin Nombre de messages : 10128
Age : 41
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 11:53

Pour les modules, il faut que j'apprenne à déplacer un sprite de façon circulaire sans que cela soit très gourmand en ressources. C'est une feature que j'aurais vraiment adoré ajouté.

D'ailleurs je songe à proposer au joueur, en début de partie, de choisir la position des modules :

1) Tourner autour du vaisseau
2) Au dessus et en dessous du vaisseau mais orienté vers le haut et le bas.
3) Derrière le vaisseau.

Pour le moment je les ai désactivé du code.
avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 13:30

Allez une petite vidéo pour vous montrer ce que donne les astéroïdes

avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par marmotjoy le Jeu 13 Sep 2018 - 13:36

cool  thumleft
Par contre ça fait bizarre les tir qui passent à travers les astéroïdes
avatar
marmotjoy
Interne
Interne

Masculin Nombre de messages : 5690
Age : 40
Localisation : Agen
Date d'inscription : 08/04/2016

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 13:40

C'est tout à fait normal, je n'ai pas encore fait de collision entre les differents sprites. C'est assez rapide à mettre en place, le plus important c'est de coordonner les astéroïdes de manières à ce que les ennemis ne les traverse pas en les évitant ou en ayant une trajectoire différente.
avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par StudioVetea le Jeu 13 Sep 2018 - 13:53

Ca rend très bien comme ça. Wink
avatar
StudioVetea
Patient en incubation

Masculin Nombre de messages : 47
Age : 47
Localisation : Hérault
Date d'inscription : 10/09/2018

http://www.rolango.fr

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 15:07

Merci je pense que le résultat sera top quand j'aurais intégré les autres astéroïdes. Je vais également pouvoir mieux travaillé le mouvement du robot !

Au boulot !!!!

En fait je me rends que j'avais déjà bien avancé sur le projet mine de rien et qu'il me reste surtout à créer les maps pour les autres niveaux et définir les comportements ennemis.

avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par Tryphon le Jeu 13 Sep 2018 - 16:04

@shingosama a écrit:Pour les modules, il faut que j'apprenne à déplacer un sprite de façon circulaire sans que cela soit très gourmand en ressources. C'est une feature que j'aurais vraiment adoré ajouté.

C'est très facile. Tu stockes dans deux tableaux dx[] et dy[] les coordonnées des différents points du cercle par lesquels tu veux que ton module passe, et tu les ajoutes à celles de ton vaisseau.

Par exemple, si tu veux que ton module aille de 45° en 45° sur un cercle de rayon 2O pixels, tu vas prendre :

Code:
u16 dx[] = {2O, 14, O, -14, -2O, -14, O, 14}; // tu peux aussi prendre des fix si tes coordonnées sont en fix
u16 dy[] = {O, -14, -2O, -14, O, 14, 2O, 14};
et, à chaque frame, tu mets à jour un champs "index" dans ta structure module (pour savoir où tu en es) :

Code:
module->x = vaisseau->x + dx[module->index];
module->y = vaisseau->y + dy[module->index];
module->index++;
if (module->index >= 8) module->index = O;

Bien sûr, 45° ça fait tourner trop vite, prends plutôt 6° (mais ça fait deux tableaux plus longs).

Pour calculer les données de ton tableau, tu fais r*cos(k*2*pi/N) pour dx, r*sin(k*2*pi/N) pour dy, où N est le nombre d'étapes pour faire un tour complet (donc moi j'ai prix N = 8, mais si tu fais 6° tu prends N = 6O, donc 1 seconde pour faire un tour complet), r c'est la distance entre le vaisseau et le module (rayon, moi j'ai pris r = 2O) et k va de O à N - 1.
avatar
Tryphon
Docteur *
Docteur *

Masculin Nombre de messages : 10128
Age : 41
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016

Revenir en haut Aller en bas

Re: IRENA

Message par Stef le Jeu 13 Sep 2018 - 16:14

SGDK inclus des fonctions trigo (sin et cos), c'est pas bien compliqué de faire tourner les modules avec Wink Le problème de Shingo, je dirais que c'est plutot les maths et non l'algorithmie (j'ai le même soucis, mon niveau de maths me limite parfois dans ce que je veux faire...).
avatar
Stef
Infirmier

Masculin Nombre de messages : 4230
Age : 39
Localisation : Sevres
Date d'inscription : 04/04/2007

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 16:44

Oui je confirme, je suis une quiche en math et ça me freine beaucoup.

Merci @Tryphon pour avoir apporter la solution, je tenterais d'implémenter ça prochainement :)
avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par Tryphon le Jeu 13 Sep 2018 - 16:45

stef : ce sont des tables tes fonctions trigo ou tu les calcules ?
avatar
Tryphon
Docteur *
Docteur *

Masculin Nombre de messages : 10128
Age : 41
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016

Revenir en haut Aller en bas

Re: IRENA

Message par Hpman le Jeu 13 Sep 2018 - 17:03

@Tryphon a écrit:
Code:
u16 dx[] = {2O, 14, O, -14, -2O, -14, O, 14}; // tu peux aussi prendre des fix si tes coordonnées sont en fix
u16 dy[] = {O, -14, -2O, -14, O, 14, 2O, 14};

Code:
module->x = vaisseau->x + dx[module->index];
module->y = vaisseau->y + dy[module->index];
module->index++;
if (module->index >= 8) module->index = O;


Une table suffit, avec un décalage de 90°:

Code:
u16 dx[] = {2O, 14, O, -14, -2O, -14, O, 14};

module->x = vaisseau->x + dx[module->index];
module->y = vaisseau->y + dx[(module->index+2)&0x7];

module->index=(module->index+1)&0x7;

Je recommande une table relativement grande (512 ?), ce qui permet de faire varier la vitesse des modules en incrémentant plus ou moins rapidement l'index.

salut

Hpman
Patient contaminé

Masculin Nombre de messages : 276
Age : 40
Localisation : Lille
Date d'inscription : 22/08/2014

Revenir en haut Aller en bas

Re: IRENA

Message par Touko le Jeu 13 Sep 2018 - 20:23

@shingosama a écrit:Allez une petite vidéo pour vous montrer ce que donne les astéroïdes
Très sympas, mais je trouve les astéroides bcp trop lents .
Mais sinon c'est vraiment pas mal .

Pour les pods j'avais commencé un shoot sur SGX, et j'avais codé les pods qui tournent,tu peux te servir d'une table preclac de valeurs X/Y pour les rotations, c'est ultra rapide,et de toutes façons je vois mal les calculer en temps réels .
Bon moi j'avais utilisé des valeurs au pif, et en très petit nombre, donc ça rendait pas top, mais l'idée c'est ça .


Dernière édition par Touko le Jeu 13 Sep 2018 - 21:19, édité 1 fois
avatar
Touko
Interne
Interne

Masculin Nombre de messages : 12778
Age : 45
Localisation : LE MANS/MARSEILLE
Date d'inscription : 08/07/2010

Revenir en haut Aller en bas

Re: IRENA

Message par shingosama le Jeu 13 Sep 2018 - 20:47

Vous êtes des dieux, merci.
avatar
shingosama
Infirmier

Masculin Nombre de messages : 4209
Age : 32
Localisation : SEGA Toulouse
Date d'inscription : 02/11/2016

https://www.genku.net

Revenir en haut Aller en bas

Re: IRENA

Message par Tryphon le Jeu 13 Sep 2018 - 22:20

@Hpman a écrit:Une table suffit, avec un décalage de 90°

Oui, mais je voulais garder un truc assez général (tu peux facilement modifier pour n'importe quelle trajectoire) et facile à comprendre.

Sinon tu peux aussi ne stocker qu'un quart de table et ajouter ou soustraire le dx, dy selon le quadrant.

Je recommande une table relativement grande (512 ?), ce qui permet de faire varier la vitesse des modules en incrémentant plus ou moins rapidement l'index.

Ouaip, bonne idée.

Je pense aussi qu'un module qui continue de tourner même quand le vaisseau se déplace, ça va rendre bizarre (si mes souvenirs sont bons, dans R-type, ils te suivent en léger décalé et ne se remettent à tourner que quand ils t'ont rattrapé).
avatar
Tryphon
Docteur *
Docteur *

Masculin Nombre de messages : 10128
Age : 41
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016

Revenir en haut Aller en bas

Re: IRENA

Message par Touko le Ven 14 Sep 2018 - 9:21

Je pense aussi qu'un module qui continue de tourner même quand le vaisseau se déplace, ça va rendre bizarre (si mes souvenirs sont bons, dans R-type, ils te suivent en léger décalé et ne se remettent à tourner que quand ils t'ont rattrapé).
TF3 et 4 le font, et ça choque pas, y'a pas de raisons,cependant ils sont collés au vaisseau (rayon fixe) et n'ont pas d'inertie .
avatar
Touko
Interne
Interne

Masculin Nombre de messages : 12778
Age : 45
Localisation : LE MANS/MARSEILLE
Date d'inscription : 08/07/2010

Revenir en haut Aller en bas

Re: IRENA

Message par Stef le Ven 14 Sep 2018 - 14:50

@Tryphon a écrit:stef : ce sont des tables tes fonctions trigo ou tu les calcules ?

Oui bien sur ce sont des tables (sinon ça serait pas vraiment utilisable ^^) et de mémoire elles ont 1024 entrées (pour avoir une précision assez fine).
Les valeurs sont encodés en fix32 (donc 10 bits pour la partie décimal avec un bit de signe).
avatar
Stef
Infirmier

Masculin Nombre de messages : 4230
Age : 39
Localisation : Sevres
Date d'inscription : 04/04/2007

Revenir en haut Aller en bas

Re: IRENA

Message par grostonton le Ven 14 Sep 2018 - 16:15

Ca déboite sévère Shingo ! bien joué !

@aux_autres, j'adore quand vous parlez chinois ^^
avatar
grostonton
Patient contaminé

Masculin Nombre de messages : 718
Age : 36
Localisation : Pezenas
Date d'inscription : 15/05/2009

https://www.facebook.com/Grostonton-1804098633236995/

Revenir en haut Aller en bas

Re: IRENA

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 7 sur 7 Précédent  1, 2, 3, 4, 5, 6, 7

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum