반응형
안녕하세요 돼지왕 왕돼지입니다.
오늘은 Android에서 사용하는 OpenGL 의 기초 APIs 중 Rotation, LoadIdentity, ColorPointer, Enable 에 대해 알아보겠습니다.
gl.glRoatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
- (x, y, z) vector를 기준으로 angle만큼 rotate. 여기서 angle 단위는 degree.
- 현재의 Matrix Mode에 곱해진다. ( ModelView 혹은 Projection )
- rotation 방향은 right-hand rule을 따른다. ( ex) (x,y,z)가 user를 향하면 방향은 counterclockwise)
이미지 출처 : en.wikipedia.org
gl.glLoadIdentity();
- 현재 matrix를 identity matrix로 바꾸어준다. ( 단위행렬 )
gl.glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid* pointer);
- glVertexPointer와 같은 맥락이나, color 에 대한 정의를 한다는 것만 다르다.
[Color Buffer 만드는 법 참고]
gl.glEnable(GLenum cap);
- Server-side GL capability를 enable or disable.
- cap은 capability의 약자로 다음과 같은 값이 들어올 수 있다.
GL10.GL_ALPHA_TEST : alpha testing
GL10.GL_BLEND : color buffer에 있는 color들을 blend
GL10.GL_COLOR_LOGIC_OP : 현재 설정된 logical operation을 color value에 적용
GL10.GL_CLIP_PLANEi : user-defined clipping plane i에 대항하여 clip
GL10.GL_COLOR_MATERIAL : ambient and diffuse 파라미터가 현재 color를 따라감
GL10.GL_CULL_FACE : coordinate의 winding에 따라서 polygon을 자름. (안보이게)
GL10.GL_DEPTH_TEST : depth 비교를 하여 depth buffer를 update. 이게 없으면 depth에 상관 없이 그리는 순서대로 보여진다.
GL10.GL_DITHER : color buffer에 넣기 전에 dither 시킴
GL10.GL_FOG : texturing color에 fog color를 섞음.
GL10.GL_LIGHTi : light equation 평가할 때 light i 를 포함
GL10.GL_LINE_SMOOTH : line을 그릴 때 filtering. (없으면 aliased line)
GL10.GL_MULTISAMPLE : pixel의 color 계산할때 여러개의 sample을 이용
GL10.GL_NORMALIZE : lighting 전, transformation 후에 normal vector가 normalized 됨
GL10.GL_POINT_SMOOTH : point를 filtering하여 그림 (기본은 aliased point)
GL10.GL_POINT_SPRITE_OES : point sprites를 enable
GL10.GL_POLYGON_OFFSET_FILL : polygon의 depth에 offset 주기
GL10.GL_RESCALE_NORMAL : light 전, transformation 후에 normal vector가 scale 됨
GL10.GL_SAMPLE_ALPHA_TO_CONVERAGE : alpha value가 결정되는 곳에서 임시 coverage value를 계산
GL10.GL_SAMPLE_ALPHA_TO_ONE : 모든 sample alpha value가 max 값으로 변환
GL10.GL_SAMPLE_COVERAGE : temp coverage value와 frgment coverage value가 AND 됨.
GL10.GL_SCISSOR_TEST : scissor rectangle 밖의 모든 fragment 버림
GL10.GL_STENCIL_TEST : stencil buffer update & test
GL10.GL_TEXTURE_2D : texture 적용
로그인 없이 추천 가능합니다. 손가락 꾸욱~
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Android/안드로이드] OpenGL 기초 APIs ( Face & View type ) (0) | 2012.02.14 |
---|---|
[Android/안드로이드] OpenGL 기초 APIs ( Viewport & Clear ) (0) | 2012.02.14 |
[Android/안드로이드] Activity 의 배경 Wallpaper (월페이퍼) 로 설정하기. (0) | 2012.02.10 |
[Android/안드로이드] Activity 의 Title ( 제목 ) 제거하기. (0) | 2012.02.10 |
[Android/안드로이드] Activity 배경 (반) 투명하게 만드는 방법 (0) | 2012.02.10 |
댓글