У меня есть функция, которая предназначена для генерации случайного звездного фона с использованием подушки, которая затем используется для использования в pyglet:
from pyglet.image.codecs.png import PILImageDecoder
from PIL import Image, ImageDraw
import pyglet
import random
def generate_stars(map_size):
img = Image.new('RGB', map_size, color='black')
draw = ImageDraw.Draw(img)
for _ in range(3):
for x in range(0, map_size[0] + 1, 3):
for b in range(400, map_size[1] + 1, 400):
y = random.randint(b - 400, b)
draw.rectangle((x,y,x,y),fill='white')
return pyglet.image.load(img, decoder=PILImageDecoder())
window = pyglet.window.Window(1280,800)
stars = generate_stars((1280,800))
Однако при выполнении этого я получаю ошибку:
Traceback (most recent call last):
File "/Users/jonaskosinski/Desktop/Python/Game/main_loop.py", line 18, in <module>
stars = generate_stars((1280,800))
File "/Users/jonaskosinski/Desktop/Python/Game/main_loop.py", line 15, in generate_stars
return pyglet.image.load(img, decoder=PILImageDecoder())
File "/usr/local/lib/python3.7/site-packages/pyglet/image/__init__.py", line 180, in load
file = open(filename, 'rb')
TypeError: expected str, bytes or os.PathLike object, not Image