2010-05-24 3 views
1

(최신) Android SDK를 시험해보고있어 이상한 동작을 발견했습니다.Android : 가로 모드에서 프레임 속도가 떨어짐

저는 SurfaceView 응용 프로그램 Activity, SurfaceView 및 렌더링 스레드를 작성했습니다. 실제로 그림을 그리는 것은 아니며, 프레임 속도를 한 번에 한 번만 logcat에 기록합니다. 세로 모드로 실행하면 약 60fps가됩니다. 그러나 가로로 뒤집 으면 프레임 속도가 약 30fps로 떨어집니다.

나는 또한 LunarLender 샘플에서이를 테스트했으며 유사한 결과를 얻었습니다. 필자는 물리적 장치가 없기 때문에 모든 테스트가 에뮬레이터에서 수행됩니다.

무엇이 전부입니까? 나는 이것에 대해 Google에서 언급 한 것을 찾지 못했지만, 다른 누구에게도 그렇게 경험 한 적이 있습니까? 에뮬레이터의 단점입니까 아니면 실제 하드웨어에도 적용됩니까?

+0

조경에서 FPS의 문제점은 무엇입니까? – sniurkst

답변

0

풍경 모드에서 추측하면 렌더링 된 콘텐츠의 양쪽에 여분의 "빈"공간이 있습니까? 그렇다면 화면을 페인트하기위한 처리량이 효과적으로 증가 할 수 있습니다. 그것이 프레임 율이 50 % 감소해야하는지는 모르지만 가능합니다.

또 다른 추측 - 조경 모드는 주로 비디오 시청을 목적으로하기 때문에 의도적으로 감속 될 수 있습니다. 30fps 콘텐츠에 대해 60fps까지 올라갈 이유는 없습니다. 구성?

+0

SurfaceView는 (Activity.setContentView를 통해) 전체 화면을 덮고 실제로 아무 것도 실제로 그려지지 않습니다 (캔버스가 잠기거나 잠기지는 않지만). 다시 말하지만, SDK의 샘플에서도 똑같은 일이 발생하므로 다른 사람이이를 확인할 수 있으면 앱화 할 수 있습니다. 엄밀히 말하면 풍경과 풍경은 정확히 같은 화면 공간을 가지고 있습니다 (약간 적게, 심지어 더 작음). 고의적으로 fps를 줄이면 : 비디오에는 의미가있을 수 있지만 풍경에서는 자연스럽게 느껴지는 게임은 어떨까요? 구성은 표준 out-of-the-box : HVGA Android 2.1입니다. – uj2