mirror of https://github.com/AxioDL/metaforce.git
new-streams
commit
edf18d47d7
@ -0,0 +1,29 @@ |
||||
#include "Hacks.hpp" |
||||
|
||||
#include "dawn/native/Device.h" |
||||
#ifdef _WIN32 |
||||
#include "dawn/native/d3d12/AdapterD3D12.h" |
||||
#include "dawn/native/d3d12/BackendD3D12.h" |
||||
#include "dawn/native/d3d12/DeviceD3D12.h" |
||||
#endif |
||||
|
||||
namespace dawn::native { |
||||
class HackedDevice : public DeviceBase { |
||||
public: |
||||
void _ForceSetToggle(Toggle toggle, bool isEnabled) { ForceSetToggle(toggle, isEnabled); } |
||||
}; |
||||
} // namespace dawn::native
|
||||
|
||||
namespace aurora::gpu::hacks { |
||||
void apply_toggles(WGPUDevice device) { |
||||
auto* hack = static_cast<dawn::native::HackedDevice*>(static_cast<void*>(device)); |
||||
hack->_ForceSetToggle(dawn::native::Toggle::UseUserDefinedLabelsInBackend, true); |
||||
#if _WIN32 |
||||
hack->_ForceSetToggle(dawn::native::Toggle::UseDXC, true); |
||||
auto* backend = dawn::native::d3d12::ToBackend(hack->GetAdapter())->GetBackend(); |
||||
backend->EnsureDxcCompiler(); |
||||
backend->EnsureDxcLibrary(); |
||||
backend->EnsureDxcValidator(); |
||||
#endif |
||||
} |
||||
} // namespace aurora::gpu::hacks
|
@ -0,0 +1,10 @@ |
||||
#pragma once |
||||
|
||||
#include <dawn/webgpu.h> |
||||
|
||||
/**
|
||||
* Helpers to expose private Dawn APIs |
||||
*/ |
||||
namespace aurora::gpu::hacks { |
||||
void apply_toggles(WGPUDevice device); |
||||
} // namespace aurora::gpu::hacks
|
Loading…
Reference in new issue