| Weather | |
|
+5Vi Godzillu Shai-la Kitai Asraroth 9 participants |
|
Auteur | Message |
---|
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mar 6 Jan 2009 - 10:17 | |
| C'est corrigé dans la Version 1.4. Il faut rajouter l'appel à la fonction "weather_end();" quand on sort de la room (pour nettoyer la mémoire). Je travaille déjà sur la version 1.5 qui integrera la commande player.make("DanseDeLaPluie"); :clindoeil: |
|
| |
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Date d'inscription : 17/04/2006
| Sujet: Re: Weather Mar 6 Jan 2009 - 11:31 | |
| Super ! Merci |
|
| |
Godzillu Grand Cliqueur Royal
Nombre de messages : 1658
Date d'inscription : 11/03/2007
| Sujet: Re: Weather Mar 6 Jan 2009 - 12:41 | |
| Qu'est que tu es fort. Belle réactivité merci |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mar 6 Jan 2009 - 14:33 | |
| A votre service ! : : Voici une nouvelle version qui ne fait que de la neige. Weather Snow V1.5Je ferai un module à part pour la pluie. Ca prend moins de ressources inutilement, comme çà. Nouveautés : - des flocons de formes differentes . X + :: - une fonction "weather_snow_stop()" pour arreter la neige progressivement. - une fonction "weather_snow_start()" pour reactiver la neige progressivement = player.Make("DanseDeLaNeige") :ihih: - une fonction "weather_snow_state()" pour savoir s'il neige ou pas. Si vous avez des suggestions pour ameliorer le module, hesitez pas ! :bricole: |
|
| |
Vi Cliqueur Amateur
Nombre de messages : 214
Date d'inscription : 03/03/2008
| Sujet: Re: Weather Mar 6 Jan 2009 - 14:50 | |
| Super, des idées ben oui mais ca va compliquer la tache :
accumuler la neige sur des zones précises (walkarea ou region ou hotspot au choix) exemple : je definie une region sur un toit, le neige s'accumule dessus
allez montre nous ce que tu sais faire ... |
|
| |
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: Weather Mar 6 Jan 2009 - 15:57 | |
| Je vais rester sur l'ancien pour le moment car j'ai besoin de pluie ET de neige dans mon jeu : : |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Weather Mar 6 Jan 2009 - 18:07 | |
| - Asraroth a écrit:
- Il faut rajouter l'appel à la fonction "weather_end();" quand on sort de la room (pour nettoyer la mémoire).
Il existe une fonction on_event (EventType event, int data) par laquelle on peut détecter tout départ d'une pièce de la part d'un joueur, ainsi : - Code:
-
function on_event(EventType event, int data) { if (event == eEventLeaveRoom) { // commandes... } } Ceci permettrait donc d'éviter à l'utilisateur d'utiliser weather_end (à savoir qu'on peut également détecter l'entrée du joueur dans une nouvelle pièce, où event vaut eEventEnterRoomBeforeFadein dans la fonction ci-dessus, et où data retourne le numéro de la pièce en question). - Asraroth a écrit:
- Si vous avez des suggestions pour ameliorer le module, hesitez pas !
Bah pour le coup j'aurais une suggestion formelle : généralement un module est fait sous forme de structures, et s'appelle comme suit : Nomdumodule.Fonction();. C'est loin d'être une obligation, mais je trouve que ça s'intègre mieux dans une optique orientée objet comme suit AGS depuis quelques verisons. :sourire: Du coup je verrais bien quelque chose comme : - Code:
-
Weather.Init(true, false); Weather.Start(); Weather.Stop(); Weather.IsFalling(); // etc. Je n'ai pas fait de distinction ici entre la neige et la pluie. Si tu fais un module par phénomène, alors tu pourras faire Snow.Start() et Rain.Start(), ou sinon tu restes avec Weather et chaque module est une extension de l'autre. (cf AGS wiki) Voilà voilà, bon courage :dd: _________________ Ga is Ga Vous pouvez consulter l' aide d'AGS 3.2 en français et contribuer à la traduction et à l'amélioration si le cœur vous en dit ! |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mer 7 Jan 2009 - 16:17 | |
| - Citation :
- accumuler la neige sur des zones précises (walkarea ou region ou hotspot au choix)
exemple : je definie une region sur un toit, le neige s'accumule dessus
Plus simple de gérer ses sprites avec un objet pour donner l'effet d'accumulation... - Citation :
- Il existe une fonction on_event (EventType event, int data) par laquelle on peut détecter tout départ d'une pièce de la part d'un joueur
Je connaissais pas ! Ca marche nickel ! :sourire: - Citation :
- généralement un module est fait sous forme de structures, et s'appelle comme suit : Nomdumodule.Fonction();
Super idée ! Et merci pour le lien du Wiki, j'ai appris plein de trucs aujourd'hui. Et donc voici Weather V2.0Pour l'utiliser, dans l'evenement "enter before fade-in", on fait : - Code:
-
weather.SnowInit(); ou - Code:
-
weather.RainInit(); Encore Merci Kitai ! :clindoeil: |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Jeu 8 Jan 2009 - 14:22 | |
| Nouvelle version : weather V2.10- Amélioration du rendu pour la pluie - Optimisation (+ rapide a executer = - de CPU consommé) - Ajout d'un parametre "nombre de particules" - Ajout de 2 fonctions pour augmenter ou reduire le nombre de particule. |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Lun 6 Juil 2009 - 23:20 | |
| Ok pour la neige, par contre la pluie plante direct, même si je fais exactement comme tu dis de faire. ça me renvoit cette erreur: Error: Array index out of bounds (index 3000, bounds: 0..2999) Et ça m'indique la ligne 321 du script weather21.asc: - Code:
-
if (this.particle_c[this.nb_particles] > 255) { |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mar 7 Juil 2009 - 7:20 | |
| oula ! encore un bug... remplace la ligne 321 et 322 par : - Code:
-
if (this.particle_c[particle_i] > 255) { this.particle_c[particle_i] = 255;
|
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Mar 7 Juil 2009 - 9:33 | |
| Merci ça marche.
Mais y a encore des ptites choses qui m'embêtent: -ça ralentit énormément le jeu, c'est normal ou c'est que chez moi? (avec la pluie, je dépasse pas 4 fps, à vu d'oeil). -la commande weather_end(); ne marche pas. Du coup quand je change de room et que je remets de la pluie ou de la neige, ça foire. |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mar 7 Juil 2009 - 17:53 | |
| Pour la pluie, c'est un peu normal... essaye de réduire la vitesse et le nombre de particules pour trouver un rendu/fps acceptable. - Code:
-
weather.RainInit(200 , 3 , 0 , 500); le 3, c'est la vitesse... augmente ce nombre pour réduire la vitesse (logique ? XD ) (par défaut, c'est 1.. le + rapide possible) le 500, c'est le nombre de particule.. par défaut, c'est 3000 si t'as pas touché au "#define Weather_NB_PARTICLES_MAX" Bizarre pour la commande "weather.Stop();"... je regarde çà et je te tiens au courrant... |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Mar 7 Juil 2009 - 18:54 | |
| - Asraroth a écrit:
- Bizarre pour la commande "weather.Stop();"... je regarde çà et je te tiens au courrant...
Non non, "weather_end();" et pas "stop"! Et effectivement, ça passe mieux en diminuant la vitesse et le nombre de particules. Merci. |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mar 7 Juil 2009 - 19:11 | |
| - googi a écrit:
- Non non, "weather_end();" et pas "stop"!
Tu utilises quelle version ? cette fonction n'existe pas (ou plus). |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Mer 8 Juil 2009 - 8:26 | |
| - Asraroth a écrit:
- Il faut rajouter l'appel à la fonction "weather_end();" quand on sort de la room (pour nettoyer la mémoire).
C'est quoi l'équivalent alors? "weather.Stop();"? |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Mer 8 Juil 2009 - 8:32 | |
| - googi a écrit:
- Asraroth a écrit:
- Il faut rajouter l'appel à la fonction "weather_end();" quand on sort de la room (pour nettoyer la mémoire).
C'est quoi l'équivalent alors? "weather.Stop();"? Plus besoin... c'est totomatique, maintenant |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Mer 8 Juil 2009 - 10:44 | |
| |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Lun 26 Oct 2009 - 11:26 | |
| Me revoilà. Ai un ptit soucis avec ton module.
En Direct3D, la pluie et la neige déconnent. J'avais remarqué le problème depuis un moment, mais je m'étais dit que tant pis, on resterait en DirectDraw. Seulement, depuis je suis passé en 32 bits (j'étais en 16bits), et j'ai remarqué un gain de FPS en 32 bits en Direct3D.
Petite récapitulation:
16 bits:
* DirectDraw5
-utilisation normale: FPS = 40 -pluie: FPS = 40 -pluie + feu d'artifice: FPS = 20
* Direct3D 9
-utilisation normale: FPS = 40 -pluie: FPS = 34 -pluie + feu d'artifice: FPS = 15
32 bits:
* DirectDraw5
-utilisation normale: FPS = 40 -pluie: FPS = 33 -pluie + feu d'artifice: FPS = 18
* Direct3D 9
-utilisation normale: FPS = 40 -pluie: FPS = 40 --> en 32 bits, plus rapide qu'en 16 bits. -pluie + feu d'artifice: FPS = 18
Et ce gain de FPS n'est pas un coup de bol, j'ai refait le test plusieurs fois. Donc en Direct3D, qu'on soit en 16 ou en 32 bits, la pluie et la neige n'ont pas une couleur normale (testé sur plusieurs PCs). |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Lun 26 Oct 2009 - 11:41 | |
| Je viens de retester en 32 bits et Direct3D. Et ben la pluie et la neige marchent correctement (j'ai supprimé quelques modules, c'était ptete dû à une incompatibilité).
Par contre, en 16 bits, toujours pareil. Pluie et neiges sont bleues (en Direct3D). |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Lun 26 Oct 2009 - 18:20 | |
| Ok ! je regarde çà dès que j'ai un instant... |
|
| |
googi Adepte de la Grande Tasse Bleue
Nombre de messages : 119
Date d'inscription : 14/06/2009
| Sujet: Re: Weather Sam 7 Nov 2009 - 12:26 | |
| Alors Asra? Du nouveau? Sinon tant pis, on utilise que le DirectDraw. |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Weather Dim 8 Nov 2009 - 8:33 | |
| desolé ! pas encore regardé... mais tu dois pouvoir changer la couleur de la pluie/neige toi-même. Pour la neige, c'est cette ligne : - Code:
-
this.particle_c[particle_i] = 195 + (10 * (this.particle_s[particle_i] - 1)); dans la fonction "SnowInit" C'est à dire que plus le flocon est rapide (particule_s), plus il sera clair. Pour la pluie, c'est : - Code:
-
this.particle_c[particle_i] = this.rain_color - (this.particle_s[particle_i] * 20); Ensuite, dans les fonctions "display_xxx_particules", il y a : - Code:
-
col = this.particle_c[i]; this.surface.DrawingColor = Game.GetColorFromRGB(col, col, col); |
|
| |
titangebrian Adepte de la Grande Tasse Bleue
Nombre de messages : 75
Localisation : Toulouse/Valenciennes/Lausanne
Date d'inscription : 07/02/2009
| Sujet: Re: Weather Mer 4 Juil 2012 - 12:26 | |
| Salut tout le monde ! Avant tout, un grand merci à toi Asraroth, très beau boulot, je n'y comprends rien mais j'arrive à faire fonctionner ton module dans mon jeu. Seulement j'ai un petit soucis : j'ai téléchargé la version 1.5 (je n'ai besoin que de neige) et tandis que j'essayai de ne faire tomber la neige que sur une certaine surface (via les réglages lstart_x, etc.) je fais face à une sorte de colonne de neige pas très jolie sur le côté gauche. En outre, un peu de neige tombe sur le haut et lorsque je tente de régler l'entrée 'weather_lmin_y', ma neige est comme 'possédée', crée des balayages verticaux ou horizontaux... Y a-t-il un autre paramètre à modifier ? Enfin, j'aimerais que la neige tombe un peu de biais. J'arrive à ce faire à l'aide de 'weather_lvent', mais ça ne crée pas tout à fait l'effet voulu car cela fait apparaître des flocons sur le côté gauche en plein milieu de l'image ; pour le côté droit no pb, le bord noir vient couvrir toute coupure suspecte. Ce qu'il faudrait c'est pouvoir effectuer une rotation sur l'animation. Est-ce possible ? Je ne sais pas si tout est clair aussi je joins un screen de ma room pour que tu te fasses une idée claire de ces quelques problèmes. Bien cordialement, Maël. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Weather Mer 4 Juil 2012 - 12:37 | |
| Malheureusement la dernière visite d'Asraroth sur ce forum date du mois de février...
Pour ma part ça fait très longtemps que je n'ai pas jeté un coup d’œil à ce module et du coup je ne peux pas vraiment t'aider. Tu as essayé avec la dernière version, si le problème persiste ? (Peut-être le problème a-t-il été corrigé entre-temps). _________________ Ga is Ga Vous pouvez consulter l' aide d'AGS 3.2 en français et contribuer à la traduction et à l'amélioration si le cœur vous en dit ! |
|
| |
titangebrian Adepte de la Grande Tasse Bleue
Nombre de messages : 75
Localisation : Toulouse/Valenciennes/Lausanne
Date d'inscription : 07/02/2009
| Sujet: Re: Weather Mer 4 Juil 2012 - 13:11 | |
| Oki doki, je vais voir ça. Dommage (sinon je me casse un peu plus le c** et je tente d'effectuer une animation traditionnelle et d'importer chaque frame dans les sprites...) Merci Kitai |
|
| |
titangebrian Adepte de la Grande Tasse Bleue
Nombre de messages : 75
Localisation : Toulouse/Valenciennes/Lausanne
Date d'inscription : 07/02/2009
| Sujet: Re: Weather Mer 4 Juil 2012 - 19:26 | |
| Bon, et bien hélas, trois fois hélas, même avec la version 2.1... cela ne change pas... Asraroth, si tu reviens par ici... C'est avec plaisir que j'écouterai tes conseils.
Sinon et dans l'immédiat, j'ai une question à laquelle d'autres pourront répondre : comment faire pour mettre un élément du décors par-dessus un effet de module ou une animation de sprites ? Dans la plupart de mes rooms, il y aura un 1er plan purement esthétique, servant à créer plus de profondeur et à étoffer les décors (un peu à la Runaway). Or ces plans se trouveront devant tous les autres éléments du jeu. Afin que le personnage passe derrière il n'y a aucun problème, on utilise la fonction 'walk behind', mais pour le reste ? Il me semble avoir lu quelque-chose dessus mais impossible de le retrouver, je n'ai pas encore tous mes repères au sein du forum.
Cordialement, Maël. |
|
| |
Contenu sponsorisé
| Sujet: Re: Weather | |
| |
|
| |
| Weather | |
|