2014-04-09 3 views
0

내 게임이 숨겨져있을 때 문제가 발생하여 다시 시작될 때 지연이 있습니다. 게임을 다시 시작할 때마다 시간이 오래 걸립니다. 이것은 자산이로드되는 시작 화면을 포함하여 모든 화면 세트에서 발생합니다. 게임 화면이나 스플래시 화면 또는 메뉴 화면으로 게임을 재개 할 때 지연에 차이가 없습니다. 즉, 많은 자산이로드 되어도 아무 문제가 없습니다. 나는 "Cut the Rope 2"라는 다른 게임을 테스트했는데 그러한 지연이 없다면 즉시 게임을 다시 시작할 수 있습니다.LibGdx 다시 시작 지연

내가 처음 응용 프로그램을 시작할 때 화면에 바로 뛰어 오르는 지연이 없다는 것을 추가하고 싶습니다. 또한 뒤로 버튼을 누르면 전체 응용 프로그램이 다시 시작되고 지연도 없습니다. 즉, 응용 프로그램이 다시 시작될 때 지연 만 있고 응용 프로그램이 처음 실행되거나 다시 시작될 때 전혀 지연이 없음을 의미합니다.

는 UPDATE :

내 문제는 정확히 아래 링크에 게시 것과 같은 것입니다. 문제가 해결되지 않았습니다.

http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=11433&p=51515&hilit=resume+slow#p51515 그래서 문제가 내 게임이 다시 시작되면이가 호출 될 것입니다 :

assetManager.finishLoading(); 

내가 이력서에 그 코드를 삽입하지 않았다(). 위 링크에서 자동으로 호출되는 것을 읽었습니다. 타블렛에서 "뒤로 버튼"을 누른 다음 게임을 다시 시작하면 응용 프로그램을 실행하는 데 시간이 걸립니다. "잠금 버튼"을 누른 다음 게임을 다시 시작하면 즉시 게임을 시작하지만 멈 춥니 다. 버튼을 눌렀을 때 두 가지 다른 행동이 있습니다. 나는 즉시 게임을 시작하고 동결하지 않고 내 로딩 화면을 재생하는 것을 선호합니다. 이 일을 할 수있는 방법이 있습니까?

+0

게임에 '질감'이 있다고 생각하세요? 일부 정보는 다음과 같습니다 (http://code.google.com/p/libgdx-users/wiki/Textures#Managed_&_Unmanaged_(dynamic)_Textures_in_LibGDX). 확실하지는 않지만'Texture'가 언로드되고'Texture'가 관리되면'resume()'에 자동으로로드됩니다. 이로드 프로세스에는 다소 시간이 걸립니다. 따라서 일시 중지/다시 시작에서 수동으로 언로드하거나로드하지 않더라도 언로드되므로 자동으로 다시로드해야합니다. – Springrbua

+0

나는 질감뿐만 아니라 소리도 가지고있다. 또한 AssetManager를 사용하여 파일을로드하고 응용 프로그램이 숨겨져있을 때 파일을 수동으로 언로드하지 않습니다. 이 경우에 당신이 말하는 것입니다. 그러면 어떻게 지연을 예방할 수 있습니까? 다른 게임에서는 "Defender 2"도 테스트 했으므로이 문제가 발생하지 않습니다. 게임은 3 초 이상 기다리지 않고 시작됩니다. 또한 지연은 일정하지 않으며, 게임을 다시 시작할 때마다 증가합니다. 1 초에서부터 시작하여 2 초를 기다려야합니다. – draziw

+0

또 다른 주목할 점은 로고와 텍스트 만있는 스플래시 화면으로 다시 시작하더라도이 문제가 발생한다는 것입니다. 그것을로드하는 데 오래 걸리지 않을 것입니다. Cut the Rope 2와 비교하면 게임 맵으로 즉시 이동합니다. – draziw

답변

0

이 문제에 대한 해결책은 게임이 재개 될 때 자동으로 호출되지 않습니다 이런 식으로 AssetManager.finishLoading()에서

Texture.setAssetManager(manager); 

를 호출하는 것입니다. 따라서 자산을 다시로드하지 않습니다. AssetManager.update는 수동으로 호출해야합니다.