2012-05-15 10 views
0

내 게임에서 스프라이트 시트를 사용하고 내가 수행 한 연구에서이 코드 조각을 발견했습니다.스프라이트 시트에서 이미지 읽기 Java

BufferedImage bigImg = ImageIO.read(new File("sheet.png")); 
// The above line throws an checked IOException which must be caught. 

final int width = 10; 
final int height = 10; 
final int rows = 5; 
final int cols = 5; 
BufferedImage[] sprites = new BufferedImage[rows * cols]; 

for (int i = 0; i < rows; i++) 
{ 
    for (int j = 0; j < cols; j++) 
    { 
     sprites[(i * cols) + j] = bigImg.getSubimage( 
      i * width, 
      j * height, 
      width, 
      height 
     ); 
    } 
} 

이 스 니펫이 스프라이트 시트를 배열로 변환하는 방법을 알고 있지만이 배열에 액세스하는 방법을 알고 있습니다. 그냥 sprites[i];일까요?

또한 사전에

int spritename = glgentextures; 
{ 
sprites[i]; 
} 

덕분 OpenGL을 질감으로로드 스프라이트를 결합하는 것이 가능할 것이다.

답변

1

sheet.png의 특정 이미지에 액세스하려면 sprite [rowNum * cols + colNum]을 사용할 수 있습니다.

+0

감사합니다. 내가 보여준 것처럼 glgentextures에서이 호출을 사용할 수 있습니까? –

+0

예, glgentextures 기능과 함께 사용할 수 있습니다. – Denzil

+0

좋아, 여러 가지 방법을 시도했지만 제대로 작동하지 않을 수 있으며 누구나 읽을 수있는 코드를 가지고있어 제대로 할 수있는 방법을 배우므로 어떻게해야하는지 알 수 있습니다. –

관련 문제