Repository navigation
Conversation
|
Will review tomorrow for the release cycle. As far as updating D3DMetal goes, the plugin system (see plugin-pt2 branch) will be the supported way to do that. I still have a bunch of UX work to do there, but it's coming along. |
|
Sounds great! I took a look at plugin-pt2 — the declarative variants/*.conf grammar looks really clean and unified. The DMG discovery, background mounting/extraction, and shader cache clearing from this PR can easily feed directly into that variant layout once you wrap up the UX work. Looking forward to your review! |
bada98c to
3b6a62d
Compare
|
Rebased cleanly on latest
|
|
Completed full code review, audit, and localization sync:
|
… shader cache tools - Support 1-click D3DMetal updates from mounted Apple Game Porting Toolkit and Evaluation Environment DMGs (including nested DMGs). - Add version caching allowing 1-click switching back and forth between D3DMetal versions (e.g. 3.0 <-> 4.0b3). - Add 1-click restore to stock CrossOver DirectX 12 libraries. - Support per-game and global DirectX 12 shader cache clearing (~/Library/Caches/.../d3dm). - Support automated MetalFX preparation and nvngx.dll / nvapi64.dll injection into prefix system32 directories. - Add Steam panel controls for DirectX Raytracing (DXR), Metal 4 backend, and FPS limits. - Add comprehensive unit tests covering DMG resolution, version parsing, and shader cache management.
ab9bfd3 to
0d7f275
Compare
|
Rebased on latest upstream
|
Adds full support for updating, switching, and restoring Apple's DirectX 12 translation layer (D3DMetal / GPTK) directly from Apple disk images, along with DirectX 12 shader cache management and automated MetalFX integration.
What this adds
1-Click D3DMetal Upgrades & Switching
/Volumes(including nestedEvaluation environment...dmgimages insideGame Porting Toolkit.dmg), showing a 1-click update action in the CrossOver runner menu.apple_gptk_versions/<version>) so players can switch back and forth between versions (e.g. 3.0 ↔ 4.0b3) in 1 click without needing multiple duplicate runner installs..dmgfiles or extracted folders with automatic non-blocking background mounting and cleanup.DirectX 12 Shader Cache Management
d3dm/<game>.exe/shaders.cache.MetalFX Integration & Steam Controls
nvngx-on-metalfxtonvngxand deployingnvngx.dll/nvapi64.dllto prefixsystem32directories upon update.install_metalfx_dllsincompat_run.shto ensure prefix DLLs are present wheneverD3DM_ENABLE_METALFX=1is active.D3DM_SUPPORT_DXR(DirectX Raytracing),D3DM_MTL4(Metal 4 toggle), andD3DM_MAX_FPS(frame rate cap) in Steam game panels and defaults.Safety & Hardening
/Volumesis synchronous and non-blocking (no subprocess execution during view renders).hdiutilmounting and library copy operations run strictly in background tasks.externalandwinedirectories to.oldbackups first, replacing atomically and restoring backups if any copy error occurs.Checks
swift test: 578 tests across 60 suites passing (9 new tests inD3DMetalToolsTests.swift).defaults-check,defaults-drift,envcheck,panel-behavior,settingscheck,routecheck,bridgecheck.