PureBasic

Forums PureBasic
Nous sommes le Lun 17/Juin/2019 11:49

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 5 messages ] 
Auteur Message
 Sujet du message: L'Effet 2D de vaguelette du pauvre
MessagePosté: Lun 07/Mai/2018 17:27 
Hors ligne
Avatar de l’utilisateur

Inscription: Jeu 14/Oct/2004 19:48
Messages: 1122
Code:
DisableDebugger
#X=600:#Y=400
#Dampening=0.995 ;change this value to make the wave last longer (closer to 1)
If InitSprite() = 0 Or InitKeyboard() = 0 Or InitMouse() = 0 Or OpenWindow(0, 0, 0, #X, #Y, "2D waves", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)=0 Or OpenWindowedScreen(WindowID(0),0,0,#X,#Y,0,0,0,#PB_Screen_NoSynchronization )=0
    MessageRequester("Error", "Can't open the sprite system", 0)
    End
EndIf
Dim Buffer.f(#X*2,#Y)
Structure Pixel
    Pixel.l
EndStructure
prev_buffer.i=0
cur_buffer.i=#X
Repeat
    FlipBuffers()
    Repeat:Until WindowEvent()=0
   
    ;copy the current buffer to the screen memory
    StartDrawing(ScreenOutput())
    Buffer      = DrawingBuffer()
    Pitch       = DrawingBufferPitch()
    For j=0 To #Y-1
        *Line.Pixel = Buffer+Pitch*j
        For ii=0 To #X-1
            i=ii+cur_buffer
           
            ;propagate the wave
            If ii>0 And ii<#X-1 And j>1 And j<#Y-1
                k=ii+prev_buffer
                Buffer(i,j)=(Buffer(k-1,j)+Buffer(k+1,j)+Buffer(k,j-1)+Buffer(k,j+1))/2-Buffer(i,j)
                Buffer(i,j)*#Dampening               
            EndIf
           
            ;copy to the screen
            color.i=Int(Buffer(i,j)*10)
            *Line\Pixel=color
            *line+4
           
        Next ii
    Next j
    ;display mouse cursor
    DrawText(0,0,"[Escape] pour quitter")
    DrawText(0,20,"[Clique gauche] taper la surface")
    Box(MouseX(),MouseY(),10,10,RGB(255,255,255))
    StopDrawing()
   
    ExamineKeyboard()
    ExamineMouse()
   
    If MouseButton(#PB_MouseButton_Left) And MouseX()>0 And MouseX()<#X-1 And MouseY()>0 And MouseY()<#Y-1
        Buffer(MouseX(),MouseY())=20
    EndIf
   
    cur_buffer!#X
    prev_buffer!#X
     
Until KeyboardPushed(#PB_Key_Escape)

_________________
Il y a deux méthodes pour écrire des programmes sans erreurs. Mais il n’y a que la troisième qui marche.
Version de PB : 5.45LTS - 32 bits


Dernière édition par Fig le Dim 13/Mai/2018 8:40, édité 3 fois.

Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: L'Effet 2D de vaguelette du pauvre
MessagePosté: Lun 07/Mai/2018 18:00 
Hors ligne
Avatar de l’utilisateur

Inscription: Mer 09/Nov/2005 9:53
Messages: 3957
Interessant 8)

_________________
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Portable LENOVO ideapad 110-17ACL 64 bits
Version de PB : 5.70LTS - 32 bits


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: L'Effet 2D de vaguelette du pauvre
MessagePosté: Lun 07/Mai/2018 18:12 
Hors ligne
Avatar de l’utilisateur

Inscription: Lun 17/Déc/2007 12:44
Messages: 1628
Bonjour,

Sympa j'aime bien, merci.

GallyHC

_________________
Image

Image

Image Official site of PureBasic
Image Official site of SpiderBasic

Configuration : Tower: Windows 7 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.62 (x86 et x64)


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: L'Effet 2D de vaguelette du pauvre
MessagePosté: Lun 07/Mai/2018 18:35 
Hors ligne
Avatar de l’utilisateur

Inscription: Sam 23/Sep/2006 18:32
Messages: 6626
Localisation: Isere
Cool !!! merci 8)

_________________
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: L'Effet 2D de vaguelette du pauvre
MessagePosté: Mar 08/Mai/2018 14:04 
Hors ligne

Inscription: Mer 04/Nov/2015 17:39
Messages: 991
Jolie, comprends rien mais jolie :D

_________________
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 5 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye