2012-10-28 5 views
0

저는 Mac 개발에 익숙하지 않습니다. 나는 현재 윈도우 (direct3d 사용)를 사용하는 3d 프로그램을 시작했고 OpenGL을 사용하여 Mac으로 확장하려고합니다. 나는 현재 창을 초기화하고 OpenGL과 창을 사용하여 그려주는 방법에 대한 코드를 가지고있다. 나는이 응용 프로그램의 Windows 부분을 mac 인터페이스로 대체하는 가장 단순한 방법을 찾고 있습니다. 내가이 연구 때어떻게하면 C++과 OpenGL을 사용하여 Mac에서 창을 만들 수 있습니까?

bool SystemClass::InitializeWindows(OpenGLClass* OpenGL, int& screenWidth, int&screenHeight){ 
WNDCLASSEX wc; 
DEVMODE dmScreenSettings; 
int posX, posY; 

ApplicationHandle = this; 
m_hinstance = GetModuleHandle(NULL); 

m_applicationName = L"Engine"; 

wc.style   = CS_HREDRAW; 
wc.lpfnWndProc = WndProc; 
wc.hInstance  = m_hinstance; 
wc.hIcon   = LoadIcon(NULL, IDI_WINLOGO); 
wc.hIconSm  = wc.hIcon; 
wc.hCursor  = LoadCursor(NULL, IDC_ARROW); 
wc.lpszMenuName = NULL; 
wc.lpszClassName = m_applicationName; 
wc.cbSize  = sizeof(WNDCLASSEX); 

    //etc 
    //set full screen mode 
    //set window to front 
    //hide mouse 

은 내가 객관적-C 또는 코코를 사용하여 많은 사람들을 보았다 내가 원하는 결과를 얻을 목적-C 또는 코코를 사용해야합니까? 만약 그렇다면 여전히 C++ 라이브러리 나 objective-C++를 사용할 수 있습니까?

마지막으로 mac에서 messagebox()와 가장 비슷한 기능은 무엇입니까? NSGetCriticalAlertPanel() 사용했지만 작동하도록 얻을 수없는 것 (대개 해당 라이브러리를 포함해야하는 것을 찾을 수 없기 때문에).

추 신 : xcode 컴파일러를 사용하고 있습니다. 거기에 더 좋은 것이 있거나 선호한다면 더 좋습니다 (xcode의 큰 팬이 아닙니다).

+1

OpenGL을 사용하여 창을 만드는 방법은 렌더링을위한 API 일뿐입니다. 윈도우 생성은 특정 플랫폼 코드 일 것이고, 결과적으로 OpenGL 렌더링 컨텍스트를 생성하는 A (사과) GL 함수를 호출하게 될 것입니다. – stonemetal

+2

코코아가 아니라 코코 야. 그리고 MacOS X는 메시지 기반 OOP 시스템에 근본적으로 뿌리를두고 있기 때문에 Objective-C (/ ++)를 사용해야합니다. 그리고 Cocoa는 MacOS X에서 Win32 API가 윈도우에 대해하는 것입니다. – datenwolf

+0

초보자 (및 이와 유사한 포트)의 경우, 학습 곡선이 상당히 커지면서 코코아를 사용하지 않는 것이 좋습니다. 대신 SDL과 같은 라이브러리를 사용하십시오. 모든 코멘트에 대해 – TheAmateurProgrammer

답변

0

this SDL - openGL tutorial으로 시작할 수 있습니다. 최신 버전입니다. 당신은 아마도 당신이 가지고있는 것 XCode을 설치해야합니다. 프로젝트에 inlcude SDL을 설치하는 방법에 대한 자습서에 자세한 내용이 있습니다. everthing이 초기화되고 사용 준비가 끝나면 general sdl tutorials here을 많이 찾을 수 있습니다. sdltutorial on openGL에 집중할 수 있습니다.

this SDL FAQ 일 수도 있습니다.

관련 문제