OpenGL - Day 1 #1 (Drawing Function)

원종운·2020년 9월 8일

기본요소

  • 채움 영역 (Filled Area)
  • 꺽은 선 (Poly Line)
  • 표시 꺽은 석(Poly Marker)
  • 문자


기본요소 외양

  • 패턴, 색상, 두께
  • 원형 캡(Round Cap), 버트 캡(Butt Cap), 확장 캡(Projection Cap)
  • 원형 연결(Round Join), 베벨 연결(Bevel Join), 마이터 연결(Miter Join)
  • 채움 다각형(Filled Polygon), 점층적 변화(Gradation), 사선, 윤곽선 제거


상태변수

  • GPU를 통해 화면에 그래픽 오브젝트를 그리기 위해서는 다음과 같은 처리과정을 거칩니다.

OpenGL 기본 구조


GLUT, OpenGL 좌표계

  • OpenGL의 좌표계는 좌측 하단부터 시작되나, GLUT의 좌표계는 좌측 상단부터 시작됩니다.

물체 렌더링

정육면체

void glutSolidCub(GLdouble size) 
// 정육면체의 모든 면을 그립니다.
void glutWireCub(GLdouble size) 
// 정육면체의 선(선분)만 그립니다.

원구

void glutSolidSphere(GLdouble radius, GLint slices, GLint stacks)
// 원구의 모든 면을 그립니다.
void glutWireSphere(GLdouble radius, GLint slices, GLint stacks)
// 원구의 테두리 선만 그립니다.

원환체

void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, GLint rings) 
// 토러스의 모든 면을 그립니다.
void glutWireTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, GLint rings) 
// 토러스의 선만 그립니다.

원뿔

void glutSolidCone(GLdouble base, GLdouble height, GLdouble slices, GLint stacks)
//원뿔의 모든 면을 그립니다.
void glutWireCone(GLdouble base, GLdouble height, GLdouble slices, GLint stacks)
//원뿔의 선만 그립니다.

정사면체

void glutSolidTetrahedron(void);
// 정사면체의 모든 면을 그립니다.
void glutWireTetrahedron(void);
// 정사면체의 선만 그립니다.

정이십면체

void glutSolidIcosahedron(void);
// 정이십면체의 모든 면을 그립니다.
void glutWireIcosahedron(void);
// 정이십면체의 선만 그립니다

차주전자

void glutSolidTeapot(GLdouble size);
// 차주전자의 모든 면을 그립니다.
void glutWireTeapot(GLdouble size);
// 차주전자의 선만 그립니다.
profile
Java, Python, JavaScript Lover

0개의 댓글