mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-12 14:18:31 +09:00
[Feat] (MG_Util/SelfTest, android-plugin): driver POST self-test screen
Opening a MobileGL plugin APK now shows a POST screen that probes the device's GLES and Vulkan drivers independently against MobileGL's expectations - a device may satisfy only one backend - and reports a per-backend verdict (OK / DEGRADED / UNSUPPORTED) with per-check rows. The GLES probe builds its own ES3 pbuffer context on the system driver and reuses FillInGLESCapabilities, including the indirect-draw gl_InstanceID semantics probe; the Vulkan probe checks instance/device requirements and the optional features each DirectVulkan path degrades without. Results serialize as ASCII-safe JSON through a JNI entry in libMobileGL.so; PostActivity renders them and caches the run per process (single-flight, rotation-safe). PluginActivity keeps its NoDisplay stub but the launcher entry moves to the POST screen; FCL plugin discovery reads application meta-data and is unaffected. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -193,6 +193,8 @@ set(SOURCE_FILES
|
||||
MobileGL/MG_Util/BackendLoaders/OpenGL/Loader.cpp
|
||||
MobileGL/MG_Util/BackendLoaders/Vulkan/Loader.cpp
|
||||
|
||||
MobileGL/MG_Util/SelfTest/DriverPost.cpp
|
||||
|
||||
MobileGL/MG_Util/Texture/PixelStoreProcessor.cpp
|
||||
MobileGL/MG_Util/Texture/TextureFormatProcessor.cpp
|
||||
|
||||
@@ -288,6 +290,12 @@ if (APPLE AND NOT MOBILEGL_IOS)
|
||||
)
|
||||
endif()
|
||||
|
||||
if (ANDROID)
|
||||
list(APPEND SOURCE_FILES
|
||||
MobileGL/MG_Util/SelfTest/DriverPostJni.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
set(MOBILEGL_LINK_LIBRARIES
|
||||
glslang::glslang
|
||||
spirv-cross-c
|
||||
|
||||
Reference in New Issue
Block a user