2013-11-20 8 views
4

아하 !!! 나는이 모든 파이썬 문제에 익숙하지 않고 "애니메이션"을 만드는 방법을 아는 유일한 방법은 개별 그림을 사용하는 것입니다 (파일 당 1 개의 그림과 같이). 글쎄, 필자는 필자에게 필요한 스프라이트 시트를 가지고있다. 문제는 그것이 스프라이트 시트라는 것이다. 나는 시간을 보내고 싶지 않고 각 스프라이트를 자른다.파이 게임에서 스프라이트 시트는 어떻게 사용합니까?

자세한 내용은 입니다.은 python 및 pygame입니다. 8 월에 언어 학습을 시작한 것은 매우 천천히 움직이는 수업입니다 ... 그래서 당신이하고있는 일을 설명 할 수 있다면 앞으로의 프로젝트에서 그렇게 할 수 있습니다. 정말 고맙겠습니다. 또한 파이썬 2와 파이썬 3 사이에 약간의 구문 차이가 있기 때문에 파이썬 3.2를 사용하고 있습니다.

고맙습니다 !!!! 이것은 나를 많이 도울 것입니다.

+2

멋진 imrit (그리고 이해하기 쉬운) 멋진 스프라이트 시트 클래스가 있습니다. http://www.pygame.org/wiki/Spritesheet –

+0

문제를 일으키는 코드를 게시하십시오. 또한 당신이하려는 일에 대한 더 많은 설명은 좋을 것입니다. (개인적으로, 나는 스프라이트 시트가 무엇인지 전혀 몰랐습니다.) –

+1

앞으로 Google 또는 설명서를 사용해 볼 수 있습니다. Google이나 pygame 위키에서 "pygame sprite sheet"또는 전체 질문 제목을 검색하면 Joran과 내가 찾은 링크가 나타납니다. 그렇게하면 두 개의 단락을 추가로 작성할 필요가 없습니다. 또한 Google은 인간과 같은 3 분이 아니라 0.19 초 만에 응답 할 수 있습니다. 게다가, 우리는 당신의 SO 질문이 미래의 검색자를 위해 더 유용한 위키 페이지를 때리고 결국 모든 것을 느리게 만들 수 있습니다. – abarnert

답변

3

정말 할 매우 어려운 일이 아니다 ...하지만 난 빠른 검색에서 찾은 최고의 샘플 코드 또한 당신을 위해 작업을 수행 가능한 라이브러리입니다 : 바로 파이 게임 위키에서 spritesheet.

그럼, 그냥 사용하여 시작할 수 있습니다. 유스 케이스에 맞춘 예제를 제공 하겠지만 코드가 어떻게 보이고, 무엇을하고 싶은지 전혀 알지 못했기 때문에 이미 그 페이지에있는 것보다 더 나은 것을 줄 수는 없습니다. 그래서 :

import spritesheet 
... 
ss = spritesheet.spritesheet('somespritesheet.png') 
# Sprite is 16x16 pixels at location 0,0 in the file... 
image = ss.image_at((0, 0, 16, 16)) 
images = [] 
# Load two images into an array, their transparent bit is (255, 255, 255) 
images = ss.images_at((0, 0, 16, 16),(17, 0, 16,16), colorkey=(255, 255, 255)) 
… 

한편, 당신이 어떻게 작동하는지 이해하는 것이 그 spritesheet 클래스의 (매우 간단) 코드를 읽을 수 있습니다.

+0

죄송합니다. 정말 바보 같은 질문이지만, 스프라이트 시트에 스프라이트가 어디에 있는지 알아내는 방법을 알고 계시나요? 마찬가지로 김프 또는 그 밖의 값을 찾아야합니까? –

+0

애니메이션 스프라이트 시트의 이미지 부분은 고정 된 크기 여야합니다. 스프라이트의 수에 따라 시트의 해상도를 나누기 만하면됩니다. 스프라이트 수가 너무 많으면 그냥 간단한 루프를 사용하여 –

+0

을 핑합니다. 가끔은 tweek해야합니다. –

관련 문제