mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-04 10:29:15 +01:00
[d3d9] Remove explicit swapchain synchronization
No longer necessary.
This commit is contained in:
parent
c43cf6895b
commit
f9c3dd1f5f
@ -587,7 +587,6 @@ namespace dxvk {
|
||||
|
||||
HRESULT hr = D3D_OK;
|
||||
|
||||
this->SynchronizePresent();
|
||||
this->NormalizePresentParameters(pPresentParams);
|
||||
|
||||
bool changeFullscreen = m_presentParams.Windowed != pPresentParams->Windowed;
|
||||
@ -811,8 +810,6 @@ namespace dxvk {
|
||||
Rc<DxvkImageView> swapImageView = m_backBuffers[0]->GetImageView(false);
|
||||
|
||||
for (uint32_t i = 0; i < SyncInterval || i < 1; i++) {
|
||||
SynchronizePresent();
|
||||
|
||||
// Presentation semaphores and WSI swap chain image
|
||||
PresenterSync sync = { };
|
||||
Rc<DxvkImage> backBuffer;
|
||||
@ -836,8 +833,6 @@ namespace dxvk {
|
||||
|
||||
// Present from CS thread so that we don't
|
||||
// have to synchronize with it first.
|
||||
m_presentStatus.result = VK_NOT_READY;
|
||||
|
||||
DxvkImageViewKey viewInfo;
|
||||
viewInfo.viewType = VK_IMAGE_VIEW_TYPE_2D;
|
||||
viewInfo.usage = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT;
|
||||
@ -849,7 +844,6 @@ namespace dxvk {
|
||||
viewInfo.layerCount = 1u;
|
||||
|
||||
m_parent->EmitCs([
|
||||
cPresentStatus = &m_presentStatus,
|
||||
cDevice = m_device,
|
||||
cPresenter = m_wctx->presenter,
|
||||
cBlitter = m_blitter,
|
||||
@ -882,8 +876,7 @@ namespace dxvk {
|
||||
|
||||
uint64_t frameId = cRepeat ? 0 : cFrameId;
|
||||
|
||||
cDevice->presentImage(cPresenter,
|
||||
frameId, cPresentStatus);
|
||||
cDevice->presentImage(cPresenter, frameId, nullptr);
|
||||
});
|
||||
|
||||
m_parent->FlushCsChunk();
|
||||
@ -900,11 +893,6 @@ namespace dxvk {
|
||||
}
|
||||
|
||||
|
||||
void D3D9SwapChainEx::SynchronizePresent() {
|
||||
m_device->waitForSubmission(&m_presentStatus);
|
||||
}
|
||||
|
||||
|
||||
Rc<Presenter> D3D9SwapChainEx::CreatePresenter(HWND Window, Rc<sync::Signal> Signal) {
|
||||
PresenterDesc presenterDesc;
|
||||
presenterDesc.deferSurfaceCreation = m_parent->GetOptions()->deferSurfaceCreation;
|
||||
|
@ -163,8 +163,6 @@ namespace dxvk {
|
||||
VkExtent2D m_swapchainExtent = { 0u, 0u };
|
||||
bool m_partialCopy = false;
|
||||
|
||||
DxvkSubmitStatus m_presentStatus;
|
||||
|
||||
uint32_t m_frameLatencyCap = 0;
|
||||
|
||||
HWND m_window = nullptr;
|
||||
@ -187,8 +185,6 @@ namespace dxvk {
|
||||
|
||||
void PresentImage(UINT PresentInterval);
|
||||
|
||||
void SynchronizePresent();
|
||||
|
||||
Rc<Presenter> CreatePresenter(
|
||||
HWND Window,
|
||||
Rc<sync::Signal> Signal);
|
||||
|
Loading…
x
Reference in New Issue
Block a user