Forum Graph100

Forum Graph100

Vous n'êtes pas identifié.

Annonce

Bonjour et bienvenue sur le nouveau Forum Graph100 !
L'intégralité des données a été transférée sur un forum PunBB et tout les comptes sont fonctionnels avec le même nom d'utilisateur et mot de passe.
Un wiki est aussi disponible avec le même compte ! N'oubliez pas de remettre votre avatar, bon surf !
Pour plus d'informations, consultez ce post.

#1 26 Aug 2005 16:17:57

KillTiti
Membre
Lieu: Changé (Sarthe)
Date d'inscription: 16 Jul 2005
Messages: 39

Scroling horizontal

Y-a-til un autre moyen pour faire le scrolling horizontal à part pixel par pixel ?

Hors ligne

 

#2 26 Aug 2005 16:44:57

dada66
Membre Communauté Graph100
Lieu: Perpignan
Date d'inscription: 09 Oct 2002
Messages: 1033

Re: Scroling horizontal

mot/mot ou octet/octet smile
Suivant le mode d'affichage que tu as choisi C ou D c plus ou moins facile à coder mais je crois que la lib de Julien entre autres, le font...


Flash100, F100Console, GComm, ... : http://flash100.free.fr/xoops

Hors ligne

 

#3 26 Aug 2005 16:49:35

KillTiti
Membre
Lieu: Changé (Sarthe)
Date d'inscription: 16 Jul 2005
Messages: 39

Re: Scroling horizontal

En horizontal ???
en vertical c'est super simple mais en horizontal ?!?
euh, Julien si t'es là tu peux m'expliquer s'il te plait !

Hors ligne

 

#4 27 Aug 2005 03:55:29

Julien
C++iste convaincu
Lieu: Waterloo (Be)
Date d'inscription: 29 May 2002
Messages: 1456
Site web

Re: Scroling horizontal

Ca dépend de ce que tu veux scroller en fait; si c'est tout l'écran, ou juste une partie, ou un sprite etc...
Je n'ai pas fait de fonction spécifique pour le scrolling, c'est Swifter qui en avait inclus dans une ancienne version de db-lib, mais je crois qu'il les a retirées... C'étaient des fonctions pour scroller la totalité de l'écran dans une des quatre directions, ce qui est généralement peu utile (sauf pour des animations de transition d'écrans etc)


Pensez à surveiller mes releases wink

Hors ligne

 

#5 27 Aug 2005 05:30:53

dada66
Membre Communauté Graph100
Lieu: Perpignan
Date d'inscription: 09 Oct 2002
Messages: 1033

Re: Scroling horizontal

le décalage de bits en ASM et C ca existe KillTiti. A toi après de gérer le bit le plus à droite qui doit aller à gauche sur l'autre mot/octet.


Flash100, F100Console, GComm, ... : http://flash100.free.fr/xoops

Hors ligne

 

#6 27 Aug 2005 05:43:05

KillTiti
Membre
Lieu: Changé (Sarthe)
Date d'inscription: 16 Jul 2005
Messages: 39

Re: Scroling horizontal

Je sais que ça existe ! mais c'est pas un peu long ?

Hors ligne

 

#7 27 Aug 2005 06:52:18

dada66
Membre Communauté Graph100
Lieu: Perpignan
Date d'inscription: 09 Oct 2002
Messages: 1033

Re: Scroling horizontal

c plus rapide que du pixel/pixel en tout cas.
De plus le décalage de bit est géré par le processeur, mais je ne sais pas combien ca prend de cycles. Je dirai pas beaucoup mais c pas sûr.


Flash100, F100Console, GComm, ... : http://flash100.free.fr/xoops

Hors ligne

 

#8 27 Aug 2005 07:04:38

tonton1664
Membre
Lieu: Somme (80)
Date d'inscription: 22 Jul 2002
Messages: 217
Site web

Re: Scroling horizontal

Ben pour faire du scrolling horizontal t'a pas trop le choix.
Soit c'est des décalages, soit c'est les instructions spécifiques NEC ins et ext. Les multiplications (ou division) par 2^n c'est beaucoup plus long qu'un decalage.
Pour utiliser les intructions Nec, t'a le choix, soit tu converti en hexa a l'aide de la doc nec, soit t'utilise une version modifiée de nasm, qui doit trainer sur mon site.
http://tonton1664.free.fr pour une version windows pas récente
http://team1664.org/debian-graph100/ pour la version sources (le patch est dans le .diff.gz)

Dans les deux cas ton programme ne tournera plus sur l'emulateur, ces deux instructions ne sont pas supportées (tiens d'ailleurs si quelqu'un a un compilo crosoft avec les atl, ce serait gentil de les ajouter (je peux aider si besoin))

Hors ligne

 

#9 27 Aug 2005 17:34:50

Tekkeitserktok
Membre Communauté Graph100
Lieu: Nancy(54)
Date d'inscription: 12 Jan 2004
Messages: 416

Re: Scroling horizontal

oué comme di Julien ça dépend ce que tu veux scroller...genre si c'est des sprites de 16x16 ou 8x8 y'a des fonctions
déja toutes faites de la DB-lib...après ça dépend aussi du mode que tu veux utiliser (en 3 couleurs ou 5 couleurs ou
même noir et blanc)...donc soit plus précis! Et pis j'ai oublié de te souhaiter la bienvenue donc BIENVENUE!


Démo disponible:
-->The legend of Zelda:The revenge of Ganon
-->v0.1b
-->http://linkoncasio.free.fr

http://tekkeitserktok.free.fr/Cat.gif

Hors ligne

 

#10 28 Aug 2005 06:49:34

KillTiti
Membre
Lieu: Changé (Sarthe)
Date d'inscription: 16 Jul 2005
Messages: 39

Re: Scroling horizontal

Merci !
La je parle en Noir et Blanc !
Et je n'affiche pas de sprites. Je veux juste avoir une première image dans le buffer vidéo et avoir le nouvelle ligne à rajouter dans une quelconque adresse mémoire.
Donc je veux décaler l'image qui est dans le buffer vidéo et rajouter d'un coté ou de l'autre une ligne.

Hors ligne

 

#11 28 Aug 2005 19:05:57

Swifter
Programmeur Graph100
Lieu: Niort (79)
Date d'inscription: 06 Aug 2002
Messages: 980
Site web

Re: Scroling horizontal

salut a tous !

hum effectivement ce que tu cherche étais dans une des anciennes versions de db-lib. c'était les fonction rightscroll() et leftscroll().

Cela dit ces fonctions étaient très lentes (et je pensais pas qu'elles serviraient un jour) donc je les ai virées de db-lib.
Si tu veux vraiment ces fonctions, je peux te les renvoyer par mail.

Cependant tu peux utiliser la fonction drawmap() qui elle est bien présentes dans db-lib. Les avantages :
la vitesse d'affichage, et tu n'as pas besoin de stocker ton image dans la mémoire vidéo.


exemple concret pour un scroll vertical :
tu fais une image bmp de 64 de hauteur, et de ... 768 de longueur.
tu code ton image avec spritecoder fourni avec db-lib.
ensuite tu affiche le segment que tu veux de ta map en utilisant drawmap().
(cela permet entre autre de choisir la vitesse du scroll : soit du pix par pix, 2 pix par 2 pix ou encore plus vite...ce qui était impossible avec les rightscoll)

Si tu veux un exemple de code source, regarde le moteur de zelda, fourni dans db-lib.

voila j'espère que ca va t'aider


Swifter, avec un T, n'attrapes pas la poussière mais toutes les remarques débiles :mrgreen:
              ** Swifter68@hotmail.com **

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr