2011-07-06 4 views
1

그래서 저는 LWJGL을 사용하여 Java로 기본 게임을 만들고 있습니다. 나는 .jar 안에 압축되어있는 .png 파일을 가지고 있습니다.이 파일은 .jar 안에있는 동안 분명히 텍스처에 사용할 수 없습니다. .jar 파일을 가져 오는 생각할 수있는 유일한 방법은 이미지 개체를 만드는 것입니다..jar로 압축 된 .png의 데이터를 LWJGL의 텍스처로 사용하려면 어떻게해야합니까?

getResource를 사용하여 시도했지만 현재 설정 한 방법은 FileInputStream을 만드는 경로를 호출하는 것입니다. (저는 PNG의 FileInputStream을 사용하고 LWJGL 텍스처를 직접 생성하는 PNGDecoder 클래스를 사용하고 있습니다.) .jar에서 .png를 정확히 읽을 수 없습니다.

누구나 내가 PNGDecoder를 행복하게 만들 수있는 방법을 알고 있거나 포장 된 .png를 LWJGL 텍스처로 변환하는 다른 방법을 알고 있습니까?

답변

2

PNGDecoder은 아마도 FileInputStream이 아닌 InputStream을 수락합니다. getClass().getResourceAsStream(...)을 사용하면 먼저 .jar 파일에서 .png 파일의 InputStream을 직접 추출 할 필요없이 가져올 수 있습니다.

+0

+1 디코더가 일반 InputStream 대신 FileInputStream을 필요로하는 경우 바보입니다. – leonbloy

+0

디코더에는 InputStream (FileInputStream 일 필요는 없음)이 필요하지만, 언급 한 것처럼 @hfs를 지정하면 getResource에서 생성하지 않고 매력처럼 작동합니다. 무리 감사! –

관련 문제