Skip to content

Update graphics wrapper: to pipetto-cypto's latest - #662

Merged
Xnick417x merged 2 commits into
WinNative-Emu:mainfrom
Xnick417x:tszt
Jul 26, 2026
Merged

Update graphics wrapper: to pipetto-cypto's latest #662
Xnick417x merged 2 commits into
WinNative-Emu:mainfrom
Xnick417x:tszt

Conversation

@Xnick417x

Copy link
Copy Markdown
Collaborator

…tch BCN view-format list

@Xnick417x Xnick417x changed the title Update graphics wrapper: Mali RGBA8 swapchain, strip CullDistance, pa… Update graphics wrapper: to pipetto-cypto's latest Jul 24, 2026
@Xnick417x
Xnick417x merged commit 8bf38b4 into WinNative-Emu:main Jul 26, 2026
5 checks passed
@Xnick417x
Xnick417x deleted the tszt branch August 2, 2026 14:24
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant