Skip to content

Claude/d3d11 texture snapshot proton o78hwy - #86

Merged
jmquigs merged 3 commits into
masterfrom
claude/d3d11-texture-snapshot-proton-o78hwy
Jul 10, 2026
Merged

Claude/d3d11 texture snapshot proton o78hwy#86
jmquigs merged 3 commits into
masterfrom
claude/d3d11-texture-snapshot-proton-o78hwy

Conversation

@jmquigs

@jmquigs jmquigs commented Jul 10, 2026

Copy link
Copy Markdown
Owner

No description provided.

claude and others added 3 commits July 9, 2026 01:54
…shot save failures under Proton

Texture snapshotting fails for some D3D11 games under Proton while working
for others on the same system. The save path uses the legacy
D3DX11SaveTextureToFileW from d3dx11_43.dll, which under Proton resolves to
Wine's built-in d3dx11 whose implementation may be a stub or lack support
for block-compressed (BC) DDS output, returning E_NOTIMPL (0x80004001).

Add logging (no behavior change) to confirm the root cause from a single run:

- util::get_module_path(HMODULE): return a loaded module's on-disk path;
  get_module_name now delegates to it.
- d3dx.rs: log which d3dx11 DLL the loader actually resolved, so a Wine
  system copy can be distinguished from a game-local real d3dx11_43.dll.
- hook_snapshot.rs: print the save HRESULT in hex, annotate E_NOTIMPL, and
  include the DXGI format name (highlights the BC formats). On the first
  failure per snapshot, probe saving the same resource as PNG to separate a
  total stub (PNG also fails) from a DDS/compressed-only gap.

No interop wire-protocol change, so native code versions are not bumped.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015Nur4mfwesxS7zUaUX7jGK
- Fix for when trying to do texconversion under proton
- On wine proton loading from the system will load their implementation of d3dx which doesn't support snapshotting compressed textures (it does support other formats apparently)
- Therefore try loading d3dx from MM's tplib first on wine.  On actual windows though we want to prefer the system libraries.
- Claude added a png diagnostic when a tex save fails, but I found it unnecessary (it failed too) so I removed it
@jmquigs
jmquigs merged commit cddf7ab into master Jul 10, 2026
1 check passed
@jmquigs
jmquigs deleted the claude/d3d11-texture-snapshot-proton-o78hwy branch July 10, 2026 20:02
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.

2 participants