///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
출처: http://gogorchg.tistory.com/entry/Android-%ED%94%84%EB%A0%88%EC%9E%84-%EC%86%8D%EB%8F%84-%EC%A1%B0%EC%A0%88
쓰레드를 조절할 때, postDelay를 이용해서 프레임 속도를 조절하는데요.
Opengl을 사용할 경우 라이브러리 자체내에서 스레드를 돌리기 때문에
프레임 속도를 조절하기가 힘든 경우가 있었습니다.
그래서 이같은 소스가를 사용하는데요.
private static long targetFrameInterval = 1000L / 30L; // 프레임 속도 30
private long frame = 30L;
// 스레드 콜백 함수 (무한 반복 하는 함수)
public synchronized void onDrawFrame(GL10 gl) {
// 프레임 처음 시간 설정
long frameStartTime = System.currentTimeMillis();
//.. 뭔가 뿌려주기 위한 소스 등등.
// 프레임 시간을 넘기면 그 시간 만큼 정지
long frameEndTime = System.currentTimeMillis();
long delta = frameEndTime - frameStartTime;
if (targetFrameInterval - delta > frame) {
try {
Thread.sleep(targetFrameInterval - delta);
} catch (InterruptedException e) {}
}}
저두 구글링을 통해서 알아낸 겁니다.
알았다기 보단 퍼 온거죠..^^;;;
사이트를 잊어버려서.. 결국 이렇게 올렸다는..헤헤
'구글과인터넷 > 안드로이드' 카테고리의 다른 글
Android 무선 인터넷과 GPS 상태 확인 법 관련 (0) | 2012.12.12 |
---|---|
Android Offset까지 포함한 전체 사이즈 구하기. (0) | 2012.12.12 |
안드로이드 openglES 2.0 효과, api 등등 (0) | 2012.12.12 |