Surface de dessin la plus rapide?
Re: Surface de dessin la plus rapide?
C'est le full screen le plus rapide.
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
...
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
J'ai testé ton code. C'est trés fluide. Pas une seule saccade.
A quoi sert Box(0,0,10,10,clr) ?
Pour ce type d'application le canvas est très bien.
Si c'est un jeu que tu souhaites faire alors oui le FullScreen sera le plus rapide.
A quoi sert Box(0,0,10,10,clr) ?
Pour ce type d'application le canvas est très bien.
Si c'est un jeu que tu souhaites faire alors oui le FullScreen sera le plus rapide.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- JohnJohnsonSHERMAN
- Messages : 648
- Inscription : dim. 13/déc./2015 11:05
- Localisation : Allez, cherche...
- Contact :
Re: Surface de dessin la plus rapide?
Ah merde, le code n'était pas corrigé.... Bref maintenant ca y est, j'ai enlevé les chemins en dur.
Dis mois quelle valeur de fps tu as falsam (le petit chiffre en haut à gauche).
Le Box(0,0,10,10,clr) c'est un petit carré qui s'affiche toutes les deux frames pour voir la vitesse d'affichage. Chez moi j'ai 8 fps avec un canvas.
Dis mois quelle valeur de fps tu as falsam (le petit chiffre en haut à gauche).
Le Box(0,0,10,10,clr) c'est un petit carré qui s'affiche toutes les deux frames pour voir la vitesse d'affichage. Chez moi j'ai 8 fps avec un canvas.
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
- Windows 10 x64 - PB 5.61 x64
- Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
22JohnJohnsonSHERMAN a écrit :Dis mois quelle valeur de fps tu as falsam (le petit chiffre en haut à gauche).
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- JohnJohnsonSHERMAN
- Messages : 648
- Inscription : dim. 13/déc./2015 11:05
- Localisation : Allez, cherche...
- Contact :
Re: Surface de dessin la plus rapide?
le même mais sans chemin en dur... ca me piquait les yeux aussi
22 Fps?! Pas mal... moi j'en suis à 8... T'as quoi comme processeur?
Ah aussi, pense tu qu'avec un windowed screen je pourrais remonter autour de 20 fps sans enlever le dégradé?
22 Fps?! Pas mal... moi j'en suis à 8... T'as quoi comme processeur?
Ah aussi, pense tu qu'avec un windowed screen je pourrais remonter autour de 20 fps sans enlever le dégradé?
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
- Windows 10 x64 - PB 5.61 x64
- Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé
Re: Surface de dessin la plus rapide?
Bonjour Falsam,Falsam a écrit :Sort pas des trucs comme ça sans regardé le context du code.
1) Prouve-le que je n'ai pas regardé le "contexte du code", cela m'intéresse.
2) S'il te plaît, t'est-il possible de faire moins de fautes?
Sors pas des trucs comme ça sans regarder le contexte du code.
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
@Ollivier:
Supprime ton debug et le delay(25)
Tu as répondu pour une fois avec une réponse tellement courte et compréhensive que je suis certain que tu n'as pas testé le zip de John.1) Prouve-le que je n'ai pas regardé le "contexte du code", cela m'intéresse.
Gna Gna Gna. C'est facile quand on manque de répondant ^^ En général je fais attention mais en ce moment je ne suis pas en forme.2) S'il te plaît, t'est-il possible de faire moins de fautes?
Processeur i3 3Ghz 4 Go RamJohnJohnsonSHERMAN a écrit :T'as quoi comme processeur?
Supprime ton debug et le delay(25)
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- JohnJohnsonSHERMAN
- Messages : 648
- Inscription : dim. 13/déc./2015 11:05
- Localisation : Allez, cherche...
- Contact :
Re: Surface de dessin la plus rapide?
Même sans ca reste en dessous des 20fps avec un canvas... en bouffant le proco a cause de l'absence de delay...
C'est bizarre... je testerai sur mon PC avec un I4 demain, mais là je suis sur mon portable qui a un AMD A8.
Je retire le delay et je vous donne les fps
Edit : ca reste à 8 fps
C'est bizarre... je testerai sur mon PC avec un I4 demain, mais là je suis sur mon portable qui a un AMD A8.
Je retire le delay et je vous donne les fps
Edit : ca reste à 8 fps
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
- Windows 10 x64 - PB 5.61 x64
- Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
Essaye avec l'environnement 2D dans ce cas pour voir.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
- JohnJohnsonSHERMAN
- Messages : 648
- Inscription : dim. 13/déc./2015 11:05
- Localisation : Allez, cherche...
- Contact :
Re: Surface de dessin la plus rapide?
Je te tiens au courant, alors. Peut-être que la lib 2D Drawing n'est pas trés rapide pour les dégradés ?
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
- Windows 10 x64 - PB 5.61 x64
- Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé
- JohnJohnsonSHERMAN
- Messages : 648
- Inscription : dim. 13/déc./2015 11:05
- Localisation : Allez, cherche...
- Contact :
Re: Surface de dessin la plus rapide?
Je passe à 25 fps, et le dégradé ne fonctionne plus, le Sherman n'est plus transparent non plus... 
Voici le nouveau code :

Voici le nouveau code :
Code : Tout sélectionner
IncludeFile "bass.pbi"
IncludeFile "bass2.pbi"
UsePNGImageDecoder()
InitSprite()
Enumeration
#Sherman
#Fond
#Window
EndEnumeration
Define File.s
Global streamID, width,height, ShermanX,ShermanY, FPScount,FPS
#width = 800
#height = 600
Declare TH_Background(param)
If CountProgramParameters() = 0
File = OpenFileRequester("Choisissez un fichier à lire","","Musique|*.wav;*.mp3;*.ogg|Wave|*.wav|MP3|*.mp3",0)
Else
File = ProgramParameter(0)
EndIf
LoadImage(#Sherman,"M4_Sherman_early_normandy.png")
ShermanX = (#width/2)-(ImageWidth(#Sherman)/2)
ShermanY = (#height/2)-(ImageHeight(#Sherman)/2)
OpenWindow(#Window, 0, 0, #width,#height,"Sherman - ",#PB_Window_ScreenCentered | #PB_Window_SystemMenu)
;CanvasGadget(#Fond,0,0,#width,#height)
AddWindowTimer(#Window,1,1000)
retval_init = BASS_Init(-1,48000,0,WindowID(#Window),0)
streamID = BASS_StreamCreateFile(#False,File,0,0,#BASS_UNICODE | #BASS_SAMPLE_FLOAT | #BASS_SAMPLE_LOOP)
BASS_ChannelPlay(streamID,0)
CreateThread(@TH_Background(),1)
;- Boucle principale
Repeat
event = WaitWindowEvent()
Select event
Case #PB_Event_Timer
If EventTimer()= 1
FPS = FPScount
FPScount= 0
EndIf
EndSelect
Until event = #PB_Event_CloseWindow
;-Procédures
Procedure TH_Background(param)
Protected vol,volf.f,clr.i
OpenWindowedScreen(WindowID(#Window),0,0,800,600)
Repeat
vol = BASS_ChannelGetLevel(streamID)
vol = (vol & $FFFF)
volf = (vol/32768)*255
If clr = $FFFFFF
clr = 0
Else
clr = $FFFFFF
EndIf
FPScount + 1
StartDrawing(ScreenOutput())
Box(0,0,#width,#height,$000000)
FrontColor($000000)
BackColor(RGB(volf,volf,volf))
DrawingMode(#PB_2DDrawing_Gradient)
CircularGradient(#width/2,#height/2,500)
Box(0,0,#width,#height,RGB(volf,volf,volf))
DrawingMode(#PB_2DDrawing_Default)
Box(0,0,10,16,clr)
DrawText(11,0,Str(FPS),$000000,$FFFFFF)
DrawingMode(#PB_2DDrawing_AlphaBlend)
DrawImage(ImageID(#Sherman),ShermanX, ShermanY)
StopDrawing()
FlipBuffers()
Delay(25)
ForEver
EndProcedure
"Le bug se situe entre la chaise et le clavier"
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
Votre expert national en bogage et segfaults.
CPU : AMD A8 Quad core - RAM 8Gb - HDD 2To
- Windows 10 x64 - PB 5.61 x64
- Linux Ubuntu 16.04 LTS x64 (dual boot) - PB pas encore réinstallé
- falsam
- Messages : 7323
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Surface de dessin la plus rapide?
Essayes de cette maniereFPS : 68
Code : Tout sélectionner
IncludeFile "bass.pbi"
IncludeFile "bass2.pbi"
UsePNGImageDecoder()
InitSprite()
InitKeyboard()
Enumeration
#Sherman
#Fond
#Window
EndEnumeration
Define File.s
Global streamID, width,height, ShermanX,ShermanY, FPScount,FPS
Global starttime, time
#width = 800
#height = 600
Declare TH_Background()
If CountProgramParameters() = 0
File = OpenFileRequester("Choisissez un fichier à lire","","Musique|*.wav;*.mp3;*.ogg|Wave|*.wav|MP3|*.mp3",0)
Else
File = ProgramParameter(0)
EndIf
OpenWindow(#Window, 0, 0, #width,#height,"Sherman - ",#PB_Window_ScreenCentered | #PB_Window_SystemMenu)
OpenWindowedScreen(WindowID(#Window), 0, 0, #width, #height)
LoadSprite(#Sherman, "M4_Sherman_early_normandy.png", #PB_Sprite_AlphaBlending)
retval_init = BASS_Init(-1,48000,0,WindowID(#Window),0)
streamID = BASS_StreamCreateFile(#False,File,0,0,#BASS_UNICODE | #BASS_SAMPLE_FLOAT | #BASS_SAMPLE_LOOP)
BASS_ChannelPlay(streamID,0)
;- Boucle principale
starttime=ElapsedMilliseconds()
Repeat
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_CloseWindow
End
EndSelect
Until Event=0
ClearScreen(RGB(0, 0, 0))
TH_Background()
ExamineKeyboard()
FPScount + 1
If time>1000
FPS = FPScount
FPScount=0
starttime=ElapsedMilliseconds()
EndIf
FlipBuffers()
time=ElapsedMilliseconds()-starttime
Until KeyboardPushed(#PB_Key_Escape)
;-Procédures
Procedure TH_Background()
Protected vol,volf.f,clr.i
vol = BASS_ChannelGetLevel(streamID)
vol = (vol & $FFFF)
volf = (vol/32768)*255
If clr = $FFFFFF
clr = 0
Else
clr = $FFFFFF
EndIf
StartDrawing(ScreenOutput())
FrontColor($000000)
BackColor(RGB(volf,volf,volf))
DrawingMode(#PB_2DDrawing_Gradient)
CircularGradient(#width/2,#height/2,500)
Box(0,0,#width,#height,RGB(volf,volf,volf))
DrawingMode(#PB_2DDrawing_Default)
Box(0,0,10,16,clr)
DrawText(11,0,Str(FPS),$000000,$FFFFFF)
StopDrawing()
DisplayTransparentSprite(#Sherman, (ScreenWidth() - SpriteWidth(#Sherman))/2, (ScreenHeight() - SpriteHeight(#Sherman))/2)
EndProcedure
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Surface de dessin la plus rapide?
Je me demande entre le canvas, la fenêtre, le screen et le screen fenêtré lequel est le plus rapide pour y dessiner ?
Ollivier a écrit :C'est le full screen le plus rapide.
ben Olivier a parfaitement répondu a la question !falsam a écrit :Sors pas des trucs comme ça sans regarder le contexte du code.
la surface la plus rapide c'est bien le Full Screen !!
analyse de code ou pas, n'y changera rien !

le FullScreen est géré par les cartes Graph !
directx ou openGl .... le canvas, n'est qu'un gadget , il ne beneficit pas de l’accélération materiel
voir pire, il depend carrement du bon vouloir des events windows ....
donc , Olivier a carrement raison , il n'y a pas a tortiller ....
apres que le code de Sherman, soit naze , c'est possible, mais il n'empeche que la reponse a la question
est parfaitement juste
@sherman
apres avoir vite fait regardé le code , sans le tester
je vois que tu utilises un delay et un thread .....meme un timer au debut
mais pourquoi faire ??
en matière de code type "demo" , il faut rester super simple
pas de timer ou le moins possible , pas de thread .... réserve les threads pour des opérations de calcul ou de chargement
sinon franchement ça n'a pas lieu d'etre dans le cadre d'un code type 'demo'
et le delay() c'est un truc a n'utiliser qu'en de rare cas ... (boucle principale pour relacher les event )
mais franchement si ont peut eviter,.....

il existe WaitWindowEvent(Delay) qui est preferable ...
Dernière modification par Zorro le sam. 01/oct./2016 19:09, modifié 4 fois.
Re: Surface de dessin la plus rapide?
Je ne perds pas mon temps à considérer que l'informatique est un acquis, mais une chance. Je te cite aussi :Falsam a écrit :Tu as répondu pour une fois avec une réponse tellement courte et compréhensive que je suis certain que tu n'as pas testé le zip de John.
Prends ton temps à retrouver sur ce forum les "fois" que tu as négligées, et qui forment le résultat de te voir écrire un mensonge. Tu me fais perdre du temps pour rien. Je te rappele que le "truc" que j'ai écrit est exact : si tu pouvais préciser la durée minimum d'attente avant de répondre des autres membres, pourquoi pas?Falsam a écrit :[...]pour une fois[...]
Ce n'est pas parce que tu n'es pas en forme qu'il faut jeter le moindre des courroux sur quiconque. Ce sont de basses méthodes. Bon rétablissement, à toi qui, sûrement, vit le martyre.Falsam a écrit : Gna Gna Gna. C'est facile quand on manque de répondant ^^ En général je fais attention mais en ce moment je ne suis pas en forme.