2008-12-08 18 views
5

Opracowanie dla iPhone'a było moim pierwszym doświadczeniem z obiektywem c i pierwszym dogłębnym doświadczeniem z xcode. Jak trudno byłoby przenieść aplikację na telefon iPhone openGLES do pulpitu OSX przy użyciu OpenGL? Nie pytam o interfejs użytkownika - oczywiście nie ma odpowiednika interfejsu dotykowego Kakao Touch na pulpicie. Pytam konkretnie o warstwy delegatów aplikacji i openGLES. Czy są jakieś poważne przeszkody? Czy jest to proste, jak po prostu tworzenie nowego delegata aplikacji w projekcie typu kakao?przenoszenie aplikacji openGLES na OS X?

Odpowiedz

8

Zacząłem zaglądać w to samo i wydaje się, że ciężkie aplikacje typu OpenGL należałyby do najłatwiejszych do przeniesienia na komputery Mac. Prawie wszystko w OpenGL ES jest obecne w OpenGL na pulpicie (z wyjątkiem niektórych elementów o stałym punkcie), więc kod może pozostać taki sam.

Sposób obsługi OpenGL na telefonie iPhone odbywa się za pośrednictwem warstwy Core Animation (CAEAGLLayer), a nie określonego widoku. Dlatego powinieneś być w stanie przenieść to do aplikacji komputerowej opartej na systemie Leopard, chociaż musisz przekonwertować wszystkie odwołania do klas EAGL na ich odpowiedniki OpenGL (na przykład EAGLContext do NSOpenGLContext). Można renderować do CAOpenGLLayer, która jest wyświetlana samodzielnie lub użyć tej warstwy do przywrócenia niestandardowego NSView.

Podstawowa struktura aplikacji kakao na pulpicie będzie inna niż w przypadku kakao Touch, ale powinieneś być w stanie zacząć od jednego z szablonów Xcode i dodać z powrotem komponenty z aplikacji Cocoa Touch.

Jeszcze raz nie zrobiłem tego dla mojej aplikacji, ale wygląda to dość prosto.