2017-03-26 1 views
0

현재 PC 용 Java 게임을 작성 중이며 리소스 (이미지, 소리, 데이터 등)의 위치를 ​​묻습니다. 게임의 메인 디렉토리에있는 게임의 주요 .exe 파일을Java 게임 리소스 구성

GameName 
├─ Resource Directory 
│ └── ... 
├─ More Resources 
│ └── ... 
. 
. 
└── GameName.exe 

자원은 다른 디렉토리로 구성되어 있습니다, 그리고 아마도 몇 가지 다른 파일, 대부분의 PC 게임의 경우, 게임의 메인 디렉토리는 다음과 같이 보인다. 그러나 Intellij 프로젝트에서 프로젝트의 resources 디렉토리에 모든 리소스를 넣었습니다. 내 게임을 .jar 파일로 빌드하면 resources 디렉토리의 모든 리소스가 .jar 파일에도 압축됩니다.

내 모든 리소스를 게임의 기본 디렉토리에있는 다른 하위 디렉토리로 분리하려는 이유가 있습니까? 게임의 .jar 파일에 모든 리소스를 저장하는 것보다 간단합니까? 그렇다면 어떻게하면 Intellij가 모든 리소스를 .jar에 저장하지 못하게 할 수 있습니까?

답변

1

사람들은 업데이트하기가 쉽기 때문에 주로 사람들이 구분합니다. 항아리에 모든 것을 가지고 있다면 그것은 리소스를 업데이트 할 때마다 대체해야하는 하나의 큰 파일이 될 것입니다. 그러나 자산을 별도로 저장하는 경우 실행기는 게임을 건드리지 않고 필요한 파일 만 업데이트 할 수 있습니다.

IntelliJ에 Jar 파일을 넣지 않도록 말할 수 없습니다. 거기에 넣는 것을 중단해야합니다. Jar 파일을 별도의 디렉토리에 두지 말고 getClass().getResource() 대신 File 오브젝트를 사용하고 엽니 다. 파일을 사용하기 전에 파일이 존재하는지 확인해야합니다.