From a73143c08f000059d0c7ef5081b9ce00803bc89f Mon Sep 17 00:00:00 2001 From: Amer Koleci Date: Mon, 17 Oct 2022 16:02:36 +0200 Subject: [PATCH] Improve more naming case and more D3D12 goodies. --- Directory.Build.props | 3 +- src/Generator/Program.cs | 83 +++++++- .../Generated/Graphics.Direct3D11.Enums.cs | 16 +- .../Generated/Graphics.Direct3D12.Enums.cs | 200 +++++++++--------- .../ID3D12Device.cs | 6 + .../ID3D12Object.cs | 23 ++ src/Vortice.Win32/Properties/AssemblyInfo.cs | 1 + src/Vortice.Win32/Win32.cs | 2 + 8 files changed, 223 insertions(+), 111 deletions(-) create mode 100644 src/Vortice.Win32.Graphics.Direct3D12/ID3D12Object.cs diff --git a/Directory.Build.props b/Directory.Build.props index 32019da..7f817c3 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -5,9 +5,8 @@ enable true true - true - 1.8.3 + 1.8.4 true diff --git a/src/Generator/Program.cs b/src/Generator/Program.cs index d5f2a0c..9b90236 100644 --- a/src/Generator/Program.cs +++ b/src/Generator/Program.cs @@ -26,6 +26,7 @@ public static class Program "Graphics.Direct2D.json", "Graphics.Imaging.D2D.json", "Graphics.DirectComposition.json", + "Graphics.Direct3D9.json", // Media //"Media.Audio.json", @@ -91,6 +92,8 @@ public static class Program { "Globalization.FONTSIGNATURE", "Win32.Graphics.Gdi.FontSignature" }, { "Graphics.Gdi.LOGFONTA", "Win32.Graphics.Gdi.LogFontA" }, { "Graphics.Gdi.LOGFONTW", "Win32.Graphics.Gdi.LogFontW" }, + { "Graphics.Gdi.RGNDATA", "Win32.Graphics.Gdi.RgnData" }, + { "Graphics.Gdi.PALETTEENTRY", "Win32.Graphics.Gdi.PaletteEntry" }, { "Graphics.Direct3D.D3DVECTOR", "Vector3" }, { "Graphics.Direct3D.D3DMATRIX", "Matrix4x4" }, @@ -671,6 +674,56 @@ public static class Program "TriangleList", "TriangleStrip", "PatchList", + "MissingSemantic", + "MaskmisMatch", + "CantHaveOnlyGaps", + "DeclTooComplex", + "InvalidSourceRect", + "PrimitiveTopology", + "UnrecognizedDstFormat", + "InvalidDstDimensions", + "InvalidDstRowPitch", + "InvalidDstPlacement", + "InvalidDstdsPlacedFootPrintFormat", + "DstRegionOutOfBounds", + "UnrecognizedSrcType", + "InvalidSrcResource", + "InvalidSrcSubresource", + "InvalidSrcOffset", + "NullRange", + "VideoDecodeStream", + "VideoDecodeCommandList", + "SetResidencyPriority", + "AtomicCopyBuffer", + "VideoProcessCommandQueue", + "VideoProcessStream", + "OpenExistingHeap", + "RSSetShading", + "RSSetShadingRate", + "RSSetShadingRateImage", + "CreateMeshShader", + "GroupSharedExceedsMaxSize", + "MismatchedASMSPayloadSize", + "CreateAmplificationShader", + "ShaderCacheSession", + "CreateShaderCacheSession", + "AlreadyOpen", + "DeveloperMode", + "ShaderCacheControl", + "StateAlreadySet", + "IgnoredFlag", + "StoreValue", + "StoreValueAlreadyPresent", + "HashCollision", + "CacheFull", + "NotFound", + "FindValue", + "VideoEncoder", + "VideoEncoderHeap", + "ShaderCacheDelete", + "ShaderCacheClear", + "VideoExtensionCommand", + "VideoMotionEstimator", }; private static readonly HashSet s_preserveCaps = new(StringComparer.OrdinalIgnoreCase) @@ -847,6 +900,7 @@ public static class Program "DWRITE", "D3DCOMPILER", "DCOMPOSITION", + "D3DADAPTER", }; private static readonly HashSet s_ignoredParts = new(StringComparer.OrdinalIgnoreCase) @@ -1045,6 +1099,7 @@ public static class Program { string repoRoot = FindRepoRoot(); string dxgiPath = Path.Combine(new DirectoryInfo(repoRoot).Parent.FullName, "Vortice.Win32.Graphics.Dxgi"); + string d3d9Path = Path.Combine(new DirectoryInfo(repoRoot).Parent.FullName, "Vortice.Win32.Graphics.Direct3D9"); string d3d11Path = Path.Combine(new DirectoryInfo(repoRoot).Parent.FullName, "Vortice.Win32.Graphics.Direct3D11"); string d3d12Path = Path.Combine(new DirectoryInfo(repoRoot).Parent.FullName, "Vortice.Win32.Graphics.Direct3D12"); string d3d11on12Path = Path.Combine(new DirectoryInfo(repoRoot).Parent.FullName, "Vortice.Win32.Graphics.Direct3D11on12"); @@ -1062,6 +1117,7 @@ public static class Program //DocGenerator.Generate(new[] { "DWRITE" }, Path.Combine(repoRoot, "Generated", "Graphics", "DirectWrite.xml")); //DocGenerator.Generate(new[] { "WIC" }, Path.Combine(repoRoot, "Generated", "Graphics", "Imaging.xml")); + DocGenerator.Generate(new[] { "D3D9" }, Path.Combine(d3d9Path, "Direct3D9.xml")); //DocGenerator.Generate(new[] { "D3D11" }, Path.Combine(d3d11Path, "Direct3D11.xml")); //DocGenerator.Generate(new[] { "D3D12" }, Path.Combine(d3d12Path, "Direct3D12.xml")); //DocGenerator.Generate(new[] { "DComposition" }, Path.Combine(directCompositionPath, "DirectComposition.xml")); @@ -1132,6 +1188,11 @@ public static class Program outputPath = directCompositionPath; useSubFolders = false; } + else if (jsonFile == "Graphics.Direct3D9.json") + { + outputPath = d3d9Path; + useSubFolders = false; + } outputPath = Path.Combine(outputPath, "Generated"); @@ -1735,6 +1796,25 @@ public static class Program skipPrettify = true; } } + else if (enumType.Name.StartsWith("D3D") + && !enumType.Name.StartsWith("D3D_") + && !enumType.Name.StartsWith("D3D11_") + && !enumType.Name.StartsWith("D3D12_") + && !enumType.Name.StartsWith("D3DCOMPILER_") + && !enumType.Name.StartsWith("D3DCOMPILE")) + { + csTypeName = enumType.Name.Substring(3); + skipPrettify = true; + + if (s_knownTypesPrefixes.TryGetValue(enumType.Name, out string? knowPrefix)) + { + enumPrefix = knowPrefix!; + } + else + { + enumPrefix = "D3D"; + } + } else { csTypeName = GetDataTypeName(enumType.Name, out enumPrefix); @@ -1945,7 +2025,7 @@ public static class Program string fieldValueName = field.Name; - if (structType.Name == "D3D11_OMAC") + if (structType.Name == "D3D11_OMAC" || structType.Name == "D3D_OMAC") { fieldValueName = "Buffer"; } @@ -3168,3 +3248,4 @@ public static class Program return name; } } + diff --git a/src/Vortice.Win32.Graphics.Direct3D11/Generated/Graphics.Direct3D11.Enums.cs b/src/Vortice.Win32.Graphics.Direct3D11/Generated/Graphics.Direct3D11.Enums.cs index 3d97705..e9c513d 100644 --- a/src/Vortice.Win32.Graphics.Direct3D11/Generated/Graphics.Direct3D11.Enums.cs +++ b/src/Vortice.Win32.Graphics.Direct3D11/Generated/Graphics.Direct3D11.Enums.cs @@ -2532,16 +2532,16 @@ public enum MessageId : int CreateGeometryShaderWithStreamOutputInvalidOutputStreamStride = 185, /// /// D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC - CreateGeometryShaderWithStreamOutputMissingsemantic = 186, + CreateGeometryShaderWithStreamOutputMissingSemantic = 186, /// /// D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH - CreateGeometryShaderWithStreamOutputMaskmismatch = 187, + CreateGeometryShaderWithStreamOutputMaskmisMatch = 187, /// /// D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS - CreateGeometryShaderWithStreamOutputCanthaveonlygaps = 188, + CreateGeometryShaderWithStreamOutputCantHaveOnlyGaps = 188, /// /// D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX - CreateGeometryShaderWithStreamOutputDecltoocomplex = 189, + CreateGeometryShaderWithStreamOutputDeclTooComplex = 189, /// /// D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE CreateGeometryShaderWithStreamOutputMissingOutputSignature = 190, @@ -3069,7 +3069,7 @@ public enum MessageId : int DeviceDrawBoundResourceMapped = 364, /// /// D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY - DeviceDrawInvalidPrimitivetopology = 365, + DeviceDrawInvalidPrimitiveTopology = 365, /// /// D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED DeviceDrawVertexOffsetUnaligned = 366, @@ -4797,7 +4797,7 @@ public enum MessageId : int VideoprocessorbltInvalidfutureframes = 3145894, /// /// D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT - VideoprocessorbltInvalidsourcerect = 3145895, + VideoprocessorbltInvalidSourceRect = 3145895, /// /// D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT VideoprocessorbltInvaliddestrect = 3145896, @@ -5337,7 +5337,7 @@ public enum MessageId : int CreatevideoprocessoroutputviewInvalidmsaa = 3146074, /// /// D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT - DeviceClearViewInvalidsourcerect = 3146075, + DeviceClearViewInvalidSourceRect = 3146075, /// /// D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT DeviceClearViewEmptyRect = 3146076, @@ -5454,7 +5454,7 @@ public enum MessageId : int VideoprocessorgetbehaviorhintsTargetrect = 3146113, /// /// D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT - VideoprocessorgetbehaviorhintsInvalidsourcerect = 3146114, + VideoprocessorgetbehaviorhintsInvalidSourceRect = 3146114, /// /// D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT VideoprocessorgetbehaviorhintsInvaliddestrect = 3146115, diff --git a/src/Vortice.Win32.Graphics.Direct3D12/Generated/Graphics.Direct3D12.Enums.cs b/src/Vortice.Win32.Graphics.Direct3D12/Generated/Graphics.Direct3D12.Enums.cs index 6d384e9..89b55f3 100644 --- a/src/Vortice.Win32.Graphics.Direct3D12/Generated/Graphics.Direct3D12.Enums.cs +++ b/src/Vortice.Win32.Graphics.Direct3D12/Generated/Graphics.Direct3D12.Enums.cs @@ -3672,16 +3672,16 @@ public enum MessageId : int CreateGeometryShaderWithStreamOutputInvalidOutputStreamStride = 86, /// /// D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC - CreateGeometryShaderWithStreamOutputMissingsemantic = 87, + CreateGeometryShaderWithStreamOutputMissingSemantic = 87, /// /// D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH - CreateGeometryShaderWithStreamOutputMaskmismatch = 88, + CreateGeometryShaderWithStreamOutputMaskmisMatch = 88, /// /// D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS - CreateGeometryShaderWithStreamOutputCanthaveonlygaps = 89, + CreateGeometryShaderWithStreamOutputCantHaveOnlyGaps = 89, /// /// D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX - CreateGeometryShaderWithStreamOutputDecltoocomplex = 90, + CreateGeometryShaderWithStreamOutputDeclTooComplex = 90, /// /// D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE CreateGeometryShaderWithStreamOutputMissingOutputSignature = 91, @@ -3786,7 +3786,7 @@ public enum MessageId : int CommandListDrawIndexBufferTooSmall = 213, /// /// D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INVALID_PRIMITIVETOPOLOGY - CommandListDrawInvalidPrimitivetopology = 219, + CommandListDrawInvalidPrimitiveTopology = 219, /// /// D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_STRIDE_UNALIGNED CommandListDrawVertexStrideUnaligned = 221, @@ -3984,7 +3984,7 @@ public enum MessageId : int DeviceCreateComputeShaderUAVsNotSupported = 431, /// /// D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT - DeviceClearViewInvalidsourcerect = 447, + DeviceClearViewInvalidSourceRect = 447, /// /// D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT DeviceClearViewEmptyRect = 448, @@ -4392,7 +4392,7 @@ public enum MessageId : int CreateGraphicsPipelineStateInvalidUseOfForcedSampleCount = 672, /// /// D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_PRIMITIVETOPOLOGY - CreateGraphicsPipelineStateInvalidPrimitivetopology = 673, + CreateGraphicsPipelineStateInvalidPrimitiveTopology = 673, /// /// D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SYSTEMVALUE CreateGraphicsPipelineStateInvalidSystemValue = 674, @@ -4698,43 +4698,43 @@ public enum MessageId : int CopyTextureRegionInvalidDstOffset = 851, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTFORMAT - CopyTextureRegionUnrecognizeddstformat = 852, + CopyTextureRegionUnrecognizedDstFormat = 852, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTFORMAT CopyTextureRegionInvalidDstFormat = 853, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDIMENSIONS - CopyTextureRegionInvaliddstdimensions = 854, + CopyTextureRegionInvalidDstDimensions = 854, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTROWPITCH - CopyTextureRegionInvaliddstrowpitch = 855, + CopyTextureRegionInvalidDstRowPitch = 855, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTPLACEMENT - CopyTextureRegionInvaliddstplacement = 856, + CopyTextureRegionInvalidDstPlacement = 856, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDSPLACEDFOOTPRINTFORMAT - CopyTextureRegionInvaliddstdsplacedfootprintformat = 857, + CopyTextureRegionInvalidDstdsPlacedFootPrintFormat = 857, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_DSTREGIONOUTOFBOUNDS - CopyTextureRegionDstregionoutofbounds = 858, + CopyTextureRegionDstRegionOutOfBounds = 858, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLSRC CopyTextureRegionNullSrc = 859, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCTYPE - CopyTextureRegionUnrecognizedsrctype = 860, + CopyTextureRegionUnrecognizedSrcType = 860, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCEDIMENSION CopyTextureRegionInvalidSrcResourceDimension = 861, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCE - CopyTextureRegionInvalidsrcresource = 862, + CopyTextureRegionInvalidSrcResource = 862, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCSUBRESOURCE - CopyTextureRegionInvalidsrcsubresource = 863, + CopyTextureRegionInvalidSrcSubresource = 863, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCOFFSET - CopyTextureRegionInvalidsrcoffset = 864, + CopyTextureRegionInvalidSrcOffset = 864, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCFORMAT CopyTextureRegionUnrecognizedsrcformat = 865, @@ -4929,10 +4929,10 @@ public enum MessageId : int UnmapRangeNotEmpty = 929, /// /// D3D12_MESSAGE_ID_MAP_INVALID_NULLRANGE - MapInvalidNullrange = 930, + MapInvalidNullRange = 930, /// /// D3D12_MESSAGE_ID_UNMAP_INVALID_NULLRANGE - UnmapInvalidNullrange = 931, + UnmapInvalidNullRange = 931, /// /// D3D12_MESSAGE_ID_NO_GRAPHICS_API_SUPPORT NoGraphicsApiSupport = 932, @@ -4977,7 +4977,7 @@ public enum MessageId : int CopyResourceNullSrc = 945, /// /// D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDSRCRESOURCE - CopyResourceInvalidsrcresource = 946, + CopyResourceInvalidSrcResource = 946, /// /// D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLDST ResolveSubresourceNullDst = 947, @@ -4989,7 +4989,7 @@ public enum MessageId : int ResolveSubresourceNullSrc = 949, /// /// D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDSRCRESOURCE - ResolveSubresourceInvalidsrcresource = 950, + ResolveSubresourceInvalidSrcResource = 950, /// /// D3D12_MESSAGE_ID_PIPELINE_STATE_TYPE_MISMATCH PipelineStateTypeMismatch = 951, @@ -5076,31 +5076,31 @@ public enum MessageId : int CreateQueryHeapVideoDecodeStatisticsNotSupported = 978, /// /// D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDLIST - CreateVideodecodecommandlist = 979, + CreateVideoDecodeCommandList = 979, /// /// D3D12_MESSAGE_ID_CREATE_VIDEODECODER CreateVideoDecoder = 980, /// /// D3D12_MESSAGE_ID_CREATE_VIDEODECODESTREAM - CreateVideodecodestream = 981, + CreateVideoDecodeStream = 981, /// /// D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDLIST - LiveVideodecodecommandlist = 982, + LiveVideoDecodeCommandList = 982, /// /// D3D12_MESSAGE_ID_LIVE_VIDEODECODER LiveVideoDecoder = 983, /// /// D3D12_MESSAGE_ID_LIVE_VIDEODECODESTREAM - LiveVideodecodestream = 984, + LiveVideoDecodeStream = 984, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDLIST - DestroyVideodecodecommandlist = 985, + DestroyVideoDecodeCommandList = 985, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEODECODER DestroyVideoDecoder = 986, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEODECODESTREAM - DestroyVideodecodestream = 987, + DestroyVideoDecodeStream = 987, /// /// D3D12_MESSAGE_ID_DECODE_FRAME_INVALID_PARAMETERS DecodeFrameInvalidParameters = 988, @@ -5136,7 +5136,7 @@ public enum MessageId : int CopyOnSameSubresource = 998, /// /// D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PAGEABLE - SetresidencypriorityInvalidPageable = 999, + SetResidencyPriorityInvalidPageable = 999, /// /// D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UNSUPPORTED GpuBasedValidationUnsupported = 1000, @@ -5166,7 +5166,7 @@ public enum MessageId : int ResourceBarrierDuplicateSubresourceTransitions = 1008, /// /// D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PRIORITY - SetresidencypriorityInvalidPriority = 1009, + SetResidencyPriorityInvalidPriority = 1009, /// /// D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_LARGE_NUM_DESCRIPTORS CreateDescriptorHeapLargeNumDescriptors = 1013, @@ -5208,49 +5208,49 @@ public enum MessageId : int CreateCommandQueueInsufficientHardwareSupportForGlobalRealtime = 1025, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_ARCHITECTURE - AtomiccopybufferInvalidArchitecture = 1026, + AtomicCopyBufferInvalidArchitecture = 1026, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DST - AtomiccopybufferNullDst = 1027, + AtomicCopyBufferNullDst = 1027, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE_DIMENSION - AtomiccopybufferInvalidDstResourceDimension = 1028, + AtomicCopyBufferInvalidDstResourceDimension = 1028, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DST_RANGE_OUT_OF_BOUNDS - AtomiccopybufferDstRangeOutOfBounds = 1029, + AtomicCopyBufferDstRangeOutOfBounds = 1029, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_SRC - AtomiccopybufferNullSrc = 1030, + AtomicCopyBufferNullSrc = 1030, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE_DIMENSION - AtomiccopybufferInvalidSrcResourceDimension = 1031, + AtomicCopyBufferInvalidSrcResourceDimension = 1031, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_SRC_RANGE_OUT_OF_BOUNDS - AtomiccopybufferSrcRangeOutOfBounds = 1032, + AtomicCopyBufferSrcRangeOutOfBounds = 1032, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_OFFSET_ALIGNMENT - AtomiccopybufferInvalidOffsetAlignment = 1033, + AtomicCopyBufferInvalidOffsetAlignment = 1033, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_RESOURCES - AtomiccopybufferNullDependentResources = 1034, + AtomicCopyBufferNullDependentResources = 1034, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_SUBRESOURCE_RANGES - AtomiccopybufferNullDependentSubresourceRanges = 1035, + AtomicCopyBufferNullDependentSubresourceRanges = 1035, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_RESOURCE - AtomiccopybufferInvalidDependentResource = 1036, + AtomicCopyBufferInvalidDependentResource = 1036, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_SUBRESOURCE_RANGE - AtomiccopybufferInvalidDependentSubresourceRange = 1037, + AtomicCopyBufferInvalidDependentSubresourceRange = 1037, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_SUBRESOURCE_OUT_OF_BOUNDS - AtomiccopybufferDependentSubresourceOutOfBounds = 1038, + AtomicCopyBufferDependentSubresourceOutOfBounds = 1038, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_RANGE_OUT_OF_BOUNDS - AtomiccopybufferDependentRangeOutOfBounds = 1039, + AtomicCopyBufferDependentRangeOutOfBounds = 1039, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_ZERO_DEPENDENCIES - AtomiccopybufferZeroDependencies = 1040, + AtomicCopyBufferZeroDependencies = 1040, /// /// D3D12_MESSAGE_ID_DEVICE_CREATE_SHARED_HANDLE_INVALIDARG DeviceCreateSharedHandleInvalidArg = 1041, @@ -5289,7 +5289,7 @@ public enum MessageId : int CreateVideoprocesscommandlist = 1052, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDQUEUE - CreateVideoprocesscommandqueue = 1053, + CreateVideoProcessCommandQueue = 1053, /// /// D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDQUEUE LiveVideodecodecommandqueue = 1054, @@ -5298,7 +5298,7 @@ public enum MessageId : int LiveVideoprocesscommandlist = 1055, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDQUEUE - LiveVideoprocesscommandqueue = 1056, + LiveVideoProcessCommandQueue = 1056, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDQUEUE DestroyVideodecodecommandqueue = 1057, @@ -5307,25 +5307,25 @@ public enum MessageId : int DestroyVideoprocesscommandlist = 1058, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDQUEUE - DestroyVideoprocesscommandqueue = 1059, + DestroyVideoProcessCommandQueue = 1059, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSOR CreateVideoProcessor = 1060, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSSTREAM - CreateVideoprocessstream = 1061, + CreateVideoProcessStream = 1061, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSOR LiveVideoProcessor = 1062, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSSTREAM - LiveVideoprocessstream = 1063, + LiveVideoProcessStream = 1063, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSOR DestroyVideoProcessor = 1064, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSSTREAM - DestroyVideoprocessstream = 1065, + DestroyVideoProcessStream = 1065, /// /// D3D12_MESSAGE_ID_PROCESS_FRAME_INVALID_PARAMETERS ProcessFrameInvalidParameters = 1066, @@ -5388,16 +5388,16 @@ public enum MessageId : int DestroyVideodecoderheap = 1085, /// /// D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDARG_RETURN - OpenexistingheapInvalidArgReturn = 1086, + OpenExistingHeapInvalidArgReturn = 1086, /// /// D3D12_MESSAGE_ID_OPENEXISTINGHEAP_OUTOFMEMORY_RETURN - OpenexistingheapOutOfMemoryReturn = 1087, + OpenExistingHeapOutOfMemoryReturn = 1087, /// /// D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDADDRESS - OpenexistingheapInvalidaddress = 1088, + OpenExistingHeapInvalidaddress = 1088, /// /// D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDHANDLE - OpenexistingheapInvalidhandle = 1089, + OpenExistingHeapInvalidhandle = 1089, /// /// D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_DEST WriteBufferImmediateInvalidDest = 1090, @@ -5466,7 +5466,7 @@ public enum MessageId : int EnqueueMakeResidentInvalidFlags = 1111, /// /// D3D12_MESSAGE_ID_OPENEXISTINGHEAP_UNSUPPORTED - OpenexistingheapUnsupported = 1112, + OpenExistingHeapUnsupported = 1112, /// /// D3D12_MESSAGE_ID_VIDEO_PROCESS_FRAMES_INVALID_ARGUMENT VideoProcessFramesInvalidArgument = 1113, @@ -5556,10 +5556,10 @@ public enum MessageId : int CopyBufferRegionInvalidSrcResource = 1141, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE - AtomiccopybufferInvalidDstResource = 1142, + AtomicCopyBufferInvalidDstResource = 1142, /// /// D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE - AtomiccopybufferInvalidSrcResource = 1143, + AtomicCopyBufferInvalidSrcResource = 1143, /// /// D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_BUFFER CreateplacedresourceonbufferNullBuffer = 1144, @@ -5679,13 +5679,13 @@ public enum MessageId : int DestroyVideoencodecommandqueue = 1182, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONESTIMATOR - CreateVideomotionestimator = 1183, + CreateVideoMotionEstimator = 1183, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONESTIMATOR - LiveVideomotionestimator = 1184, + LiveVideoMotionEstimator = 1184, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONESTIMATOR - DestroyVideomotionestimator = 1185, + DestroyVideoMotionEstimator = 1185, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONVECTORHEAP CreateVideomotionvectorheap = 1186, @@ -5805,13 +5805,13 @@ public enum MessageId : int CreateCommandListInvalidCommandListTypeForFeatureLevel = 1224, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOEXTENSIONCOMMAND - CreateVideoextensioncommand = 1225, + CreateVideoExtensionCommand = 1225, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOEXTENSIONCOMMAND - LiveVideoextensioncommand = 1226, + LiveVideoExtensionCommand = 1226, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOEXTENSIONCOMMAND - DestroyVideoextensioncommand = 1227, + DestroyVideoExtensionCommand = 1227, /// /// D3D12_MESSAGE_ID_INVALID_VIDEO_EXTENSION_COMMAND_ID InvalidVideoExtensionCommandId = 1228, @@ -5829,19 +5829,19 @@ public enum MessageId : int GeometryShaderOutputtingBothViewportArrayIndexAndShadingRateNotSupportedOnDevice = 1232, /// /// D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_SHADING_RATE - RssetshadingRateInvalidShadingRate = 1233, + RSSetShadingRateInvalidShadingRate = 1233, /// /// D3D12_MESSAGE_ID_RSSETSHADING_RATE_SHADING_RATE_NOT_PERMITTED_BY_CAP - RssetshadingRateShadingRateNotPermittedByCap = 1234, + RSSetShadingRateShadingRateNotPermittedByCap = 1234, /// /// D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_COMBINER - RssetshadingRateInvalidCombiner = 1235, + RSSetShadingRateInvalidCombiner = 1235, /// /// D3D12_MESSAGE_ID_RSSETSHADINGRATEIMAGE_REQUIRES_TIER_2 - RssetshadingrateimageRequiresTier2 = 1236, + RSSetShadingRateImageRequiresTier2 = 1236, /// /// D3D12_MESSAGE_ID_RSSETSHADINGRATE_REQUIRES_TIER_1 - RssetshadingrateRequiresTier1 = 1237, + RSSetShadingRateRequiresTier1 = 1237, /// /// D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_FORMAT ShadingRateImageIncorrectFormat = 1238, @@ -5925,10 +5925,10 @@ public enum MessageId : int SamplerFeedbackCreateUavRequiresFeedbackMapFormat = 1264, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_INVALIDSHADERBYTECODE - CreatemeshshaderInvalidShaderBytecode = 1265, + CreateMeshShaderInvalidShaderBytecode = 1265, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTOFMEMORY - CreatemeshshaderOutOfMemory = 1266, + CreateMeshShaderOutOfMemory = 1266, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE CreatemeshshaderwithstreamoutputInvalidShaderType = 1267, @@ -5946,10 +5946,10 @@ public enum MessageId : int SamplerFeedbackCreateUavMismatchingTargetedResource = 1271, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTPUTEXCEEDSMAXSIZE - CreatemeshshaderOutputexceedsmaxsize = 1272, + CreateMeshShaderOutputexceedsmaxsize = 1272, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_GROUPSHAREDEXCEEDSMAXSIZE - CreatemeshshaderGroupsharedexceedsmaxsize = 1273, + CreateMeshShaderGroupSharedExceedsMaxSize = 1273, /// /// D3D12_MESSAGE_ID_VERTEX_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE VertexShaderOutputtingBothViewportArrayIndexAndShadingRateNotSupportedOnDevice = 1274, @@ -5958,85 +5958,85 @@ public enum MessageId : int MeshShaderOutputtingBothViewportArrayIndexAndShadingRateNotSupportedOnDevice = 1275, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_MISMATCHEDASMSPAYLOADSIZE - CreatemeshshaderMismatchedasmspayloadsize = 1276, + CreateMeshShaderMismatchedASMSPayloadSize = 1276, /// /// D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS CreateRootSignatureUnboundedStaticDescriptors = 1277, /// /// D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE - CreateamplificationshaderInvalidShaderBytecode = 1278, + CreateAmplificationShaderInvalidShaderBytecode = 1278, /// /// D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY - CreateamplificationshaderOutOfMemory = 1279, + CreateAmplificationShaderOutOfMemory = 1279, /// /// D3D12_MESSAGE_ID_CREATE_SHADERCACHESESSION - CreateShadercachesession = 1280, + CreateShaderCacheSession = 1280, /// /// D3D12_MESSAGE_ID_LIVE_SHADERCACHESESSION - LiveShadercachesession = 1281, + LiveShaderCacheSession = 1281, /// /// D3D12_MESSAGE_ID_DESTROY_SHADERCACHESESSION - DestroyShadercachesession = 1282, + DestroyShaderCacheSession = 1282, /// /// D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_INVALIDARGS - CreateshadercachesessionInvalidArgs = 1283, + CreateShaderCacheSessionInvalidArgs = 1283, /// /// D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_DISABLED - CreateshadercachesessionDisabled = 1284, + CreateShaderCacheSessionDisabled = 1284, /// /// D3D12_MESSAGE_ID_CREATESHADERCACHESESSION_ALREADYOPEN - CreateshadercachesessionAlreadyopen = 1285, + CreateShaderCacheSessionAlreadyOpen = 1285, /// /// D3D12_MESSAGE_ID_SHADERCACHECONTROL_DEVELOPERMODE - ShadercachecontrolDevelopermode = 1286, + ShaderCacheControlDeveloperMode = 1286, /// /// D3D12_MESSAGE_ID_SHADERCACHECONTROL_INVALIDFLAGS - ShadercachecontrolInvalidFlags = 1287, + ShaderCacheControlInvalidFlags = 1287, /// /// D3D12_MESSAGE_ID_SHADERCACHECONTROL_STATEALREADYSET - ShadercachecontrolStatealreadyset = 1288, + ShaderCacheControlStateAlreadySet = 1288, /// /// D3D12_MESSAGE_ID_SHADERCACHECONTROL_IGNOREDFLAG - ShadercachecontrolIgnoredflag = 1289, + ShaderCacheControlIgnoredFlag = 1289, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_ALREADYPRESENT - ShadercachesessionStorevalueAlreadypresent = 1290, + ShaderCacheSessionStoreValueAlreadypresent = 1290, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_HASHCOLLISION - ShadercachesessionStorevalueHashcollision = 1291, + ShaderCacheSessionStoreValueHashCollision = 1291, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_STOREVALUE_CACHEFULL - ShadercachesessionStorevalueCachefull = 1292, + ShaderCacheSessionStoreValueCacheFull = 1292, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_FINDVALUE_NOTFOUND - ShadercachesessionFindvalueNotfound = 1293, + ShaderCacheSessionFindValueNotFound = 1293, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_CORRUPT - ShadercachesessionCorrupt = 1294, + ShaderCacheSessionCorrupt = 1294, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_DISABLED - ShadercachesessionDisabled = 1295, + ShaderCacheSessionDisabled = 1295, /// /// D3D12_MESSAGE_ID_OVERSIZED_DISPATCH OversizedDispatch = 1296, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOENCODER - CreateVideoencoder = 1297, + CreateVideoEncoder = 1297, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOENCODER - LiveVideoencoder = 1298, + LiveVideoEncoder = 1298, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOENCODER - DestroyVideoencoder = 1299, + DestroyVideoEncoder = 1299, /// /// D3D12_MESSAGE_ID_CREATE_VIDEOENCODERHEAP - CreateVideoencoderheap = 1300, + CreateVideoEncoderHeap = 1300, /// /// D3D12_MESSAGE_ID_LIVE_VIDEOENCODERHEAP - LiveVideoencoderheap = 1301, + LiveVideoEncoderHeap = 1301, /// /// D3D12_MESSAGE_ID_DESTROY_VIDEOENCODERHEAP - DestroyVideoencoderheap = 1302, + DestroyVideoEncoderHeap = 1302, /// /// D3D12_MESSAGE_ID_COPYTEXTUREREGION_MISMATCH_ENCODE_REFERENCE_ONLY_FLAG CopyTextureRegionMismatchEncodeReferenceOnlyFlag = 1303, @@ -6099,7 +6099,7 @@ public enum MessageId : int GetCopyableFootprintsUnsupportedBufferWidth = 1322, /// /// D3D12_MESSAGE_ID_CREATEMESHSHADER_TOPOLOGY_MISMATCH - CreatemeshshaderTopologyMismatch = 1323, + CreateMeshShaderTopologyMismatch = 1323, /// /// D3D12_MESSAGE_ID_VRS_SUM_COMBINER_REQUIRES_CAPABILITY VrsSumCombinerRequiresCapability = 1324, @@ -6108,10 +6108,10 @@ public enum MessageId : int SettingShadingRateFromMSRequiresCapability = 1325, /// /// D3D12_MESSAGE_ID_SHADERCACHESESSION_SHADERCACHEDELETE_NOTSUPPORTED - ShadercachesessionShadercachedeleteNotSupported = 1326, + ShaderCacheSessionShaderCacheDeleteNotSupported = 1326, /// /// D3D12_MESSAGE_ID_SHADERCACHECONTROL_SHADERCACHECLEAR_NOTSUPPORTED - ShadercachecontrolShadercacheclearNotSupported = 1327, + ShaderCacheControlShaderCacheClearNotSupported = 1327, } /// diff --git a/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Device.cs b/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Device.cs index 817c7d5..9c5ea91 100644 --- a/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Device.cs +++ b/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Device.cs @@ -14,4 +14,10 @@ public unsafe partial struct ID3D12Device CheckFeatureSupport(feature, &featureData, (uint)sizeof(TFeature)).ThrowIfFailed(); return featureData; } + + public HResult CreateCommittedResource(HeapType heapType, ResourceDescription* pDesc, ResourceStates InitialResourceState, ClearValue* pOptimizedClearValue, Guid* riidResource, void** ppvResource) + { + HeapProperties heapProperties = new(heapType); + return CreateCommittedResource(&heapProperties, HeapFlags.None, pDesc, InitialResourceState, pOptimizedClearValue, riidResource, ppvResource); + } } diff --git a/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Object.cs b/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Object.cs new file mode 100644 index 0000000..b988872 --- /dev/null +++ b/src/Vortice.Win32.Graphics.Direct3D12/ID3D12Object.cs @@ -0,0 +1,23 @@ +// Copyright © Amer Koleci and Contributors. +// Licensed under the MIT License (MIT). See LICENSE in the repository root for more information. + +namespace Win32.Graphics.Direct3D12; + +public partial struct ID3D12Object +{ + public unsafe HResult SetName(ReadOnlySpan name) + { + fixed (char* namePtr = name) + { + return SetName((ushort*)namePtr); + } + } + + public unsafe HResult SetName(string name) + { + fixed (char* namePtr = name) + { + return SetName((ushort*)namePtr); + } + } +} diff --git a/src/Vortice.Win32/Properties/AssemblyInfo.cs b/src/Vortice.Win32/Properties/AssemblyInfo.cs index 2250943..617ca5d 100644 --- a/src/Vortice.Win32/Properties/AssemblyInfo.cs +++ b/src/Vortice.Win32/Properties/AssemblyInfo.cs @@ -1,6 +1,7 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Vortice.Win32.Graphics.Dxgi")] +[assembly: InternalsVisibleTo("Vortice.Win32.Graphics.Direct3D9")] [assembly: InternalsVisibleTo("Vortice.Win32.Graphics.Direct3D11")] [assembly: InternalsVisibleTo("Vortice.Win32.Graphics.Direct3D12")] [assembly: InternalsVisibleTo("Vortice.Win32.Graphics.Direct3D11on12")] diff --git a/src/Vortice.Win32/Win32.cs b/src/Vortice.Win32/Win32.cs index d2a5d2f..749fc56 100644 --- a/src/Vortice.Win32/Win32.cs +++ b/src/Vortice.Win32/Win32.cs @@ -123,4 +123,6 @@ public static unsafe partial class Apis [DllImport("kernel32", ExactSpelling = true)] public static extern Handle GetProcessHeap(); + + public const int RDH_RECTANGLES = 1; }