blitter ocs vs aga

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

  • Fred

      #337698

       

      Bonjour.

      La semaine derniere j’ai essayé fsuae pour voir ce que ca vallait. En jouant à Hybris je me suis demandé s’il serait possible de programmer un jeu similaire en AMOS.
      J’ai donc fait quelques bidouilles en AMOS pour essayer de manipuler des bobs (blitter objects). Il semblerait qu’AMOS (sur winuae) soit capable de deplacer un bob 32 couleurs de 64×100 sans saccades.
      Je me suis amusé à faire le même test, toujours sur winUAE, mais en configuration Amiga 1200 (68020 + AGA). Dans cette configuration, je peux deplacer un bob 32 couleurs de 64X160 sans saccades. Au delà ca merdouille.

      Du coup je suis surpris par les performance du blitter de l’AGA qui semblerait être environ 1,5 fois plus rapide (rien d’extra quoi…)

      D’ou ma question : le blitter AGA est il juste un peu plus performant que celui de l’OCS ? ou est ce dû à AMOS ?
      Je ne pense pas que cela ne vienne du PC et qu’il est peu probable que cela vienne de WinUAE. Car si je configure le blitter comme un coprocesseur custom, j’obtiens une animation sans saccades avec un bob de 256×256.

      votre avis ?

      __sam__

        #337699

        Le blitter AGA marche à la même vitesse que l’OCS. Seul le cpu plus rapide fait une petite différence sur sa vitesse programmation et le fait qu’un pseudo mode rafale pour accéder à la chip fait gagner quelques cycles. Mais rien d’extraordinaire. C’est toujours du 16bits à 7mhz comme sur OCS. Cf la réponse sur ce fil: https://www.amigaimpact.org/forums/topic/news-sur-la-vampire/page/58/#post-336490

        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.)

        Fred

          #337702

          Super, merci pour l’info.

          logo

            #337703

            Le blitter de l’OCS tourne à 3.5 Mhz.

            Agnus

            PowerMac - G5 2.0 GHz - 1.7 Go RAM - Radeon 9600P 128 Mo - MorphOs 3.13 et Peg2 - G4 RIP
            Mac mini - G4 1.42 GHz - 1 Go RAM - Radeon 9200 32 Mo - MorphOs 3.9
            WinUAE sur HP Core2 Quad 8200
            Epave de Mist FPGA remplacé par un Sidi
            A1200 malade 😉 et A500 512+512Ko RAM Kickstart 1.3

            Treesong

              #337704

              Bonjour,

              J’ai fait un petit test et je confirme que sous Amos avec Winuae calibré comme un vrai 500, on arrive bien à avoir 50 fps avec un bob de 64×100 : (si l’image ne s’affiche pas, bouton droit -> afficher image dans un autre onglet)

              amos bob

              En pièce jointe, j’ai mis le code. Remplacer l’image par une autre image de votre choix

              Pour ce qui est de la faisabilité d’un shmup en Amos, sur Amiga 500, c’est possible mais il faut s’employer. Faisable quand même et amusant à faire.

              Actuellement, je travaille un petit truc dans le genre:

              http://eab.abime.net/showthread.php?t=98447

              Attachments:

              Fred

                #337722

                1/ Au dela de 64×105 ca commence à saccader chez moi.

                2/ Je rajoute des sprites partout pour voir jusqu’à quel point je reste à 50 fps. Je peux avoir 8 sprites de 16×126 en 4 couleurs. Mais je dois reduire la taille du bob à 64×56…

                3/ Ton “petit truc du genre” est carrément impressionnant !!!

                Treesong

                  #337731

                  Merci Fred pour le compliment. On verra ce que cela donnera à la fin.

                  Concernant les sprites, si tu essayes de faire un scrolling (par exemple en utilisant screen offset), tu vas constater que plusieurs sprites disparaissent. Amos ne gère pas bien les sprites et le scroll.

                  Je ne sais pas si tu l’as déjà fait dans ton test: au cas où ce ne soit pas le cas, tu peux utiliser la commande set sprite buffer en début de programme pour augmenter la taille (par exemple set sprite buffer 256). Tu devrais donc pouvoir avoir des sprites assez balaises. En conclusion, Amos permet d’avoir de très bons résultats sur un écran fixe même en 32 couleurs et avec une bonne dimension (320×200 au moins). Dommage qu’un gars ou une équipe ne veuille pas se lancer dans ce type de jeu (écran fixe), car il y a du potentiel (type puzzle ou encore plateforme à la bubble bobble ou autre pang ou encore type another world ou flash back). Cela ne t’interesse pas ? 😉

                  Aghnar

                  Amitoo

                    #337739

                    En fait sous AGA, en gros, le blitter est là pour la compatibilité. Il est plus rapide tout faire au cpu en 32 bits.

                    A500+ / A1200 / CD32 et... Jaguar

                    logo

                      #337752

                      Sur un A1200 de base sans mémoire Fast, c’est discutable. Il peut faire gagner de précieux cycles CPU. Sur un A1200 accéléré, c’est tout à fait ça.

                      PowerMac - G5 2.0 GHz - 1.7 Go RAM - Radeon 9600P 128 Mo - MorphOs 3.13 et Peg2 - G4 RIP
                      Mac mini - G4 1.42 GHz - 1 Go RAM - Radeon 9200 32 Mo - MorphOs 3.9
                      WinUAE sur HP Core2 Quad 8200
                      Epave de Mist FPGA remplacé par un Sidi
                      A1200 malade 😉 et A500 512+512Ko RAM Kickstart 1.3

                      Fred

                        #337796

                        @treesong : set sprite buffer a résolu mes limitations de tailles de sprites. MERCI !

                        Les tests que j’avais réalisé comportaient déjà un scrolling vertical :
                        J’ai un écran de largeur 256 et de hauteur 544. Je copie des blocks de 16×16 “au dessus et au dessous” de la partie visible (256×256). quand j’arrive en haut de mon écran virtuel, je le déplace tout en bas. Comme les images correspondes on a l’impression d’un défilement infini.

                        Je déplace l’écran d’1 pixel à 25 fps (ce qui correspond au déplacement dans le jeu hybris). Je n’ai aucun ralentissement si je déplace d’1 pixel toutes les 50 images secondes. Dans ce cas je suis obligé de copier 4 blocs de 16×16, mais cela ne semble pas effrayer le blitter. Le scrolling est alors 2x plus rapide.

                        J’utilise des sprites 4 couleurs (3 + transparence)
                        Je vais essayer de voir ce qu’il se passe avec des sprites (16 couleurs)

                         

                        Treesong

                          #337804

                          @Fred

                          Super. C’est effectivement la bonne solution pour un scroll vertical infini sous Amos.

                          Remarque au cas où: 256 c’est le plein écran PAL. C’est 200 pour le Ntsc. L’overscan vertical pour le Ntsc est je crois environ 224. A garder en tête si l’on veut que la terre entière puisse s’amuser 🙂

                          Dis moi si tu veux bien ce que tu as comme vitesse avec quelques bobs et sprites sur une conf A500 (ou A1200 si c’est ce que tu vises comme machines).

                          A+

                          Fred

                            #337917

                            @Treesong : J’ai donc étendu le programme de test à 4 sprites 16×224 et un bob 64×56 avec un scrolling vertival (4 bitplanes) sur un ecran 32 couleurs. Cela tourne en 50 fps sur un winuae “amiga 500”

                            J’ai bien noté ta remarque, j’y prendrait garde lors de la programmation.

                            Merci pour tes conseils

                            Maintenant il me faut m’exercer un peu à deluxe paint pour avoir un “vrai” décors et de véritables sprites…

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

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

                          Forums AmigaOS, MorphOS et AROS Développement blitter ocs vs aga

                          Amiga Impact