Page 1 of 1

[Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:15
by Soulthym
Bonjour à tous, je crée ce poste pour vous demander comment on pourrait optimiser un de mes projets, qui est de recréer un système pour gérer des niveaux de gris. J'en suis pour l'instant à ce stade:
Image

Voici le programme à compiler avec Axe:
archives_voir.php?id=11948

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:15
by nikitouzz
Je programme beaucoup en axe ! je te poste un code optimiser.

alors, premiere erreur en axe il faut toujours fermer ses parenthese car c'est le meilleur moyen d'avoir des bug et ca ne rajoute pas d'octets a l'executable puis tu peut deja optimiser comme cela :

Code: Select all
:.AAAAAA
:det(1*8*12*7)→Pic2
:[FFFFFFFFFFFFFFFF]→Pic1
:ClrDraw
:DiagnosticOff
:INIG()
:0→E→G
:while 1
:E++<12??→E
:0→X→Y
:For(96)
:Pt-On(X*8,Y*8,Pic2+(E*8)+(G*2*2*3*2*2*2)
:G++≥7?0→G
:!If X++-12
:Y++
:0→X
:End
:End
:0→G
:DispGraphClrDraw
:EndIf getKey(15)
:Output(15,7)
:Return<sup>r</sup>
:
:Lbl INIG
:[]→Pic0
:[000000000000000000000000000000000000000088442211884422118844221188442211884422119249249249249249249249249249249249249249AA55AA55AA55AA55AA55AA55AA55AA55AA55AA55DB6DB6DB6DB6DB6DB6DB6DB6DB6DB6DB6DB6DB6DEE77BBDDEE77BBDDEE77BBDDEE77BBDDEE77BBDDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF]
:For(G,0,6)
:0→E
:For(12)
:0→L
:For(8)
:{G*20+L+E+Pic0} and {L+Pic1}→{Pic2+Select(L,+1→L)+(Select(E,+1→E)*8)+(G*12*8)}
:L-8??→L
:End
:E-12??→E
:End
:End


j'ai optimiser un petit peu mais c'est pas la methode qu'il faudrait employer pour ce que tu veux faire, que veux tu faire exactement ?

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:17
by Soulthym
ok, merci!

Aussi j'ai une version pdf du tuto d'Axe Parser sur le SdZ si ça t'intéresse...
Edit: ton code ne fonctionne pas pour moi, pire, il m'a afficher toute ma RAM sous forme de caractères...
Image

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:37
by nikitouzz
C'est moi qui en ce moment redige le tutoriel sur le sdz pas besoin de pdf ;)

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:48
by Soulthym
Ok, je compte l'utiliser pour un rpg ou alors les textures d'un moteur 3D.
Mais en quoi cela n'est pas adapté?

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 16:52
by matref
C'est pas adapté parce qu'il faut que ton moteur grayscale soit rafraîchi en permanence, sauf qu'un moteur 3D nécessite tout plein de calculs avant d'afficher quoi que ce soit. Et pendant les calculs, même si on peut rafraîchir l'écran pour afficher les gris correctement avec les interrupts (et encore), ça ralentira encore plus un truc déjà lent à la base.

Pour un moteur RPG encore ça passe, ça fera un truc magnifique avec les interrupts, par contre ça sera un tout piti peu lent. Genre un peu.

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 17:06
by Soulthym
Matref, tu penses que ça ralentirait trop en grayscale 4?

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 17:41
by matref
Pour moi 4 grayscales c'est vraiment la limite pour un moteur 3D, mais pour un RPG 7 lvls c'est bien (la preuve, Desolate en utilise 8).

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 17:58
by Soulthym
Ok merci, mais je n'ai pas trouvé comment faire du 8, c'est soit 7 soit 9...
Au fait, j'utilise ici du pré-calculé, donc ça devrait tenir la vitesse non?

Re: [Axe]7-level grayscale!

Unread postPosted: 24 Mar 2013, 18:34
by nikitouzz
Meme pour le precalculer, deja faire des niveau de gris pour un moteur 3D en axe c'est limite un exploit, c'est extrenement couteux en temps de calcul un moteur 3D par contre un rpg est assez adapter meme si je pense que 6 niveau de gris tu en auras deja bien assez.