Partage
  • Partager sur Facebook
  • Partager sur Twitter

Quel langage?

Visual Novel

    18 septembre 2019 à 14:10:45

    Bonjour, 

    J'ai commencé à coder un petit visual novel en Python, avec le module Pygame.

    J'arrive à faire exactement ce que je veux, mais c'est beaucoup trop lent à l'affichage. Pygame est rapide quand il s'agit de petites images, mais comme j'utilise de très grosses images, il y a beaucoup de latence.

    Je pense donc à changer de langage. (Sauf si quelqu'un a une idée pour accélérer l'affichage).

    Je connais déjà le C++ et il est prévu que j'apprenne le Java cette année.

    Est-ce que quelqu'un a une suggestion ?

    • Partager sur Facebook
    • Partager sur Twitter
      18 septembre 2019 à 16:26:31

      Salut

      Tu devrais poster sur le forum Python avec le code source pour qu'on voit si on peut améliorer le programme. Peut-être qu'une amélioration coûtera moins chère en temps qu'apprendre un nouveau langage.

      Sans code, difficile de répondre, mais, déjà, quelle est ta méthode d'affichage :

      1/ Tu construis toutes les images dès la mise en place, puis, tu affiches/caches ce qui est nécessaire ? Méthode lourde en poids, mais rapide pour afficher/cacher les images.

      2/ Tu construis les images dont tu as besoin puis tu les détruis quand tu ne les veux plus même si elles peuvent revenir plus tard ? Méthode légère en poids (on ne prend que les images nécessaires), mais lent pour afficher (construire) les images.

      Si tu réponds 2, tu peux déjà essayer la première méthode. Et si tu as un poids total très élevé, tu peux créer une base de données pour toutes tes images, et une base de données plus petite qui fera office de cache dans la mémoire RAM avec les 20 images les plus utilisées par exemple. Je crois que c'est possible avec sqlite3.

      -
      Edité par Le Cobriste 128 18 septembre 2019 à 16:32:19

      • Partager sur Facebook
      • Partager sur Twitter
        19 septembre 2019 à 15:14:54

        D'accord, merci du conseil.

        J'ai effectué des tests dans lesquels je créé les images au début du programme, et je les affiches successivement, sans aucun traitement, juste de l'affichage, et ça reste trop lent.

        En gros, j'ai quatre images à afficher continuellement :

        1)L'image de fond, qui fait tout l'écran.

        2)Le personnage qui parle. (Facilement un tiers de l'écran).

        3)Le personnage qui écoute. (De même)

        4)La boite de dialogue. (Qui fait aussi bien un tiers de l'écran).

        Dans le visual novel chaque image est différente à chaque affichage, donc obligation de tout réafficher.

        Et dans le test, rien qu'en affichant quatre images en boucle, la latence est trop importante. 

        • Partager sur Facebook
        • Partager sur Twitter
          19 septembre 2019 à 15:25:09

          Salut

          Sans ton code, on pourra pas dire, mais, pourquoi tu ne crées pas des patrons (templates) ? D'abord, toutes les images de fond construites, puis tu superposes des cadres ou sprites je crois qu'on dit, un pour le perso 1, un autre pour le 2, encore un pour la zone de dialogue que tu auras construits en amont. Cadres que tu rends transparents pour qu'ils se fondent à l'image de fond.

          Ça reste quand même étonnant que 4 images te fassent une grosse latence. Tu as regardé les tutos de Dan737 ?

          • Partager sur Facebook
          • Partager sur Twitter
            19 septembre 2019 à 16:54:06

            Si tu veux faire des jeux plus complexes qui demandent plus de performances, je te conseille de te diriger vers =>

            C++ avec l'engin Unreal Engine

            C# avec Unity

            Ce sont les deux plus gros engins de jeux, mais comme Cobriste a dit, tu peux aller sur le forum Python et déposer ton code source, il y aura des gens pour aider

            • Partager sur Facebook
            • Partager sur Twitter

            "I believe in two things. Discipline and the Bible." The Shawshank Redemption

              19 septembre 2019 à 22:20:17

              Ce que tu peux faire comme tu connais C++, c'est de coder le programme en C++ mais, exactement avec la même algorithme que tu utilises avec Python. Et je pense que tu auras les lags quand même.

              C'est absolument pas normal les lags comme j'ai dit dans la dernière phrase de mon précédent message.

              Pour moi, il y a une couille dans ton algo.

              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                26 septembre 2019 à 20:34:59

                Sinon il y a Renpy pour les visuals novels.
                • Partager sur Facebook
                • Partager sur Twitter

                Quel langage?

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown