ENCORE PLUS PETITE MATRIX

Signaler
Messages postés
130
Date d'inscription
mercredi 2 janvier 2002
Statut
Membre
Dernière intervention
6 décembre 2006
-
Messages postés
38
Date d'inscription
lundi 18 mars 2002
Statut
Membre
Dernière intervention
29 octobre 2003
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7158-encore-plus-petite-matrix

Messages postés
38
Date d'inscription
lundi 18 mars 2002
Statut
Membre
Dernière intervention
29 octobre 2003

Pour yoman64 : dans le principe tu as raison, mais ton code me donne un dépassement de capacité au bout d'un certain temps. J'avais essayé de ne faire qu'une seule boucle, mais j'ai toujours eu de petits problèmes qui m'on empéché de réussir :)
Pour WhiteDwarf : tu as raison : il n'y en a aucun. En fait si : il y en a un, je pense que tu n'as pas regardé le code de kilomaster ! Mon code donne le même effet (certes avec quelques fonctionnalités de moins) mais en 5 fois moins de lignes de code... l'obtimisation est à mes yeux un 'interret' comme tu dis...
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

je ne vois pas l'interet de dévelloper des trucs qui ont déja été fait en mieu sur le site... sinon, je ne critique pas, c'est pas mal... et c'est simple comme code mais puissant.
Messages postés
962
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
2 août 2010
1
Tu ne crois pas qu'on gagnerais en vitesse si on fesais plutot:

Dim XTab(1 To 60) As Integer,YTab(1 To 60) As Integer , CTab(1 To 420) As String * 1

Private Sub Form_Load()
For i = 1 To 60
If YTab(i) > Height Or YTab(i) = 0 Then 'initialisation ou bordure
XTab(i) = Int(Rnd * Width)
YTab(i) = Int(Rnd * Height)
End If
Next i
End Sub

Private Sub Timer1_Timer()
Dim i As Integer
Cls
For i = 1 To 420
if i<60 then
If YTab(i) > Height Or YTab(i) = 0 Then
XTab(i) = Int(Rnd * Width)
YTab(i) = Int(Rnd * Height)
End If
End if
If Rnd > 0.8 Then CTab(i) = Chr(Rnd * 255)
CurrentX = XTab(i - 60 * Int(i / 60) + 1)
CurrentY = YTab(i - 60 * Int(i / 60) + 1) - i * 3
YTab(i - 60 * Int(i / 60) + 1) = YTab(i - 60 * Int(i / 60) + 1) + 10
ForeColor = RGB(0, 255 - 10 * (Int(i / 30)), 0)
Print CTab(i) 'on affiche
Next i
End Sub



Je dit sa dememe mais de cet maniere on execute seulement un for dans le timer ce qui fait que l'execution est plus rapide
dans le timer et sa ne fait pas laguer le reste du prog...
@++
Messages postés
75
Date d'inscription
mardi 5 mars 2002
Statut
Membre
Dernière intervention
5 octobre 2005

Weado, j'ai vu animatix, c'est vrai que c'est pas mal fait. Mais on est pas pret d'en voir ici lol :)
Afficher les 10 commentaires