Тестируете мое приложение OpenGL ES 3.2 без виртуального устройства? - PullRequest
0 голосов
/ 29 марта 2020

У меня есть приложение Android, которое полностью выполняет эти две функции:

extern "C"
{
    JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj,  jint width, jint height);
    JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj);
};

JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj,  jint width, jint height)
{
    setupGraphics(width, height);
}

JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj)
{
    renderFrame();
}

, и я должен реализовать то, что setupGraphics и renderFrame делают.

Мой P C работает очень медленно с Android Studio, как только виртуальное устройство включено. Я хотел бы, во-первых, протестировать мое приложение непосредственно как программу на C ++ без необходимости использования целевого устройства. Таким образом, я могу исправить все, что нужно исправить, и когда я думаю, что все работает, я могу проверить это снова на целевом устройстве.

Проблема: я не знаю, как создать рендеринг l oop в C ++ с библиотекой OpenGL ES 3.2. Это возможно? Или я обречен всегда проверять мой код OpenGL ES 3.2 на виртуальном устройстве?

1 Ответ

0 голосов
/ 30 марта 2020

Я использовал PVRVFrame для добавления кодовых путей OpenGLES в сборки Windows моих игр. Я только дошел до 3,0, но я предполагаю, что поддержка 3,2 достаточно. Я считаю, что производительность в GLES заметно ниже, чем в DX11 или Vulkan, но наши относительно требовательные (для мобильных) игры по-прежнему можно играть на ПК среднего уровня.

Этот учебник сейчас немного устарел, но может быть полезен - в нем упоминаются некоторые другие варианты запуска GLES на Windows (я когда-либо пробовал только PVRVFrame, поэтому я не знаю, как оно сравнивается).

...