AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 Re-aide sur un code

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re-aide sur un code    Lun 9 Juin 2014 - 18:38

Hello !

J'ai aissayer de changer le code pour la génération de errain minecraft en 2D mais je m'oppose a 2 problèmes :

_ La génération dans l'axe y "bug" un peut , j'ai des blocs générer dans d'autre blocs :/
_ La génération me fais ramer alors que toute la génération est fini o_O

Voici le code :

Code:
grid=32

hauteur=32;
for(i=0;i<room_width/grid;i+=1){
 for(j=0;j<hauteur-3;j+=1){
  instance_create(i*grid,room_height-j*grid,obj_cobble);
 }
 for(j=hauteur-3;j<hauteur;j+=1){
  instance_create(i*grid,room_height-j*grid,obj_dirt);
 }
 
  hauteur+=random(5)-2;
}

Merci d'avance de m'aider .
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Lun 9 Juin 2014 - 18:45

- C'est parce que tu choisis un chiffre aléatoire je crois. Utilise irandom() (Attention, je crois que cette fonction n'existe pas/plus) ou englobe ta fonction aléatoire d'un floor(), d'un ceil() ou d'un round() (Arrondi à l'inférieur, arrondi au supérieur, arrondi classique)
- C'est pas la génération qui te fait lagger. Autant de blocs sous forme d'objets, c'est très lent sous GM, surtout si tu dois tous les afficher! En fait, le GM n'est vraiment pas adapté pour ce genre de jeu... :/

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Lun 9 Juin 2014 - 19:10

_Merci Enormément pour ce point ( en faite 'était logique x) ) et oui le irandom marche encore .
_Ce qui est bizarre c'est que il devrait ramer pendant genre 2 seconde - 5 secondes mais le jeu rame tout le temps , c'est comme si le code ne s’arrête pas :/
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Lun 9 Juin 2014 - 20:12

Si tu rajoute :
Code:
with(obj_cobble) instance_destroy();
with (obj_dirt) instance_destroy();
à la fin de ton code de génération, est-ce que ça lagge toujours autant? Les objets sont bien supprimés?

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Mobi
Utilisateur confirmé: Rang ****
avatar

Messages : 1256
Localisation : Dijon

MessageSujet: Re: Re-aide sur un code    Lun 9 Juin 2014 - 20:17

tu as pas une boucle infini qui traîne ?

_________________
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
avatar

Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

MessageSujet: Re: Re-aide sur un code    Lun 9 Juin 2014 - 21:08

un cube a afficher comme minecraft est extrêmement lourd en dynamique (sans les models), et même avec les modèles et les optimisations a faire pour les blocks (comme ne pas afficher les face cacher par un autre blocks), ça rame a mort. GM ne travaille pas assez avec la carte graphique contrairement au vrai directx ou à opengl. Je suis d'accord avec Soundii : GM n'est pas fait pour faire ce genre de jeu, sauf si tu passe par des extensions style Ogre, irricht ou ultimate3D.
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 15:54

Oui les objets sont bien supprimer , il y a pas de boucle j'en suis certain car si je veut ajouter quelque truc dans mon jeu je désactive le code avec "/*" et sa ne lag pas ^^

Pour la génération c'est toujours possible de faire sa en step avec a chaque steps la variable x est ajouter a 32 du coup en 30 steps il y aura 30 colonne générer , je pense pas que sa fasse laguer non ?
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 15:57

Si ça lag pas après la suppression c'est juste que GM (GM studio doit être plus rapide pour ça) n'est pas conçu pour avoir autant d'objets en même temps. Tu devrais te tourner vers ENIGMA qui est compilé, opensource et donc 100% gratuit. Il est compatible avec GM, mais par contre il y a quelques incompatibilités.

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
Mobi
Utilisateur confirmé: Rang ****
avatar

Messages : 1256
Localisation : Dijon

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:09

Gabin, c'est un jeu 2D.... mais tu as raison, tu dois avoir trop d'instance de bloc dans ta room.... je te conseil de pas afficher les blocs autour de ta view

_________________
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:15


Edit : je viens de voir le post de Mobi , ce n'est pas bête , saurait tu quel est cette fonction ?

Merci soundii je test sa , mais j'essaye quand même de garder gamemaker ^^

J'ai pensé a :
Code:
instance_create(mouche_x,mouche_y,obj_dirt)
while(room_height-mouche_y2){mouche_y2-=32;instance_create(mouche_x,mouche_y2,obj_dirt)}

{mouche_x+=32;mouche_y+=random(floor(hauteur));mouche_y2=mouche_y}//quand la boucle est fini

Dans le step et dans le create :
Code:
mouche_x=16
mouche_y=room_height/2
mouche_y2=mouche_y
hauteur=5
y_h=0

Ce qui avec un petit effet l'espace de 60 step la map sera déjà pas mal générer .

Que pensez vous de ce code ^^ ?si vous avez des amélioration ( j'ai mis le minimum ne vous étonné pas ^^ )
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:19

Au pire, autant tout générer d'un coup, mais en gardant les instances invisibles quand elles sont hors de la room (Comme à dit mobi).
Sinon, tu laggeras quand tu bougeras car le jeu devra générer la map.

(wtf, c'est un jeu de mouche que tu fais? j'ai vu mouche_x, mouche_y... xD)

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:22

Je vais tester cela , savez vous quel est cette fonction ?

( pour les mouche , j'ai repris le nom d'une variable que j'avais déjà ^^ mais c'est juste pour donner un nom ^^ )
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:27

Faudrait faire quelques instance_deactivate_region(blabla)...

Si tu débute en GM, je sens qu'un jeu comme ça va pas trop le faire :/
Même moi j'aurais du mal à faire ça de manière optimisée.

Passe vers ENIGMA, il supporte le GML (Quelques incompatibilités comme je disais par contre) et est bien plus rapide. Tu peux toujours voir si c'est adapté pour toi ou pas (Je te préviens, c'est un peu aléatoire par contre, mais quand on sait l'apprivoiser, on voit ses capacités. En fait, c'est aussi puissant que du C++)

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 16:38

Merci énormément , mon jeu ne lag pas du tout (100 de FPS/100 plus ou moin ) !

Je vais test ENIGMA merci pour tout en tout cas ^^
Revenir en haut Aller en bas
onilink_
Modérateur
avatar

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

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 18:18

Soundii a écrit:
En fait, c'est aussi puissant que du C++
Enigma est cool, mais faut pas non plus se leurrer, il est pas magique. Niveau perfs il est plus rapide que GM certes mais ça n'empeche pas qu'un mauvais code restera un mauvais code...
De plus la puissance du C++ viens surtout du langage en lui même, de sa syntaxe.
Par chance il est aussi très rapide, mais si ça n'avais pas été le cas ça ne l'aurais pas empêché d'être un bon langage.

Tout ça pour dire que sous GM ou Enigma, le gml est un langage très pauvre et que si en plus tu codes a l'arrache, bah t'attends pas a faire un jeu potable niveau performances quand tu pars sur des trucs un peu complexes.

_________________
                 
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 19:12

Petite question savez vous comment agrandir la room avec une commande , j'ai essayer room_set_width() mais cela ne marche pas :/
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 19:29

Il faut recharger la room pour que room_set_width() et room_set_height() prennent effet. Oui, je sais, c'est totalement débile et une perte de temps. Je me demande pourquoi ils ont fait ça >.>

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
albisse
Utilisateur confirmé: Rang *


Messages : 228

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 19:30

A ok merci ^^
C'est vraie que c'est pas totalement Fute fute ^^
Revenir en haut Aller en bas
onilink_
Modérateur
avatar

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

MessageSujet: Re: Re-aide sur un code    Mar 10 Juin 2014 - 19:40

Ça devais poser des soucis techniquement, a leur moteur x)

_________________
                 
Revenir en haut Aller en bas
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: Re: Re-aide sur un code    Mer 11 Juin 2014 - 9:36

onilink_ a écrit:
Ça devais poser des soucis techniquement, a leur moteur x)
Nonon, c'est pareil sur tous les GM, GM:S aussi, et pas sur pour enigma.

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
onilink_
Modérateur
avatar

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

MessageSujet: Re: Re-aide sur un code    Mer 11 Juin 2014 - 10:03

Ça n’empêche pas que le soucis venait surement de leur moteur a la base.
S'ils l'ont laissé comme ça c'est soit que c'est toujours le même soucis, soit qu'ils ne veulent pas créer des incompatibilités.

_________________
                 
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: Re-aide sur un code    

Revenir en haut Aller en bas
 
Re-aide sur un code
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» AME Aide médicale d'état
» Demande aide lecture acte mariage 1742 Cormeilles Eure
» * Pécule ou aide à la reconversion - Textes règlementaires ....
» Semaine internationale du portage => code promo ;-)
» Besoin de votre aide les expert(e)s!

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: