Page 1 sur 2

Chrono selon le matériel

Publié : mer. 05/août/2015 13:10
par Ollivier
Bonjour,

en exécutant ce petit code ci-dessous, il y a un nombre qui apparaît en haut à gauche de l'écran.

Si vous pouviez me transmettre cette valeur, ainsi que votre configuration (CPU/GPU), cela serait sympathique de votre part.

Code : Tout sélectionner

Nb2 = 8191
V1.F = 50.0

InitSprite()
InitKeyboard()

ExamineDesktops()
Dw = DesktopWidth(0)
Dh = DesktopHeight(0)
Dd = DesktopDepth(0)

OpenScreen(Dw, Dh, Dd, "")

For J = 0 To 255
CreateSprite(J, 16, 16, #PB_Sprite_AlphaBlending)
StartDrawing(SpriteOutput(J) )
	DrawingMode(#PB_2DDrawing_AllChannels)
	Box(0, 0, 16, 16, RGBA(0, 0, 0, 0) )
	For I = 0 To 7
		G.F = (I * I) * (255.0 / 50.0)
		R = J
		V = 0
		B = 255 - J
		C = RGBA(R, V, B, G)
		Circle(7, 7, 8 - I, C)
	Next
	Box(7, 7, 1, 1, RGBA(R, V, B, 255) )
StopDrawing()
Next	

Nb = 32767
Global Dim S(Nb)
Global Dim X.F(Nb)
Global Dim Y.F(Nb)
Global Dim VX.F(Nb)
Global Dim VY.F(Nb)
Global Dim I.F(Nb)

For I = 0 To Nb
	S(I) = 255
	X(I) = Random(Dw - 1)
	Y(I) = Random(Dh - 1)
	VX(I) = 0.0
	VY(I) = 0.0
	S(I) = 255
Next

Lap = ElapsedMilliseconds()
Repeat
	Delay(16)
	ClearScreen(0)
	For I = 0 To Nb2
		ExamineKeyboard()
		If KeyboardPushed(#PB_Key_Escape)
			Quit = 1
			Break
		EndIf
		App = Sqr(VX(I) * VX(I) + VY(I) * VY(I) ) * 255 / 100.0
		S(I) = (ATan2(VX(I), VY(I) ) + #PI) * 255 / (2 * #PI)
		DisplayTransparentSprite(S(I), X(I) - BX, Y(I) - BY, App)
		For J = I + 1 To Nb2
			DX.F = X(I) - X(J)
			DY.F = Y(I) - Y(J)
			Dist.F = Sqr(DX * DX + DY * DY)
			If Dist < 10.0
				Dist2.F = Dist * Dist
				If Dist2
					VX(I) = DX / Dist2
					VY(I) = DY / Dist2
				EndIf
			Else
				Dist2.F = Dist * Dist
				If Dist2
					VX(I) = (- 99868 * DX) / Dist2
					VY(I) = (- 99868 * DY) / Dist2
				EndIf
			EndIf
			X(I) + (VX(I) / V1)
			Y(I) + (VY(I) / V1)
			VX(I) * 0.979
			VY(I) * 0.979
		Next
	Next
	Im + 1
	Delta = ElapsedMilliseconds() - Lap
	StartDrawing(ScreenOutput() )
		DrawText(0, 0, Str(Im * 1000 / Delta) )
	StopDrawing()
	FlipBuffers()
Until Quit

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 13:22
par falsam
A part un screen noir je n'ai rien d'autres

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 13:31
par crisot
falsam a écrit :A part un screen noir je n'ai rien d'autres
+1

Je vois juste un petit nombre clignoter au moment ou je presse ESC (proche de 0 voir 0)

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 14:21
par SPH
J'ai attendu 1 minute et on vois des cercles en blur.
Le chiffre est 0 chez moi :idea:

Ordi portable datant de 5 ans :?

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 14:39
par falsam
Effectivement il faut attendre. Strange ! Le chiffre en haut à gauche est de 0.

Intel Core i3 3 Ghz, 4 GB RAM, Nvidia GeForce G210 - Windows 10 Pro

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 16:14
par Micoute
Bonjour à tous, je pense qu'il y en a qui n'ont pas attendu assez longtemps, car sur mon écran, il s'affiche des jets de lumière multicolores comme si on aspergeait l'écran avec de la peinture !

Réédité:
Valeur affichée : 0
Processeur : AMD Athlon(tm) II X2 240
Vitesse : 2813 Mhz
Carte graphique : NVIDIA GeForce GT 640
OS : Microsoft Windows 10 Famille X64
Carte mère : M2N68-AM Plus

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 16:44
par majikeyric
0

Win7 x64
Core I7 4770k
GEForce GTX 770

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 18:51
par Ar-S
testé sur mon linux
ça génère plein de dots rouges et qques bleus avec un genre de rotation mais ça rame grave.
chiffre restant à 0

Proce intel T6500 (dual coeur) GPU Nvidia GT220M

Pour ceux qui attendent, peut-être avez vous laissé le debugger, penser à le désactiver avant compilation.

Re: Chrono selon le matériel

Publié : mer. 05/août/2015 20:09
par case
0
core i7 2600
radeon R9 290

ton bench renvoie zero de partout c'est un moyen de mettre tout le monde d'accord ^^

Re: Chrono selon le matériel

Publié : jeu. 06/août/2015 4:54
par Ollivier
Bonjour Micoute,

heureux de te faire un coucou. Tu es l'exemple même que la patience a des jumelles!

Zéro... C'est le nombre d'images par secondes.

Les deux 1ères lignes du code source permettent de maîtriser le nombre d'image par seconde.

Si vous diminuez Nb2, ce sera plus fluide.
Nb2 c'est le nombres d'étoiles gérées.

V1 c'est l'inverse de la vitesse d'évolution de la scène. A la base, V1 est réglé pour qu'une petite centaine de milliards d'années s'écoule entre deux images.

Il s'agit d'un outil qui permet de créer des séquences visuelles vectorisées par la plus simple des méthodes: un tableau de x et un tableau de y pour chaque cliché.

Vous y trouverez des similitudes avec des éruptions solaires, des scènes où crépitent les pétards et où il est question d'implosion, d'explosion ou d'absorption de masse. Vous obtenez facilement des nuages de points x,y, donc points de fumée, points d'explosion, etc... Il est impossible d'obtenir la même scène à la fois. C'est-à-dire qu'une explosion particulière, par exemple explosera toujours différemment. C'est un moteur de coïncidences, bien qu'il n'y ait ni inertie, ni précession, ni dérivation, c'est déjà très prospère juste pour une pincée de code. Attention, c'est asynchrone, c'est-à-dire que le simple fonctionnement d'un anti-virus en arrière-plan va modifier les caractéristiques géométriques de manière totale.

Ça peut faciliter grandement la création d'effets spéciaux visuels. Ça peut être utile pour ceux qui aiment juste modifier les nombres (parce qu'il y a déjà pour quelques centaines d'heures de séquence, par ces seules modifs) voire créer l'interface. Il faut alors s'imaginer créer le tableau de bord d'un véhicule qui va se balader à coup de scroll, de zoom et de Zrotation dans tout un "micro-univers" (8000 étoiles c'est "zéro" donc 4000 étoiles c'est mieux! Notre Univers c'est 10 000 milliards de milliards d'étoiles donc j'écris "micro" pour juste 4000! Ça suit?).

Mais le tout, c'est de chercher! Pour info, le zoom s'étend au millier de milliards. Ce ne sont pas les particules en elles-mêmes qui nécessitent autant de zoom, mais les effets cinétiques possibles.

Vous pouvez parfaitement recréer ceci sous Ogre ou OpenGL. Il suffit d'activer le moteur physique et de définir un noyau impénétrable qui attire selon la Loi de Newton les autres noyaux. Si le noyau est pénétré, une répulsion cent mille fois inférieure doit être générée, toujours selon l'équation de Newton (qui se retourne dans sa tombe, avec mon PFS foireux et mes proportions hérétiques!)

Bonne bidouille des variables!


PS: si une bonne âme sympa peut faire un screenshoot du chiffre de son choix, bleu, rose ou rouge, la couleur importe peu!

Re: Chrono selon le matériel

Publié : sam. 08/août/2015 16:10
par Ollivier
Personne ne peut poster le moindre cliché?

Résultat de cette "expérience": mon matériel est déjà bien loin des vôtres! (petite précision: c'est vous qui êtes plus rapides... ). C'est aussi une caractéristique des bouclages asynchrones: les petites configurations sont distancées en espace et en temps dans les cinématiques par rapport aux plus amples configurations.

Si je souhaite faire partager tel ou tel suite de clichés, la solution la plus économique reste de synchroniser.

C'est-à-dire asservir l'affichage en fonction d'un temps chronométré le plus "impartial" possible.

Comme c'est assez court comme code, je vais tâcher d'en faire un, ce n'est pas compliqué à l'extrême...

Re: Chrono selon le matériel

Publié : mar. 11/août/2015 13:24
par Kwai chang caine
si une bonne âme sympa peut faire un screenshoot du chiffre de son choix, bleu, rose ou rouge, la couleur importe peu!
C'est ça que tu veux ?
Image

Re: Chrono selon le matériel

Publié : jeu. 13/août/2015 14:24
par Micheao
Chiffre = 0
Processeur :Intel Core i7-5930K (3.5 GHz)

Re: Chrono selon le matériel

Publié : jeu. 13/août/2015 17:47
par SPH
0
sur i7

pas de plantage (5 min)

Re: Chrono selon le matériel

Publié : ven. 14/août/2015 22:57
par G-Rom
C'est sympa, en modifiant les variable que cite, j'arrive à la singularité.