Discuss Scratch

rotuz
Scratcher
6 posts

Comment utiliser les « run without screen refresh »?

A chaque fois que je créer un bloc je sais jamais si je dois appuyer sur « run without speech refresh ou pas…

J’espère que quelqu’un pourra m’aider!

Merci!
AntonL1kesPotato
Scratcher
1000+ posts

Comment utiliser les « run without screen refresh »?

l'option “run without screen refresh” fait tourner le script le plus rapidement possible dans un seul coup. Par exemple:
définirexemplerépéter50foisajouter1ày
Si tu ne coche pas “run without screen refresh”, on peut voir le lutin se déplacer lentement, mais si c'est activé, le lutin se téléporte instantanément: il n'attend jamais. Fais aussi gaffe à ne pas mettre des blocs comme
répéterjusqu’àendattendrejusqu’à
avec l'option run without screen refresh activé sinon ça risque de rendre ton projet trèès lent et quasiment impossible à jouer.
Best-Codex
Scratcher
100+ posts

Comment utiliser les « run without screen refresh »?

Je pense que pour savoir si il faut utiliser cette option ou pas, il vaut mieux comprendre son fonctionnement précis. À chaque fois qu'il y a un bloc “attendre”, un mouvement ou entre chaque répétition d'une boucle, le projet fait une pause pendant un trentième de seconde (en plus du temps indiqué dans le bloc attendre), c'est pour ça qu'un bloc “attendre 0 secondes” crée quand même une pause dans le projet. Cette “pause” s'appelle le rafraîchissement d'écran (si le monde turbo est activé, il y aura non pas 30 mais 250 rafraîchissements d'écran par seconde). L'option “exécuter sans rafraîchissement d'écran” permet d'annuler le rafraîchissement d'écran pour tous les scripts qui se trouveront dans la définition du bloc personnalisé concerné, en exécutant les scripts aussi vite que leur lenteur le permet (certains scripts comme des scripts de 3d sont très lents même sans le rafraîchissement d'écran). Cette option est adaptée pour les calculs et autres scripts complexes qui doivent tourner le plus vite possible, ainsi que les collisions car on ne doit pas voir par exemple le joueur s'enfoncer dans une plateforme puis remonter, et si un programme nécessite beaucoup de clones, pour créer tous les clones en même temps (et bien d'autres utilisations que je peux pas tous citer). Elle est en revanche inadaptée pour les scripts d'animation ou apparentés, car si tout se déroule en une fraction de seconde on ne voit rien.

Bonne lecture de mon pavé .
Debility_Kheops
Scratcher
1000+ posts

Comment utiliser les « run without screen refresh »?

En résumé, comme dit plus haut, “run without screen refresh” (qui veut littéralement dire “exécuter sans rafraichissement de l'écran”) veut simplement dire que, si l'option est activée, le programme exécutera le bloc à l'état du projet juste avant son exécution et sans rafraichir l'écran, donc il lira le bloc le plus rapidement possible. Pour l'utiliser, il faut d'abord savoir l'utilité et la construction du bloc : si il n'y pas de boucles dans le bloc, alors activer l'option run without screen refresh ne servira pas vraiment.
rotuz
Scratcher
6 posts

Comment utiliser les « run without screen refresh »?

Merci beaucoup! Maintenant je sis comment! Ca va beaucoup m’aider!
chadoudi
Scratcher
15 posts

Comment utiliser les « run without screen refresh »?

quandjereçois QuestionEst-cequeactivercetteoptiontoutletempspeutêtredéfavorable?Merci
Best-Codex
Scratcher
100+ posts

Comment utiliser les « run without screen refresh »?

chadoudi wrote:

quandjereçois QuestionEst-cequeactivercetteoptiontoutletempspeutêtredéfavorable?Merci
Ça peut l'être, par exemple si tu mets une boucle infinie dedans ça peut devenir très lent.
chadoudi
Scratcher
15 posts

Comment utiliser les « run without screen refresh »?

Best-Codex wrote:

chadoudi wrote:

quandjereçois QuestionEst-cequeactivercetteoptiontoutletempspeutêtredéfavorable?Merci
Ça peut l'être, par exemple si tu mets une boucle infinie dedans ça peut devenir très lent.
Ok. Mon projet devient lent quand je mets :

répéterindéfinimentmonbloc
Suite à ce genre de programme, mon projet devient hyperlent. Le joueur bouge au ralenti. Es-ce que si je remplace “répéter indéfiniment” par répéter jusqu'à ce que“ aidera à rendre plus fluide ?
J'ai activé ”sans rafraichissement d'écran" sur trois blocs qui sont en boucle. Pourtant le projet est lent !
Souvent, les boucles sont omniprésentes et les supprimer est impossible. Que me conseillez-vous pour rendre le programme fluide: Que la boucle soit dans le bloc ou en-dehors du bloc ? Merci !!!

Last edited by chadoudi (July 17, 2023 19:26:28)

wilhelm43
Scratcher
1000+ posts

Comment utiliser les « run without screen refresh »?

chadoudi wrote:

Aidez-moi svp mon projet est en attente de votre réponse. Merci !!!
Sais-tu ce qu'est une performance ? La meilleure solution est d'optimiser ton projet (là, tu n"as pas précisé quel était le code, je ne peux donc pas développer).
happex
Scratcher
1000+ posts

Comment utiliser les « run without screen refresh »?

chadoudi wrote:

(#8)
Ok. Mon projet devient lent quand je mets :

Normal, vu que tu as mis une boucle indéfinie dedans. Une boucle indéfinie c'est une boucle qui ne se termine jamais, comme forever (celle que tu viens de mettre) ou une boucle qui ne se termine que si une condition impossible à remplir est remplie (en quelque sorte jamais) du coup ça ralentit le projet car le programme est censé faire quelque chose d'éternel avant qu'un seul pixel change à l'écran, et donc l'écran est littéralement freeze quand un block avec cette option s'éxecute

Powered by DjangoBB