Я хочу сделать частично прозрачный круг в качестве индикатора области эффекта, но я не нашел никакого способа сделать это в Pygame.
Я попытался передать кортеж rgba 4 в качестве аргумента (как предложено в этом посте ), но это никак не изменило прозрачность. Кроме того, согласно этому другому посту , метод вообще не должен работать, так как draw не принимает альфа-значения. Это противоречивая информация.
pygame.draw.circle(screen, (255, 0, 0, 100), (x, y), r)
Я также пытался создать новую поверхность, нарисовав круг на этой поверхности, а затем перетащив новую поверхность на мой игровой экран (как предложено в этом посте ). Это дает мне полупрозрачный круг в соответствии с просьбой, но поскольку поверхности в Pygame являются прямоугольными, это также дает мне серый прямоугольник вокруг круга, который я не хочу.
s = pygame.Surface((1000, 1000))
s.set_alpha(100)
pygame.draw.circle(s, (255, 0, 0), (x, y), r)
screen.blit(s, (0, 0))
Есть ли способ сделать этот круг полупрозрачным, не добавляя никаких других видимых эффектов на мой экран?