Page 1 sur 1

Effet marrant avec des carrés qui tournent

Publié : dim. 22/juil./2007 18:21
par bombseb
et voilà, c'est tout con mais c'est plutot sympas :D

en jouant sur les paramètres (taille des carrés, step, angles de rotation) on trouve d'autres trucs cool
If InitSprite () = 0 Or InitKeyboard()= 0 Or InitSprite3D()=0
MessageRequester ("Erreur", "Impossible d'initialiser directx",#PB_MessageRequester_Ok)
End
EndIf

;---------- Plein écran ----------
#WindowWidth = 640
#WindowHeight = 480
If OpenScreen(#WindowWidth, #WindowHeight, 32, "Yeah !") = 0
MessageRequester ("Erreur", "Impossible d'ouvrir l'écran",#PB_MessageRequester_Ok)
End
EndIf
;----------------------------------

If StartDrawing (ScreenOutput ())
S=30 ; Taille des carrés
Box (0,0, S, S, RGB (0,0,150)) ; Bordure plus foncé
Box (4,4, S-8, S-8, RGB (0,0,200)) ; Intérieur plus clair
StopDrawing ()
EndIf

GrabSprite(1, 0,0, S, S, #PB_Sprite_Texture)
CreateSprite3D(1,1)

FlipBuffers()

Sprite3DQuality(1)

Repeat

ClearScreen (0)

If Start3D()
Sprite3DBlendingMode(5,2)
Angle1.f = Angle1 + 5 ; Angle de rotation du 1er carré en haut à gauche
AngleX.f = Angle1
For x = 0 To (#WindowWidth-S) Step 17
AngleX = AngleX + 10 ; Angle de rotation de chaque carré sur l'axe des x
Angle2.f = AngleX
For y = 0 To (#WindowHeight-S) Step 17
Angle2 + 5 ; Angle de rotation de chaque carré sur l'axe des y
RotateSprite3D(1, Angle2, 0)
DisplaySprite3D(1, x,y, 255)
Next
Next
Stop3D()
EndIf

FlipBuffers ()
;Delay (50)
ExamineKeyboard ()
Until KeyboardPushed (#PB_Key_Escape)



End

Re: Effet marrant avec des carrés qui tournent

Publié : dim. 29/juil./2007 0:28
par beauregard
des plus intéressant, mais...
ne pas sous estimer l'importance de la colorisation:
remplacer ligne 17 et 18 par:

Code : Tout sélectionner

  Box (0,0, s, s, RGB (0,0,100)) ; Bordure plus foncé
  Box (4,4, s-8, s-8, RGB (200,200,200)) ; Intérieur plus clair
ou encore:

Code : Tout sélectionner

  Box (0,0, s, s, RGB (100,0,0)) ; Bordure plus foncé
  Box (4,4, s-8, s-8, RGB (150,100,200)) ; Intérieur plus clair
l'on perçoit ainsi mieux l'effet de vague balayant tout l'écran...

dommage de ne pas jouer sur la transparence ! allez, hop:

Code : Tout sélectionner

If InitSprite () = 0 Or InitKeyboard()= 0 Or InitSprite3D()=0
  MessageRequester ("Erreur", "Impossible d'initialiser directx",#PB_MessageRequester_Ok)
  End
EndIf
;---------- Plein écran ----------
#WindowWidth = 640
#WindowHeight = 480
If OpenScreen(#WindowWidth, #WindowHeight, 32, "Yeah !") = 0
  MessageRequester ("Erreur", "Impossible d'ouvrir l'écran",#PB_MessageRequester_Ok)
  End
EndIf
;----------------------------------
If StartDrawing (ScreenOutput ())
  s=30 ; Taille des carrés
  Circle(4, 2, s-8 ,RGB (240,240,240)) 
  Circle(8, 2, s-16 ,RGB (255,0,0))
  StopDrawing ()
EndIf
GrabSprite(1, 0,0, s, s, #PB_Sprite_Texture)
CreateSprite3D(1,1)
FlipBuffers()
Sprite3DQuality(1)
Repeat
  ClearScreen (0)
  If Start3D()
    Sprite3DBlendingMode(5,2)
    Angle1.f = Angle1 + 5 ; Angle de rotation du 1er carré en haut à gauche
    AngleX.f = Angle1
    For x = 0 To (#WindowWidth-s) Step 17
      AngleX = AngleX + 10 ; Angle de rotation de chaque carré sur l'axe des x
      Angle2.f = AngleX
      For y = 0 To (#WindowHeight-s) Step 17
        Angle2 + 5 ; Angle de rotation de chaque carré sur l'axe des y
        RotateSprite3D(1, Angle2, 0)
        DisplaySprite3D(1, x,y, 155)
      Next
    Next
    Stop3D()
  EndIf
  FlipBuffers ()
  ;Delay (50)
  ExamineKeyboard ()
Until KeyboardPushed (#PB_Key_Escape)
End 

Publié : dim. 29/juil./2007 9:09
par Backup
ha oui ! sympath ! :D

Publié : dim. 29/juil./2007 11:37
par beauregard
Dobro a écrit :ha oui ! sympath ! :D
merci. j'aurai bientôt besoin de toi pour l'editeur de niveau, rapport à lecture/ecriture sur fichier...

Publié : dim. 29/juil./2007 13:22
par Backup
beauregard a écrit :
Dobro a écrit :ha oui ! sympath ! :D
merci. j'aurai bientôt besoin de toi pour l'editeur de niveau, rapport à lecture/ecriture sur fichier...
bah ! moi j'y connais rien ! :?









:lol: :lol: :lol:

Publié : dim. 29/juil./2007 14:41
par beauregard
8O
:)
:D
:lol:
l'instant d'un instant tu m'a fais peur !

Publié : dim. 29/juil./2007 16:09
par Crystal Noir
Moi je préfère le code original, donné par bomseb, plus discret.

Publié : dim. 29/juil./2007 21:01
par bombseb
héhé pas mal aussi en rouge comme ca :D