Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Projets » Jeux de voiture!!! (190 réponse(s))
./REPRISE DU POST PRECEDENT (post n°171)   Marquer comme non lu.
Lionel Debroux Ecrit le: Mercredi 30 juin 2004 à 11:32 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Je n'ai plus beaucoup de forfait Internet, dont je ne me suis pas connecté hier soir: j'ai fait des routines moi-même. Optimisation vitesse, sans SMC.
Mais je vais quand même évidemment regarder ce que tu as fait.

Après d'autres optimisations (utilisation de __regparm__ pour les macros de division longue signée et non signée et multiplication longue), avec une largeur de route similaire à celle de LTC, une visibilité convenable, j'obtiens les framerates suivants:
* ~23 FPS quand le circuit n'est composé que de montée.
* ~46 FPS quand le circuit n'est composé que de descente.

On peut réduire un peu la taille de la fenêtre dans laquelle on dessinera: il faut bien marquer les infos de course quelque part, en-dehors du circuit. Ca ne change le framerate qu'en montée, et de façon peu significative.
Lionel Debroux - membre de TICT.
    
./Post n°172   Marquer comme non lu.
Lionel Debroux Ecrit le: Mercredi 30 juin 2004 à 12:08 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Je pense que pour LTC, il faut un éditeur de circuits.

Les routines __regparm__ introduites dans la série des betas d'ExtGraph 2.00 (ce qui serait le cas ici) ne sont - heureusement - pas toutes à faire également en __stkparm__...
Lionel Debroux - membre de TICT.
    
./Post n°173   Marquer comme non lu.
Sasume Ecrit le: Mercredi 30 juin 2004 à 13:07 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Tu pourras poster les résultats de tes tests, j'ai envie de voir laquelle de nos deux fonctions est la meilleure (donne les infos sur la taille et la vitesse) :)

Sinon, tu as parlé sur le forum de la TICT de sprites auto_masqué, de quoi s'agit-il ?
    
./Post n°174   Marquer comme non lu.
Sasume Ecrit le: Mercredi 30 juin 2004 à 13:16 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Au fait, pour ce qui est de remplacer le clr.l (a0) par un move.l dn,(a0) ça devient plus intéressant à partir du moment où la ligne à tracer est plus grande que 96 pixels.
Je pense que la taille moyenne d'une ligne doit être d'environ 100 pixels dans un jeu, donc je pense que ça n'accélèrerait pas vraiment.

Tu as fait une fonction par couleur, ou bien une fonction pour les 4 couleurs, toi ?

Bon, il faudra faire pareil pour les lignes classiques maintenant.
Tu utilises quelle routine ? Celle d'extended ou la mienne ?
    
./Post n°175   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 1er juillet 2004 à 10:09 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Tu pourras poster les résultats de tes tests, j'ai envie de voir laquelle de nos deux fonctions est la meilleure (donne les infos sur la taille et la vitesse) :)
Comme dit dans le post précédent, en vitesse, mes fonctions sont sans conteste plus rapides: il y en a trois (BLACK, WHITE, LIGHTDARKGRAY) sans self-modifying code. C'est ce qu'on cherche ici.
En taille, par contre, la tienne est évidemment plus petite.
Je vais envoyer mon boulot à Malcolm, une fois que j'aurai corrigé un bug con introduit hier soir...

> Sinon, tu as parlé sur le forum de la TICT de sprites auto_masqué, de quoi s'agit-il ?
"[...] "self-masked" sprites (mask computed at runtime ORing the data to be written to the planes [...]". Si tu demandes ce que je veux dire, je suppose que je n'ai pas été clair, donc je vais reformuler: le but est d'utiliser comme masque pour les deux planes, NOT(SPRITEDATA_PLANE1 OR SPRITEDATA_PLANE2). Pas besoin de masque précalculé (intéressant en taille), et coût en vitesse plutôt faible.

> Au fait, pour ce qui est de remplacer le clr.l (a0) par un move.l dn,(a0) ça devient plus intéressant à partir du moment où la ligne à tracer est plus grande que 96 pixels.
Heu, clr.l (a0) = 20 clocks; move.l dn,(a0) = 12 clocks... Et le/les moveq du début ne fait/font que 4/8 clocks.

> Tu utilises quelle routine ? Celle d'extended ou la mienne ?
Les deux, voir les sources.
-Edité le Jeudi 1er juillet 2004 à 10:18 par Lionel Debroux-
Lionel Debroux - membre de TICT.
    
./Post n°176   Marquer comme non lu.
Sasume Ecrit le: Jeudi 1er juillet 2004 à 10:14 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

move.l dn,(an) = 12 clocks.
Mais comme il faut vraiment trouver un registre supplémentaire (à moins de ne pas utiliser d4, mais on perdrait 4 cycles à chaque fois, donc on en gagnerait au total 8-4=4), il faut compter un move.l dn,-(a7) et un move.l (a7)+,dn qui prennent 24 cycles à eux deux, et pour compenser ces 24 cycles, il faut que la ligne soit suffisamment grande pour exécuter 24/8=3 fois la ligne où on a un move au lieu d'un clr, et étant donné qu'à chaque passage, on écrit 32 pixels, ça ferait 32*3 = 96 pixels.

P.S. : tu as oublié des trucs dans ton post ./175
-Edité le Jeudi 1er juillet 2004 à 10:14 par Sasume-
    
./Post n°177   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 1er juillet 2004 à 10:25 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Mais comme il faut vraiment trouver un registre supplémentaire
Pas si on ne gère qu'un mode par routine, ce qui était le cas ici.
J'ai également trois tables de 64 octets identiques pour les pixels du début et de la fin, de manière à n'avoir que des adressages d(pc,ix). Je ne me suis vraiment pas appliqué en taille pour faire ces routines...
Lionel Debroux - membre de TICT.
    
./Post n°178   Marquer comme non lu.
Sasume Ecrit le: Jeudi 1er juillet 2004 à 11:16 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Lionel Debroux :
> Tu pourras poster les résultats de tes tests, j'ai envie de voir laquelle de nos deux fonctions est la meilleure (donne les infos sur la taille et la vitesse) :)
Comme dit dans le post précédent, en vitesse, mes fonctions sont sans conteste plus rapides: il y en a trois (BLACK, WHITE, LIGHTDARKGRAY) sans self-modifying code. C'est ce qu'on cherche ici.
En taille, par contre, la tienne est évidemment plus petite.
Je vais envoyer mon boulot à Malcolm, une fois que j'aurai corrigé un bug con introduit hier soir...
Tu as des chiffres ?
Normalement, mes routines ne devraient pas être si lentes que ça. Enfin, j'espère.
J'aimerais bien voir les tiennes, c'est possible ?
Et au fait, le framerate a beaucoup augmenté avec les nouvelles routines ?

> Sinon, tu as parlé sur le forum de la TICT de sprites auto_masqué, de quoi s'agit-il ?
"[...] "self-masked" sprites (mask computed at runtime ORing the data to be written to the planes [...]". Si tu demandes ce que je veux dire, je suppose que je n'ai pas été clair, donc je vais reformuler: le but est d'utiliser comme masque pour les deux planes, NOT(SPRITEDATA_PLANE1 OR SPRITEDATA_PLANE2). Pas besoin de masque précalculé (intéressant en taille), et coût en vitesse plutôt faible.
OK, en fait, ça correspond au mode TRANW.
-Edité le Jeudi 1er juillet 2004 à 11:17 par Sasume-
    
./Post n°179   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 1er juillet 2004 à 11:26 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Tu as des chiffres ?
Non. Mais des routines plus simples (aucun test de mode), sont forcément légèrement plus rapides. La différence doit être très faible, mais j'ai gardé l'utilisation faite dans le code original (1 routine par mode, réduit à 3 routines pour 4 modes car pour dark / light, il suffit d'inverser les pointeurs, ce que tu as fait dans ta routine).

> J'aimerais bien voir les tiennes, c'est possible ?
Oui, je peux te les envoyer.
> Et au fait, le framerate a beaucoup augmenté avec les nouvelles routines ?
Impossible à dire, car j'ai changé beaucoup de paramètres en même temps (largeur de route notamment). Il suffit de repasser aux vieilles routines pour le savoir, ou de comparer les versions C et ASM de FastDrawHLine, puisque les routines qu'utilise la version originale d'Extreme Racing sont des FastDrawHLine modifiées.
Lionel Debroux - membre de TICT.
    
./Post n°180   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 1er juillet 2004 à 11:27 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> > > auto_masqué, de quoi s'agit-il ?
> > [...]
> OK, en fait, ça correspond au mode TRANW.
Ha, je voulais faire des doublons... Pas bien !
Lionel Debroux - membre de TICT.
    
./Post n°181   Marquer comme non lu.
Sasume Ecrit le: Jeudi 1er juillet 2004 à 14:23 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

OK, j'ai vu tes routines, et je pense qu'elles sont plus rapides puisqu'effectivement, tu n'as pas besoin de faire de test pour la couleur.

Au fait, tu peux optimiser une instruction (et reporter la modification sur extgraph) : à un moment, il y a un cmp suivi d'un bxx, suivi d'un sub (vers le milieu de la routine).
Tu peux remplacer le cmp par le sub et virer le sub.

Sinon, la routine que j'ai postée n'était pas vraiment destinée à xtreme racing, mais plutôt à extgraph, tu pourras l'ajouter, stp (si elle marche) ?
    
./Post n°182   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 1er juillet 2004 à 14:27 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Au fait, tu peux optimiser une instruction (et reporter la modification sur extgraph) : à un moment, il y a un cmp suivi d'un bxx, suivi d'un sub (vers le milieu de la routine).
> Tu peux remplacer le cmp par le sub et virer le sub.
OK.

> Sinon, la routine que j'ai postée n'était pas vraiment destinée à xtreme racing, mais plutôt à extgraph, tu pourras l'ajouter, stp (si elle marche) ?
Bien sûr, c'est mon intention.
Lionel Debroux - membre de TICT.
    
./Post n°183   Marquer comme non lu.
naPO Ecrit le: Lundi 19 juillet 2004 à 09:05 Déconnecté(e)    Voir le profil de naPO Envoyer un email à naPO Visiter le site WEB de naPO Envoyer un message privé à naPO  


Hum je remonte ce topic (scusi) mais ce moteur servira-t-il aussi à faire des jeux de motos (Genre Road Rash (taper sur les concurrents à coups de chaîne #love#)) ?
Tel un automate, le dinosaure noir s'avance vers le chef des toutous-bombes et dit : "SCHNAAA SCHNAAA SCHNAPPI ! SCHNAPPI-SCHNAPPI-SCHNAPP !!!!!!" (en attendant une meilleure signature)


Avec de vrais morceaux de pattes d'eph :
http://gilou82.free.fr/Vrac/KSO-BAN.png
    
./Post n°184   Marquer comme non lu.
Sasume Ecrit le: Lundi 19 juillet 2004 à 09:48 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Ben fais-en ce que tu veux...
    
./Post n°185   Marquer comme non lu.
Kevin Kofler Ecrit le: Lundi 19 juillet 2004 à 16:32 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


naPO :
Hum je remonte ce topic (scusi) mais ce moteur servira-t-il aussi à faire des jeux de motos (Genre Road Rash (taper sur les concurrents à coups de chaîne #love#)) ?

Tu aimes bien les jeux à contenu inapproprié, j'ai l'impression... #roll#
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°186   Marquer comme non lu.
serioussam Ecrit le: Lundi 19 juillet 2004 à 16:58 Déconnecté(e)    Voir le profil de serioussam Envoyer un email à serioussam Visiter le site WEB de serioussam Envoyer un message privé à serioussam  

Chacun fait un jeu comme il le souhaite...
la shasse é ouvèrte poure lay maychants
    
./Post n°187   Marquer comme non lu.
verytourist Ecrit le: Lundi 19 juillet 2004 à 23:18 Déconnecté(e)    Voir le profil de verytourist Envoyer un email à verytourist Envoyer un message privé à verytourist  

Des fois les jeux un peu décalée et humoristiqes peuvent être super fun et changent un peu ;)
-Edité le Mardi 20 juillet 2004 à 09:52 par verytourist-
    
./Post n°188   Marquer comme non lu.
Lionel Debroux Ecrit le: Mardi 20 juillet 2004 à 09:10 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Mais peuvent être reportés comme "inappropriate material" sur ticalc, c'est ce que Kevin voulait dire... Certes, ils autorisent également des FPS basés sur FAT-Engine et des dealers games, entre autres.
Lionel Debroux - membre de TICT.
    
./Post n°189   Marquer comme non lu.
Benjy Ecrit le: Mardi 20 juillet 2004 à 18:46 Déconnecté(e)    Voir le profil de Benjy Envoyer un email à Benjy Visiter le site WEB de Benjy Envoyer un message privé à Benjy  


Tien je passe par la alors le projet il en ai ou? et sur le forum de la TICT ?
Le langage C y'a pas mieux!!!
    
./Post n°190   Marquer comme non lu.
Lionel Debroux Ecrit le: Jeudi 22 juillet 2004 à 11:41 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

Il n'en est nulle part parce que personne ne s'en occupe...
J'ai bien autre chose à faire avec les softs de TICT - pour le moment, je suis un peu coincé car j'ai besoin d'un update de ttstart, que je fais avec Kevin - et d'autres choses secrètes.
Lionel Debroux - membre de TICT.
    
  :: Index » Forum Ti68K » Projets » Jeux de voiture!!! (190 réponse(s))
Pages : 10/10     « 1 2 3 4 5 6 7 8 9 [10] » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 40.35ms avec 18 requetes