hooking ResizeBuffers() appears to be unnecessary, even though we maintain a view to the backbuffer. Leaving the signature (commented out) for now in case it does end up being something we have to handle

This commit is contained in:
meli 2020-01-09 19:02:40 -08:00
parent 5623b2ceb8
commit c80f400a2f
2 changed files with 4 additions and 1 deletions

View file

@ -8,6 +8,7 @@ namespace Dalamud.Game.Internal.DXGI
public sealed class SwapChainAddressResolver : BaseAddressResolver
{
public IntPtr Present { get; private set; }
//public IntPtr ResizeBuffers { get; private set; }
protected override void Setup64Bit(SigScanner sig)
{
@ -17,6 +18,8 @@ namespace Dalamud.Game.Internal.DXGI
var scanner = new SigScanner(module);
Present = scanner.ScanModule("48 89 5C 24 ?? 48 89 74 24 ?? 55 57 41 56 48 8D 6C 24 ??");
// seems unnecessary for now, but we may need to handle it
//ResizeBuffers = scanner.ScanModule("48 8B C4 55 41 54 41 55 41 56 41 57 48 8D 68 ?? 48 81 EC C0 00 00 00");
}
}
}

View file

@ -11,7 +11,7 @@ using Serilog;
// general dev notes, here because it's easiest
/*
* - We probably need to hook ResizeBuffers too at a minimum.. not releasing things may cause crashes.
* - Hooking ResizeBuffers seemed to be unnecessary, though I'm not sure why. Left out for now since it seems to work without it.
* - It's probably virtually impossible to remove the present hook once we set it, which again may lead to crashes in various situations.
* - We may want to build our ImGui command list in a thread to keep it divorced from present. We'd still have to block in present to
* synchronize on the list and render it, but ideally the overall delay we add to present would then be shorter. This may cause minor