안드로이드 게임 개발 정보
(글 수 223)
텍스쳐를 생성하고 이미지를 바인딩하여 그리고 있는데...
좀 재밌는 현상(?) 이 발생합니다.
갤럭시S 또는 에뮬레이터의 2.2 또는 2.3.3으로 돌려보면 텍스춰 영역이 하얗게 박스로만 나타납니다.
근데 웃긴건...
아샌이나, 젤리빈에서는 이미지가 정상적으로 나타납니다....
노트2와 넥서스4에서 테스트하였습니다.
그런데 이미지가 정상으로 나오는 아이들도 홈키로 눌러서 빠져나갔다가 다시 들어가보면 갤럭시S처럼 하얗게 박스로만 나타납니다.
이유가 뭘까요...ㅠ.ㅠ
도움좀 부탁드립니다.
2013.07.14 20:48:04
감사합니다. GLSurfaceView를 사용하고 있으며
onDrawFrame함수 전에 데이터를 로딩하고 렌더링만 onDrawFrame함수에 걸어 놓았는데요
데이터 로딩도 그쪽에 onDrawFrame쪽에 물려야 하는 건가요??
2.x 대 버전문제는 별로 신경을 안썼더 텍스쳐 크기의 2의 배수화 수정을 통해 고쳤는데...
홈버튼을 통해 나갔다가 다시 돌아오는 경우만 문제가 되고있습니다.




GLSurfaceView 를 사용하셔서 하고 계시다면..
onDrawFrame 함수를 통해 실행될 때 읽으셔야 할 것으로 보입니다.
터치 이벤트등(onTouchEvent)의 처리를 하면서 읽으면 해당 하는 현상이 생기거든요.
그리고 터치등의 이벤트에서는 가급적 io작업은 안 하시는 것이 좋습니다.
그냥 플래그 온 해놓으시고 실제 처리부분에서 읽는식으로 코드를 수정하시면 문제 없이 돌아갈 것입니다.
물론 다른 문제라면 또 다른 방법의 처리가 필요하겠죠.
지금까지 제가 안드로이드에서 opengl 하면서 하얀색으로 그렇게 나오는 경우는 터치하면 읽거나 하는 부분이었습니다.