コード例 #1
0
ファイル: DebugLayer.cs プロジェクト: john-h-k/Voltium
 private static UniqueComPtr <ID3D12Debug> GetDebug(out SupportedDebugLayer supportedLayer)
 {
     using UniqueComPtr <ID3D12Debug> debug = default;
     Guard.TryGetInterface(D3D12GetDebugInterface(debug.Iid, (void **)&debug));
     supportedLayer = debug.HasInterface <ID3D12Debug3>() ? SupportedDebugLayer.Debug3 : SupportedDebugLayer.Debug;
     return(debug.Move());
 }
コード例 #2
0
ファイル: DebugLayer.cs プロジェクト: john-h-k/Voltium
        private static UniqueComPtr <IDXGraphicsAnalysis> GetPixIfAttached()
        {
            using UniqueComPtr <IDXGraphicsAnalysis> analysis = default;
            Guard.TryGetInterface(DXGIGetDebugInterface1(0, analysis.Iid, (void **)&analysis));
            if (analysis.Exists)
            {
                LogHelper.LogInformation("PIX debugger is attached");
            }

            return(analysis.Move());
        }
コード例 #3
0
ファイル: DebugLayer.cs プロジェクト: john-h-k/Voltium
 private static UniqueComPtr <ID3D12DeviceRemovedExtendedDataSettings1> GetDred()
 {
     using UniqueComPtr <ID3D12DeviceRemovedExtendedDataSettings1> dredSettings = default;
     Guard.TryGetInterface(D3D12GetDebugInterface(dredSettings.Iid, (void **)&dredSettings));
     return(dredSettings.Move());
 }
コード例 #4
0
ファイル: DebugLayer.cs プロジェクト: john-h-k/Voltium
 private static UniqueComPtr <IDXGIDebug1> GetDxgiDebug()
 {
     using UniqueComPtr <IDXGIDebug1> debug = default;
     Guard.TryGetInterface(DXGIGetDebugInterface1(0, debug.Iid, (void **)&debug));
     return(debug.Move());
 }
コード例 #5
0
 public D3DBlobMemoryManager(UniqueComPtr <ID3DBlob> blob)
 {
     _blob = blob.Move();
 }