Voglio utilizzare VAO nella mia applicazione nativa per Android.android-ndk, glGenVertexArrayOES non trovato
Il problema è, che GL_OES_vertex_array_object
è supportato e posso anche ottenere gli indirizzi dei glBindVertexArrayOES
e glDeleteVertexArraysOES
ma glGenVertexArraysOES
non viene trovato.
La presenza di GL_OES_vertex_array_object
significa che è possibile accedere a tutte queste funzioni?
Il mio codice per VAO di inizializzazione:
std::string vao = "GL_OES_vertex_array_object";
if (isExtensionSupported (vao.c_str()) != 0)
{
LOG (vao << " supported");
glBindVertexArrayOES = (PFNGLBINDVERTEXARRAYOESPROC)eglGetProcAddress ("glBindVertexArrayOES");
if (!glBindVertexArrayOES)
LOG ("Can't get proc address: glBindVertexArrayOES");
glDeleteVertexArraysOES = (PFNGLDELETEVERTEXARRAYSOESPROC)eglGetProcAddress ("glDeleteVertexArraysOES");
if (!glDeleteVertexArraysOES)
LOG ("Can't get proc address: glDeleteVertexArraysOES");
glGenVertexArraysOES = (PFNGLGENVERTEXARRAYSOESPROC)eglGetProcAddress ("glGenVertexArraysOES");
if (glGenVertexArraysOES)
LOG ("Can't get proc address: glGenVertexArraysOES");
}
else
{
LOG (vao << " not supported");
}
Naturalmente ottengo il messaggio di log
Can't get proc address: glGenVertexArraysOES
mio Android.mk
(accorciato un po '):
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := smart
LOCAL_SRC_FILES := Base/Node.cpp
...
LOCAL_LDLIBS := -llog -landroid -lGLESv2 -lEGL
LOCAL_STATIC_LIBRARIES := nv_and_util
include $(BUILD_SHARED_LIBRARY)
$(call import-add-path, C:/NVPACK/TDK_Samples/tegra_android_native_samples_v10p00/libs/jni)
$(call import-module,nv_and_util)
modello di dispositivo Samsung i9003 con Android 2.3.5
Cosa stai cercando di ottenere? Per favore copia alcuni snippet di codice. Come è il tuo makefile? Su quali basi fai affidamento? –
Rileggi, per favore, ho aggiornato la domanda. –
Il tuo dispositivo è "reale"? Spero tu non usi un emulatore Android che simula un Samsung i9003, giusto? Ho trovato [questo post] (http://www.cocos2d-x.org/issues/1229) a cui potresti essere interessato. "Attenzione: OpenGL ES 2.0 non è attualmente supportato dall'emulatore Android. Devi avere un fisico dispositivo di test con Android 2.2 (API Livello 8) o superiore per poter eseguire e testare il codice di esempio in questo tutorial. " –