안드로이드의 기본 구조를 보면 library에 SGL이란 것이 있다.
SGL은 "Scalable Graphic Library"의 약자로 안드로이드에서 Low Level Graphic (2D Graphic)을 담당하고 있는 것 같다. native code로 rendering (vector graphic rendering)을 담당하고 있다고 하는데 프레임워트의 High Level Graphic이라고 하는 Window Manager나 Surface Manager와 연결되어 있는 것 같다.
솔직히 Nucleus 기반의 프로젝트에서 GDI API를 만들기도 해서 이부분이 상당히 궁금하다.
Web에서 검색해보면 Skia란 곳에서 개발되었고 2005년에 Google이 합병했다고 하는 것 외에 거의 알려진 정보가 없다.
일단 적용된 프로젝트는 안드로이드와 크롬(Chrome)인 것 같다.
기본 기능은 텍스트, 기하학(Geometries) 모형, 이미지 그리는 2D 라이브러리이고, 다음 기능을 지원하는 것 같다.
- 3x3 matrices w/ perspective
- antialiasing, transparency, filters
- shaders, xfermodes, maskfilters, patheffects
일단 관련 라이브러리는 libsgl.so 이다.
공식적인 위치는
http://code.google.com/p/skia/
크롬이 발표되면서 관련 소스가 공개되었다. 관련 포스팅은
http://www.kandroid.org/board/board.php?board=kandroidshow&command=body&no=25
http://www.atoker.com/blog/2008/09/06/skia-graphics-library-in-chrome-first-impressions/
시간 나면 한번 분석해 봐야 겠다.
http://blog.daum.net/baramjin/16010901
'Platform > Android' 카테고리의 다른 글
[Android] Android 의 개요 (0) | 2010.03.18 |
---|---|
[Android] Boot Animation (0) | 2010.03.18 |
[Android] Surface Flinger의 쓰레드 (1) | 2010.03.18 |
[Android] Surface Flinger와 초기화 과정 (0) | 2010.03.18 |
[Android] EGL 이란? (0) | 2010.03.18 |