Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
Posté le: 31/05/08 16:51 Sujet du message: |
|
|
En fait je n'aime pas la troisième partie, ca ne diabolise pas le leak, ca le rend même presque admissible.
Bien sûr coder cradement et sans leak n'est pas une solution non plus.
Mais comme coder s'apprend en faisant, c'est assez difficile à aborder, contrairement au leak, sujet assez fermé et donc "facilement" abordable _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 31/05/08 17:20 Sujet du message: |
|
|
Oui mais le leak est propre à certains langages et système, tu rencontreras parfois des garbage collector qui gèrent cela, alors qu'apprendre à coder proprement et des choses de plus en plus complexes est question d'heures (voir d'années de pratique).
Et de plus, avec un bon niveau de programmation, comprendre et régler un leak est ultra simple, alors que c'est un principe pas forcément évident à aborder pour un novice car il demande de comprendre un fonctionnement bien plus bas niveau que le langage (le jass ici) en lui même. _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 31/05/08 20:02 Sujet du message: |
|
|
Tu dois etre égoiste ou pas très observateur^^
"Jette un coup d'oeil" sur la plupart des membres ici _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 31/05/08 22:02 Sujet du message: |
|
|
; ) _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
max-4938 Floodeur prématuré
Inscrit le: 25 Juil 2008 Messages: 407 Sujets: 68
|
Posté le: 13/08/08 20:55 Sujet du message: |
|
|
Je suis d'accord avec "profet", finalement, ce qui fait ramer une partie, c'est plus le lagg (production de 100 unités par seconde -_-) que le leak... la plupart de joueurs ont de bons PC.
Lorsque je compare mes temps de chargement avec ceux des joueurs sur Battle.net, je fais partie des plus lents et pourtant j'ai 2 Go de RAM.
(bien sûr, le temps de chargement ne dépend pas uniquement de la RAM, mais globalement, les PC sont équilibrés)
Mais je ne vois pas comment je pourrais éviter le lagg, j'ai énormément de sorts qui utilisent des boucles... et ça m'embête.
(voir ma map : http://worldedit.free.fr/forum/viewtopic.php?p=32799#32799)
Avez-vous une solution ?
Pourquoi des boucles ? Si je veux faire un déplacement d'unité fluide, je dois utiliser un autre déclencheur qui s'active tous les 0.05 sec, et pas un Wait de 0.05, car les "wait" de 0.05 sec n'existent pas. _________________
|
|
Revenir en haut |
|
|
Brissou de Mourièssou Créateur de sorts, depuis 1936.
Inscrit le: 30 Aoû 2007 Messages: 1510 Sujets: 26 Spécialité en worldedit: Développer des jeux vidéos pour le fun, donc world edit c'est comme faire une addition. Médailles: 2 (En savoir plus...)
|
Posté le: 13/08/08 21:29 Sujet du message: |
|
|
A haut niveau c'est le leak. Si t'as du leak dans un déclencheur qui est exécuté toutes les 0.05 secondes tu auras du lag au bout d'une demie heure de jeu, c'est sûr et certain. La seule solution que tu as c'est de supprimer ce leak, et là tu pourras joueur 3 heures d'affiler, ça tournera aussi bien qu'à la première minute. Enfin tu perdras peut être 2 fps si tu nullifies pas xD _________________
|
|
Revenir en haut |
|
|
max-4938 Floodeur prématuré
Inscrit le: 25 Juil 2008 Messages: 407 Sujets: 68
|
Posté le: 14/08/08 08:56 Sujet du message: |
|
|
Ce sont des sorts, donc je les exécute à peu près 2 secondes toutes les 40 secondes... (je parle des boucles 0.05 sec)
Mais puisqu'il y a 8 joueurs, ça fait 2 secondes toutes les 5 secondes... c'est vrai qu'à la fin ça va ramer.
Quel est le pire ? Les leak de groupe d'unité, ou les leak de points ?
Pour les leak de points, est-ce que je peux utiliser une unique variable pour tous mes points de tous mes sorts, si elle est à usage unique ? (c'est à dire qu'elle ne doit pas être enregistrée). _________________
|
|
Revenir en haut |
|
|
Brissou de Mourièssou Créateur de sorts, depuis 1936.
Inscrit le: 30 Aoû 2007 Messages: 1510 Sujets: 26 Spécialité en worldedit: Développer des jeux vidéos pour le fun, donc world edit c'est comme faire une addition. Médailles: 2 (En savoir plus...)
|
Posté le: 14/08/08 10:35 Sujet du message: |
|
|
Les deux sont tout aussi pire.
Oui tu peux utiliser une même variable globale si c'est à usage unique. Je fais ça pour mes déclencheurs GUI.
Faut bien penser à supprimer son contenu à la fin de chaque utilisation. _________________
|
|
Revenir en haut |
|
|
max-4938 Floodeur prématuré
Inscrit le: 25 Juil 2008 Messages: 407 Sujets: 68
|
Posté le: 14/08/08 11:21 Sujet du message: |
|
|
J'ai fait un petit calcul
Un point utilise normalement 12 octets
Je fais des boucles de 0.05 secondes qui utilisent en moyenne 6 points (il s'agit de sorts)
Ces boucles s'activent donc 20 fois par seconde
On admet que, puisqu'il y a 8 joueurs, il a toujours au moins une boucle "ON" (activée)
Ce qui fait : 12 X 20 X 6 = 960 octets par seconde
En une heure : 3600 X 960 = 3 456 000 octets par heure
Ce qui donne environ 3.5 Mo par heure.
à ce stade, et sachant que la majorité des PC actuels ont au moins 1Go de RAM (1000 Mo), est-ce encore nécessaire de se préoccuper du leak dans mes sorts ?
(uniquement pour les points) _________________
|
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 19/08/08 21:03 Sujet du message: |
|
|
Bah comme il a été souvent dit, le problème des leak vient de leur accumulation, car 1 sort + 1 sort + 1 pop de creep + ... au final ça commence à faire beaucoup.
Bien sur les pc actuels ont une quantité de mémoire qui rend ridicule la plupart des leak, mais après c'est une question de principe, coder "propre".
J'en vois qui parlent de lag, on peut l'éviter en codant de manière optimisée, pour éviter de créer des longues boucles qui freezent le jeu. _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
Troll-Brain Ri1kamoua
Inscrit le: 23 Aoû 2007 Messages: 7143 Sujets: 147 Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance Médailles: 2 (En savoir plus...)
|
Posté le: 19/08/08 21:25 Sujet du message: |
|
|
Jass: | function SansLeakMaisTresCrade takes unit u returns nothing
local location l = GetUnitLoc(u)
call BJDebugMsg("X = " +GetLocationX(l))
call BJDebugMsg("Y = " +GetLocationY(l))
call RemoveLocation(l)
set l= null
endfunction |
_________________
|
|
Revenir en haut |
|
|
Keitaro_Ura Floodozaurus
Inscrit le: 21 Aoû 2007 Messages: 2073 Sujets: 38 Spécialité en worldedit: Oui Médailles: 1 (En savoir plus...)
|
Posté le: 19/08/08 23:38 Sujet du message: |
|
|
max-4938 a écrit: |
à ce stade, et sachant que la majorité des PC actuels ont au moins 1Go de RAM (1000 Mo), est-ce encore nécessaire de se préoccuper du leak dans mes sorts ? |
Oui. (même si moi je m'en fous j'ai 2Go de ram) Car tout le monde n'a pas ce genre de pc, et puis après y'a plein de facteurs, aussi lorsque l'on a fini la map, c'est très très lourd d'attendre une dizaine de minutes pour revenir sur Bnet. _________________
|
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 20/08/08 00:04 Sujet du message: |
|
|
Ah oui et il y a aussi le fait que war3, ram ou pas n'aime pas trop quand il arrive a un trop grand nombre d'handle.
Je suis ainsi arrivé a un lag phénoménal (plus de 30 secondes de latence o_o) a cause d'une surcharge de texttag qui n'étaient pas détruits. _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
|