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

Lazarus Pascal Discussion :

Librairie 2D pour coder un jeu ? [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut Librairie 2D pour coder un jeu ?
    Bonjour,
    Je suis à la recherche d'une (ou plusieurs) librairies permettant de coder facilement des applications 2D (pour faire un jeu). Le peu de documentation de lazarus à ce sujet ne m'a pas fourni de réponse claire, excepté l'utilisation d'openGL, mais j'ai pas encore réussi à l'utiliser (le tuto est difficile à suivre).
    Quelqu'un pourrait-il me fournir des exemples de librairies ? Merci !

  2. #2
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Je viens de découvrir que la SDL est compatible avec freepascal (http://sdl4fp.sourceforge.net/), mais je n'arrive pas à la compiler

  3. #3
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    Je na sais pas si tu es sous windows ou Linux mais perso je n'ai rien compilé : j'ai téléchargé la Jedi_SDL qui était sur le site avec l'installeur puis j'ai suivi les instructions (ça se met dans le répertoire de FP). J'ai ensuite compilé un ou deux petits programmes de test. J'aai pas fait plus pour l'instant parce que j'ai eu d'autres projets mais je vais m'y remettre d'ici quelques mois.
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  4. #4
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Je suis souw windows, et j'ai réussi à faire quelques trucs avec "sdl4fp" mais ça bug beaucoup...
    Y'a pas une librairie plus adaptée pour lazarus ?

  5. #5
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    J'ai téléchargé la bibliothèque Jedi_sdl puis je l'ai installée. Ensuite j'ai copié les unités SDL dans le répertoire fpc\2.20\units\i386-win32\ en prenant soin d'enlever tous les sous-répertoires pour que le compilo trouve les unités. Par exemple dans le répertoire SDL, il y a un sous-répertoire "PAS" que j'ai vidé (il contient tout ce qui est nécessaire) et dont j'ai remonté le contenu dans SDL. Il faut faire ça pour toutesles unités.

    Après, ce petit programme de test fonctionne très bien. :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    PROGRAM test_SDL;
    USES SDL;
     
    BEGIN
     
    SDL_INIT(SDL_INIT_VIDEO);
     
    END.


    *********** EDIT **********

    J'ai poussé un peu plus les tests en initialisant la surface etc. : ce petit test fonctionne aussi très bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Program Test_SDL_3;
     
    Uses SDL;
     
    var    
        screen_ : PSDL_Surface;
    begin
        // Initialize the SDL library 
        if ( SDL_Init(SDL_INIT_VIDEO) < 0 ) then
        begin
     
            writeln('Probleme : Couldn''t initialize SDL : %s',  SDL_GetError( ));
     
            // Clean up on exit
            SDL_Quit;
            readln;
            exit;
        end;
     
        (*
         * Initialize the display in a 640x480 8-bit palettized mode,
         * requesting a software surface
         *)
        screen_ := SDL_SetVideoMode(640, 480, 8, SDL_SWSURFACE);
        if ( screen_ = nil ) then
        begin
     
            writeln(' Probleme : Couldn''t set 840x480x8 video mode : %s', SDL_GetError( ));
            SDL_Quit;
            readln;
            exit;
        end;
        readln;
    end. (* program Test_SDL_3 *)
    Il est tiré de la doc avec quelques modifs puisque je n'utilise pas Lazarus (pas de MessageBox, etc. ...) Dis-moi où est ton problème si je peux t'aider.

    Je précise que je code uniquement en freepascal pour la SDL et que j'utilise l'éditeur SCite que je trouve plus pratique mais c'est personnel.
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  6. #6
    Membre averti

    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Points : 395
    Points
    395
    Par défaut
    Bonjour

    j'avais trouvé ça pour l'install que j'ai utilisé pour linux
    http://www.pascalgamedevelopment.com...?p=29039#29039 mais en anglais.
    j'étais en train de le réécrire en français avec un exemple faudrait que je finisse ou plutot que je traduise le wiki

    pour compiler avec lazarus, il faut utiliser le mode delphi
    Lazarus 0.9.30-4 et FPC 2.4.4
    on
    debian Lenny i386
    debian Lenny amd64
    Ubuntu 10.04 i386
    Ubuntu 10.04 amd64
    MacOSX panther (10.5.8)
    Window 7 32 bits

  7. #7
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Merci Richard, je vais voir tout ça (j'avais même pas vu la doc sur la sdl sur lazarus )

  8. #8
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    Si tu codes avec l'éditeur de Lazarus tu n'as pas besoin remonter les répertoires "PAS" mais il faut que tu déclares le chemin des unités SDL car par défaut elles sont déclarés dans le répertoire \SDL ou \SDL_BIDULE et il faut déclarer \SDL\PAS ou SDL_BIDULE\PAS . C'est expliqué dans la doc de la page "JEDI SDL".

    Il y a également quelques bons tutoriaux sur la page "FreePascal meets SDL": http://userpage.fu-berlin.de/~molski/fpsdl/
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  9. #9
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Alors j'ai installé la SDL comme décrit dans le lien de pomalo (c'est à dire mettre les chemins des unités dans les options du compilateur), mais on me retourne l'erreur "cannor find -ISDL"..."Error while linking" en compilant ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    program project1;
     
    uses
      sdl;
     
    begin
    end.
    En gros j'ai téléchargé et extrait le dossier jedi-sdlv1.0, puis j'ai fait options du compilateur => autres fichiers unité et là j'ai mis le chemin vers les différents dossiers du dossier principal.

  10. #10
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    tu as un problème de chemin. Essaie de copier juste le répertoire SDL et de le mettre dans le répertoire Units de FPC (de mémoire , je ne suis pas sur ma bécane, ça doit être quelque chose comme C\lazarus\FPC\2.2.0\I386_...\Units vérifie) puis fais la manip que je t'ai donnée : tu vides le sous-répertoire \PAS présent dans \SDL et tu le copies dans \SDL.

    Ensuite essaie de compiler ton test.

    Sur mon PC ça marche aussi avec l'éditeur Scite que j'ai configuré pour FreePascal et avec Lazarus aussi (mode console ou programme non GUI) grâce à cette manip. Les chemins c'est assez pénible à gérer de toute façon.
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  11. #11
    Membre averti

    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Points : 395
    Points
    395
    Par défaut
    bonjour

    peut être faut il indiquer le chemin vers tes librairies (fichier dll de sdl) dans les options du compilateur dans la zone "Librairies (-Fi)"


    claude
    Lazarus 0.9.30-4 et FPC 2.4.4
    on
    debian Lenny i386
    debian Lenny amd64
    Ubuntu 10.04 i386
    Ubuntu 10.04 amd64
    MacOSX panther (10.5.8)
    Window 7 32 bits

  12. #12
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Je suis pas non plus sur ma bécane, je suis sous linux et j'ai pas accès au dossier d'install de lazarus (réseau scolaire) !
    Mais je vais essayer ça sur mon ordi, ça devrait marcher. Par contre j'espère que je trouverai le moyen de faire marcher mon programme sur linux, parce que c'est un des critères de notation pour le programme... (parce que oui, je suis noté ^^ )

  13. #13
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    Citation Envoyé par pomalo Voir le message
    bonjour

    peut être faut il indiquer le chemin vers tes librairies (fichier dll de sdl) dans les options du compilateur dans la zone "Librairies (-Fi)"


    claude
    Peut-être me trompé-je mais je ne pense pas que ce soit le problème dans ce cas particulier car il a une erreur au linking cela veut donc dire que le linker ne trouve pas les unités. Or la dll n'est utilisée qu'à l'exécution a priori.
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  14. #14
    Membre averti

    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 63
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Points : 395
    Points
    395
    Par défaut
    Citation Envoyé par Nanocom Voir le message
    Je suis pas non plus sur ma bécane, je suis sous linux et j'ai pas accès au dossier d'install de lazarus (réseau scolaire) !
    Mais je vais essayer ça sur mon ordi, ça devrait marcher. Par contre j'espère que je trouverai le moyen de faire marcher mon programme sur linux, parce que c'est un des critères de notation pour le programme... (parce que oui, je suis noté ^^ )
    Pour compiler sous linux, il faut que les librairies de développement soit installé (libsdlxx-dev et autre pour du debian like )
    pour l'exécution tu n'en a pas besoin.
    Lazarus 0.9.30-4 et FPC 2.4.4
    on
    debian Lenny i386
    debian Lenny amd64
    Ubuntu 10.04 i386
    Ubuntu 10.04 amd64
    MacOSX panther (10.5.8)
    Window 7 32 bits

  15. #15
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Ok, merci pour vos réponses.
    Je suis en train d'essayer de linker la SDL sous windows là, j'espère que ça va marcher

  16. #16
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Bon, ça a l'air de marcher sous windows, mais c'est buggé : lorsque je compile n'importe quel programme des tutoriels de ce site : http://userpage.fu-berlin.de/~molski/fpsdl/ le programme s'éxécute bien mais le processeur est utilisé à 100% et pas moyen de l'arrêter, je suis obligé de fermer les processus dans le gestionnaire des tâches. Rien qu'un petit programme ouvrant une fenêtre SDL ralentit considérablement l'ordi et pas moyen de le fermer... Que faire ?

    Edit : A vrai dire, je crois en fait que c'est mon lazarus qui bug...

  17. #17
    Membre du Club

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Points : 53
    Points
    53
    Par défaut
    Moi j'utilise (sans problème) la JEDI qui est MAJ régulièrement.
    ici http://sourceforge.net/project/showf...kage_id=256541

  18. #18
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Je confirme, c'est mon lazarus qui bug, le moindre petit programme prend tout le processeur et a vraiment du mal à se fermer... Ca me le faisait pas avant !

  19. #19
    Membre éclairé
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 474
    Points : 772
    Points
    772
    Par défaut
    Tu devrais essayer d'utiliser seulement free Pascal avec le bloc notes ou un éditeur évolué type SCite , notepad++, etc. Tu définis toi-même les chemins et tu vois si tu reproduis le bug.
    "Software is getting slower more rapidly than hardware becomes faster." Niklaus Wirth
    https://pharo.org/web
    https://faust.grame.fr/

  20. #20
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Janvier 2009
    Messages : 38
    Points : 31
    Points
    31
    Par défaut
    Euh, et comment on fait au juste pour juste utiliser freePascal ? Parce que c'est vrai qu'en fait Lazarus ne m'est d'aucune utilité (je fais pas de formulaires etc).

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [Pygame] Demande d'aide pour coder un jeu
    Par Andromedx dans le forum GUI
    Réponses: 1
    Dernier message: 11/04/2013, 22h27
  2. Librairie simple pour un jeu simple
    Par Montaigne dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 17/08/2011, 10h22
  3. Quelle librairie adopter pour faire un jeu par navigateur ?
    Par Meardon dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 22/10/2008, 17h39
  4. Librairie C++ pour jeu en ligne
    Par jblecanard dans le forum C++
    Réponses: 5
    Dernier message: 13/04/2008, 14h05
  5. Réponses: 7
    Dernier message: 18/06/2003, 15h20

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