Update graphics wrapper: to pipetto-cypto's latest - #662
Merged
Conversation
…tch BCN view-format list
maxjivi05
added a commit
to maxjivi05/WinNative
that referenced
this pull request
Aug 3, 2026
…kanRenderer Adopts the Direct Composition work from WinNative-Emu#584 ("Direct Composition + ADPF + hardware fence sync + event-driven render loop") by Vower2993, with commits authored by Super Z, Vower2993 and MaxsTechReview. That PR is itself a port of PR WinNative-Emu#380 (this fork's original GLES Direct Composition work) onto the native Vulkan compositor from PR WinNative-Emu#343, plus substantial soft-boot hardening. Merging rather than copying so the original authorship is preserved. What this brings in: * surface_compositor.c rewritten with soft-boot hardening — the 256x256 magenta smoke-test buffer is gone (CPU_WRITE + COMPOSER_OVERLAY panics some gralloc implementations), dstX/dstY are validated before reaching ASurfaceTransaction, release() waits for in-flight transactions, and buffers without COMPOSER_OVERLAY usage are rejected outright. * DirectCompositionLayer / SurfaceCompositor rewritten against the new renderer, with an explicit ADATASPACE_SRGB dataspace. * VulkanRenderer DC hooks: candidate scan, push/hide with disengage hysteresis, fence-FD draining, self-detach after repeated failures, and a DC state listener. * FrameRating HUD "+ DC" indicator and shortcut-level persistence. * wrapper.tzst rebuilt to allocate swapchain buffers with COMPOSER_OVERLAY usage and native BGRA tagging. Deliberately excluded (out of scope for this branch): * The ADPF performance-hint session and the event-driven render-loop rewrite in XServerSurfaceView.java — reverted to upstream. The coupled VulkanRenderer pieces (contentDirty gating, markContentDirty, requestInputRender -> signalInputDirty) are removed too, restoring upstream's requestCursorRender path in onPointerMove. Conflict resolutions: * surface_compositor.c, DirectCompositionLayer, SurfaceCompositor - take PR WinNative-Emu#584; ours were the superseded GLES-era versions and the auto-merge had concatenated both, duplicating JNI symbols. * Container / GPUImage / Drawable / strings.xml - drop our duplicate DC members that the auto-merge left alongside PR WinNative-Emu#584's. * GameSettings.kt - take PR WinNative-Emu#584; the container-edit-mode gate is dropped now that the setting persists per shortcut. * XServerDisplayActivity - keep both upstream's reshade teardown and PR WinNative-Emu#584's DC release. * wrapper.tzst - take PR WinNative-Emu#584's COMPOSER_OVERLAY build. Note this is 12 days older than upstream's WinNative-Emu#662 driver update; the overlay usage bit is required for DC to engage at all, so the patch needs rebasing onto the newer driver as a follow-up. Co-Authored-By: Vower2993 <81265405+Vower2993@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…tch BCN view-format list