계속하다
이전 섹션에서는 삼각형과 사각형을 그리는 방법을 배웠습니다. 이 섹션에서는 삼각형과 사각형에 두 가지 다른 유형의 음영을 추가하는 방법을 설명합니다. 평면 채색을 사용하여 고정된 색상으로 사각형을 칠합니다. 부드러운 색상 지정을 사용하여 삼각형의 세 꼭짓점의 서로 다른 색상을 혼합하여 멋진 색상 혼합을 만듭니다.
이전 섹션에서 glDraw를 계속 수정합니다.
절차 glDraw();
시작하다
glClear(GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT); // 화면과 깊이 버퍼를 지웁니다.
glLoadIdentity(); //현재 모델 관찰 행렬을 재설정합니다.
glTranslatef(-1.5, 0.0, -6.0); // 왼쪽으로 1.5단위 이동하여 화면 6.0으로 이동
glBegin(GL_TRIANGLES); // 삼각형 그리기
//glColor3f(r,g,b). 괄호 안의 세 가지 매개 변수는 순서대로 빨간색, 녹색, 파란색 색상 구성 요소입니다.
//값 범위는 0,0부터 1.0까지 가능합니다. 앞서 언급한 화면 지우기 배경 명령과 유사합니다.
//색상을 빨간색으로 설정합니다(순수한 빨간색, 녹색 없음, 파란색 없음).
//다음 코드 줄은 삼각형의 첫 번째 꼭지점(삼각형의 위쪽 꼭지점)을 설정하고,
//그리고 현재 색상(빨간색)을 사용하여 그립니다. 이제부터 그려진 모든 개체는 빨간색으로 표시됩니다.
//빨간색을 다른 것으로 바꿀 때까지.
glColor3f(1.0, 0.0, 0.0); //현재 색상을 빨간색으로 설정
glVertex3f(0.0, 1.0, 0.0); // 상단 정점
//첫 번째 빨간색 정점이 설정되었습니다.
//다음으로 두 번째 녹색 정점을 설정합니다. 삼각형의 왼쪽 아래 꼭지점은 녹색으로 표시됩니다.
glColor3f(0.0, 1.0, 0.0); //현재 색상을 녹색으로 설정
glVertex3f(-1.0, -1.0, 0.0) // 왼쪽 아래
//삼각형의 오른쪽 아래 꼭지점입니다. 색상을 파란색으로 설정
//glEnd()가 나타난 후 삼각형이 채워집니다.
//근데 각 꼭지점마다 색상이 다르기 때문에 각 모서리에서 색상이 뿜어져 나오는 것처럼 보이지만,
//그리고 정확히 삼각형의 중심에서 만나면 세 가지 색이 서로 섞이게 됩니다. 이것은 부드러운 음영입니다.
glColor3f(0.0, 0.0, 1.0); //현재 색상을 파란색으로 설정
glVertex3f(1.0, -1.0, 0.0); // 오른쪽 아래
glEnd(); // 삼각형 그리기 끝
glTranslatef(3.0, 0.0, 0.0); // 오른쪽으로 3단위 이동
//이제 우리는 보라색이라는 단조로운 색상의 사각형을 그립니다.
//기억해야 할 가장 중요한 점은 현재 색상을 설정한 후 그려진 모든 것이 현재 색상이라는 것입니다.
//지금부터 만드는 모든 프로젝트에는 색상이 사용됩니다.
//텍스처 매핑을 완전히 사용한 경우에도
//glColor3f를 사용하여 텍스처의 색상 톤을 조정할 수 있습니다.
//잠깐... 나중에 얘기하자.
//(ㅋㅋㅋ원본은 파란색인데 저는 보라색을 좋아해요)
glBegin(GL_QUADS); // 정사각형 그리기
glColor3f(0.6, 0.2, 2.0); //현재 색상을 보라색으로 설정
glVertex3f(-1.0, 1.0, 0.0); // 왼쪽 위
glVertex3f(1.0, 1.0, 0.0); // 오른쪽 위
glVertex3f(1.0, -1.0, 0.0) // 왼쪽 아래
glVertex3f(-1.0, -1.0, 0.0); // 오른쪽 아래
glEnd(); // 정사각형 그리기 끝
끝;