> Pixels à ma gloire

Programmation d'applications complexes
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

> Pixels à ma gloire

Message par SPH »

http://xmas.free.fr/pb/king_pixels.exe
DATA directement incorporés dans l'EXE

ENJOY
Dernière modification par SPH le ven. 07/janv./2011 9:20, modifié 5 fois.

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: > Pixels à ma gloire

Message par Le Soldat Inconnu »

Très joli :) On veut le code :mrgreen:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Cool Dji
Messages : 1126
Inscription : ven. 05/sept./2008 11:42
Localisation : Besançon
Contact :

Re: > Pixels à ma gloire

Message par Cool Dji »

Great 8)
J'aime bien et j'aimerai encore plus avec le code :mrgreen:
Only PureBasic makes it possible
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: > Pixels à ma gloire

Message par Backup »

encore un code de m*** qui ne respecte pas la résolution native des Netbooks ! :roll:

pourtant la librairie Desktop() fonctionne bien en Purebasic ....

si c'etait la première fois, je ne dirai rien, mais là , ça frise la psychiatrie :roll: :lol:
voir la genetique.... t'es belge peut etre ... :lol:
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: > Pixels à ma gloire

Message par SPH »

Pourtant cher dobro, j'ai pensé a toi en interrogeant la rezo du bureau !!!

Voici mon code les mecs :

PS : ne trichez pas a changer le logo, ca ne marchera pas :wink:

Code : Tout sélectionner

InitSprite() 
InitMouse() 
InitKeyboard() 

;SetPriorityClass_ ( GetCurrentProcess_ (), #IDLE_PRIORITY_CLASS ) 
Global dw.w,dh.w

If ExamineDesktops() 
   dw.w=DesktopWidth(0) 
   dh.w=DesktopHeight(0) 
Else 
   dw.w=1024 
   dh.w=768 
EndIf 


xx1=Random(dw-1-179)
yy1=Random(dh-1-73)
xx2=Random(dw-1-179)
yy2=Random(dh-1-73)

nb=8290
nb2=0
cmb=0
;;;;;;;;;;;

Dim x.f(9)
Dim y.f(9)

nombre=9
Dim oux.w(20)
Dim ouy.w(20)
For i=0 To 20
  oux(i)=Random(dw-1-179)
  ouy(i)=Random(dh-1-73)
Next

;;;;;;;;;;;;;;

OpenScreen(dw,dh,32,"") 

;LoadSprite(0,"d:\PureBasic\PB\SPH.bmp")
LoadSprite(0,"SPH.bmp")
DisplaySprite(0,0,0)
;;;;;;;;;;;
;;;;;;;;;;;
;;;;;;;;;;;

Global Dim p.w(nb,5000)
  Procedure bspline(x0,y0,x1,y1,x2,y2,x3,y3,n,cmb) 
For z = 0 To 149
    
    t1.f = z/150
    t2.f = t1*t1
    t3.f = t1*t1*t1

  	k1.f = 1 - 3*t1 + 3*t2 - t3
    k2.f = 4 - 6*t2 + 3*t3
  	k3.f = 1 + 3*t1 + 3*t2 - 3*t3

    xfinal.f = (x0 * k1 + x1 * k2 + x2 * k3 + x3 * t3) / 6
		yfinal.f = (y0 * k1 + y1 * k2 + y2 * k3 + y3 * t3) / 6

    
    p(cmb,9+z*2+n*300)=xfinal
    p(cmb,10+z*2+n*300)=yfinal
    
  Next z
EndProcedure 


StartDrawing(ScreenOutput()) 
For u=0 To 73
  For i=0 To 179
    x=Point(i,u)
    If x<>0
      cmb+1
      p(cmb,0)=i
      p(cmb,1)=u
      p(cmb,2)=Red(x)
      p(cmb,3)=Green(x)
      p(cmb,4)=Blue(x)
      p(cmb,5)=-Random(Random(Random(1000)+300))-1500+Random(Random(1500))
      p(cmb,6)=xx1
      p(cmb,7)=yy1
      p(cmb,8)=900
      
For n=0 To 9
  x(n)=Random(dw-1-179)
  y(n)=Random(dh-1-73)
  x=Random(Random(Random(20)))
  x=Random(Random(20))
  x(n)=oux(x)
  y(n)=ouy(x)
  ;x(n)=oux(Random(Random(Random(20))))
  ;y(n)=ouy(Random(Random(Random(20))))
Next

;*********************************************
    x(0)=xx1 : y(0)=yy1
    x(1)=x(0) : y(1)=y(0)
    x(2)=x(0) : y(2)=y(0)
    x(nombre-3)=xx2 : y(nombre-3)=yy2
    x(nombre-1)=x(nombre-3) : y(nombre-1)=y(nombre-3)
    x(nombre-2)=x(nombre-3) : y(nombre-2)=y(nombre-3)

  For n=0 To nombre-4   ; On trace la bspline
    bspline(x(n),y(n),x(n+1),y(n+1),x(n+2),y(n+2),x(n+3),y(n+3),n,cmb)
  Next
  ;End
  
;*********************************************
      
    
      p(cmb,9+p(cmb,8)*2)=xx2
      p(cmb,10+p(cmb,8)*2)=yy2
    EndIf
  Next
Next
StopDrawing() 
If cmb<>nb
  End
EndIf

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

debut:

Repeat 
  ClearScreen(0)
 
;ExamineMouse() 
;*****

StartDrawing(ScreenOutput()) 
;;;;;;;;;;;

For i=1 To nb
  
  If p(i,5)<>32700
    p(i,5)+1
    If p(i,5)=p(i,8)
      p(i,5)=32700
      nb2+1
    EndIf
  EndIf
  
  If p(i,5)<0
Plot(p(i,6)+p(i,0),p(i,7)+p(i,1),RGB(p(i,2),p(i,3),p(i,4)))
Else
; Plot(p(i,9+p(i,8))+p(i,0),p(i,10+p(i,8))+p(i,1),RGB(p(i,2),p(i,3),p(i,4)))
  If p(i,5)<>32700
  Plot(p(i,9+p(i,5)*2)+p(i,0),p(i,10+p(i,5)*2)+p(i,1),RGB(p(i,2),p(i,3),p(i,4)))
  Else
  Plot(p(i,9+p(i,8)*2)+p(i,0),p(i,10+p(i,8)*2)+p(i,1),RGB(p(i,2),p(i,3),p(i,4)))
  EndIf
EndIf
Next


;zz+1 : zz%(dw) : Plot(zz,0,RGB(0,255,0))
;;;;;;;;;;;
StopDrawing() 
;*****
FlipBuffers() 

ExamineKeyboard() 
Until KeyboardPushed(#PB_Key_Escape)
End 

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
kelebrindae
Messages : 579
Inscription : ven. 11/mai/2007 15:21

Re: > Pixels à ma gloire

Message par kelebrindae »

@SPH: L'effet est très sympa, ça rappelle les démos de notre jeunesse...

@Dobro:
Dobro a écrit :encore un code de m***
En parlant de psychiatrie, je trouve que tu deviens de plus en plus agressif, ces derniers temps; un peu de politesse et de respect pour le travail d'autrui (même s'il ne marche pas sur ton PC) ne fait jamais de mal. Une bonne résolution pour 2011, peut-être ? :wink:
Les idées sont le souvenir de choses qui ne se sont pas encore produites.
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Re: > Pixels à ma gloire

Message par flaith »

té ré jo li :mrgreen:
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: > Pixels à ma gloire

Message par SPH »

flaith a écrit :té ré jo li :mrgreen:
MERCI (tu vois, la, tu ne peux pas dire que je te zap :wink: )

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: > Pixels à ma gloire

Message par Backup »

...
Dernière modification par Backup le mar. 19/août/2014 10:55, modifié 1 fois.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: > Pixels à ma gloire

Message par Ar-S »

Yeah ! Excellent Sph, ça rappelle effectivement de très bon souvenir de cracktro/demo de nos bonnes vieilles 16bits ! Image
Et merci pour le partage !
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: > Pixels à ma gloire

Message par SPH »

Dobro :
PS1 :
chez moi la partie de code :
Code:
If cmb<>nb
End
EndIf

s'exécutait systematiquement... alors Forcement ...

PS2 :
ps: j'ai du modifier nb=8290 en nb=8292 sinon out of table
Alors la, encore un truc inexplicable car :
Mon logo possede 8290 points non noir et pas un de plus. Et donc, je teste pour voir si c'est le bon logo. Une sorte de MD5 quoi.
Donc, va falloir m'expliquer comment tu en detectes 2 de plus !!!!! :?: :?: :?:

EDIT : je relance encore un appel desesperé a tous pour me dire si mon code dans le zip ne fonctionne pas !!!!

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: > Pixels à ma gloire

Message par Backup »

....
Dernière modification par Backup le mar. 19/août/2014 10:55, modifié 1 fois.
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: > Pixels à ma gloire

Message par SPH »

Dobro a écrit :
SPH a écrit : Alors la, encore un truc inexplicable car :
Mon logo possede 8290 points non noir et pas un de plus. Et donc, je teste pour voir si c'est le bon logo. Une sorte de MD5 quoi.
Donc, va falloir m'expliquer comment tu en detectes 2 de plus !!!!! :?: :?: :?:

là n'est pas le probleme !
le probleme c'est que tu declare un tableau avec 8290 elements
et que plus loin dans ton code ligne 64 ; ça plante :

Code : Tout sélectionner

cmb+1
  p(cmb,0)=i ;<<<<<<< ici ça plante Cmb indique 8291 !!!! 
Tu te trompe TOTALEMENT :!: . C'est une mesure anti triche que j'ai fait et on ne peux pas depasser 8290 avec mon logo. DONC : soit ca marche, soit tu as essayer un autre logo. POINT :arrow: :idea:
Dobro a écrit : ps : ton code du zip fonctionne chez moi .. mais il n'est pas centré ..
ta demo ne s'affiche pas entierement sur mon 1024X600
Faudrais savoir !!!! Tu as dis dans ton premier post que c'etait un code de M**** qui ne fonctionnait pas !!
IL FONCTIONNE OU PAS ?????
Pour le "centrage", le logo apparait n'importe ou et se teleporte n'importe ou. Mais je suppose que si tu as vu entierement la teleportation, c'est qu'aucun pixel n'est sorti de l'ecran; ce qui veux dire que ca marche !!
Renseigne moi la dessus car je n'ai RIEN capté.

PS : le code est destiné a boucler et en faire un .SCR

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: > Pixels à ma gloire

Message par Backup »

SPH a écrit : Tu te trompe TOTALEMENT :!: . C'est une mesure anti triche que j'ai fait et on ne peux pas depasser 8290 avec mon logo. DONC : soit ca marche, soit tu as essayer un autre logo. POINT :arrow: :idea:

oui bien sur ... je me trompe.... hum ! :roll:
Image
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: > Pixels à ma gloire

Message par SPH »

Donc on en reviens a ce que je disais : si tu as 8291 avec mon logo, COMMENT tu explique cette erreur puisque mon logo ne possede que 8290 pixels non noir ??????? :?: :?: :?: :!: :?: :?:

Pour l'instant, il n'y a que toi qui a ce bug et ca devrait t'inquieter ! Tu devrais chercher pkoi PB en compte + !!

2 indices quand meme : es tu en 32 bits ?
et sinon, essaye un Clearscreen(0) avant le display :

Code : Tout sélectionner

;LoadSprite(0,"d:\PureBasic\PB\SPH.bmp")
LoadSprite(0,"SPH.bmp")
DisplaySprite(0,0,0)

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Répondre