Discuss Scratch

julianlepoulet
Scratcher
47 posts

Aide optimisation performance

J'ai essayer de coder de la génération procédural , j'ai a peu près réussie mais je ne peut pas avoir une map au dessus de 100 bloc car sa lag , et après 300 block bah ya pas assez de clone , ducoup je me suis dit que j'alait charger que ce qu'on est sensée voire , juste je ne sait pas comment faire sa…
IMAG0
Scratcher
1000+ posts

Aide optimisation performance

Utilise un seul sprite qui estampille sur toutes les positions visibles plutôt que des clones. Pour savoir si une position est visible, il faut rajouter une condition à la création des blocks qui se base sur l'abscisse et l'ordonnée (de la map) et les “plus grand que” et “plus petit que”. Par contre, je ne sais pas comment implémenter ça concrètement dans ton code, j'avoue que les noms de tes variables ne m'aident pas
julianlepoulet
Scratcher
47 posts

Aide optimisation performance

ouai je sait j'ai fait un peu sa vite même moi des foi je ne sait meme plus a quoi corresponde certaines variables… mais comment je fait alor car les bloc “si touche <Level> alor” ne marche pas quand c'est estampiller c'est pour sa j'ai utiliser des clones
IMAG0
Scratcher
1000+ posts

Aide optimisation performance

Estampiller va automatiquement au dernier plan. Vérifie que tu n'as pas de sprites derrière ton niveau.
Lu_Li_49
Scratcher
500+ posts

Aide optimisation performance

Le problème c'est que estampiller met du temps a s'exécuter donc ça peut lagger aussi.
julianlepoulet
Scratcher
47 posts

Aide optimisation performance

mais même si j'utilisait le bloc
stamp
sa marcherais pas car j'utilise “si <Touche le Level> alor” alor que avec des truc stamp sa le détect pas , le seul moyen c'st de détécter quelle sont les blocs visible a la caméra et afficher que eux mais c dur
wilhelm43
Scratcher
1000+ posts

Aide optimisation performance

IMAG0 wrote:

(#2)
Utilise un seul sprite qui estampille sur toutes les positions visibles plutôt que des clones. Pour savoir si une position est visible, il faut rajouter une condition à la création des blocks qui se base sur l'abscisse et l'ordonnée (de la map) et les “plus grand que” et “plus petit que”. Par contre, je ne sais pas comment implémenter ça concrètement dans ton code, j'avoue que les noms de tes variables ne m'aident pas

C'est même mieux d'utiliser des variables pour simuler les positions et de s'y déplacer ensuite, les mouvements sur Scratch sont assez gourmands en performances.

Sinon, un découpage en tronçon (le principe « diviser pour régner ») peut être une bonne idée en fonction de ton projet.

Powered by DjangoBB