import pygame, sys import numpy as np from matplotlib.colors import hsv_to_rgb def hsv2rgb(hsv): #hsv_to_rgb(359./360.,1,1) -> (255,0,0) return (255*hsv_to_rgb(hsv)).astype(int) pygame.init() screen = pygame.display.set_mode((400, 300),pygame.HWSURFACE|pygame.HWPALETTE|pygame.DOUBLEBUF , depth=8) #screen = pygame.display.set_mode((400, 300),pygame.HWSURFACE|pygame.HWPALETTE|pygame.DOUBLEBUF|pygame.FULLSCREEN , 8) print(F'Display Info: {pygame.display.Info()}') if not pygame.display.list_modes(depth=8): print('8bpp gar nicht möglich?!') palette = [hsv2rgb(((265-x)/360,1,1)) for x in np.arange(256)] screen.set_palette(palette) done = False clock = pygame.time.Clock() while not done: for event in pygame.event.get(): if event.type == pygame.QUIT: done = True pressed = pygame.key.get_pressed() if pressed[pygame.K_ESCAPE]: done = True noise = np.random.randint(0,255,(400,300),dtype='uint8') pygame.surfarray.blit_array(screen,noise) pygame.display.flip() clock.tick(60) ##60 Hz pygame.quit() sys.exit()