2017-12-17 6 views
2

저는 게임 개발에 새로운 경험이 있으며 전화 게임을 개발하고 싶습니다. libgdx에서 복잡한 애니메이션을 만들려고합니다. libgdx는 거의 300 개의 이미지 (각각 655 × 1160, 42MB 크기)로 구성되어 있습니다. textureAtlas 이미지의 크기가 얼마나되는지 또는 얼마나 많은 사진을 찍을 수 있습니까? 한 번에 7 개의 애니메이션을 렌더링하는 경우 문제가 발생 하나 그 중 2 개는이 기술 (활성화 된 기술)만큼 복잡하지만 다른 부분은 단순한 문자 이동입니까?TextureAtlas 크기에 대한 제한이 있습니까?

답변

2

아틀라스는 당신이 가지고있는만큼 큰 수 있습니다. RAM이 많을수록 더 큰지도를로드 할 수 있습니다.

Android의 경우 한 번에 많은 할당량이 필요하므로 42MB 큰 이미지를로드하는 데 문제가있을 수 있습니다. Stack Overflow에 관한 여러 게시물이 그 문제에 관한 것입니다. 로딩을 시도하고 어떤 일이 일어나는지 확인해야합니다. OutOfMemoryException로 게임이 중단되면 작게 만들어야합니다.

Android는 하드웨어에 많은 변형이있는 플랫폼 (일부 장치에는 총 512MB의 RAM이 있으며 다른 일부에는 6GB가 있음) 플랫폼 기반으로로드 할 수있는 것에 "제한이 없습니다". 어떤 장치와 RAM이 얼마나 사용 가능한지 (여유 RAM)

TextureAtlas에 실제로 포함 된 내용 (30 개 이미지와 2 개의 거대한 이미지의 복잡한 애니메이션)은 중요하지 않습니다. 오랫동안로드하고 게임 충돌없이 메모리에 저장하면 게임을 렌더링하는 데 문제가 발생하지 않습니다. 프레임 수는 떨어질 수 있지만 (하드웨어 및 실제로 렌더링하는 정도에 따라 다름) 한 번에 수천 개의 이미지를 렌더링하지 않으면 문제가되지 않습니다.

매니페스트에 android:largeHeap="true"을 추가하는 것도 도움이됩니다.