Feature/surface format setting#540
Feature/surface format setting#540xXJSONDeruloXx wants to merge 3 commits intoutkarshdalal:masterfrom
Conversation
Adds configurable surface format option to fix compatibility issues with games like Doom Eternal on Snapdragon 8 Elite devices. ## Changes - Added 'Surface Format' dropdown to Graphics tab (Edit Container) - Options: RGBA8 (default) | BGRA8 - Stored in graphicsDriverConfig as 'surfaceFormat' key - State management integrated with existing graphics config flow ## UI Changes **GraphicsTab.kt:** - Added SettingsListDropdown for surface format selection - Positioned after Resource Type dropdown (arm64ec builds) - Updates graphicsDriverConfig.surfaceFormat on selection **ContainerConfigDialog.kt:** - Added surfaceFormatIndex state (MutableIntState) - LaunchedEffect loads surfaceFormat from config (default: RGBA8) - Syncs state with graphicsDriverConfig changes **ContainerConfigState.kt:** - Added surfaceFormatIndex: MutableIntState - Added surfaceFormats: List<String> ## Resources **strings.xml:** - Added 'Surface Format' label **arrays.xml:** - Added surface_format_entries array: [RGBA8, BGRA8] ## Configuration Surface format is persisted in Container.graphicsDriverConfig: Tested with Doom Eternal on SD8Elite - switching to BGRA8 fixes launch. Resolves compatibility issues where certain games require specific surface format on ARM devices. Co-authored-by: Kurt
|
No actionable comments were generated in the recent review. 🎉 📝 WalkthroughWalkthroughThe pull request introduces surface format selection to the container configuration system. A new dropdown UI element in the graphics settings allows users to choose between RGBA8 and BGRA8 surface formats, with the selection tracked in state, persisted to configuration, and passed to the graphics driver via environment variables. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
https://discord.com/channels/1378308569287622737/1472071060785725635
Summary by cubic
Adds a Surface Format option (RGBA8/BGRA8) in the Graphics tab to improve game compatibility. This enables titles like Doom Eternal on Snapdragon 8 Elite devices to launch by switching to BGRA8.
New Features
Migration
Written for commit 5066002. Summary will update on new commits.
Summary by CodeRabbit