2010년 3월 25일 목요일

Xcode 에서 OpenGL 시작하기

OpenGL SuperBible이라는 책을 보는데..
똑같은 코드가 Xcode에서 돌리면 제대로 안나오데요..

다음은 Xcode에서 OpenGL코드를 작성할 수 있는 방법에 대한 순서 입니다.
물론 개발 플랫폼은 MacOS 겠죠.

[ 프로젝트 생성 ]
1. Xcode에서 File/New Project... 를 선택

2. Mac OS X에 있는 Other를 선택
3. Empty Project 선택
4.Choose 클릭

5. 프로젝트를 저장할 경로 지정
6.Save As :란에 프로젝트 명 지정하고 Save 선택

[ 타겟 추가 ]
1.Groups & Files의 Targets에서 마우스 오른쪽 버튼 클릭

2. Add / New Target... 선택
3. Mac OS X 에서 Cocoa 선택
4. Application 선택 하고 Next 클릭
5. Target Name에 적당한 이름을 주고 Finish 클릭
6. 추가한 타겟의 Info 창이 뜰 것임
7. 맨 아래로 스크롤 하여 GCC_PREFIX_HEADER를 더블 클릭
8. 내용을 삭제한 후 OK 클릭
9. Info 윈도우를 닫음

[ Framework 추가 ]
1. Groups & Files의 Products 폴더에서 마우스 오른쪽 버튼 클릭
2. Add / Existing Frameworks ... 선택
3. 프레임워크 목록에서 커맨드버튼을 누른채로 GLUT.framework 와 OpenGL.framework를 선택한 후 Add 클릭
4. 다이얼로그 박스가 보인다면 그냥 기본설정으로 놔둔채로 Add 클릭

[ File 추가]
1. Products 폴더에서 마우스 오른쪽 버튼 클릭
2. Add / New File ... 선택
3. Mac OS X 에서 C and C++ 선택
4. C File 선택 하고 Next클릭
5. 이름은 main.c 로 한다.
5. Finish 클릭

근데 뭐.. 다 하고 보니깐 딴게 문제가 아니라
아직 OpenGL에 대해서 잘 모르기 때문에 정확히는 모르겠지만..
glutInit 함수를 안써줘서 안나오는 거던데..

잘 돌아가는가 간단히 테스트해 보려면 아래의 코드를 활용하시기바랍니다.
결과는 600x480 사이즈의 그냥 꺼먼 화면만 뜹니다.
 
#include <stdlib.h>

#include <GLUT/glut.h>

void display(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    
    glutSwapBuffers();
}

void reshape(int width, int height)
{
    glViewport(0, 0, width, height);
}

void idle(void)
{
    glutPostRedisplay();
}

int main(int argc, char** argv)
{
    glutInit(&argc, argv);
    
    glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH);
    glutInitWindowSize(640, 480);
    
    glutCreateWindow("GLUT Program");
    
    glutDisplayFunc(display);
    glutReshapeFunc(reshape);
    glutIdleFunc(idle);
    
    glutMainLoop();
    return EXIT_SUCCESS;
}




참고 : http://mitchallen.com/iphone/archives/50
main.c 코드 출처 : http://blog.onesadcookie.com/2007/12/xcodeglut-tutorial.html



그럼 OpenGL 열공하시기 바랍니다.

댓글 없음:

댓글 쓰기

내 블로그 목록

관심 사용자