Skip to content

core: Enable Vulkan surface transforms by capability#4320

Merged
louwers merged 1 commit into
maplibre:mainfrom
sargunv:split/vulkan-surface-transform
Jun 1, 2026
Merged

core: Enable Vulkan surface transforms by capability#4320
louwers merged 1 commit into
maplibre:mainfrom
sargunv:split/vulkan-surface-transform

Conversation

@sargunv

@sargunv sargunv commented Jun 1, 2026

Copy link
Copy Markdown
Collaborator

When working on #4315, I noticed when the device was rotated to portrait, tile clipping on vector layers was broken because the surface reported a transform, but we had hardcoded false here on non-android platforms.

Rather than expand "if android" to "if android or openharmony", I think the right fix is to trust the capabilities reported by the device. If that's wrong on some device, we should work around for that target, rather than making capability detected the exception.

I check the git blame and didn't find any particular reason to hardcode false for non-android targets.

Explored with GPT-5.5 / Codex CLI, but this patch was coded by me because I didn't like the AI's workaround (expand the ifdef guard, add defensive call in getRotation)

@github-actions github-actions Bot added core Changes that affect the C++ core of MapLibre Native Vulkan labels Jun 1, 2026
@sargunv
sargunv marked this pull request as ready for review June 1, 2026 02:29
@github-actions

github-actions Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Bloaty Results 🐋

Compared to main

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [ = ]       0  [ = ]       0    TOTAL

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-4320-compared-to-main.txt

Compared to d387090 (legacy)

    FILE SIZE        VM SIZE    
 --------------  -------------- 
   +51% +59.1Mi  +467% +27.9Mi    TOTAL

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-4320-compared-to-legacy.txt

@github-actions

github-actions Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results ⚡

Benchmark                                                     Time             CPU      Time Old      Time New       CPU Old       CPU New
------------------------------------------------------------------------------------------------------------------------------------------
OVERALL_GEOMEAN                                            +0.0071         +0.0072             0             0             0             0

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/benchmark-results/pr-4320-compared-to-main.txt

@louwers
louwers enabled auto-merge (squash) June 1, 2026 10:43
@github-actions

github-actions Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Bloaty Results (iOS) 🐋

Compared to main

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [ = ]       0  [ = ]       0    TOTAL

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results-ios/pr-4320-compared-to-main.txt

@louwers
louwers merged commit 9341970 into maplibre:main Jun 1, 2026
50 of 51 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core Changes that affect the C++ core of MapLibre Native Vulkan

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants