IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Pygame ou pas pygame ? [Python 3.X]


Sujet :

Python

  1. #1
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut Pygame ou pas pygame ?
    Bonjour à tous.tes,

    Je suis actuellement sur un des exercices du "Swinnen", un jeux avec des balles.
    Pour le moment j'ai réussit à faire déplacer 3 balles sur le Canevas et qui rebondissent aléatoirement sur les bords.
    Mais je doit faire en sorte qu'elles rebondissent également les unes contre les autres.

    Avant de commencer à chercher, je voudrais juste savoir si je doit utiliser obligatoirement "Pygame" ou si je peu trouver la solution avec les modules à ma disposition dans la distribution d'origine.
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par scalpel Voir le message
    Avant de commencer à chercher, je voudrais juste savoir si je doit utiliser obligatoirement "Pygame" ou si je peu trouver la solution avec les modules à ma disposition dans la distribution d'origine.
    La trajectoire d'une balle est une droite.
    On sait calculer l'intersection de 2 droites.
    Donc on peut "calculer" les collisions entre "disques" qu'ils soient réalisés avec des "oval" du Canvas tkinter ou avec les équivalents d'une autre bibliothèque graphique.
    Là ou une bibliothèque deviendra intéressante, c'est si elle proposait de faire une détection de collision.
    pygame et le canvas tkinter le font de façon limité ('collisions de rectangles) à affiner ensuite.... mais on doit pouvoir s'en sortir par le calcul: la bibliothèque permettra juste d'optimiser (aller plus vite).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut
    Merci beaucoup pour m'avoir mis sur la piste.
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Le Swinnen est un bon tuto. dans le sens où les concepts nécessaires à la résolution d'un exercice ont été présenté dans les chapitres précédents. Donc déjà, se demander si pygame ne serait pas mieux, c'est passez à côté de quelque chose. De même que utiliser autre chose que le calcul pour faire sa détection de collision supposerait ouvrir la documentation du Canvas. Ce qui serait bien mais de toutes façon vous allez devoir calculer quand même, moins souvent. Ce qui consommera moins de ressources sans y changer grand chose.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    ... se demander si pygame ne serait pas mieux, c'est passez à côté de quelque chose ...
    C'était justement ma crainte, c'est pour cela que j'ai posé la question.
    Je n'ai pas encore assez d'expérience pour me sentir capable de trouver la bonne solution. Au vu du temps que j'ai mis à intégrer (par le calcul) les rebonds aléatoires contre les bords du canevas, je me suis dit qu'avec des objets qui se déplacent, ce serait pour moi une mission impossible.

    Mais en deux lignes,

    Citation Envoyé par wiztricks Voir le message
    ... La trajectoire d'une balle est une droite.
    On sait calculer l'intersection de 2 droites ...
    tu m'a directement mis sur la piste d'un calcul que je doit être en mesure de mettre en oeuvre.
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 049
    Points : 1 380
    Points
    1 380
    Par défaut
    C'est quoi le rapport entre la logique et le rendu ? On peut faire rebondir une balle sans Gui.

  7. #7
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut
    Bonjour josmiley,

    C'est sympa de t'intéresser à mon post, mais je ne comprends pas ta question.

    Tout ce que je peu te répondre, c'est que le rendu de mes rebonds actuels n'est vraiment pas terrible.
    Et que j'ai utilisé find_overlapping() pour simuler les rebonds entre balles.
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

  8. #8
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    870
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 870
    Points : 1 522
    Points
    1 522
    Billets dans le blog
    4
    Par défaut
    Bonjour,
    Pour plus de précision, tu pourrais tester (calculer) si la distance entre les centres de deux balles est inférieure ou égale à leur diamètre (je pars sur le principe que les balles sont identiques )
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Developpement pour Android avec Python3/Kivy/Buildozer

  9. #9
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut
    Merci pour l'astuce, je vais essayer ça.
    Mais ce que je n'arrive pas à gérer correctement, c'est le sens des rebonds.
    Comme leurs directions sont élévatoires, parfois ils traversent la balle.
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

  10. #10
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    870
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 870
    Points : 1 522
    Points
    1 522
    Billets dans le blog
    4
    Par défaut
    Le plus simple serait de multiplier le vecteur de déplacement par -1
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Developpement pour Android avec Python3/Kivy/Buildozer

  11. #11
    Membre régulier Avatar de scalpel
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Novembre 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2008
    Messages : 150
    Points : 94
    Points
    94
    Par défaut
    Merci pour la piste
    Débutant en janvier 2024 l'apprentissage d'un langage de programmation et n'étant pas particulièrement doué, soyez indulgents.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Je n'arrive pas a avoir pygame
    Par lan3e dans le forum Général Python
    Réponses: 2
    Dernier message: 03/06/2023, 18h25
  2. [Python 3.X] Pygame ne ferme pas la fenêtre
    Par Segoko dans le forum Général Python
    Réponses: 2
    Dernier message: 25/03/2018, 20h13
  3. [pygame] Je ne comprends pas la mécanique des Mask
    Par Luke spywoker dans le forum Programmation multimédia/Jeux
    Réponses: 5
    Dernier message: 16/07/2012, 23h59
  4. [Pygame] display
    Par duplo dans le forum Programmation multimédia/Jeux
    Réponses: 2
    Dernier message: 17/12/2005, 16h51
  5. [Pygame] sauver de la transparence
    Par Nyx dans le forum Programmation multimédia/Jeux
    Réponses: 2
    Dernier message: 05/02/2005, 22h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo