Skip to content

Android: Bump the minimum api version and hardware version for Vulkan support - #117355

Merged
Repiteo merged 1 commit into
godotengine:masterfrom
m4gr3d:bump_vulkan_requirements
Mar 19, 2026
Merged

Android: Bump the minimum api version and hardware version for Vulkan support#117355
Repiteo merged 1 commit into
godotengine:masterfrom
m4gr3d:bump_vulkan_requirements

Conversation

@m4gr3d

@m4gr3d m4gr3d commented Mar 12, 2026

Copy link
Copy Markdown
Contributor

Follows the recommendations from https://developer.android.com/games/develop/vulkan/native-engine-support#recommendations

This bumps the min supported SDK for the Android editor in order to match the minimum requirements for vulkan support. It also updates the Android editor manifest to require vulkan hardware level 1, and vulkan version 1.1.

For the Android export templates, this also bumps the requirement to vulkan version 1.1 when fallback_to_opengl3 is disabled. When fallback_to_opengl3 is enabled, vulkan version 1.1 support is made optional.

@m4gr3d m4gr3d added this to the 4.7 milestone Mar 12, 2026
@m4gr3d
m4gr3d requested a review from a team as a code owner March 12, 2026 07:30
@m4gr3d m4gr3d changed the title Bump the minimum api version and hardware version for Vulkan support Android: Bump the minimum api version and hardware version for Vulkan support Mar 12, 2026
Comment thread platform/android/export/export_plugin.cpp Outdated
@akien-mga

Copy link
Copy Markdown
Member

What percentage of current users would that exclude for e.g. the Godot Editor on Google Play?

@Alex2782

Copy link
Copy Markdown
Member

What percentage of current users would that exclude for e.g. the Godot Editor on Google Play?

2.8% active installations --> (4454 / 185570 x 100)

Bildschirmfoto 2026-03-12 um 14 33 39

These Android versions have caused approximately 450 crash/ANR events in the last 28 days.
Android 10+ versions have caused a rough estimate of more than 5k events.

@akien-mga

Copy link
Copy Markdown
Member

I'm all for upping the min recommended version to use the Vulkan driver, but doesn't this mean that it wouldn't be possible to install an app with fallback to OpenGL on these devices?

This might go against what we're trying to do in #114926, allowing users to support both Vulkan and OpenGL depending on the device. (That's not necessarily very practical for 3D games, but for 2D it can have similar visuals and helps maximize device support, which can be important for some games.)

CC @mihe @DarioSamo

@DarioSamo

DarioSamo commented Mar 13, 2026

Copy link
Copy Markdown
Contributor

I'm all for upping the min recommended version to use the Vulkan driver, but doesn't this mean that it wouldn't be possible to install an app with fallback to OpenGL on these devices?

As far as I can tell, the correct behavior here would be to remove this requirement altogether if fallback to OpenGL is enabled in the configuration, thus respecting what the user wants. Otherwise I don't see how it could ever trigger the fallback if it doesn't even let you install the application unless Vulkan is supported.

On the C++ side, you could also make the Vulkan context fail to initialize if this version requirement isn't matched (which I believe we support 1.0 at the moment), thus triggering the OpenGL fallback if enabled.

@m4gr3d
m4gr3d force-pushed the bump_vulkan_requirements branch from 7829663 to 48fcd36 Compare March 18, 2026 19:49
@m4gr3d
m4gr3d force-pushed the bump_vulkan_requirements branch from 48fcd36 to 46984cf Compare March 19, 2026 03:48
@m4gr3d

m4gr3d commented Mar 19, 2026

Copy link
Copy Markdown
Contributor Author

As far as I can tell, the correct behavior here would be to remove this requirement altogether if fallback to OpenGL is enabled in the configuration, thus respecting what the user wants. Otherwise I don't see how it could ever trigger the fallback if it doesn't even let you install the application unless Vulkan is supported.

The manifest changes are now optional (required=false) when fallback to opengl is enabled, and the warning about the min version being too low for vulkan support is also removed.

On the C++ side, you could also make the Vulkan context fail to initialize if this version requirement isn't matched (which I believe we support 1.0 at the moment), thus triggering the OpenGL fallback if enabled.

p_vulkan_requirements_met==false when the version requirement are not matched in DisplayServerAndroid::check_vulkan_global_context(...) so we skip trying to init the vulkan context, and directly fallback to opengl if enabled, or fail otherwise.

@m4gr3d
m4gr3d requested a review from DarioSamo March 19, 2026 04:03
@Repiteo
Repiteo merged commit e3173f4 into godotengine:master Mar 19, 2026
20 checks passed
@Repiteo

Repiteo commented Mar 19, 2026

Copy link
Copy Markdown
Contributor

Thanks!

@m4gr3d
m4gr3d deleted the bump_vulkan_requirements branch March 19, 2026 17:09
BendyLand pushed a commit to BendyLand/voltaire that referenced this pull request Aug 2, 2026
…ments

Android: Bump the minimum api version and hardware version for Vulkan support
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants