PyGame에서 2d sidecroller를 작업 중입니다. 각 맵에 대해 하나의 텍스처를 사용합니다 (텍스처의 실제 크기).
그런 다음이 코드로 이미지를로드합니다.
sprite = pygame.image.load("Maps/MapTesting.png")
sprite.convert()
sprite = pygame.transform.scale(sprite,
(sprite.get_width()*6, sprite.get_height()*6))
보시다시피, 텍스처는 실제 맵 텍스처를 만들기 위해 6 번 날려집니다. 평균적으로이 텍스처는 약 4500x800입니다. 이 텍스처는 전체 화면이 더럽 기 때문에 (화면이 옆으로 스크롤되므로) 매 프레임마다 화면에 블리 팅되어야합니다 . 우리는이 코드를 사용하여 그렇게합니다 :
screen.blit(sprite, (0, 0),
(cameraposx, cameraposy, windowheight, windowwidth))
그리고 작동합니다. 문제는 속도가 느리다는 것입니다. 저렴한 PC에서 빈약 한 40 FPS를 얻습니다. 실제 AI / 객체가 진행되지 않고 60 FPS를 목표로하고 있습니다. 어떻게하면 속도를 높일 수 있습니까?
위의 코드는 삭제되고 컨텍스트에서 제외됩니다. 전체 코드는 여기에서 찾을 수 있습니다 : https://github.com/nightcracker/PyGG2
마지막으로 위의 이미지는 8 비트처럼 보일 수 있지만 게임에 더 많은 비트 심도가 필요한 요소가 있습니다.