2016-07-27 21 views
1

Wie kann ich ein EGLNativeWindowType Objekt in der iOS-Plattform erhalten? oder das Äquivalent des folgenden Android-Codes erreichen?Wie erhält man EGLNativeWindowType in der iOS-Plattform?

Um ein wenig mehr Einblick zu geben, portiere ich derzeit eine native Android-App auf iOS, die eine einzelne C-Bibliothek gemeinsam nutzt, während das iOS-Projekt selbst in Objective-C geschrieben ist. Das Projekt verwendet auch EGL und nicht EAGL.

Der existierende Quellcode ist Standard C, benutzt aber Androids NDK; ein EGLSurface Objekt wird mit EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, EGLNativeWindowType win, const EGLint *attrib_list)

EGLNativeWindowType win = AndroidMainGetAndroidActivity()->app->window; 
EGLSurface eglSurface = eglCreateWindowSurface(e_eglDisplay, config, win, NULL); 

definiert Ich habe keine Unterlagen in Bezug auf EGLNativeWindowType und iOS gefunden.

Antwort

0

iOS verwendet EAGL als Schnittstelle zwischen OpenGL ES und dem zugrunde liegenden Fenstersystem. EAGL benötigt iOS, wie es EGL für Android benötigt, um über OpenGL ES zu zeichnen. Daher können Sie die EGL-API nicht für iOS verwenden.

Unterschiede zwischen ihnen und wie sie funktioniert sehr gut beschrieben in an article.