안녕하세요. 돼지왕 왕돼지입니다.
오늘은 Android OpenGL Apis 중 실제 도형을 그리는 Draw 관련 함수들, Texture 를 입히는 합수들, 그리고 Rotate 에 대해 알아보겠습니다.
gl.glDrawArrays(GLenum mode, GLint first, GLsizei count);
- array data로부터 primitive를 render.
- current matrix와 rotation matrix를 곱한다. 결론은 (x, y, z) vector에 대해 rotation
- angle은 한번 rendering 할때마다 돌리는 각도. 단위는 degree.
- x, y, z 는 합쳐져서 vector (축)을 이룸.
- 돌리는 방향은 오른속 법칙 따름.
gl.glGenTextures(GLsizei n, GLuint* textures, int offset);
gl.glBindTexture(GLenum target, GLuint texture);
- bindTexture 를 하면, state 상에 해당 texture 가 bind 된 상태.
gl.glTexParameterf(GLenum target, GLenum pname, GLfloat param);
- param 은 texture parameter 의 실제 value
pname : GL10.GL_TEXTURE_MIN_FILTER : texture mapping할때 크기가 안 맞으면 축소하는 기능.
params :
GL10.GL_NEAREST : texture가 입혀지는 녀석의 center pixel에 가장 가까운 texture element return
pname : GL10.GL_TEXTURE_MAG_FILTER : texture mapping할때 크기가 안 맞으면 확대하는 기능.
param :
pname : GL10.GL_TEXTURE_WRAP_S : parameter s 를 wrap
param :
pname : GL10.GL_TEXTURE_WRAP_T : t coordinate 를 wrap
param :
pnme:
gl.glScalef(GLfloat x, GLfloat y, GLfloat z);
gl.glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid* pointer);
GLUtils.texImage2D(int target, int level, Bitmap bitmap, int border)
- target 은 texture 이름.
- bitmap 은 실제 image.
- border 는 border 의 유무.
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Android/안드로이드] OpenGL Primitives (0) | 2012.02.15 |
---|---|
[Android/안드로이드] OpenGL APIs ( Matrix Stack, Light, Blend ) (0) | 2012.02.15 |
[Android/안드로이드] OpenGL 기초 APIs ( Face & View type ) (0) | 2012.02.14 |
[Android/안드로이드] OpenGL 기초 APIs ( Viewport & Clear ) (0) | 2012.02.14 |
[Android/안드로이드] OpenGL 기초 APIs ( Rotation, LoadIdentity, ColorPointer, Enable ) (0) | 2012.02.14 |
댓글