AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
-39%
Le deal à ne pas rater :
Ordinateur portable ASUS Chromebook Vibe CX34 Flip
399 € 649 €
Voir le deal

 

 Combiner deux instances en une seul

Aller en bas 
3 participants
AuteurMessage
MCpPaladian
Débutant



Messages : 29

Combiner deux instances en une seul Empty
MessageSujet: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 16:09

Bonjour,

Je faisais des petits tests sur un prototype de jeu de plate-forme, juste pour le fun, et je me suis posé un simple question. Pourrais-je faire en sorte que, si deux instances se touchent, elles se fusionnent en une seule instance.

Exemple, j'ai un objet 'obj_wall' qui fait 32x32 et il touche un autre 'obj_wall', et donc je souhaite qu'ils deviennent une seule est même instance. Le but est très simple: ça optimiserai le jeu.

Et donc je demande votre aide, car j'ai beau chercher mais je n'arrive pas à trouver la méthode pour réalisé ce truc de ouf.

merci d'avance pour votre aide.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 16:32

Si tu veux optimiser tes collisions, dans l'éditeur de sprite vire l'option collision précise et remplace par rectangle.
Tu peux aussi désactiver les objets en dehors de la view avec object_deactive_all (ou un truc du genre).
Si tu tiens vraiment a faire ton truc sans passer par des millions de sprites différents faut que t'utilise une surface que tu définie comme sprite en live, mais ca reste moins bien que les collisions en rectangle à mon avis.
Bref, tout ca pour dire que ton opti servira à pratiquement rien, garde ton énergie pour améliorer d'autres points du jeu Wink

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 17:32

Oh sous GM si cette opti sert plutôt bien, même si j'avoue qu'elle est assez chiante a mettre en place.
Dans un zelda que je faisais a l'époque, sur un vieux pc, je me souviens que ça me permettait d'arriver a 60 fps, alors que sans ça avais bien du mal.

Apres pas besoin de prendre tous les cas de figure possible, juste les 1x2, 2x1, 2x2, 1x3, 3x1 et 3x3 ça permet de gagner pas mal.

Sinon, pour le moyen, le comment faire, bah c'est plutôt simple.
Faut créer un objet par masque, et dans leur create, tu fais un simple check.

Par ex:
#Create bloc1x1
ii = instance_place(x+1, y, bloc1x1)
if(ii != noone)
{
instance_create(x, y, bloc2x1)
with(ii) instance_destroy()
instance_destroy()
}

Et la, si t'as deux blocs 1x1 cote a cote, ça te crée un bloc 2x1.

Sinon, le sujet a été traité plusieurs fois, donc je conseille de chercher un peu sur le forum y a des systèmes déjà tout prêts.

_________________
Combiner deux instances en une seul Runningpotato1Combiner deux instances en une seul TvF6GED Combiner deux instances en une seul MdetltS
Revenir en haut Aller en bas
MCpPaladian
Débutant



Messages : 29

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 18:03

Merci pour vos réponses.

onilink a écrit:
Sinon, le sujet a été traité plusieurs fois, donc je conseille de chercher un peu sur le forum y a des systèmes déjà tout prêts.

Oups j'ai complètement oublié de faire une recherche, cependant merci à toi de m'avoir répondu.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 18:21

Vraiment ? Meme sans utiliser du pixel perfect ? C'est étonnant ca parce qu'en soit ca fait juste le temps d'une iteration en plus...

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 18:26

Bah, déjà, on parle de GM Very Happy
Et ensuite, non ça fait pas juste une iteration de plus si t'as beaucoup de blocs.
Dans beaucoup de cas tu peux diviser par dix le nombre de blocs utilisé.
Après, tout dépend de la map et des blocs que t'as crée.

Puis bon, y a rarement qu'un seul objet qui fait les tests de collision, du coup sur la globalité, ça économise un nombre non négligeable d’itérations.
Surtout que selon le moteur physique, tu peux itérer plusieurs fois sur un check de collision avec un unique objet...

_________________
Combiner deux instances en une seul Runningpotato1Combiner deux instances en une seul TvF6GED Combiner deux instances en une seul MdetltS
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyMar 12 Aoû 2014 - 18:39

Razz
Mais c'est vrai, effectivement à force ca fait beaucoup ^^

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
MCpPaladian
Débutant



Messages : 29

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyDim 17 Aoû 2014 - 19:08

Up, j'ai trouvé une démo qui démontre ce que je souhaitais faire à la base. Regardez par ici ==> Demo optimise Objets.

Comme vous le voyez, de base, il y a 300 instances, et une fois la touche espace pressée, on passe à 47. C'est juste fou, et je voudrais savoir comment faire un tel système. Car je ne vois pas du tout comment construire ce truc de ouf. Quoique au début j'avais penser à utiliser un ds_grid ou un arrays 2d pour faire une sorte de quadrillage sur toute la room, mais je ne suis pas encore assez balèze pour y arriver.

Peut-être es-ce la bonne piste, mais j'ai besoin de l'aide de pro car là, je suis complètement largué. merci d'avance.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyDim 17 Aoû 2014 - 19:13

Bah onilink l'a expliqué plus haut, pour chaque bloc tu regarde les autres blocs qui l'entourent et ensuite tu les changes.

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
MCpPaladian
Débutant



Messages : 29

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyDim 17 Aoû 2014 - 20:20

Oui je sais, mais je préfère avoir un changement de taille avec un image_xscale et/ou image_yscale, plutôt que de créer un objet pour chaque taille.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul EmptyDim 17 Aoû 2014 - 21:25

Tu pourra que avoir des trucs linéaires alors.
En gros si tu fais ilage_xscale=2 t'as une image étiré deux fois plus en largeur.

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
Contenu sponsorisé





Combiner deux instances en une seul Empty
MessageSujet: Re: Combiner deux instances en une seul   Combiner deux instances en une seul Empty

Revenir en haut Aller en bas
 
Combiner deux instances en une seul
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Deux draw mais un seul doit être en alpha
» Dessiner une ligne avec deux couleurs et deux alphas
» deux PC = deux jeux différents
» combiner 4 sprites
» Combiner le langage Flash au C++?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: