ich schreibe mir gerade einen Raycaster in python anhand dieses Tutorials. Bis jetzt läuft alles super, aber nun möchte ich Texturen implementieren. Dazu muss ich eine Bilddatei mit den Maßen 64x64 Pixel in 64 Streifen mit der Breite von jeweils einem Pixel schneiden (siehe "TEXTURE MAPPED WALLS" im Tutorial).
An dieser Stelle bin ich leider gescheitert. Ich habe es mit der Funktion:
pygame.transform.chop(Surface, rect): return Surface
probiert, aber irgendwas mache ich falsch. Ich weiß weder genau was diese Funktion macht, noch was für Parameter ich übergeben muss (irgendwas stimmt mit dem RECT nicht). Hier mal mein nicht funktionierender Code:
Code: Alles auswählen
import pygame
pygame.init()
screen = pygame.display.set_mode((320, 200))
t = []
wallTexture = pygame.image.load('tile.jpg')
wallTexture = wallTexture.convert()
def chopTexture():
for i in range(64):
#chop left side
slice = pygame.transform.chop(wallTexture, (0, 0, i, 64))
#chop right side
slice = pygame.transform.chop(slice, (i+1, 0, 63-i, 64))
#save slice in array
t.append(slice)
chopTexture()
for i in range(64):
screen.blit(t[i], (i,0))
pygame.display.flip()
Hat jemand eine Idee warum das nicht funktioniert oder einen Codebeispiel für transform.chop???
Danke schon mal