town 예제
-LEFT/RIGHT/UP/DOWN-key 좌/우/앞/뒤로 움직일 수 있음.
-space bar로 원위치로 reset함.
1114364892.cpp
Category Archives: OpenGL
geometry – cube, glutShapes, gluQuadrics
simple solar – hierachical transformation
transformation 예제
circle 예제
circle을 cos/sin으로 만들어내어 그릴 수도 있습니다. [geometry.cpp 참고]
[#M_ more.. | less.. |void drawCircle(float radius, int step)
{
     float theta = (float) (2*M_PI/step);
     glBegin(GL_TRIANGLE_FAN);// FILLED CIRCLE
     for (int i=0; i<step; i++) 
    {
        float x = radius * cos(theta * i);
        float y = radius * sin(theta * i);
        glVertex3f(x, y, 0);
    }
    glEnd();
}_M#]
circle은 gluDisk 또는 gluPartialDisk로 그릴 수 있습니다.
[#M_ more.. | less.. |void drawCircle(float radius, int step)
{
     gluDisk(quadric, 0.0, radis, step, 4);
}
int main(int argc, char *argv[])
{
…
    quadric = gluNewQuadric();
    gluQuadricDrawStyle(quadric, GLU_FILL);
…
}
_M#]
1207557968.cpp
paint 예제
Your first OpenGL program
.NET2005
- 메뉴에서 File->New->Project->Visual C++ 템플릿->Win32->Win32 Console Application를 선택한 후 “프로젝트 이름(예를 들어, clear)”을 적고 확인버튼을 누른다.
 - Console Application과 Empty project을 선택하고 Finish버튼을 누른다.
 

- Project->Add New Items->Visual C++ 템플릿->C++ File을 선택한 후 “소스코드 이름(예를 들어, clear.cpp)”를 적고 확인버튼을 누른다.
 - 실제 코드 (clear.cpp) 추가
 
[#M_ more.. | less.. |/* minimal program to open & clear a window */
#include <GL/glut.h>
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
glFlush();
}
void keyboard(unsigned char key, int x, int y)
{
 switch (key)  
 {    
 case 0x1B:    
 case ‘q’:    
 case ‘Q’:      
  exit(0);    
  break;  
 }
}
int main(int argc, char** argv)
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
 glutInitWindowSize(200, 200); 
 glutInitWindowPosition(0,0);
 glutCreateWindow(argv[0]);
 glutDisplayFunc(display);
 glutKeyboardFunc(keyboard); 
 glutMainLoop();
}
_M#]
- Project->Properties(ALT+F7)->Configuration Properties->Linker->Input에 Additional Dependencies에 opengl32.lib glu32.lib glut32.lib을 넣는다.
 

VC++ 6.0
- 메뉴에서 File->New->Project탭->Win32 Console Application를 선택한 후 “프로젝트 이름(예를 들어, clear)”을 적고 확인버튼을 누른다.
 - An empty project을 선택하고 Finish버튼을 누른다.
 

- Project->Add To Project->New->Files탭->C++ Source File을 선택한 후 “소스코드 이름(예를 들어, clear.cpp)”를 적고 확인버튼을 누른다.
 - 실제 코드 추가
 
- Project->Settings(ALT+F7)->Link탭->Category의 Input에 Object/library modules에 opengl32.lib glu32.lib glut32.lib을 넣는다.
 

display list 예제
display list 예제 – 36개의 눈사람 그림. (DL을 쓴 경우 vs. DL을 안쓴 경우)
1277443450.cpp
OPENGL display list예제
 torus.c
pick 예제
pick 예제
pick.cpp (selection mode)
pick2.cpp (bounding box)
pick3.cpp (back buffer)
1393676017.cpp
OPENGL pick 예제
 pickdepth.c
	