compensation circulaire régions du HTML5 Canvas

Il semble que le seul moyen pour effacer une région à partir d'une toile est d'utiliser le clearRect() la commande - j'ai besoin de vider un cercle (je suis en masquant les zones à partir d'un rempli de toile, point lumières dans ce cas précis) et malgré toutes les tentatives, il ne semble pas possible.

J'ai essayé de dessiner un cercle avec une valeur alpha de 0, mais tout simplement rien ne semble, à moins que l'alpha était plus élevé (ce qui est contraire au point :P) - je supposer que, parce que un contex.fill() dessine comme un ajout plutôt que de les remplacer.

Des suggestions sur comment je pourrais être en mesure de (rapidement) claire des cercles pour masque fins?

  • Il y a deux bonnes réponses ici, mais j'aimerais voir une capture d'écran de ce que vous voulez accomplir, juste au cas où il y a de plus performant et de façon intelligente d'aller accomplir la même tâche
  • j'ai accepté le clip() réponse mais simplement pour satisfaire votre curiosité (et peut-être que vous avez une meilleure technique!) voici ce que j'ai fais: j'ai rendu 2D point des lumières à un tampon. J'ai rendu la mémoire tampon sur mon jeu en utilisant les Alléger le style, c'acheives grand effet! Mais je voulais aussi assombrir tout n'est pas allumé à l'ambiante à la valeur - cela ne tire pas à Éclaircir il se doit donc d'être un autre tirage. Toutefois rendu une autre ambiante tampon assombrit les lumières que je ne voulais pas, donc je veux "masque" les allumés régions dans ma ambiante de la mémoire tampon 🙂
  • Merci. J'ai répondu avec un peu d'info qui pourrait être utile en fonction de ce que vous faites