Librairie C pour les jeux

13 sujets de 1 à 13 (sur un total de 13)

  • lexomil

      #358383

      Bonjour,

      j’essaye de dev une petite librairie C pour faciliter la réalisation de jeux à destination des confs “high end” on va dire (68060/68080 et RTG), je test principalement sur V4 et UAE mais si je pouvais avoir le retour de personnes qui possèdent des confs type 68060+RTG ça m’aiderait à stabiliser la lib. ça doit pouvoir aussi fonctionner sur Mister mais j’ai peur que ça soit un peu lent pour certaines démo. Et puis si vous êtes juste curieux vous pouvez aussi y jeter un oeil, c’est à récupérer là http://flabrador.free.fr/lexo/amiga/files/gamelib.zip .

      Merci, bon dimanche

      __sam__

        #358399

        Merci du partage!

        Messieurs les codeurs, à vous de tirer^w heu non…
        … a vous d’en tirer parti.

        Samuel.

        Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
        A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
        A500 Vampire V2+ ^8^ 🙂
        (mais aussi TO8, TO8D, TO9. Groupe PULS.)

        kamelito

          #358409

          Il existe 2 ou 3 lib C de ce type avec sources mais une de plus c’est toujours bon à prendre ! 👏

          lexomil

            #358417

            Pour les plus motivés voici une première release de la lib avec quelques exemples, tuto et une mini-doc, ça se trouve là http://flabrador.free.fr/lexo/amiga/files/SAGE_release.zip , dans l’esprit c’est une lib qui ressemble un peu à SDL mais sans la couche d’abstraction car uniquement destinée à l’Amiga, les fonctions de sprite tirent partie de l’AMMX si il est présent.

            cclecle

              #358418

              Super initiative, ça permet de coder un jeu ou une appli qui utilisera selon ce qui est disponible AGA, SAGA ou RTG (=CPU) ?

              A600 + 604n + RTC + Vampire V2 600, Coffin R54 / wb3.1.4.1
              A1200 + Vampire V2 1200, wb3.1.4.1

              lexomil

                #358430

                Pour le moment RTG/SAGA uniquement, peut être que j’ajouterai un mode AGA mais à ce moment là uniquement 8bits.

                cclecle

                  #358435

                  Ok, je n’ai jamais codé en bare-metal sur Amiga donc je ne connais pas exactement les limites, mais SAGA = AGA++ non ? Donc si on code en SAGA en respectant les limites AGA ça ne reste pas compatible ?

                  En tout cas c’est cool car ça permet de coder un truc qui tourne sur Vampire en HW et sur le reste en SW, donc surement plus lentement mais surement assez rapidement sur UAE/MorphOS/OS4.

                  A600 + 604n + RTC + Vampire V2 600, Coffin R54 / wb3.1.4.1
                  A1200 + Vampire V2 1200, wb3.1.4.1

                  __sam__

                    #358436

                    C’est pas vraiment en HW sur la vamp (ya pas de GPU), mais du SW quoi qu’on fasse, mais avec des instructions SIMD entières (ammx).

                    Attention aussi au CORE de votre Vamp, car chez moi ca marche pas bien (core 2.12 IIRC). Sans doute que la variabilité des implementations et des cores joue dans le résultat. Ca a été vérifié sur le core de la V4.

                    En principe, il me semble qu’on peut ouvrir la vampire.resource et en fonction du numéro de version savoir si on tourne sur un matériel supporté complètement ou partiellement (exemple).

                    Concernant sAGA = AGA++, oui mais non. Déja SAGA connait un mode RTG, et d’autre part le flipping d’écran sur SAGA se fait différemment de ce qu’on ferait en AGA. Donc programmer sAGA dans les limite de l’AGA n’a pas trop de sens je pense.. ou du moins cela veut dire programmer en AGA, donc planar et se taper un bon vieux C2P des familles . Heureusement l’AMMX a des instructions C2P intégrées pour ne pas trop pénaliser le planar (je les utilise par exemple dans mon quake pour faire un affichage OCS/ECS (ham) pour ceux qui sont allergiques au RTG).

                    Samuel.

                    Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
                    A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
                    A500 Vampire V2+ ^8^ 🙂
                    (mais aussi TO8, TO8D, TO9. Groupe PULS.)

                    lexomil

                      #358479

                      Bonjour,

                      comme le dit sam cette lib n’est pas faite pour supporter l’AGA mais uniquement le RTG, elle doit cependant tourner sur tout type d’Amiga 68K, ou sans doute en mode émulation sur OS4 ou MorphOS (à tester si il y’a des volontaires).
                      Si tu veux une lib orienté jeux AGA je penses que le scorpion engine est bien plus adapté à ce besoin.

                      AmiDARK

                        #358482

                        __Sam__ :
                        Si je me souviens bien de mes discussions avec Gunnar sur la V4 (car j’en ai une qui m’a été fournie pour dev. l’Amos Professional Unity dessus), il est prévu que le Chunky et le PIP puissent être intégrés dans une gestion copper list.

                        En ce sens, on peut programmer le Chunky et le PIP de la même manière qu’on coderait de l’ECS/OCS ou de l’AGA tout en bénéficiant des fonctionnalités de ces modes … Et sans passer par les routines Chunky2Planar …

                        Je devrais bientôt le vérifier étant donné que le dev. de l’AGA touche bientôt à sa fin (les rainbows restent à finir, puisse je passe au SAGA).

                        Sinon @Lexomil : C’est dommage que tu limites ta librairie à de l’ECS/OCS et n’implémente pas l’AGA. Enfin, ce n’est que mon point de vue, le moteur Scorpion étant pour moi autre chose que ce que tu fais.

                        lexomil

                          #358483

                          Alors je penses qu’il y’a confusion, cette librairie ne supporte que le RTG (CGX/P96), c’est plus orienté pour du dev de jeux, disons, “high end” et donc pour ce genre de machines (060/080+carte graphique).

                          __sam__

                            #358487

                            @AmiDark: prévu oui.. mais pour l’instant le registre d’implantation de la mémoire RTG n’est latché qu’une fois par frame, et donc il est impossible d’afficher plusieurs écrans RTG/résolution sur la même frame.

                            Le RTG est, pour l’instant, encore assez “monolithique” au sens où on peut pas changer de pointeur ou résolution en cours de ligne (enfin on peut changer, mais ca n’est pris en compte que bien plus tard si je ne m’abuse). C’est dommage ca permettrait de “dragger” les écrans RTG comme on le fait avec les écrans OCS/ECS/AGA. Ca viendra “plus tard”.

                            Samuel.

                            Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
                            A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
                            A500 Vampire V2+ ^8^ 🙂
                            (mais aussi TO8, TO8D, TO9. Groupe PULS.)

                            cclecle

                              #358494

                              Du coup, qu’est-ce que ta lib fait de plus qu’un RTGMaster ?

                              A600 + 604n + RTC + Vampire V2 600, Coffin R54 / wb3.1.4.1
                              A1200 + Vampire V2 1200, wb3.1.4.1

                            13 sujets de 1 à 13 (sur un total de 13)

                            • Vous devez être connecté pour répondre à ce sujet.

                            Forums AmigaOS, MorphOS et AROS Développement Librairie C pour les jeux

                            Amiga Impact