FAMAS Index du Forum

FAMAS
Faction armée des makers assoiffés de sang

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Kujira no Caca - chapitre 5 en cours
Aller à la page: <  1, 2, 370, 71, 7281, 82, 83  >
 
Poster un nouveau sujet   Répondre au sujet    FAMAS Index du Forum -> Section Corvées -> Stand de tir
Sujet précédent :: Sujet suivant  
Auteur Message
Roi of the Suisse



Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Sam 20 Aoû - 09:46 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

PublicitéSupprimer les publicités ?
Revue du message précédent :

C'est l'humidité qui se condense avec une baisse de température, notamment sur les parois supérieures :fou
Revenir en haut
Visiter le site web du posteur
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Sam 20 Aoû - 10:05 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Je peux régler le nombre de gouttes, dans le gif ci-dessus y'en a genre 30-40, mais je peux aussi en mettre 10 000 kek :link


"Bienvenue à Rennes"

Par contre je dois avouer que si avec 1000 gouttes j'ai aucun problème de lag, à partir de 10 000 gouttes ça commence à ralentir le jeu :F
Revenir en haut
Visiter le site web du posteur
trotter
Vétéran


Inscrit le: 26 Juil 2011
Messages: 6 770

MessagePosté le: Sam 20 Aoû - 13:02 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Cool.
Peut être que tu peux faire un "splash" plutôt qu'un "plouc" pour l'impact de tes goutes.
Ou alors donner plus d'anim à ton plouc pour le faire grossir d'avantage avant de s'estomper.
Revenir en haut
Zam
Vétéran


Inscrit le: 08 Déc 2013
Messages: 444

MessagePosté le: Sam 20 Aoû - 15:07 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Criket trouve que les carrés bleus sont pas réalistes et que c'est nul.
Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Dim 21 Aoû - 15:47 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

C'est les boîtes de collision, je les enlèverai à la finz :feu

@trotter: oui j'ai le même point de vue que toi. Tu dois être un peu un génie aussi. Les grands esprits se rencontrent comme on dit :porte
Revenir en haut
Visiter le site web du posteur
Criket
Vétéran


Inscrit le: 12 Déc 2011
Messages: 1 865

MessagePosté le: Dim 21 Aoû - 15:57 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Tout à fait, les boîtes de collision, c'est ce que j'ai expliqué à Zam au moment où il écrivait ce message mais il ne voulait pas me croire. :porte

Tu peux/veux éviter que la pluie passe au dessus des rebords ? Les splach sur les murs ou dans les zones noires ça fera bizarre imo.
Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Dim 21 Aoû - 17:35 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Oué euh sur les maps de pluie je vais étendre les falaises jusqu'aux bords de l'écranz :m~
Revenir en haut
Visiter le site web du posteur
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Dim 21 Aoû - 21:12 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

J'ai appliqué les remarques de Nanki et de trottaire, à savoir :
- différentes tailles de gouttes d'eau
- une animation d'éclaboussure plus longue et plus large

Et voici la neige :



:omg :omg :omg
Revenir en haut
Visiter le site web du posteur
Nemau
Vétéran


Inscrit le: 29 Juin 2012
Messages: 5 755

MessagePosté le: Lun 22 Aoû - 11:59 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Sympa comme tout cette neige.

Citation:
Oué euh sur les maps de pluie je vais étendre les falaises jusqu'aux bords de l'écranz :m~
Ça pose un petit souci de cohérence graphique. Si dans la plupart des maps on voit du noir au bout de deux hauteurs de falaises (c'est bien ça ?) il n'est pas logique de voir plusse de falaises juste parce qu'il pleut. En revanche la différence de nombre de hauteurs peut se justifier par la hauteur de plafond ainsi suggérée ; mais ce serait bizarre que les pièces à très hauts plafonds soient comme par hasard celles dans lesquelles il pleut.

Citation:
J'ai appliqué les remarques de Nanki et de trottaire, à savoir :
- différentes tailles de gouttes d'eau
- une animation d'éclaboussure plus longue et plus large
En faisant ça tu prends soin du réalisme et de l'esthétique mais pas de la lisibilité. En diversifiant tes gouttes d'eau et en faisant les changements cités sur les éclaboussures ta pluie va davantage attirer l'oeil, peut-être même trop (faisant ainsi perdre à l'image de la lisibilité).

Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Lun 22 Aoû - 12:52 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Je pourrais modifier le code pour ne faire pleuvoir que sur les zones marchables, mais je me demande dans quelle mesure ça va baisser les performances de calcul.

Je reste juge raisonné de l'équilibre entre la décoration et la lisibilité.
Le screen avec 10 000 gouttes était une blague :F
Revenir en haut
Visiter le site web du posteur
sriden
Administrateur


Inscrit le: 22 Juil 2011
Messages: 14 602

MessagePosté le: Mer 24 Aoû - 23:45 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Sympa la neige, ça rappelle un peu celle sur Oniro mais en moins chiant. :porte

Citation:
"Bienvenue à Rennes"


HA JE RIS, vous restez toujours dans l'ombre du havre sauf en mai. :8X


 
Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Mar 4 Oct - 19:07 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Je déterre un truc vieux à l'occasion d'une réflexion personnelle que je me suis faite hier : une mesure des performances de Kujira no Java.

Instancier l'écran noir : 15% +
Charger le tileset : 0,01%
Dessiner la partie inférieure du décor : 31,09%
Exécuter les commandes event : 10,16% +++
-----------------------------------------------------------------------------------
(j) Déplacer les events : 0,58%
(j) Calculer la frame d'animation des events : 0,03%
(j) Dessiner les hitboxes (temporaire) : 0,26%
(j) Dessiner les events : 2,42%
Dessiner le décor supérieur : 8,26%
Effet météorologique : 13,85% ++
Brouillard : 12,18% ++
Images : 5,29% +
Messages : 0,83%
Supprimer des events : 0,03%

En rouge, ce qui coûte le plus de temps de calcul, et donc ce qu'il faut améliorer en priorité (si possible !).
Actuellement, toutes ces étapes sont exécutées dans l'ordre, et on espère que l'ensemble de ces étapes durera moins de 30 millisecondes, car c'est la durée d'affichage d'une frame et donc le temps disponible pour calculer la frame suivante.
Pour l'instant mes maps de test sont simples donc je ne dépasse quasiment jamais les 30 millisecondes, mais un dépassement sera ressenti par le joueur comme un freeze. Donc il ne faut pas que ça arrive. J'ai noté par un + les étapes qui parfois font freezer la frame, même si ça reste imperceptible par le joueur.
Dans la majorité des cas, l'ordinateur termine son calcul bien avant les 30 millisecondes imparties, et attend donc les millisecondes restantes pour s'enquérir de l'appui sur les touches par le joueur et calculer la frame suivante.

Personnellement, je trouve ces données très intéressantes. On voit ce qui est difficile à calculer pour l'ordinateur. C'est en priorité à ces endroits qu'il faut réfléchir à un algorithme plus économe, plus performant, à des cas où on peut simplifier le calcul...
Par exemple, on voit qu'assembler les tiles du tileset pour constituer le décor est très coûteux.

Durée relative des étapes de calcul :


L'idée que j'ai eue hier est vraiment très utile et pourtant extrêmement simple, je me demande pourquoi je ne l'ai pas eue avant !
Il s'agit de ne pas attendre les millisecondes restantes lorsque l'ordinateur a fini son calcul en avance ! Si l'ordinateur termine le calcul d'une frame plus tôt que prévu, il peut d'ors et déjà commencer à calculer la frame suivante jusqu'à la ligne en pointillés, c'est-à-dire, avant le déplacement des évènements (dont le héros fait partie). On ne peut pas calculer le déplacement des évènements immédiatement car on a besoin de connaître l'appui sur le clavier du joueur à la frame suivante ; on ne connaîtra cette info que dans le futur, il faut donc attendre.
Et quelle joie de constater que les étapes les plus critiques en terme de temps de calcul se situent avant la ligne pointillée.

En fait, on pourrait même aller encore plus loin, et calculer en avance tout ce qui ne nécessite pas le joueur, c'est-à-dire toutes les étapes qui ne sont pas précédées par un (j) : décor sup, brouillard, effets météo etc.


On pourrait se dire que si jamais on a le temps de calculer deux frames en moins de 30ms et qu'il nous reste encore du temps, on pourrait commencer à calculer la frame encore après, mais malheureusement ce n'est pas possible.
En effet, le calcul des étapes sans (j) de cette frame "n+2" nécessite l'exécution des commandes events, hors les pages events peuvent se déclencher au contact, et on ne saura si les events sont en contact ou pas que lorsqu'on aura calculé les déplacements des events de la frame "n+1", et pour cela on doit attendre le joueur. Idem pour les images, le brouillard et la météo, car ils sont déclenchés par les commandes events.

Je me contenterai donc de calculer la frame "n+1" en avance.



Pour info, actuellement, calculer une frame prend à l'ordinateur en moyenne 5ms. On est donc bien en dessous des 30ms de confort.
Mais ce qui m'intéresse, c'est le freeze.

Durées de calcul des frames :

En général, les frames ne prennent que 3ms ou 4ms à être calculées.

La colonne 15 comptabilise les frames qui ont pris un temps de calcul de 15 millisecondes et plus, dont notamment 4 temps de 100ms. Ces temps ont lieu lors du changement (et donc chargement) de map, or comme il y aura un fondu noir, je m'en fiche :F

Revenir en haut
Visiter le site web du posteur
sriden
Administrateur


Inscrit le: 22 Juil 2011
Messages: 14 602

MessagePosté le: Mer 5 Oct - 07:08 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Ça a l'air bien rodé. Pourquoi l'assemblage de tiles du tileset pour constituer le décor est quelque chose à calculer à chaque instant, et non seulement une fois lors du changement de map ? :fgr

 
Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Mer 5 Oct - 08:55 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

C'est le cas. Cette étape prend beaucoup de temps la première fois, et quasiment rien ensuite, puis qu'il s'agit alors de superposer un décor déjà construit.
Mais ça prend tellement de temps la première fois qu'en moyenne on dirait que ça consomme beaucoup.

:m~
Revenir en haut
Visiter le site web du posteur
sriden
Administrateur


Inscrit le: 22 Juil 2011
Messages: 14 602

MessagePosté le: Mer 5 Oct - 17:48 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Écrans de chargement ftw :m~

 
Revenir en haut
Roi of the Suisse
Vétéran


Inscrit le: 27 Juil 2011
Messages: 7 826

MessagePosté le: Jeu 27 Oct - 06:46 (2016)    Sujet du message: Kujira no Caca - chapitre 5 en cours Répondre en citant

Autotiles fixes dans Kujira no Java:



Un extrait de code pour expliquer le principe :

Code:
      //quart haut-gauche du carreau
      if (connexionHaut) {
         if (connexionGauche) {
            if (connexionHautGauche) {
               if (connexionDroite) {
                  if (connexionBas) {
                     xMorceauChoisi = X_PLEIN_HAUT_GAUCHE;
                     yMorceauChoisi = Y_PLEIN_HAUT_GAUCHE;
                  } else {
                     xMorceauChoisi = X_PLEIN_HAUT_GAUCHE_VIDE_A_DROITE;
                     yMorceauChoisi = Y_PLEIN_HAUT_GAUCHE_VIDE_A_DROITE;
                  }
               } else {
                  if (connexionBas) {
                     xMorceauChoisi = X_PLEIN_HAUT_GAUCHE_VIDE_EN_BAS;
                     yMorceauChoisi = Y_PLEIN_HAUT_GAUCHE_VIDE_EN_BAS;
                  } else {
                     xMorceauChoisi = X_PLEIN_HAUT_GAUCHE_VIDE_EN_BAS_ET_A_DROITE;
                     yMorceauChoisi = Y_PLEIN_HAUT_GAUCHE_VIDE_EN_BAS_ET_A_DROITE;
                  }
               }
            } else {
               xMorceauChoisi = X_COIN_RENTRANT_HAUT_GAUCHE;
               yMorceauChoisi = Y_COIN_RENTRANT_HAUT_GAUCHE;
            }
         } else {
            if (connexionBas) {
               xMorceauChoisi = X_BORD_VERTICAL_HAUT_GAUCHE_LOIN_D_UN_COIN;
               yMorceauChoisi = Y_BORD_VERTICAL_HAUT_GAUCHE_LOIN_D_UN_COIN;
            } else {
               xMorceauChoisi = X_BORD_VERTICAL_HAUT_GAUCHE_PRES_D_UN_COIN;
               yMorceauChoisi = Y_BORD_VERTICAL_HAUT_GAUCHE_PRES_D_UN_COIN;
            }
           
         }
      } else {
         if (connexionGauche) {
            if (connexionDroite) {
               xMorceauChoisi = X_BORD_HORIZONTAL_HAUT_GAUCHE_LOIN_D_UN_COIN;
               yMorceauChoisi = Y_BORD_HORIZONTAL_HAUT_GAUCHE_LOIN_D_UN_COIN;
            } else {
               xMorceauChoisi = X_BORD_HORIZONTAL_HAUT_GAUCHE_PRES_D_UN_COIN;
               yMorceauChoisi = Y_BORD_HORIZONTAL_HAUT_GAUCHE_PRES_D_UN_COIN;
            }
           
         } else {
            xMorceauChoisi = X_COIN_SORTANT_HAUT_GAUCHE;
            yMorceauChoisi = Y_COIN_SORTANT_HAUT_GAUCHE;
         }
      }
      g2d.drawImage(this.image, 0, 0, TAILLE_MORCEAU, TAILLE_MORCEAU,
            xMorceauChoisi*TAILLE_MORCEAU, yMorceauChoisi*TAILLE_MORCEAU,
            (xMorceauChoisi+1)*TAILLE_MORCEAU, (yMorceauChoisi+1)*TAILLE_MORCEAU, null);



Bientôt les autotiles animés :m~

Revenir en haut
Visiter le site web du posteur
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 12:04 (2017)    Sujet du message: Kujira no Caca - chapitre 5 en cours

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    FAMAS Index du Forum -> Section Corvées -> Stand de tir Toutes les heures sont au format GMT + 1 Heure
Aller à la page: <  1, 2, 370, 71, 7281, 82, 83  >
Page 71 sur 83

 
Sauter vers:  

Index | creer un forum gratuit | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com