Back to Provenance

2624

.changelog/2624.md

3.3.11.7 KB
Original Source

Added

  • Vulkan→Metal bridge (PVThinLibretroFrontend) — Implemented thin_vulkan_set_command_buffers (submits VkCommandBuffers to the MoltenVK queue via vkQueueSubmit), thin_vulkan_set_signal_semaphore (stores signal semaphore for queue submit), thin_vulkan_wait_sync_index (drains queue via vkQueueWaitIdle), and thin_vulkan_set_image (exports MTLTexture from the rendered VkImage via vkGetMTLTextureMVK / vkExportMetalObjectsEXT and forwards it to the Metal presenter)
  • PVRenderDelegateMetal protocol — New @objc protocol in PVCoreBridge allowing Vulkan cores to deliver per-frame MTLTexture objects directly to the Metal view controller
  • PVMetalViewController: PVRenderDelegateMetal — Implements didRenderFrameWithMTLTexture(_:) to blit the Vulkan-rendered MTLTexture into the standard input-texture pipeline and signal the front-buffer condition for display
  • HW FBO runtime resizeSET_SYSTEM_AV_INFO and SET_GEOMETRY now trigger a deferred FBO teardown and rebuild when dimensions change while a HW render context is active; context_reset re-fires on the emulation thread so the core always gets a correctly-sized framebuffer
  • Context negotiation interfaceSET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE now returns true (interface accepted) instead of false, unblocking cores like Beetle PSX HW that require the frontend to acknowledge the callback; GET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE_SUPPORT returns true with interface_version = 0
  • Vulkan preferred on GET_PREFERRED_HW_RENDER — When HAVE_VULKAN is defined, the thin frontend now advertises Vulkan as the preferred context type; cores that support both GLES and Vulkan will choose the higher-quality path automatically