diff --git a/BitComparer/BitComparer/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/BitComparer/BitComparer/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs index 2f7e5ec..3b1554c 100644 --- a/BitComparer/BitComparer/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs +++ b/BitComparer/BitComparer/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ // using System; using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")] +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = ".NET 5.0")] diff --git a/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.GeneratedMSBuildEditorConfig.editorconfig b/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.GeneratedMSBuildEditorConfig.editorconfig index 4b8f021..8318d76 100644 --- a/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.GeneratedMSBuildEditorConfig.editorconfig +++ b/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.GeneratedMSBuildEditorConfig.editorconfig @@ -5,6 +5,7 @@ build_property.UsingMicrosoftNETSdkWeb = build_property.ProjectTypeGuids = build_property.InvariantGlobalization = build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = BitComparer build_property.ProjectDir = D:\Programmierstuff\FiveM\BitComparer\BitComparer\ diff --git a/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.assets.cache b/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.assets.cache index b313990..7580c1d 100644 Binary files a/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.assets.cache and b/BitComparer/BitComparer/obj/Release/net5.0/BitComparer.assets.cache differ diff --git a/BitComparer/BitComparer/obj/project.packagespec.json b/BitComparer/BitComparer/obj/project.packagespec.json index e223e4b..1cf7da1 100644 --- a/BitComparer/BitComparer/obj/project.packagespec.json +++ b/BitComparer/BitComparer/obj/project.packagespec.json @@ -1 +1 @@ -"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\BitComparer.csproj","projectName":"BitComparer","projectPath":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\BitComparer.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\6.0.402\\RuntimeIdentifierGraph.json"}} \ No newline at end of file +"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\BitComparer.csproj","projectName":"BitComparer","projectPath":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\BitComparer.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\BitComparer\\BitComparer\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json"}} \ No newline at end of file diff --git a/BitComparer/BitComparer/obj/rider.project.restore.info b/BitComparer/BitComparer/obj/rider.project.restore.info index 920b4fe..18a9a65 100644 --- a/BitComparer/BitComparer/obj/rider.project.restore.info +++ b/BitComparer/BitComparer/obj/rider.project.restore.info @@ -1 +1 @@ -16668109765843786 \ No newline at end of file +16688631626454512 \ No newline at end of file diff --git a/CarCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/CarCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs index 2f7e5ec..3b1554c 100644 --- a/CarCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs +++ b/CarCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ // using System; using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")] +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = ".NET 5.0")] diff --git a/CarCombiner/obj/Release/net5.0/CarCombiner.GeneratedMSBuildEditorConfig.editorconfig b/CarCombiner/obj/Release/net5.0/CarCombiner.GeneratedMSBuildEditorConfig.editorconfig index 34d9a10..a4bc514 100644 --- a/CarCombiner/obj/Release/net5.0/CarCombiner.GeneratedMSBuildEditorConfig.editorconfig +++ b/CarCombiner/obj/Release/net5.0/CarCombiner.GeneratedMSBuildEditorConfig.editorconfig @@ -5,6 +5,7 @@ build_property.UsingMicrosoftNETSdkWeb = build_property.ProjectTypeGuids = build_property.InvariantGlobalization = build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = CarCombiner build_property.ProjectDir = D:\Programmierstuff\FiveM\CarCombiner\ diff --git a/CarCombiner/obj/Release/net5.0/CarCombiner.assets.cache b/CarCombiner/obj/Release/net5.0/CarCombiner.assets.cache index cf97790..923120c 100644 Binary files a/CarCombiner/obj/Release/net5.0/CarCombiner.assets.cache and b/CarCombiner/obj/Release/net5.0/CarCombiner.assets.cache differ diff --git a/CarCombiner/obj/project.packagespec.json b/CarCombiner/obj/project.packagespec.json index 18e0433..3974988 100644 --- a/CarCombiner/obj/project.packagespec.json +++ b/CarCombiner/obj/project.packagespec.json @@ -1 +1 @@ -"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\CarCombiner\\CarCombiner.csproj","projectName":"CarCombiner","projectPath":"D:\\Programmierstuff\\FiveM\\CarCombiner\\CarCombiner.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\CarCombiner\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\6.0.402\\RuntimeIdentifierGraph.json"}} \ No newline at end of file +"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\CarCombiner\\CarCombiner.csproj","projectName":"CarCombiner","projectPath":"D:\\Programmierstuff\\FiveM\\CarCombiner\\CarCombiner.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\CarCombiner\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json"}} \ No newline at end of file diff --git a/CarCombiner/obj/rider.project.restore.info b/CarCombiner/obj/rider.project.restore.info index 920b4fe..18a9a65 100644 --- a/CarCombiner/obj/rider.project.restore.info +++ b/CarCombiner/obj/rider.project.restore.info @@ -1 +1 @@ -16668109765843786 \ No newline at end of file +16688631626454512 \ No newline at end of file diff --git a/CarConverter/CarConverter.csproj b/CarConverter/CarConverter.csproj index bcad79f..2212a96 100644 --- a/CarConverter/CarConverter.csproj +++ b/CarConverter/CarConverter.csproj @@ -37,9 +37,6 @@ false - - ..\..\C#\CodeWalker.Core\bin\Debug\netstandard2.0\CodeWalker.Core.dll - packages\Microsoft-WindowsAPICodePack-Core.1.1.4\lib\net48\Microsoft.WindowsAPICodePack.dll @@ -47,6 +44,12 @@ packages\Microsoft-WindowsAPICodePack-Shell.1.1.4\lib\net48\Microsoft.WindowsAPICodePack.Shell.dll + + ..\..\.Librarys\GTA Toolkit\RageLib.dll + + + ..\..\.Librarys\GTA Toolkit\RageLib.GTA5.dll + diff --git a/CarConverter/MainWindow.xaml.cs b/CarConverter/MainWindow.xaml.cs index 3b5ea90..1b6eb48 100644 --- a/CarConverter/MainWindow.xaml.cs +++ b/CarConverter/MainWindow.xaml.cs @@ -86,6 +86,11 @@ namespace CarConverter { item.KeyDown += ListInteraction; StreamFiles.Items.Add(item); } + + if (_streamFiles.Count != 0) { + var name = _streamFiles[0].Name.Replace(_streamFiles[0].Extension, ""); + CarName.Text = name; + } } private void Clear(object sender, RoutedEventArgs e) { diff --git a/CarConverter/Utils.cs b/CarConverter/Utils.cs index 72d8a62..9673eac 100644 --- a/CarConverter/Utils.cs +++ b/CarConverter/Utils.cs @@ -1,6 +1,13 @@ using System; +using System.Collections.Generic; using System.IO; -using CodeWalker.GameFiles; +using System.IO.Compression; +using System.Text; +using RageLib.Archives; +using RageLib.GTA5.Archives; +using RageLib.GTA5.ArchiveWrappers; +using RageLib.GTA5.Cryptography; +using RageLib.GTA5.Utilities; namespace CarConverter { public static class Utils { @@ -19,7 +26,7 @@ data_file 'CARCOLS_FILE' 'carcols.meta' data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta' "; - public static void UnpackDlcFile(string dlcFile, string targetFolder, bool compress = true) { + /*public static void UnpackDlcFile(string dlcFile, string targetFolder, bool compress = true) { string tempFolder = Path.GetTempPath() + Path.DirectorySeparatorChar + "MloConverter" + Path.DirectorySeparatorChar + "OrigDlc"; if (Directory.Exists(tempFolder)) @@ -79,6 +86,122 @@ data_file 'VEHICLE_VARIATION_FILE' 'carvariations.meta' } Directory.Delete(tempFolder, true); + }*/ + + public static void UnpackDlcFile(string dlcFile, string outFolder, bool compress = true) { + try { + var fileInfo = new FileInfo(dlcFile); + if (Directory.Exists(outFolder)) + Directory.Delete(outFolder, true); + + var fileStream = new FileStream(fileInfo.FullName, FileMode.Open); + + var inputArchive = RageArchiveWrapper7.Open(fileStream, fileInfo.Name); + var queue = new List>() + { new Tuple(fileInfo.FullName, inputArchive, false) }; + + while (queue.Count > 0) { + var fullPath = queue[0].Item1; + var rpf = queue[0].Item2; + var isTmpStream = queue[0].Item3; + + queue.RemoveAt(0); + + ArchiveUtilities.ForEachFile(fullPath.Replace(fileInfo.FullName, ""), rpf.Root, rpf.archive_.Encryption, (fullFileName, file, encryption) => { + string path = outFolder + fullFileName; + string dir = Path.GetDirectoryName(path); + + if (!Directory.Exists(dir)) + Directory.CreateDirectory(dir); + + Console.WriteLine(fullFileName); + + if (file.Name.EndsWith(".rpf")) { + try { + var tmpStream = new FileStream(Path.GetTempFileName(), FileMode.Open); + + file.Export(tmpStream); + RageArchiveWrapper7 archive = RageArchiveWrapper7.Open(tmpStream, file.Name); + queue.Add(new Tuple(fullFileName, archive, true)); + } + catch (Exception e) { + Console.WriteLine(e); + } + } + else { + if (file.Name.EndsWith(".xml") || file.Name.EndsWith(".meta")) { + byte[] data = GetBinaryFileData((IArchiveBinaryFile)file, encryption); + string xml; + + if (data[0] == 0xEF && data[1] == 0xBB && data[2] == 0xBF) // Detect BOM + { + xml = Encoding.UTF8.GetString(data, 3, data.Length - 3); + } + else { + xml = Encoding.UTF8.GetString(data); + } + + File.WriteAllText(path, xml, Encoding.UTF8); + } + else { + file.Export(path); + byte[] bytes = File.ReadAllBytes(path); + bytes[3] = 55; + File.WriteAllBytes(path, bytes); + } + } + }); + + var stream = (FileStream)rpf.archive_.BaseStream; + string fileName = stream.Name; + + rpf.Dispose(); + + if (isTmpStream) { + File.Delete(fileName); + } + } + } + catch (Exception e) { + Console.WriteLine(e); + } } + + private static byte[] GetBinaryFileData(IArchiveBinaryFile file, RageArchiveEncryption7 encryption) + { + using (var ms = new MemoryStream()) + { + file.Export(ms); + + byte[] data = ms.ToArray(); + + if(file.IsEncrypted) + { + if (encryption == RageArchiveEncryption7.AES) + { + data = GTA5Crypto.DecryptAES(data); + } + else // if(encryption == RageArchiveEncryption7.NG) + { + data = GTA5Crypto.DecryptNG(data, file.Name, (uint)file.UncompressedSize); + } + } + + if (file.IsCompressed) + { + using (var dfls = new DeflateStream(new MemoryStream(data), CompressionMode.Decompress)) + { + using (var outstr = new MemoryStream()) + { + dfls.CopyTo(outstr); + data = outstr.ToArray(); + } + } + } + + return data; + } + } + } } \ No newline at end of file diff --git a/CarConverter/bin/Release/CarConverter.exe b/CarConverter/bin/Release/CarConverter.exe index 951d9ff..c7abad9 100644 Binary files a/CarConverter/bin/Release/CarConverter.exe and b/CarConverter/bin/Release/CarConverter.exe differ diff --git a/CarConverter/bin/Release/CarConverter.pdb b/CarConverter/bin/Release/CarConverter.pdb index f7b9868..beb87f6 100644 Binary files a/CarConverter/bin/Release/CarConverter.pdb and b/CarConverter/bin/Release/CarConverter.pdb differ diff --git a/CarConverter/bin/Release/CodeWalker.Core.dll b/CarConverter/bin/Release/CodeWalker.Core.dll deleted file mode 100644 index 0cddcb4..0000000 Binary files a/CarConverter/bin/Release/CodeWalker.Core.dll and /dev/null differ diff --git a/CarConverter/bin/Release/CodeWalker.Core.pdb b/CarConverter/bin/Release/CodeWalker.Core.pdb deleted file mode 100644 index 5e43493..0000000 Binary files a/CarConverter/bin/Release/CodeWalker.Core.pdb and /dev/null differ diff --git a/CarConverter/bin/Release/DirectXTex.dll b/CarConverter/bin/Release/DirectXTex.dll new file mode 100644 index 0000000..c283ec5 Binary files /dev/null and b/CarConverter/bin/Release/DirectXTex.dll differ diff --git a/CarConverter/bin/Release/HtmlAgilityPack.dll b/CarConverter/bin/Release/HtmlAgilityPack.dll new file mode 100644 index 0000000..601b40c Binary files /dev/null and b/CarConverter/bin/Release/HtmlAgilityPack.dll differ diff --git a/CarConverter/bin/Release/HtmlAgilityPack.pdb b/CarConverter/bin/Release/HtmlAgilityPack.pdb new file mode 100644 index 0000000..2ecd708 Binary files /dev/null and b/CarConverter/bin/Release/HtmlAgilityPack.pdb differ diff --git a/CarConverter/bin/Release/HtmlAgilityPack.xml b/CarConverter/bin/Release/HtmlAgilityPack.xml new file mode 100644 index 0000000..2a5075b --- /dev/null +++ b/CarConverter/bin/Release/HtmlAgilityPack.xml @@ -0,0 +1,2979 @@ + + + + HtmlAgilityPack + + + + + A utility class to compute CRC32. + + + + + Compute a checksum for a given array of bytes. + + The array of bytes to compute the checksum for. + The computed checksum. + + + + Compute a checksum for a given string. + + The string to compute the checksum for. + The computed checksum. + + + + Represents an HTML attribute. + + + + + Gets the line number of this attribute in the document. + + + + + Gets the column number of this attribute in the document. + + + + + Gets the stream position of the value of this attribute in the document, relative to the start of the document. + + + + + Gets the length of the value. + + + + + Gets the qualified name of the attribute. + + + + + Name of attribute with original case + + + + + Gets the HTML document to which this attribute belongs. + + + + + Gets the HTML node to which this attribute belongs. + + + + + Specifies what type of quote the data should be wrapped in + + + + + Gets the stream position of this attribute in the document, relative to the start of the document. + + + + + Gets or sets the value of the attribute. + + + + + Gets the DeEntitized value of the attribute. + + + + + Gets a valid XPath string that points to this Attribute + + + + + Compares the current instance with another attribute. Comparison is based on attributes' name. + + An attribute to compare with this instance. + A 32-bit signed integer that indicates the relative order of the names comparison. + + + + Creates a duplicate of this attribute. + + The cloned attribute. + + + + Removes this attribute from it's parents collection + + + + + An Enum representing different types of Quotes used for surrounding attribute values + + + + + A single quote mark ' + + + + + A double quote mark " + + + + + Represents a combined list and collection of HTML nodes. + + + + + Gets the number of elements actually contained in the list. + + + + + Gets readonly status of colelction + + + + + Gets the attribute at the specified index. + + + + + Gets a given attribute from the list using its name. + + + + + Adds supplied item to collection + + + + + + Explicit clear + + + + + Retreives existence of supplied item + + + + + + + Copies collection to array + + + + + + + Get Explicit enumerator + + + + + + Explicit non-generic enumerator + + + + + + Retrieves the index for the supplied item, -1 if not found + + + + + + + Inserts given item into collection at supplied index + + + + + + + Explicit collection remove + + + + + + + Removes the attribute at the specified index. + + The index of the attribute to remove. + + + + Adds a new attribute to the collection with the given values + + + + + + + Inserts the specified attribute as the last attribute in the collection. + + The attribute to insert. May not be null. + The appended attribute. + + + + Creates and inserts a new attribute as the last attribute in the collection. + + The name of the attribute to insert. + The appended attribute. + + + + Creates and inserts a new attribute as the last attribute in the collection. + + The name of the attribute to insert. + The value of the attribute to insert. + The appended attribute. + + + + Checks for existance of attribute with given name + + + + + + + Inserts the specified attribute as the first node in the collection. + + The attribute to insert. May not be null. + The prepended attribute. + + + + Removes a given attribute from the list. + + The attribute to remove. May not be null. + + + + Removes an attribute from the list, using its name. If there are more than one attributes with this name, they will all be removed. + + The attribute's name. May not be null. + + + + Remove all attributes in the list. + + + + + Returns all attributes with specified name. Handles case insentivity + + Name of the attribute + + + + + Removes all attributes from the collection + + + + + Clears the attribute collection + + + + + Represents an HTML comment. + + + + + Gets or Sets the comment text of the node. + + + + + Gets or Sets the HTML between the start and end tags of the object. In the case of a text node, it is equals to OuterHtml. + + + + + Gets or Sets the object and its content in HTML. + + + + + Represents a complete HTML document. + + + + True to disable, false to enable the behavior tag p. + + + Default builder to use in the HtmlDocument constructor + + + Action to execute before the Parse is executed + + + + Defines the max level we would go deep into the html document + + + + The HtmlDocument Text. Careful if you modify it. + + + True to stay backward compatible with previous version of HAP. This option does not guarantee 100% compatibility. + + + + Adds Debugging attributes to node. Default is false. + + + + + Defines if closing for non closed nodes must be done at the end or directly in the document. + Setting this to true can actually change how browsers render the page. Default is false. + + + + + Defines if non closed nodes will be checked at the end of parsing. Default is true. + + + + + Defines if a checksum must be computed for the document while parsing. Default is false. + + + + + Defines if SelectNodes method will return null or empty collection when no node matched the XPath expression. + Setting this to true will return empty collection and false will return null. Default is false. + + + + True to disable, false to enable the server side code. + + + + Defines the default stream encoding to use. Default is System.Text.Encoding.Default. + + + + + Defines if source text must be extracted while parsing errors. + If the document has a lot of errors, or cascading errors, parsing performance can be dramatically affected if set to true. + Default is false. + + + + + Defines the maximum length of source text or parse errors. Default is 100. + + + + + Defines if LI, TR, TH, TD tags must be partially fixed when nesting errors are detected. Default is false. + + + + + Defines if output must conform to XML, instead of HTML. Default is false. + + + + + If used together with and enabled, Xml namespaces in element names are preserved. Default is false. + + + + + Defines if attribute value output must be optimized (not bound with double quotes if it is possible). Default is false. + + + + + Defines if name must be output with it's original case. Useful for asp.net tags and attributes. Default is false. + + + + + Defines if name must be output in uppercase. Default is false. + + + + + Defines if declared encoding must be read from the document. + Declared encoding is determined using the meta http-equiv="content-type" content="text/html;charset=XXXXX" html node. + Default is true. + + + + + Defines the name of a node that will throw the StopperNodeException when found as an end node. Default is null. + + + + + Defines if the 'id' attribute must be specifically used. Default is true. + + + + + Defines if empty nodes must be written as closed during output. Default is false. + + + + + The max number of nested child nodes. + Added to prevent stackoverflow problem when a page has tens of thousands of opening html tags with no closing tags + + + + + Creates an instance of an HTML document. + + + + Gets the parsed text. + The parsed text. + + + + Defines the max level we would go deep into the html document. If this depth level is exceeded, and exception is + thrown. + + + + + Gets the document CRC32 checksum if OptionComputeChecksum was set to true before parsing, 0 otherwise. + + + + + Gets the document's declared encoding. + Declared encoding is determined using the meta http-equiv="content-type" content="text/html;charset=XXXXX" html node (pre-HTML5) or the meta charset="XXXXX" html node (HTML5). + + + + + Gets the root node of the document. + + + + + Gets the document's output encoding. + + + + + Gets a list of parse errors found in the document. + + + + + Gets the remaining text. + Will always be null if OptionStopperNodeName is null. + + + + + Gets the offset of Remainder in the original Html text. + If OptionStopperNodeName is null, this will return the length of the original Html text. + + + + + Gets the document's stream encoding. + + + + + Gets a valid XML name. + + Any text. + A string that is a valid XML name. + + + + Applies HTML encoding to a specified string. + + The input string to encode. May not be null. + The encoded string. + + + + Determines if the specified character is considered as a whitespace character. + + The character to check. + true if if the specified character is considered as a whitespace character. + + + + Creates an HTML attribute with the specified name. + + The name of the attribute. May not be null. + The new HTML attribute. + + + + Creates an HTML attribute with the specified name. + + The name of the attribute. May not be null. + The value of the attribute. + The new HTML attribute. + + + + Creates an HTML comment node. + + The new HTML comment node. + + + + Creates an HTML comment node with the specified comment text. + + The comment text. May not be null. + The new HTML comment node. + + + + Creates an HTML element node with the specified name. + + The qualified name of the element. May not be null. + The new HTML node. + + + + Creates an HTML text node. + + The new HTML text node. + + + + Creates an HTML text node with the specified text. + + The text of the node. May not be null. + The new HTML text node. + + + + Detects the encoding of an HTML stream. + + The input stream. May not be null. + The detected encoding. + + + + Detects the encoding of an HTML stream. + + The input stream. May not be null. + The html is checked. + The detected encoding. + + + + Detects the encoding of an HTML text provided on a TextReader. + + The TextReader used to feed the HTML. May not be null. + The detected encoding. + + + + Detects the encoding of an HTML text. + + The input html text. May not be null. + The detected encoding. + + + + Gets the HTML node with the specified 'id' attribute value. + + The attribute id to match. May not be null. + The HTML node with the matching id or null if not found. + + + + Loads an HTML document from a stream. + + The input stream. + + + + Loads an HTML document from a stream. + + The input stream. + Indicates whether to look for byte order marks at the beginning of the stream. + + + + Loads an HTML document from a stream. + + The input stream. + The character encoding to use. + + + + Loads an HTML document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the stream. + + + + Loads an HTML document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the stream. + The minimum buffer size. + + + + Loads the HTML document from the specified TextReader. + + The TextReader used to feed the HTML data into the document. May not be null. + + + + Loads the HTML document from the specified string. + + String containing the HTML document to load. May not be null. + + + + Saves the HTML document to the specified stream. + + The stream to which you want to save. + + + + Saves the HTML document to the specified stream. + + The stream to which you want to save. May not be null. + The character encoding to use. May not be null. + + + + Saves the HTML document to the specified StreamWriter. + + The StreamWriter to which you want to save. + + + + Saves the HTML document to the specified TextWriter. + + The TextWriter to which you want to save. May not be null. + + + + Saves the HTML document to the specified XmlWriter. + + The XmlWriter to which you want to save. + + + + Detects the encoding of an HTML document from a file first, and then loads the file. + + The complete file path to be read. + + + + Detects the encoding of an HTML document from a file first, and then loads the file. + + The complete file path to be read. May not be null. + true to detect encoding, false otherwise. + + + + Detects the encoding of an HTML file. + + Path for the file containing the HTML document to detect. May not be null. + The detected encoding. + + + + Loads an HTML document from a file. + + The complete file path to be read. May not be null. + + + + Loads an HTML document from a file. + + The complete file path to be read. May not be null. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads an HTML document from a file. + + The complete file path to be read. May not be null. + The character encoding to use. May not be null. + + + + Loads an HTML document from a file. + + The complete file path to be read. May not be null. + The character encoding to use. May not be null. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads an HTML document from a file. + + The complete file path to be read. May not be null. + The character encoding to use. May not be null. + Indicates whether to look for byte order marks at the beginning of the file. + The minimum buffer size. + + + + Saves the mixed document to the specified file. + + The location of the file where you want to save the document. + + + + Saves the mixed document to the specified file. + + The location of the file where you want to save the document. May not be null. + The character encoding to use. May not be null. + + + + Creates a new XPathNavigator object for navigating this HTML document. + + An XPathNavigator object. The XPathNavigator is positioned on the root of the document. + + + + Flags that describe the behavior of an Element node. + + + + + The node is a CDATA node. + + + + + The node is empty. META or IMG are example of such nodes. + + + + + The node will automatically be closed during parsing. + + + + + The node can overlap. + + + + + A utility class to replace special characters by entities and vice-versa. + Follows HTML 4.0 specification found at http://www.w3.org/TR/html4/sgml/entities.html + Follows Additional specification found at https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references + See also: https://html.spec.whatwg.org/multipage/named-characters.html#named-character-references + + + + + A collection of entities indexed by name. + + + + + A collection of entities indexed by value. + + + + + Replace known entities by characters. + + The source text. + The result text. + + + + Clone and entitize an HtmlNode. This will affect attribute values and nodes' text. It will also entitize all child nodes. + + The node to entitize. + An entitized cloned node. + + + + Replace characters above 127 by entities. + + The source text. + The result text. + + + + Replace characters above 127 by entities. + + The source text. + If set to false, the function will not use known entities name. Default is true. + The result text. + + + + Replace characters above 127 by entities. + + The source text. + If set to false, the function will not use known entities name. Default is true. + If set to true, the [quote], [ampersand], [lower than] and [greather than] characters will be entitized. + The result text + + + + Represents an HTML node. + + + + + Gets the name of a comment node. It is actually defined as '#comment'. + + + + + Gets the name of the document node. It is actually defined as '#document'. + + + + + Gets the name of a text node. It is actually defined as '#text'. + + + + + Gets a collection of flags that define specific behaviors for specific element nodes. + The table contains a DictionaryEntry list with the lowercase tag name as the Key, and a combination of HtmlElementFlags as the Value. + + + + + Initialize HtmlNode. Builds a list of all tags that have special allowances + + + + + Initializes HtmlNode, providing type, owner and where it exists in a collection + + + + + + + + Gets the collection of HTML attributes for this node. May not be null. + + + + + Gets all the children of the node. + + + + + Gets a value indicating if this node has been closed or not. + + + + + Gets the collection of HTML attributes for the closing tag. May not be null. + + + + + Gets the closing tag of the node, null if the node is self-closing. + + + + + Gets the first child of the node. + + + + + Gets a value indicating whether the current node has any attributes. + + + + + Gets a value indicating whether this node has any child nodes. + + + + + Gets a value indicating whether the current node has any attributes on the closing tag. + + + + + Gets or sets the value of the 'id' HTML attribute. The document must have been parsed using the OptionUseIdAttribute set to true. + + + + + Gets or Sets the HTML between the start and end tags of the object. + + + + + Gets or Sets the text between the start and end tags of the object. + + + + + Gets the last child of the node. + + + + + Gets the line number of this node in the document. + + + + + Gets the column number of this node in the document. + + + + + Gets the stream position of the area between the opening and closing tag of the node, relative to the start of the document. + + + + + Gets the length of the area between the opening and closing tag of the node. + + + + + Gets the length of the entire node, opening and closing tag included. + + + + + Gets or sets this node's name. + + + + + Gets the HTML node immediately following this element. + + + + + Gets the type of this node. + + + + + The original unaltered name of the tag + + + + + Gets or Sets the object and its content in HTML. + + + + + Gets the to which this node belongs. + + + + + Gets the parent of this node (for nodes that can have parents). + + + + + Gets the node immediately preceding this node. + + + + + Gets the stream position of this node in the document, relative to the start of the document. + + + + + Gets a valid XPath string that points to this node + + + + + The depth of the node relative to the opening root html element. This value is used to determine if a document has to many nested html nodes which can cause stack overflows + + + + + Determines if an element node can be kept overlapped. + + The name of the element node to check. May not be null. + true if the name is the name of an element node that can be kept overlapped, false otherwise. + + + + Creates an HTML node from a string representing literal HTML. + + The HTML text. + The newly created node instance. + + + + Determines if an element node is a CDATA element node. + + The name of the element node to check. May not be null. + true if the name is the name of a CDATA element node, false otherwise. + + + + Determines if an element node is closed. + + The name of the element node to check. May not be null. + true if the name is the name of a closed element node, false otherwise. + + + + Determines if an element node is defined as empty. + + The name of the element node to check. May not be null. + true if the name is the name of an empty element node, false otherwise. + + + + Determines if a text corresponds to the closing tag of an node that can be kept overlapped. + + The text to check. May not be null. + true or false. + + + + Returns a collection of all ancestor nodes of this element. + + + + + + Get Ancestors with matching name + + + + + + + Returns a collection of all ancestor nodes of this element. + + + + + + Gets all anscestor nodes and the current node + + + + + + + Adds the specified node to the end of the list of children of this node. + + The node to add. May not be null. + The node added. + + + Sets child nodes identifier. + The chil node. + + + + Adds the specified node to the end of the list of children of this node. + + The node list to add. May not be null. + + + + Gets all Attributes with name + + + + + + + Creates a duplicate of the node + + + + + + Creates a duplicate of the node and changes its name at the same time. + + The new name of the cloned node. May not be null. + The cloned node. + + + + Creates a duplicate of the node and changes its name at the same time. + + The new name of the cloned node. May not be null. + true to recursively clone the subtree under the specified node; false to clone only the node itself. + The cloned node. + + + + Creates a duplicate of the node. + + true to recursively clone the subtree under the specified node; false to clone only the node itself. + The cloned node. + + + + Creates a duplicate of the node and the subtree under it. + + The node to duplicate. May not be null. + + + + Creates a duplicate of the node. + + The node to duplicate. May not be null. + true to recursively clone the subtree under the specified node, false to clone only the node itself. + + + + Gets all Descendant nodes for this node and each of child nodes + + The depth level of the node to parse in the html tree + the current element as an HtmlNode + + + + Returns a collection of all descendant nodes of this element, in document order + + + + + + Gets all Descendant nodes in enumerated list + + + + + + Gets all Descendant nodes in enumerated list + + + + + + Get all descendant nodes with matching name + + + + + + + Returns a collection of all descendant nodes of this element, in document order + + + + + + Gets all descendant nodes including this node + + + + + + + Gets first generation child node matching name + + + + + + + Gets matching first generation child nodes matching name + + + + + + + Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. + + The name of the attribute to get. May not be null. + The default value to return if not found. + The value of the attribute if found, the default value if not found. + + + + Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. + + The name of the attribute to get. May not be null. + The default value to return if not found. + The value of the attribute if found, the default value if not found. + + + + Helper method to get the value of an attribute of this node. If the attribute is not found, the default value will be returned. + + The name of the attribute to get. May not be null. + The default value to return if not found. + The value of the attribute if found, the default value if not found. + + + + Inserts the specified node immediately after the specified reference node. + + The node to insert. May not be null. + The node that is the reference node. The newNode is placed after the refNode. + The node being inserted. + + + + Inserts the specified node immediately before the specified reference node. + + The node to insert. May not be null. + The node that is the reference node. The newChild is placed before this node. + The node being inserted. + + + + Adds the specified node to the beginning of the list of children of this node. + + The node to add. May not be null. + The node added. + + + + Adds the specified node list to the beginning of the list of children of this node. + + The node list to add. May not be null. + + + + Removes node from parent collection + + + + + Removes all the children and/or attributes of the current node. + + + + + Removes all the children of the current node. + + + + Removes all id for node described by node. + The node. + + + + Removes the specified child node. + + The node being removed. May not be null. + The node removed. + + + + Removes the specified child node. + + The node being removed. May not be null. + true to keep grand children of the node, false otherwise. + The node removed. + + + + Replaces the child node oldChild with newChild node. + + The new node to put in the child list. + The node being replaced in the list. + The node replaced. + + + + Helper method to set the value of an attribute of this node. If the attribute is not found, it will be created automatically. + + The name of the attribute to set. May not be null. + The value for the attribute. + The corresponding attribute instance. + + + + Saves all the children of the node to the specified TextWriter. + + The TextWriter to which you want to save. + Identifies the level we are in starting at root with 0 + + + + Saves all the children of the node to a string. + + The saved string. + + + + Saves the current node to the specified TextWriter. + + The TextWriter to which you want to save. + identifies the level we are in starting at root with 0 + + + + Saves the current node to the specified XmlWriter. + + The XmlWriter to which you want to save. + + + + Saves the current node to a string. + + The saved string. + + + + Sets the parent Html node and properly determines the current node's depth using the parent node's depth. + + + + + Adds one or more classes to this node. + + The node list to add. May not be null. + + + + Adds one or more classes to this node. + + The node list to add. May not be null. + true to throw Error if class name exists, false otherwise. + + + + Removes the class attribute from the node. + + + + + Removes the class attribute from the node. + + true to throw Error if class name doesn't exist, false otherwise. + + + + Removes the specified class from the node. + + The class being removed. May not be null. + + + + Removes the specified class from the node. + + The class being removed. May not be null. + true to throw Error if class name doesn't exist, false otherwise. + + + + Replaces the class name oldClass with newClass name. + + The new class name. + The class being replaced. + + + + Replaces the class name oldClass with newClass name. + + The new class name. + The class being replaced. + true to throw Error if class name doesn't exist, false otherwise. + + + Gets the CSS Class from the node. + + The CSS Class from the node + + + + Check if the node class has the parameter class. + The class. + True if node class has the parameter class, false if not. + + + + Fill an object and go through it's properties and fill them too. + + Type of object to want to fill. It should have atleast one property that defined XPath. + If htmlDocument includes data , leave this parameter null. Else pass your specific htmldocument. + Returns an object of type T including Encapsulated data. + + + + Fill an object and go through it's properties and fill them too. + + Type of object to want to fill. It should have atleast one property that defined XPath. + If htmlDocument includes data , leave this parameter null. Else pass your specific htmldocument. + Returns an object of type targetType including Encapsulated data. + + + + Creates a new XPathNavigator object for navigating this HTML node. + + An XPathNavigator object. The XPathNavigator is positioned on the node from which the method was called. It is not positioned on the root of the document. + + + + Creates an XPathNavigator using the root of this document. + + + + + + Selects a list of nodes matching the expression. + + The XPath expression. + An containing a collection of nodes matching the query, or null if no node matched the XPath expression. + + + + Selects a list of nodes matching the expression. + + The XPath expression. + An containing a collection of nodes matching the query, or null if no node matched the XPath expression. + + + + Selects the first XmlNode that matches the XPath expression. + + The XPath expression. May not be null. + The first that matches the XPath query or a null reference if no matching node was found. + + + + Selects a list of nodes matching the expression. + + The XPath expression. + An containing a collection of nodes matching the query, or null if no node matched the XPath expression. + + + + Includes tools that GetEncapsulatedData method uses them. + + + + + Determine if a type define an attribute or not , supporting both .NetStandard and .NetFramework2.0 + + Type you want to test it. + Attribute that type must have or not. + If true , The type parameter define attributeType parameter. + + + + Retrive properties of type that defined . + + Type that you want to find it's XPath-Defined properties. + IEnumerable of property infos of a type , that defined specific attribute. + + + + Determine if a has implemented BUT is considered as NONE-IEnumerable ! + + The property info you want to test. + True if property info is IEnumerable. + + + + Returns T type(first generic type) of or . + + IEnumerable-Implemented property + List of generic types. + + + + Find and Return a mehtod that defined in a class by it's name. + + Type of class include requested method. + Name of requested method as string. + Method info of requested method. + + + + Create of given type. + + Type that you want to make a List of it. + Returns IList of given type. + + + + Returns the part of value of you want as . + + A htmlNode instance. + Attribute that includes ReturnType + String that choosen from HtmlNode as result. + + + + Returns parts of values of you want as . + + that you want to retrive each value. + A instnce incules . + Type of IList generic you want. + + + + + Simulate Func method to use in Lambada Expression. + + + + + + + + + This method works like Where method in LINQ. + + + + + + + + + Check if the type can instantiated. + + + + + + + Returns count of elements stored in IEnumerable of T + + + + + + + + Specify which part of is requested. + + + + + Just mark and flag classes to show they have properties that defined . + + + + + Includes XPath and . XPath for finding html tags and for specify which part of you want to return. + + + + + Represents a combined list and collection of HTML nodes. + + + + + Initialize the HtmlNodeCollection with the base parent node + + The base node of the collection + + + + Gets a given node from the list. + + + + + Get node with tag name + + + + + + + Gets the number of elements actually contained in the list. + + + + + Is collection read only + + + + + Gets the node at the specified index. + + + + + Add node to the collection + + + + + + Add node to the collection + + + + + + + Clears out the collection of HtmlNodes. Removes each nodes reference to parentnode, nextnode and prevnode + + + + + Gets existence of node in collection + + + + + + + Copy collection to array + + + + + + + Get Enumerator + + + + + + Get Explicit Enumerator + + + + + + Get index of node + + + + + + + Insert node at index + + + + + + + Remove node + + + + + + + Remove at index + + + + + + Get first instance of node in supplied collection + + + + + + + + Add node to the end of the collection + + + + + + Get first instance of node with name + + + + + + + Get index of node + + + + + + + Add node to the beginning of the collection + + + + + + Remove node at index + + + + + + + Replace node at index + + + + + + + Get all node descended from this collection + + + + + + Get all node descended from this collection with matching name + + + + + + Gets all first generation elements in collection + + + + + + Gets all first generation elements matching name + + + + + + + All first generation nodes in collection + + + + + + Represents an HTML navigator on an HTML document seen as a data store. + + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. + + The input stream. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. + + The input stream. + Indicates whether to look for byte order marks at the beginning of the stream. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. + + The input stream. + The character encoding to use. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the stream. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the stream. + The minimum buffer size. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a TextReader. + + The TextReader used to feed the HTML data into the document. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a file. + + The complete file path to be read. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a file. + + The complete file path to be read. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a file. + + The complete file path to be read. + The character encoding to use. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a file. + + The complete file path to be read. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Initializes a new instance of the HtmlNavigator and loads an HTML document from a file. + + The complete file path to be read. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + The minimum buffer size. + + + + Gets the base URI for the current node. + Always returns string.Empty in the case of HtmlNavigator implementation. + + + + + Gets the current HTML document. + + + + + Gets the current HTML node. + + + + + Gets a value indicating whether the current node has child nodes. + + + + + Gets a value indicating whether the current node has child nodes. + + + + + Gets a value indicating whether the current node is an empty element. + + + + + Gets the name of the current HTML node without the namespace prefix. + + + + + Gets the qualified name of the current node. + + + + + Gets the namespace URI (as defined in the W3C Namespace Specification) of the current node. + Always returns string.Empty in the case of HtmlNavigator implementation. + + + + + Gets the associated with this implementation. + + + + + Gets the type of the current node. + + + + + Gets the prefix associated with the current node. + Always returns string.Empty in the case of HtmlNavigator implementation. + + + + + Gets the text value of the current node. + + + + + Gets the xml:lang scope for the current node. + Always returns string.Empty in the case of HtmlNavigator implementation. + + + + + Creates a new HtmlNavigator positioned at the same node as this HtmlNavigator. + + A new HtmlNavigator object positioned at the same node as the original HtmlNavigator. + + + + Gets the value of the HTML attribute with the specified LocalName and NamespaceURI. + + The local name of the HTML attribute. + The namespace URI of the attribute. Unsupported with the HtmlNavigator implementation. + The value of the specified HTML attribute. String.Empty or null if a matching attribute is not found or if the navigator is not positioned on an element node. + + + + Returns the value of the namespace node corresponding to the specified local name. + Always returns string.Empty for the HtmlNavigator implementation. + + The local name of the namespace node. + Always returns string.Empty for the HtmlNavigator implementation. + + + + Determines whether the current HtmlNavigator is at the same position as the specified HtmlNavigator. + + The HtmlNavigator that you want to compare against. + true if the two navigators have the same position, otherwise, false. + + + + Moves to the same position as the specified HtmlNavigator. + + The HtmlNavigator positioned on the node that you want to move to. + true if successful, otherwise false. If false, the position of the navigator is unchanged. + + + + Moves to the HTML attribute with matching LocalName and NamespaceURI. + + The local name of the HTML attribute. + The namespace URI of the attribute. Unsupported with the HtmlNavigator implementation. + true if the HTML attribute is found, otherwise, false. If false, the position of the navigator does not change. + + + + Moves to the first sibling of the current node. + + true if the navigator is successful moving to the first sibling node, false if there is no first sibling or if the navigator is currently positioned on an attribute node. + + + + Moves to the first HTML attribute. + + true if the navigator is successful moving to the first HTML attribute, otherwise, false. + + + + Moves to the first child of the current node. + + true if there is a first child node, otherwise false. + + + + Moves the XPathNavigator to the first namespace node of the current element. + Always returns false for the HtmlNavigator implementation. + + An XPathNamespaceScope value describing the namespace scope. + Always returns false for the HtmlNavigator implementation. + + + + Moves to the node that has an attribute of type ID whose value matches the specified string. + + A string representing the ID value of the node to which you want to move. This argument does not need to be atomized. + true if the move was successful, otherwise false. If false, the position of the navigator is unchanged. + + + + Moves the XPathNavigator to the namespace node with the specified local name. + Always returns false for the HtmlNavigator implementation. + + The local name of the namespace node. + Always returns false for the HtmlNavigator implementation. + + + + Moves to the next sibling of the current node. + + true if the navigator is successful moving to the next sibling node, false if there are no more siblings or if the navigator is currently positioned on an attribute node. If false, the position of the navigator is unchanged. + + + + Moves to the next HTML attribute. + + + + + + Moves the XPathNavigator to the next namespace node. + Always returns falsefor the HtmlNavigator implementation. + + An XPathNamespaceScope value describing the namespace scope. + Always returns false for the HtmlNavigator implementation. + + + + Moves to the parent of the current node. + + true if there is a parent node, otherwise false. + + + + Moves to the previous sibling of the current node. + + true if the navigator is successful moving to the previous sibling node, false if there is no previous sibling or if the navigator is currently positioned on an attribute node. + + + + Moves to the root node to which the current node belongs. + + + + + Represents the type of a node. + + + + + The root of a document. + + + + + An HTML element. + + + + + An HTML comment. + + + + + A text node is always the child of an element or a document node. + + + + + Represents a parsing error found during document parsing. + + + + + Gets the type of error. + + + + + Gets the line number of this error in the document. + + + + + Gets the column number of this error in the document. + + + + + Gets a description for the error. + + + + + Gets the the full text of the line containing the error. + + + + + Gets the absolute stream position of this error in the document, relative to the start of the document. + + + + + Represents the type of parsing error. + + + + + A tag was not closed. + + + + + A tag was not opened. + + + + + There is a charset mismatch between stream and declared (META) encoding. + + + + + An end tag was not required. + + + + + An end tag is invalid at this position. + + + + + Represents an HTML text node. + + + + + Gets or Sets the HTML between the start and end tags of the object. In the case of a text node, it is equals to OuterHtml. + + + + + Gets or Sets the object and its content in HTML. + + + + + Gets or Sets the text of the node. + + + + + A utility class to get HTML document from HTTP. + + + + + Represents the method that will handle the PostResponse event. + + + + + Represents the method that will handle the PreHandleDocument event. + + + + + Represents the method that will handle the PreRequest event. + + + + + Occurs after an HTTP request has been executed. + + + + + Occurs before an HTML document is handled. + + + + + Occurs before an HTTP request is executed. + + + + + Gets or Sets a value indicating if document encoding must be automatically detected. + + + + + Gets or sets the Encoding used to override the response stream from any web request + + + + + Gets or Sets a value indicating whether to get document only from the cache. + If this is set to true and document is not found in the cache, nothing will be loaded. + + + + + Gets or Sets a value indicating whether to get document from the cache if exists, otherwise from the web + A value indicating whether to get document from the cache if exists, otherwise from the web + + + + + Gets or Sets the cache path. If null, no caching mechanism will be used. + + + + + Gets a value indicating if the last document was retrieved from the cache. + + + + + Gets the last request duration in milliseconds. + + + + + Gets the URI of the Internet resource that actually responded to the request. + + + + + Gets the last request status. + + + + + Gets or Sets the size of the buffer used for memory operations. + + + + + Gets or Sets a value indicating if cookies will be stored. + + + + Gets or sets a value indicating whether redirect should be captured instead of the current location. + True if capture redirect, false if not. + + + + Gets or Sets the User Agent HTTP 1.1 header sent on any webrequest + + + + + Gets or Sets a value indicating whether the caching mechanisms should be used or not. + + + + + Gets the MIME content type for a given path extension. + + The input path extension. + The default content type to return if any error occurs. + The path extension's MIME content type. + + + + Gets the path extension for a given MIME content type. + + The input MIME content type. + The default path extension to return if any error occurs. + The MIME content type's path extension. + + + + Creates an instance of the given type from the specified Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The requested type. + An newly created instance. + + + + Gets an HTML document from an Internet resource and saves it to the specified file. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The location of the file where you want to save the document. + + + + Gets an HTML document from an Internet resource and saves it to the specified file. - Proxy aware + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The location of the file where you want to save the document. + + + + + + Gets an HTML document from an Internet resource and saves it to the specified file. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The location of the file where you want to save the document. + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + + + + Gets an HTML document from an Internet resource and saves it to the specified file. Understands Proxies + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The location of the file where you want to save the document. + + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + + + + + Gets the cache file path for a specified url. + + The url fo which to retrieve the cache path. May not be null. + The cache file path. + + + + Gets an HTML document from an Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + A new HTML document. + + + + Gets an HTML document from an Internet resource. + + The requested Uri, such as new Uri("http://Myserver/Mypath/Myfile.asp"). + A new HTML document. + + + + Gets an HTML document from an Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + Host to use for Proxy + Port the Proxy is on + User Id for Authentication + Password for Authentication + A new HTML document. + + + + Gets an HTML document from an Internet resource. + + The requested Uri, such as new Uri("http://Myserver/Mypath/Myfile.asp"). + Host to use for Proxy + Port the Proxy is on + User Id for Authentication + Password for Authentication + A new HTML document. + + + + Loads an HTML document from an Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + A new HTML document. + + + + Loads an HTML document from an Internet resource. + + The requested URL, such as new Uri("http://Myserver/Mypath/Myfile.asp"). + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + A new HTML document. + + + + Loads an HTML document from an Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + Proxy to use with this request + Credentials to use when authenticating + A new HTML document. + + + + Loads an HTML document from an Internet resource. + + The requested Uri, such as new Uri("http://Myserver/Mypath/Myfile.asp"). + The HTTP method used to open the connection, such as GET, POST, PUT, or PROPFIND. + Proxy to use with this request + Credentials to use when authenticating + A new HTML document. + + + + Loads an HTML document from an Internet resource and saves it to the specified XmlTextWriter. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The XmlTextWriter to which you want to save to. + + + + Begins the process of downloading an internet resource + + Url to the html document + + + + Begins the process of downloading an internet resource + + Url to the html document + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + Username to use for credentials in the web request + Password to use for credentials in the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + Username to use for credentials in the web request + Password to use for credentials in the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + Username to use for credentials in the web request + Password to use for credentials in the web request + Domain to use for credentials in the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + Username to use for credentials in the web request + Password to use for credentials in the web request + Domain to use for credentials in the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + Username to use for credentials in the web request + Password to use for credentials in the web request + Domain to use for credentials in the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + Username to use for credentials in the web request + Password to use for credentials in the web request + Domain to use for credentials in the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + Username to use for credentials in the web request + Password to use for credentials in the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + Username to use for credentials in the web request + Password to use for credentials in the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + The credentials to use for authenticating the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + The credentials to use for authenticating the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + The credentials to use for authenticating the web request + + + + Begins the process of downloading an internet resource + + Url to the html document + The encoding to use while downloading the document + The credentials to use for authenticating the web request + A cancellation token that can be used by other objects or threads to receive notice of cancellation. + + + Gets or sets the web browser timeout. + + + + Gets or sets the web browser delay. + + + Loads HTML using a WebBrowser and Application.DoEvents. + Thrown when an exception error condition occurs. + The requested URL, such as "http://html-agility-pack.net/". + A new HTML document. + + + Loads HTML using a WebBrowser and Application.DoEvents. + Thrown when an exception error condition occurs. + The requested URL, such as "http://html-agility-pack.net/". + (Optional) Check if the browser script has all been run and completed. + A new HTML document. + + + Loads HTML using a WebBrowser and Application.DoEvents. + Thrown when an exception error condition occurs. + The requested URL, such as "http://html-agility-pack.net/". + (Optional) Check if the browser script has all been run and completed. + A new HTML document. + + + + Creates an instance of the given type from the specified Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The URL that specifies the XSLT stylesheet to load. + An containing the namespace-qualified arguments used as input to the transform. + The requested type. + An newly created instance. + + + + Creates an instance of the given type from the specified Internet resource. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The URL that specifies the XSLT stylesheet to load. + An containing the namespace-qualified arguments used as input to the transform. + The requested type. + A file path where the temporary XML before transformation will be saved. Mostly used for debugging purposes. + An newly created instance. + + + + Loads an HTML document from an Internet resource and saves it to the specified XmlTextWriter, after an XSLT transformation. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". + The URL that specifies the XSLT stylesheet to load. + An XsltArgumentList containing the namespace-qualified arguments used as input to the transform. + The XmlTextWriter to which you want to save. + + + + Loads an HTML document from an Internet resource and saves it to the specified XmlTextWriter, after an XSLT transformation. + + The requested URL, such as "http://Myserver/Mypath/Myfile.asp". May not be null. + The URL that specifies the XSLT stylesheet to load. + An XsltArgumentList containing the namespace-qualified arguments used as input to the transform. + The XmlTextWriter to which you want to save. + A file path where the temporary XML before transformation will be saved. Mostly used for debugging purposes. + + + + Represents an exception thrown by the HtmlWeb utility class. + + + + + Creates an instance of the HtmlWebException. + + The exception's message. + + + + Represents a document with mixed code and text. ASP, ASPX, JSP, are good example of such documents. + + + + + Gets or sets the token representing code end. + + + + + Gets or sets the token representing code start. + + + + + Gets or sets the token representing code directive. + + + + + Gets or sets the token representing response write directive. + + + + + Creates a mixed code document instance. + + + + + Gets the code represented by the mixed code document seen as a template. + + + + + Gets the list of code fragments in the document. + + + + + Gets the list of all fragments in the document. + + + + + Gets the encoding of the stream used to read the document. + + + + + Gets the list of text fragments in the document. + + + + + Create a code fragment instances. + + The newly created code fragment instance. + + + + Create a text fragment instances. + + The newly created text fragment instance. + + + + Loads a mixed code document from a stream. + + The input stream. + + + + Loads a mixed code document from a stream. + + The input stream. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads a mixed code document from a stream. + + The input stream. + The character encoding to use. + + + + Loads a mixed code document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads a mixed code document from a stream. + + The input stream. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + The minimum buffer size. + + + + Loads a mixed code document from a file. + + The complete file path to be read. + + + + Loads a mixed code document from a file. + + The complete file path to be read. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads a mixed code document from a file. + + The complete file path to be read. + The character encoding to use. + + + + Loads a mixed code document from a file. + + The complete file path to be read. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + + + + Loads a mixed code document from a file. + + The complete file path to be read. + The character encoding to use. + Indicates whether to look for byte order marks at the beginning of the file. + The minimum buffer size. + + + + Loads the mixed code document from the specified TextReader. + + The TextReader used to feed the HTML data into the document. + + + + Loads a mixed document from a text + + The text to load. + + + + Saves the mixed document to the specified stream. + + The stream to which you want to save. + + + + Saves the mixed document to the specified stream. + + The stream to which you want to save. + The character encoding to use. + + + + Saves the mixed document to the specified file. + + The location of the file where you want to save the document. + + + + Saves the mixed document to the specified file. + + The location of the file where you want to save the document. + The character encoding to use. + + + + Saves the mixed document to the specified StreamWriter. + + The StreamWriter to which you want to save. + + + + Saves the mixed document to the specified TextWriter. + + The TextWriter to which you want to save. + + + + Represents a fragment of code in a mixed code document. + + + + + Gets the fragment code text. + + + + + Represents a base class for fragments in a mixed code document. + + + + + Gets the fragement text. + + + + + Gets the type of fragment. + + + + + Gets the line number of the fragment. + + + + + Gets the line position (column) of the fragment. + + + + + Gets the fragment position in the document's stream. + + + + + Represents a list of mixed code fragments. + + + + + Gets the Document + + + + + Gets the number of fragments contained in the list. + + + + + Gets a fragment from the list using its index. + + + + + Gets an enumerator that can iterate through the fragment list. + + + + + Appends a fragment to the list of fragments. + + The fragment to append. May not be null. + + + + Gets an enumerator that can iterate through the fragment list. + + + + + Prepends a fragment to the list of fragments. + + The fragment to append. May not be null. + + + + Remove a fragment from the list of fragments. If this fragment was not in the list, an exception will be raised. + + The fragment to remove. May not be null. + + + + Remove all fragments from the list. + + + + + Remove a fragment from the list of fragments, using its index in the list. + + The index of the fragment to remove. + + + + Represents a fragment enumerator. + + + + + Gets the current element in the collection. + + + + + Gets the current element in the collection. + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + + + Represents the type of fragment in a mixed code document. + + + + + The fragment contains code. + + + + + The fragment contains text. + + + + + Represents a fragment of text in a mixed code document. + + + + + Gets the fragment text. + + + + diff --git a/CarConverter/bin/Release/RageLib.GTA5.dll b/CarConverter/bin/Release/RageLib.GTA5.dll new file mode 100644 index 0000000..a15ae15 Binary files /dev/null and b/CarConverter/bin/Release/RageLib.GTA5.dll differ diff --git a/CarConverter/bin/Release/RageLib.GTA5.dll.config b/CarConverter/bin/Release/RageLib.GTA5.dll.config new file mode 100644 index 0000000..3a1a497 --- /dev/null +++ b/CarConverter/bin/Release/RageLib.GTA5.dll.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/CarConverter/bin/Release/RageLib.dll b/CarConverter/bin/Release/RageLib.dll new file mode 100644 index 0000000..90194de Binary files /dev/null and b/CarConverter/bin/Release/RageLib.dll differ diff --git a/CarConverter/bin/Release/SharpDX.D3DCompiler.dll b/CarConverter/bin/Release/SharpDX.D3DCompiler.dll new file mode 100644 index 0000000..3b7da91 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.D3DCompiler.dll differ diff --git a/CarConverter/bin/Release/SharpDX.D3DCompiler.pdb b/CarConverter/bin/Release/SharpDX.D3DCompiler.pdb new file mode 100644 index 0000000..aed75c6 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.D3DCompiler.pdb differ diff --git a/CarConverter/bin/Release/SharpDX.D3DCompiler.xml b/CarConverter/bin/Release/SharpDX.D3DCompiler.xml new file mode 100644 index 0000000..f6f6ba6 --- /dev/null +++ b/CarConverter/bin/Release/SharpDX.D3DCompiler.xml @@ -0,0 +1,5897 @@ + + + + SharpDX.D3DCompiler + + + + + The assembly is a managed Direct3D Compiler API. + + dd607340 + D3DCompiler + D3DCompiler + + + + Shader compilation results. + + + + + Initializes a new instance of the class. + + The bytecode. + The result code. + The message. + + + + Performs an implicit conversion from to . + + The input. + + The result of the conversion. + + + + + Performs an implicit conversion from to byte array + + The input. + + The result of the conversion. + + + + +

[This documentation is preliminary and is subject to change.]

A function-linking-graph interface is used for constructing shaders that consist of a sequence of precompiled function calls that pass values to each other .

+
+ +

To get a function-linking-graph interface, call .

You can use the function-linking-graph (FLG) interface methods to construct shaders that consist of a sequence of precompiled function calls that pass values to each other. You don't need to write HLSL and then call the HLSL compiler. Instead, the shader structure is specified programmatically via a C++ API. FLG nodes represent input and output signatures and invocations of precompiled library functions. The order of registering the function-call nodes defines the sequence of invocations. You must specify the input signature node first and the output signature node last. FLG edges define how values are passed from one node to another. The data types of passed values must be the same; there is no implicit type conversion. Shape and swizzling rules follow the HLSL behavior. Values can only be passed forward in this sequence.

+
+ + dn280535 + ID3D11FunctionLinkingGraph + ID3D11FunctionLinkingGraph +
+ + + Initializes a new instance of . + + + + +

[This documentation is preliminary and is subject to change.]

Sets the input signature of the function-linking-graph.

+
+

An array of structures for the parameters of the input signature.

+

A reference to the interface that represents the input signature of the function-linking-graph.

+ dn280542 + HRESULT ID3D11FunctionLinkingGraph::SetInputSignature([In, Buffer] const D3D11_PARAMETER_DESC* pInputParameters,[In] unsigned int cInputParameters,[Out] ID3D11LinkingNode** ppInputNode) + ID3D11FunctionLinkingGraph::SetInputSignature +
+ + +

[This documentation is preliminary and is subject to change.]

Sets the output signature of the function-linking-graph.

+
+

An array of structures for the parameters of the output signature.

+

A reference to the interface that represents the output signature of the function-linking-graph.

+ dn280543 + HRESULT ID3D11FunctionLinkingGraph::SetOutputSignature([In, Buffer] const D3D11_PARAMETER_DESC* pOutputParameters,[In] unsigned int cOutputParameters,[Out] ID3D11LinkingNode** ppOutputNode) + ID3D11FunctionLinkingGraph::SetOutputSignature +
+ + +

[This documentation is preliminary and is subject to change.]

Initializes a shader module from the function-linking-graph object.

+
+

A reference to an interface for the shader module to initialize.

+ dn280537 + HRESULT ID3D11FunctionLinkingGraph::CreateModuleInstance([Out] ID3D11ModuleInstance** ppModuleInstance,[Out, Optional] ID3D10Blob** ppErrorBuffer) + ID3D11FunctionLinkingGraph::CreateModuleInstance + Is thrown when creation fails and the error text is available. + Is thrown when creation fails and the error text is not available. +
+ + + Gets the error from the last function call of the function-linking-graph, as a string + + + + +

[This documentation is preliminary and is subject to change.]

Creates a call-function linking node to use in the function-linking-graph.

+
+

A reference to the interface for the library module that contains the function prototype.

+

The name of the function.

+

A reference to a variable that receives a reference to the interface that represents the function in the function-linking-graph.

+ dn280536 + HRESULT ID3D11FunctionLinkingGraph::CallFunction([In, Optional] const char* pModuleInstanceNamespace,[In] ID3D11Module* pModuleWithFunctionPrototype,[In] const char* pFunctionName,[Out] ID3D11LinkingNode** ppCallNode) + ID3D11FunctionLinkingGraph::CallFunction +
+ + +

[This documentation is preliminary and is subject to change.]

Passes the return value from a source linking node to a destination linking node.

+
+ As return value is used the constant D3D_RETURN_PARAMETER_INDEX. +

A reference to the interface for the source linking node.

+

A reference to the interface for the destination linking node.

+

The zero-based index of the destination parameter.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280540 + HRESULT ID3D11FunctionLinkingGraph::PassValue([In] ID3D11LinkingNode* pSrcNode,[In] int SrcParameterIndex,[In] ID3D11LinkingNode* pDstNode,[In] int DstParameterIndex) + ID3D11FunctionLinkingGraph::PassValue +
+ + + Generates hlsl code for function linking grpah + + Flags (unused by the runtime for now) + Hlsl code as string + + + +

Gets the error from the last function call of the function-linking-graph.

+
+ dn280539 + GetLastError + GetLastError +
+ + +

Initializes a shader module from the function-linking-graph object.

+
+

The address of a reference to an interface for the shader module to initialize.

+

An optional reference to a variable that receives a reference to the ID3DBlob interface that you can use to access compiler error messages, or null if there are no errors.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280537 + HRESULT ID3D11FunctionLinkingGraph::CreateModuleInstance([Out] ID3D11ModuleInstance** ppModuleInstance,[Out, Optional] ID3D10Blob** ppErrorBuffer) + ID3D11FunctionLinkingGraph::CreateModuleInstance +
+ + +

Sets the input signature of the function-linking-graph.

+
+

An array of structures for the parameters of the input signature.

+

The number of input parameters in the pInputParameters array.

+

A reference to a variable that receives a reference to the interface that represents the input signature of the function-linking-graph.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280542 + HRESULT ID3D11FunctionLinkingGraph::SetInputSignature([In, Buffer] const D3D11_PARAMETER_DESC* pInputParameters,[In] unsigned int cInputParameters,[Out] ID3D11LinkingNode** ppInputNode) + ID3D11FunctionLinkingGraph::SetInputSignature +
+ + +

Sets the output signature of the function-linking-graph.

+
+

An array of structures for the parameters of the output signature.

+

The number of output parameters in the pOutputParameters array.

+

A reference to a variable that receives a reference to the interface that represents the output signature of the function-linking-graph.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280543 + HRESULT ID3D11FunctionLinkingGraph::SetOutputSignature([In, Buffer] const D3D11_PARAMETER_DESC* pOutputParameters,[In] unsigned int cOutputParameters,[Out] ID3D11LinkingNode** ppOutputNode) + ID3D11FunctionLinkingGraph::SetOutputSignature +
+ + +

Creates a call-function linking node to use in the function-linking-graph.

+
+

The optional namespace for the function, or null if no namespace is needed.

+

A reference to the interface for the library module that contains the function prototype.

+

The name of the function.

+

A reference to a variable that receives a reference to the interface that represents the function in the function-linking-graph.

+ dn280536 + HRESULT ID3D11FunctionLinkingGraph::CallFunction([In, Optional] const char* pModuleInstanceNamespace,[In] ID3D11Module* pModuleWithFunctionPrototype,[In] const char* pFunctionName,[Out] ID3D11LinkingNode** ppCallNode) + ID3D11FunctionLinkingGraph::CallFunction +
+ + +

Passes a value from a source linking node to a destination linking node.

+
+

A reference to the interface for the source linking node.

+

The zero-based index of the source parameter.

+

A reference to the interface for the destination linking node.

+

The zero-based index of the destination parameter.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280540 + HRESULT ID3D11FunctionLinkingGraph::PassValue([In] ID3D11LinkingNode* pSrcNode,[In] int SrcParameterIndex,[In] ID3D11LinkingNode* pDstNode,[In] int DstParameterIndex) + ID3D11FunctionLinkingGraph::PassValue +
+ + +

Passes a value with swizzle from a source linking node to a destination linking node.

+
+

A reference to the interface for the source linking node.

+

The zero-based index of the source parameter.

+

The name of the source swizzle.

+

A reference to the interface for the destination linking node.

+

The zero-based index of the destination parameter.

+

The name of the destination swizzle.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280541 + HRESULT ID3D11FunctionLinkingGraph::PassValueWithSwizzle([In] ID3D11LinkingNode* pSrcNode,[In] int SrcParameterIndex,[In] const char* pSrcSwizzle,[In] ID3D11LinkingNode* pDstNode,[In] int DstParameterIndex,[In] const char* pDstSwizzle) + ID3D11FunctionLinkingGraph::PassValueWithSwizzle +
+ + +

Gets the error from the last function call of the function-linking-graph.

+
+

An reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the error.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280539 + HRESULT ID3D11FunctionLinkingGraph::GetLastError([Out, Optional] ID3D10Blob** ppErrorBuffer) + ID3D11FunctionLinkingGraph::GetLastError +
+ + +

Generates Microsoft High Level Shader Language (HLSL) shader code that represents the function-linking-graph.

+
+

Reserved

+

An reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the HLSL shader source code that represents the function-linking-graph. You can compile this HLSL code, but first you must add code or include statements for the functions called in the function-linking-graph.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280538 + HRESULT ID3D11FunctionLinkingGraph::GenerateHlsl([In] unsigned int uFlags,[Out] ID3D10Blob** ppBuffer) + ID3D11FunctionLinkingGraph::GenerateHlsl +
+ + +

Returns all constant buffers provided by this function

+
+

All references to that represents the constant buffers.

+
+ + +

Returns all function parameters

+
+

All references to that represents the function parameters.

+
+ + + Returns reflection for function return parameter + + Thrown if function has no return value (void) + + + +

Gets a description of how a resource is bound to a function.

+
+

A zero-based resource index.

+

A reference to a structure that describes input binding of the resource.

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDesc gets info about how one resource in the set is bound as an input to the shader. The ResourceIndex parameter specifies the index for the resource.

+
+ + dn280551 + HRESULT ID3D11FunctionReflection::GetResourceBindingDesc([In] unsigned int ResourceIndex,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11FunctionReflection::GetResourceBindingDesc +
+ + +

Gets a description of how a resource is bound to a function.

+
+

Resource name.

+

A reference to a structure that describes input binding of the resource.

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDesc gets info about how one resource in the set is bound as an input to the shader. The ResourceIndex parameter specifies the index for the resource.

+
+ + dn280551 + HRESULT ID3D11FunctionReflection::GetResourceBindingDesc([In] unsigned int ResourceIndex,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11FunctionReflection::GetResourceBindingDesc +
+ + + Returns all resource bindings attached to this resource + + + + +

Fills the function descriptor structure for the function.

+
+ dn280549 + GetDesc + GetDesc +
+ + +

Fills the function descriptor structure for the function.

+
+

A reference to a structure that receives a description of the function.

+

Returns one of the Direct3D 11 Return Codes.

+ dn280549 + HRESULT ID3D11FunctionReflection::GetDesc([Out] D3D11_FUNCTION_DESC* pDesc) + ID3D11FunctionReflection::GetDesc +
+ + +

Gets a constant buffer by index for a function.

+
+

Zero-based index.

+

A reference to a interface that represents the constant buffer.

+ +

A constant buffer supplies either scalar constants or texture constants to a shader. A shader can use one or more constant buffers. For best performance, separate constants into buffers based on the frequency they are updated.

+
+ dn280547 + ID3D11ShaderReflectionConstantBuffer* ID3D11FunctionReflection::GetConstantBufferByIndex([In] unsigned int BufferIndex) + ID3D11FunctionReflection::GetConstantBufferByIndex +
+ + +

Gets a constant buffer by name for a function.

+
+

The constant-buffer name.

+

A reference to a interface that represents the constant buffer.

+ +

A constant buffer supplies either scalar constants or texture constants to a shader. A shader can use one or more constant buffers. For best performance, separate constants into buffers based on the frequency they are updated.

+
+ dn280548 + ID3D11ShaderReflectionConstantBuffer* ID3D11FunctionReflection::GetConstantBufferByName([In] const char* Name) + ID3D11FunctionReflection::GetConstantBufferByName +
+ + +

Gets a description of how a resource is bound to a function.

+
+

A zero-based resource index.

+

A reference to a structure that describes input binding of the resource.

+

Returns one of the Direct3D 11 Return Codes.

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDesc gets info about how one resource in the set is bound as an input to the shader. The ResourceIndex parameter specifies the index for the resource.

+
+ dn280551 + HRESULT ID3D11FunctionReflection::GetResourceBindingDesc([In] unsigned int ResourceIndex,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11FunctionReflection::GetResourceBindingDesc +
+ + +

Gets a variable by name.

+
+

A reference to a string containing the variable name.

+

Returns a Interface interface.

+ dn280553 + ID3D11ShaderReflectionVariable* ID3D11FunctionReflection::GetVariableByName([In] const char* Name) + ID3D11FunctionReflection::GetVariableByName +
+ + +

Gets a description of how a resource is bound to a function.

+
+

The constant-buffer name of the resource.

+

A reference to a structure that describes input binding of the resource.

+

Returns one of the Direct3D 11 Return Codes.

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDescByName gets info about how one resource in the set is bound as an input to the shader. The Name parameter specifies the name of the resource.

+
+ dn280552 + HRESULT ID3D11FunctionReflection::GetResourceBindingDescByName([In] const char* Name,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11FunctionReflection::GetResourceBindingDescByName +
+ + +

Gets the function parameter reflector.

+
+

The zero-based index of the function parameter reflector to retrieve.

+

A reference to a interface that represents the function parameter reflector.

+ dn280550 + ID3D11FunctionParameterReflection* ID3D11FunctionReflection::GetFunctionParameter([In] int ParameterIndex) + ID3D11FunctionReflection::GetFunctionParameter +
+ + + A user-implemented method for opening and reading the contents of a shader #include file. + + A -typed value that indicates the location of the #include file. + Name of the #include file. + Pointer to the container that includes the #include file. + Stream that is associated with fileName to be read. This reference remains valid until is called. + HRESULT Open([None] D3D_INCLUDE_TYPE IncludeType,[None] const char* pFileName,[None] LPCVOID pParentData,[None] LPCVOID* ppData,[None] UINT* pBytes) + + + + A user-implemented method for closing a shader #include file. + + + If was successful, Close is guaranteed to be called before the API using the interface returns. + + This is a reference that was returned by the corresponding call. + HRESULT Close([None] LPCVOID pData) + + + + Shadow callback for . + + + + + Return a pointer to the unmanaged version of this callback. + + The callback. + A pointer to a shadow c++ callback + + + + Internal Include Callback + + + + + A user-implemented method for opening and reading the contents of a shader #include file. + + This pointer + A -typed value that indicates the location of the #include file. + Name of the #include file. + Pointer to the container that includes the #include file. + Pointer to the buffer that Open returns that contains the include directives. This pointer remains valid until is called. + Pointer to the number of bytes that Open returns in ppData. + The user-implemented method should return S_OK. If Open fails when reading the #include file, the application programming interface (API) that caused Open to be called fails. This failure can occur in one of the following situations:The high-level shader language (HLSL) shader fails one of the D3D10CompileShader*** functions.The effect fails one of the D3D10CreateEffect*** functions. + HRESULT Open([None] D3D_INCLUDE_TYPE IncludeType,[None] const char* pFileName,[None] LPCVOID pParentData,[None] LPCVOID* ppData,[None] UINT* pBytes) + + + + A user-implemented method for closing a shader #include file. + + + If was successful, Close is guaranteed to be called before the API using the interface returns. + + This pointer + Pointer to the buffer that contains the include directives. This is the pointer that was returned by the corresponding call. + The user-implemented Close method should return S_OK. If Close fails when it closes the #include file, the application programming interface (API) that caused Close to be called fails. This failure can occur in one of the following situations:The high-level shader language (HLSL) shader fails one of the D3D10CompileShader*** functions.The effect fails one of the D3D10CreateEffect*** functions. + HRESULT Close([None] LPCVOID pData) + + + + Initializes a new instance of the class from a . + + + + + +

Returns all function reflectors provided by this library

+
+

All references to interfaces that represents the function reflectors.

+
+ + +

Fills the library descriptor structure for the library reflection.

+
+ dn280556 + GetDesc + GetDesc +
+ + +

Fills the library descriptor structure for the library reflection.

+
+

A reference to a structure that receives a description of the library reflection.

+

Returns one of the Direct3D 11 Return Codes.

+ dn280556 + HRESULT ID3D11LibraryReflection::GetDesc([Out] D3D11_LIBRARY_DESC* pDesc) + ID3D11LibraryReflection::GetDesc +
+ + +

Gets the function reflector.

+
+

The zero-based index of the function reflector to retrieve.

+

A reference to a interface that represents the function reflector.

+ dn280557 + ID3D11FunctionReflection* ID3D11LibraryReflection::GetFunctionByIndex([In] int FunctionIndex) + ID3D11LibraryReflection::GetFunctionByIndex +
+ + +

[This documentation is preliminary and is subject to change.]

Links the shader and produces a shader blob that the Direct3D runtime can use.

+
+ + dn280560 + ID3D11Linker + ID3D11Linker +
+ + + Initializes a new instance of class. + + + + +

[This documentation is preliminary and is subject to change.]

Links the shader and produces a shader blob that the Direct3D runtime can use.

+
+

A reference to the interface for the shader module instance to link from.

+

The name of the shader module instance to link from.

+

The name for the shader blob that is produced.

+

Reserved

+

Returns the compiled .

+ dn280560 + HRESULT ID3D11Linker::Link([In] ID3D11ModuleInstance* pEntry,[In] const char* pEntryName,[In] const char* pTargetName,[In] unsigned int uFlags,[Out] ID3D10Blob** ppShaderBlob,[Out] ID3D10Blob** ppErrorBuffer) + ID3D11Linker::Link + Is thrown when linking fails and the error text is available. + Is thrown when linking fails and the error text is not available. +
+ + +

Links the shader and produces a shader blob that the Direct3D runtime can use.

+
+

A reference to the interface for the shader module instance to link from.

+

The name of the shader module instance to link from.

+

The name for the shader blob that is produced.

+

Reserved.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the compiled shader code.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access compiler error messages.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280560 + HRESULT ID3D11Linker::Link([In] ID3D11ModuleInstance* pEntry,[In] const char* pEntryName,[In] const char* pTargetName,[In] unsigned int uFlags,[Out] ID3D10Blob** ppShaderBlob,[Out, Optional] ID3D10Blob** ppErrorBuffer) + ID3D11Linker::Link +
+ + +

Adds an instance of a library module to be used for linking.

+
+

A reference to the interface for the library module instance.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280561 + HRESULT ID3D11Linker::UseLibrary([In] ID3D11ModuleInstance* pLibraryMI) + ID3D11Linker::UseLibrary +
+ + +

Adds a clip plane with the plane coefficients taken from a cbuffer entry for 10Level9 shaders.

+
+ No documentation. + No documentation. +

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280559 + HRESULT ID3D11Linker::AddClipPlaneFromCBuffer([In] unsigned int uCBufferSlot,[In] unsigned int uCBufferEntry) + ID3D11Linker::AddClipPlaneFromCBuffer +
+ + +

[This documentation is preliminary and is subject to change.]

Initializes an instance of a shader module that is used for resource rebinding.

+
+ + dn280608 + ID3D11Module + ID3D11Module +
+ + + Initializes a new instance of the class. + + The source data of the module. + + + +

Initializes an instance of a shader module that is used for resource rebinding.

+
+

The name of a shader module to initialize. This can be null if you don't want to specify a name for the module.

+

The address of a reference to an interface to initialize.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280608 + HRESULT ID3D11Module::CreateInstance([In, Optional] const char* pNamespace,[Out, Fast] ID3D11ModuleInstance** ppModuleInstance) + ID3D11Module::CreateInstance +
+ + +

[This documentation is preliminary and is subject to change.]

Rebinds a resource by name as an unordered access view (UAV) to destination slots.

+
+ + dn280569 + ID3D11ModuleInstance + ID3D11ModuleInstance +
+ + + Initializes a new instance of the class. + +

The address of a reference to an interface to initialize.

+
+ + + Initializes a new instance of the class. + +

The name of a shader module to initialize. This can be null if you don't want to specify a name for the module.

+

The address of a reference to an interface to initialize.

+
+ + +

Rebinds a constant buffer from a source slot to a destination slot.

+
+

The source slot number for rebinding.

+

The destination slot number for rebinding.

+

The offset in bytes of the destination slot for rebinding. The offset must have 16-byte alignment.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280565 + HRESULT ID3D11ModuleInstance::BindConstantBuffer([In] unsigned int uSrcSlot,[In] unsigned int uDstSlot,[In] unsigned int cbDstOffset) + ID3D11ModuleInstance::BindConstantBuffer +
+ + +

Rebinds a constant buffer by name to a destination slot.

+
+

The name of the constant buffer for rebinding.

+

The destination slot number for rebinding.

+

The offset in bytes of the destination slot for rebinding. The offset must have 16-byte alignment.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280566 + HRESULT ID3D11ModuleInstance::BindConstantBufferByName([In] const char* pName,[In] unsigned int uDstSlot,[In] unsigned int cbDstOffset) + ID3D11ModuleInstance::BindConstantBufferByName +
+ + +

Rebinds a texture or buffer from source slot to destination slot.

+
+

The first source slot number for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280567 + HRESULT ID3D11ModuleInstance::BindResource([In] unsigned int uSrcSlot,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindResource +
+ + +

Rebinds a texture or buffer by name to destination slots.

+
+

The name of the texture or buffer for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280570 + HRESULT ID3D11ModuleInstance::BindResourceByName([In] const char* pName,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindResourceByName +
+ + +

Rebinds a sampler from source slot to destination slot.

+
+

The first source slot number for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280571 + HRESULT ID3D11ModuleInstance::BindSampler([In] unsigned int uSrcSlot,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindSampler +
+ + +

Rebinds a sampler by name to destination slots.

+
+

The name of the sampler for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280605 + HRESULT ID3D11ModuleInstance::BindSamplerByName([In] const char* pName,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindSamplerByName +
+ + +

Rebinds an unordered access view (UAV) from source slot to destination slot.

+
+

The first source slot number for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280606 + HRESULT ID3D11ModuleInstance::BindUnorderedAccessView([In] unsigned int uSrcSlot,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindUnorderedAccessView +
+ + +

Rebinds an unordered access view (UAV) by name to destination slots.

+
+

The name of the UAV for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280607 + HRESULT ID3D11ModuleInstance::BindUnorderedAccessViewByName([In] const char* pName,[In] unsigned int uDstSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindUnorderedAccessViewByName +
+ + +

Rebinds a resource as an unordered access view (UAV) from source slot to destination slot.

+
+

The first source slot number for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280568 + HRESULT ID3D11ModuleInstance::BindResourceAsUnorderedAccessView([In] unsigned int uSrcSrvSlot,[In] unsigned int uDstUavSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindResourceAsUnorderedAccessView +
+ + +

Rebinds a resource by name as an unordered access view (UAV) to destination slots.

+
+

The name of the resource for rebinding.

+

The first destination slot number for rebinding.

+

The number of slots for rebinding.

+

Returns:

  • for a valid rebinding
  • S_FALSE for rebinding a nonexistent slot; that is, for which the shader reflection doesn?t have any data
  • E_FAIL for an invalid rebinding, for example, the rebinding is out-of-bounds
  • Possibly one of the other Direct3D 11 Return Codes
+ dn280569 + HRESULT ID3D11ModuleInstance::BindResourceAsUnorderedAccessViewByName([In] const char* pSrvName,[In] unsigned int uDstUavSlot,[In] unsigned int uCount) + ID3D11ModuleInstance::BindResourceAsUnorderedAccessViewByName +
+ + + The namespace provides managed Direct3D Compiler API. + + dd607340 + D3DCompiler + D3DCompiler + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_FLAG + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_ALL + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_COMPONENT_W + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_COMPONENT_X + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_COMPONENT_Y + + + + No documentation. + + D3D11_REGISTER_COMPONENT_MASK_COMPONENT_Z + + + + None. + + None + + + + Represents the compiled bytecode of a shader or effect. + + Blob + + + + Use this ShaderFlags constant in order to compile an effect with old D3D10CompileEffectFromMemory. + + + + + Initializes a new instance of the class. + + A containing the compiled bytecode. + + + + Initializes a new instance of the class. + + A containing the compiled bytecode. + + + + Initializes a new instance of the class. + + The buffer. + + + + Initializes a new instance of the class. + + a pointer to a compiler bytecode + size of the bytecode + + + + Initializes a new instance of the class. + + The BLOB. + + + + Gets the buffer pointer. + + + + + Compiles the provided shader or effect source. + + A string containing the source of the shader or effect to compile. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + Name of the source file. + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + A string containing the source of the shader or effect to compile. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + Name of the source file. + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + A string containing the source of the shader or effect to compile. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + Name of the source file. + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to compile. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + Name of the source file. + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + A string containing the source of the shader or effect to compile. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + Name of the source file. + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to compile. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + Name of the source file used for reporting errors. Default is "unknown" + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + The shader data. + Size of the shader. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + Name of the source file used for reporting errors. Default is "unknown" + The secondary data flags. + The secondary data. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to compile. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + Name of the source file. + + The compiled shader bytecode, or null if the method fails. + + + + + Compiles the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to compile. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + Name of the source file. + The compiled shader bytecode, or null if the method fails. + + + + Compiles a shader or effect from a file on disk. + + The name of the source file to compile. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + The compiled shader bytecode, or null if the method fails. + + + + Compiles a shader or effect from a file on disk. + + The name of the source file to compile. + The name of the shader entry-point function, or null for an effect file. + The shader target or set of shader features to compile against. + Shader compilation options. + Effect compilation options. + A set of macros to define during compilation. + An interface for handling include files. + + The compiled shader bytecode, or null if the method fails. + + + + + Compresses a set of shaders into a more compact form. + + An array of structures that describe the set of shaders to compress. + A compressed . + HRESULT D3DCompressShaders([In] int uNumShaders,[In, Buffer] D3D_SHADER_DATA* pShaderData,[In] int uFlags,[Out] ID3DBlob** ppCompressedData) + + + + Decompresses all shaders from a compressed set. + + Returns an array of decompress shader bytecode. + HRESULT D3DDecompressShaders([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int uNumShaders,[In] unsigned int uStartIndex,[In, Buffer, Optional] unsigned int* pIndices,[In] unsigned int uFlags,[Out, Buffer] ID3D10Blob** ppShaders,[Out, Optional] unsigned int* pTotalShaders) + + + + Decompresses one or more shaders from a compressed set. + + The number of shaders to decompress. + The index of the first shader to decompress. + Returns an array of decompress shader bytecode. + HRESULT D3DDecompressShaders([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int uNumShaders,[In] unsigned int uStartIndex,[In, Buffer, Optional] unsigned int* pIndices,[In] unsigned int uFlags,[Out, Buffer] ID3D10Blob** ppShaders,[Out, Optional] unsigned int* pTotalShaders) + + + + Decompresses one or more shaders from a compressed set. + + An array of indexes that represent the shaders to decompress. + Returns an array of decompress shader bytecode. + HRESULT D3DDecompressShaders([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int uNumShaders,[In] unsigned int uStartIndex,[In, Buffer, Optional] unsigned int* pIndices,[In] unsigned int uFlags,[Out, Buffer] ID3D10Blob** ppShaders,[Out, Optional] unsigned int* pTotalShaders) + + + + Gets this instance is composed of compressed shaders. + + + true if this instance is compressed; otherwise, false. + + + + + Disassembles compiled HLSL code back into textual source. + + The textual source of the shader or effect. + + + + Disassembles compiled HLSL code back into textual source. + + Flags affecting the output of the disassembly. + The textual source of the shader or effect. + + + + Disassembles compiled HLSL code back into textual source. + + Flags affecting the output of the disassembly. + Commenting information to embed in the disassembly. + The textual source of the shader or effect. + + + + Disassembles a region of a compiled HLSL code back into textual source. + + The flags. + The comments. + The start byte offset. + The number of instructions. + The finish byte offset ref. + The textual source of the shader or effect. + HRESULT D3DDisassembleRegion([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int Flags,[In, Optional] const char* szComments,[In] SIZE_T StartByteOffset,[In] SIZE_T NumInsts,[Out, Optional] SIZE_T* pFinishByteOffset,[Out] ID3D10Blob** ppDisassembly) + + + + Gets the trace instruction offsets. + + if set to true [is including non executable code]. + Start index of the instructions. + The number of instructions. + The total instructions ref. + An offset + HRESULT D3DGetTraceInstructionOffsets([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int Flags,[In] SIZE_T StartInstIndex,[In] SIZE_T NumInsts,[Out, Buffer, Optional] SIZE_T* pOffsets,[Out, Optional] SIZE_T* pTotalInsts) + + + + Retrieves a specific part from a compilation result. + + + D3DGetBlobPart retrieves the part of a blob (arbitrary length data buffer) that contains the type of data that the Part parameter specifies. + + A -typed value that specifies the part of the buffer to retrieve. + Returns the extracted part. + HRESULT D3DGetBlobPart([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] D3D_BLOB_PART Part,[In] int Flags,[Out] ID3DBlob** ppPart) + + + + Sets information in a compilation result. + + The part. + The part data. + The new shader in which the new part data is set. + HRESULT D3DSetBlobPart([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] D3D_BLOB_PART Part,[In] unsigned int Flags,[In, Buffer] const void* pPart,[In] SIZE_T PartSize,[Out] ID3D10Blob** ppNewShader) + + + + Loads from the specified stream. + + The stream. + A shader bytecode + + + + Saves this bytecode to the specified stream. + + The stream. + + + + Preprocesses the provided shader or effect source. + + A string containing the source of the shader or effect to preprocess. + A set of macros to define during preprocessing. + An interface for handling include files. + Name of the source file. + The preprocessed shader source. + + + + Preprocesses the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to preprocess. + A set of macros to define during preprocessing. + An interface for handling include files. + Name of the source file. + The preprocessed shader source. + + + + Preprocesses the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to preprocess. + A set of macros to define during preprocessing. + An interface for handling include files. + When the method completes, contains a string of compilation errors, or an empty string if preprocessing succeeded. + Name of the source file. + The preprocessed shader source. + + + + Preprocesses the provided shader or effect source. + + An array of bytes containing the raw source of the shader or effect to preprocess. + + A set of macros to define during preprocessing. + An interface for handling include files. + When the method completes, contains a string of compilation errors, or an empty string if preprocessing succeeded. + Name of the source file. + The preprocessed shader source. + + + + Preprocesses the provided shader or effect source. + + A string containing the source of the shader or effect to preprocess. + A set of macros to define during preprocessing. + An interface for handling include files. + When the method completes, contains a string of compilation errors, or an empty string if preprocessing succeeded. + Name of the source file. + The preprocessed shader source. + + + + Preprocesses a shader or effect from a file on disk. + + The name of the source file to compile. + The preprocessed shader source. + + + + Preprocesses a shader or effect from a file on disk. + + The name of the source file to compile. + A set of macros to define during preprocessing. + An interface for handling include files. + The preprocessed shader source. + + + + Preprocesses a shader or effect from a file on disk. + + The name of the source file to compile. + A set of macros to define during preprocessing. + An interface for handling include files. + When the method completes, contains a string of compilation errors, or an empty string if preprocessing succeeded. + The preprocessed shader source. + + + + Strips extraneous information from a compiled shader or effect. + + Options specifying what to remove from the shader. + A string containing any errors that may have occurred. + HRESULT D3DStripShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In] D3DCOMPILER_STRIP_FLAGS uStripFlags,[Out] ID3D10Blob** ppStrippedBlob) + + + + Cast this to the underlying byte buffer. + + + A byte buffer + + + + Read a compiled shader bytecode from a Stream and return a ShaderBytecode + + + + + + + Read a compiled shader bytecode from a Stream and return a ShaderBytecode + + + + + + + Disposes all resource for the allocated object + + This is kept for backwards compatibility only, this actually does nothing in that case + + + + Gets the shader type and version string from the provided bytecode. + + The type and version string of the provided shader bytecode. + Is thrown when bytecode contains invalid data or the version could not be read. + Is thrown when bytecode contains invalid data. + + + + Reads the value between start and end bits from the provided token. + + The source of the data to read. + The start bit. + The end bit. + + + + + Represents a profile of a shader stage - stage type and version + + + + + Gets the shader version - that is the shader stage type + + For example, it is the "vs" part from "vs_5_0". + + + + Gets the major version of the shader profile. + + For example, it is the "5" part from "vs_5_0". + + + + Gets the minor version of the shader profile. + + For example, it is the "0" part from "vs_5_0". + + + + Gets the major version of the shader sub-profile. + + For example, it is the "9" part from "vs_4_0_profile_9_3". + + + + Gets the minor version of the shader sub-profile. + + For example, it is the "3" part from "vs_4_0_profile_9_3". + + + + Creates a new instance of the struct. + + The shader stage type. + The major version. + The minor version. + The profile major version. + The profile minor version. + + + + Returns the string representation of the current profile. + + The string representation, for example "ps_5_0" or "vs_4_0_profile_9_3". + + + + Gets the shader type prefix. + + Type prefix, for example "vs" or "ps". + + + + Gets the corresponding for this . + + The minimum that corresponds to current profile. + + + + Initializes a new instance of the class from a . + + + + + +

Get a shader description.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476615 + GetDesc + GetDesc +
+ + +

Gets the number of Mov instructions.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476620 + GetMovInstructionCount + GetMovInstructionCount +
+ + +

Gets the number of Movc instructions.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476619 + GetMovcInstructionCount + GetMovcInstructionCount +
+ + +

Gets the number of conversion instructions.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476614 + GetConversionInstructionCount + GetConversionInstructionCount +
+ + +

Gets the number of bitwise instructions.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476611 + GetBitwiseInstructionCount + GetBitwiseInstructionCount +
+ + +

Gets the geometry-shader input-primitive description.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476616 + GetGSInputPrimitive + GetGSInputPrimitive +
+ + +

Indicates whether a shader is a sample frequency shader.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476627 + IsSampleFrequencyShader + IsSampleFrequencyShader +
+ + +

Gets the number of interface slots in a shader.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476621 + GetNumInterfaceSlots + GetNumInterfaceSlots +
+ + +

Gets the minimum feature level.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476618 + GetMinFeatureLevel + GetMinFeatureLevel +
+ + +

Gets a group of flags that indicates the requirements of a shader.

+
+ +

Here is how the D3D11Shader.h header defines the shader requirements flags:

 #define D3D_SHADER_REQUIRES_DOUBLES                         0x00000001
+            #define D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL             0x00000002
+            #define D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE             0x00000004
+            #define D3D_SHADER_REQUIRES_64_UAVS                         0x00000008
+            #define D3D_SHADER_REQUIRES_MINIMUM_PRECISION               0x00000010
+            #define D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS          0x00000020
+            #define D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS          0x00000040
+            #define D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING    0x00000080
+            
+
+ jj542458 + GetRequiresFlags + GetRequiresFlags +
+ + +

Get a shader description.

+
+

A reference to a shader description. See .

+

Returns one of the following Direct3D 11 Return Codes.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476615 + HRESULT ID3D11ShaderReflection::GetDesc([Out] D3D11_SHADER_DESC* pDesc) + ID3D11ShaderReflection::GetDesc +
+ + +

Get a constant buffer by index.

+
+

Zero-based index.

+

A reference to a constant buffer (see Interface).

+ +

A constant buffer supplies either scalar constants or texture constants to a shader. A shader can use one or more constant buffers. For best performance, separate constants into buffers based on the frequency they are updated.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476612 + ID3D11ShaderReflectionConstantBuffer* ID3D11ShaderReflection::GetConstantBufferByIndex([In] unsigned int Index) + ID3D11ShaderReflection::GetConstantBufferByIndex +
+ + +

Get a constant buffer by name.

+
+

The constant-buffer name.

+

A reference to a constant buffer (see Interface).

+ +

A constant buffer supplies either scalar constants or texture constants to a shader. A shader can use one or more constant buffers. For best performance, separate constants into buffers based on the frequency they are updated.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476613 + ID3D11ShaderReflectionConstantBuffer* ID3D11ShaderReflection::GetConstantBufferByName([In] const char* Name) + ID3D11ShaderReflection::GetConstantBufferByName +
+ + +

Get a description of how a resource is bound to a shader.

+
+

A zero-based resource index.

+

A reference to an input-binding description. See .

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDesc gets information about how one resource in the set is bound as an input to the shader. The ResourceIndex parameter specifies the index for the resource.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476624 + HRESULT ID3D11ShaderReflection::GetResourceBindingDesc([In] unsigned int ResourceIndex,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11ShaderReflection::GetResourceBindingDesc +
+ + +

Get an input-parameter description for a shader.

+
+

A zero-based parameter index.

+

A reference to a shader-input-signature description. See .

+ +

An input-parameter description is also called a shader signature. The shader signature contains information about the input parameters such as the order or parameters, their data type, and a parameter semantic.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476617 + HRESULT ID3D11ShaderReflection::GetInputParameterDesc([In] unsigned int ParameterIndex,[Out] D3D11_SIGNATURE_PARAMETER_DESC* pDesc) + ID3D11ShaderReflection::GetInputParameterDesc +
+ + +

Get an output-parameter description for a shader.

+
+

A zero-based parameter index.

+

A reference to a shader-output-parameter description. See .

+ +

An output-parameter description is also called a shader signature. The shader signature contains information about the output parameters such as the order or parameters, their data type, and a parameter semantic.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476622 + HRESULT ID3D11ShaderReflection::GetOutputParameterDesc([In] unsigned int ParameterIndex,[Out] D3D11_SIGNATURE_PARAMETER_DESC* pDesc) + ID3D11ShaderReflection::GetOutputParameterDesc +
+ + +

Get a patch-constant parameter description for a shader.

+
+

A zero-based parameter index.

+

A reference to a shader-input-signature description. See .

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476623 + HRESULT ID3D11ShaderReflection::GetPatchConstantParameterDesc([In] unsigned int ParameterIndex,[Out] D3D11_SIGNATURE_PARAMETER_DESC* pDesc) + ID3D11ShaderReflection::GetPatchConstantParameterDesc +
+ + +

Gets a variable by name.

+
+

A reference to a string containing the variable name.

+

Returns a Interface interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476626 + ID3D11ShaderReflectionVariable* ID3D11ShaderReflection::GetVariableByName([In] const char* Name) + ID3D11ShaderReflection::GetVariableByName +
+ + +

Get a description of how a resource is bound to a shader.

+
+

The constant-buffer name of the resource.

+

A reference to an input-binding description. See .

+ +

A shader consists of executable code (the compiled HLSL functions) and a set of resources that supply the shader with input data. GetResourceBindingDescByName gets information about how one resource in the set is bound as an input to the shader. The Name parameter specifies the name of the resource.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476625 + HRESULT ID3D11ShaderReflection::GetResourceBindingDescByName([In] const char* Name,[Out] D3D11_SHADER_INPUT_BIND_DESC* pDesc) + ID3D11ShaderReflection::GetResourceBindingDescByName +
+ + +

Gets the number of Mov instructions.

+
+

Returns the number of Mov instructions.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476620 + unsigned int ID3D11ShaderReflection::GetMovInstructionCount() + ID3D11ShaderReflection::GetMovInstructionCount +
+ + +

Gets the number of Movc instructions.

+
+

Returns the number of Movc instructions.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476619 + unsigned int ID3D11ShaderReflection::GetMovcInstructionCount() + ID3D11ShaderReflection::GetMovcInstructionCount +
+ + +

Gets the number of conversion instructions.

+
+

Returns the number of conversion instructions.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476614 + unsigned int ID3D11ShaderReflection::GetConversionInstructionCount() + ID3D11ShaderReflection::GetConversionInstructionCount +
+ + +

Gets the number of bitwise instructions.

+
+

The number of bitwise instructions.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476611 + unsigned int ID3D11ShaderReflection::GetBitwiseInstructionCount() + ID3D11ShaderReflection::GetBitwiseInstructionCount +
+ + +

Gets the geometry-shader input-primitive description.

+
+

The input-primitive description. See , D3D11_PRIMITIVE_TOPOLOGY, or D3D10_PRIMITIVE_TOPOLOGY.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476616 + D3D_PRIMITIVE ID3D11ShaderReflection::GetGSInputPrimitive() + ID3D11ShaderReflection::GetGSInputPrimitive +
+ + +

Indicates whether a shader is a sample frequency shader.

+
+

Returns true if the shader is a sample frequency shader; otherwise returns false.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476627 + BOOL ID3D11ShaderReflection::IsSampleFrequencyShader() + ID3D11ShaderReflection::IsSampleFrequencyShader +
+ + +

Gets the number of interface slots in a shader.

+
+

The number of interface slots in the shader.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476621 + unsigned int ID3D11ShaderReflection::GetNumInterfaceSlots() + ID3D11ShaderReflection::GetNumInterfaceSlots +
+ + +

Gets the minimum feature level.

+
+

A reference to one of the enumerated values in , which represents the minimum feature level.

+

Returns one of the following Direct3D 11 Return Codes.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476618 + HRESULT ID3D11ShaderReflection::GetMinFeatureLevel([Out] D3D_FEATURE_LEVEL* pLevel) + ID3D11ShaderReflection::GetMinFeatureLevel +
+ + +

Retrieves the sizes, in units of threads, of the X, Y, and Z dimensions of the shader's thread-group grid.

+
+

A reference to the size, in threads, of the x-dimension of the thread-group grid. The maximum size is 1024.

+

A reference to the size, in threads, of the y-dimension of the thread-group grid. The maximum size is 1024.

+

A reference to the size, in threads, of the z-dimension of the thread-group grid. The maximum size is 64.

+

Returns the total size, in threads, of the thread-group grid by calculating the product of the size of each dimension.

*pSizeX * *pSizeY * *pSizeZ;
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

When a compute shader is written it defines the actions of a single thread group only. If multiple thread groups are required, it is the role of the ID3D11DeviceContext::Dispatch call to issue multiple thread groups.

+
+ ff728742 + unsigned int ID3D11ShaderReflection::GetThreadGroupSize([Out, Optional] unsigned int* pSizeX,[Out, Optional] unsigned int* pSizeY,[Out, Optional] unsigned int* pSizeZ) + ID3D11ShaderReflection::GetThreadGroupSize +
+ + +

Gets a group of flags that indicates the requirements of a shader.

+
+

A value that contains a combination of one or more shader requirements flags; each flag specifies a requirement of the shader. A default value of 0 means there are no requirements.

Shader requirement flagDescription
D3D_SHADER_REQUIRES_DOUBLESShader requires that the graphics driver and hardware support double data type. For more info, see .
D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCILShader requires an early depth stencil.
D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGEShader requires unordered access views (UAVs) at every pipeline stage.
D3D_SHADER_REQUIRES_64_UAVSShader requires 64 UAVs.
D3D_SHADER_REQUIRES_MINIMUM_PRECISIONShader requires the graphics driver and hardware to support minimum precision. For more info, see Using HLSL minimum precision.
D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONSShader requires that the graphics driver and hardware support extended doubles instructions. For more info, see the ExtendedDoublesShaderInstructions member of .
D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONSShader requires that the graphics driver and hardware support the msad4 intrinsic function in shaders. For more info, see the SAD4ShaderInstructions member of .
D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERINGShader requires that the graphics driver and hardware support Direct3D 9 shadow support. For more info, see .
D3D_SHADER_REQUIRES_TILED_RESOURCESShader requires that the graphics driver and hardware support tiled resources. For more info, see GetResourceTiling.

?

+ +

Here is how the D3D11Shader.h header defines the shader requirements flags:

 #define D3D_SHADER_REQUIRES_DOUBLES                         0x00000001
+            #define D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL             0x00000002
+            #define D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE             0x00000004
+            #define D3D_SHADER_REQUIRES_64_UAVS                         0x00000008
+            #define D3D_SHADER_REQUIRES_MINIMUM_PRECISION               0x00000010
+            #define D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS          0x00000020
+            #define D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS          0x00000040
+            #define D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING    0x00000080
+            
+
+ jj542458 + unsigned longlong ID3D11ShaderReflection::GetRequiresFlags() + ID3D11ShaderReflection::GetRequiresFlags +
+ + + Indicates whether two references have the same underlying type. + + + IsEqual indicates whether the sources of the references have the same underlying type. For example, if two ID3D11ShaderReflectionType Interface references were retrieved from variables, IsEqual can be used to see if the variables have the same type. This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll. + + A reference to a . + Returns true if the references have the same underlying type; otherwise returns false. + HRESULT ID3D11ShaderReflectionType::IsEqual([In] ID3D11ShaderReflectionType* pType) + + + + Indicates whether a variable is of the specified type. + + + This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll. + + A reference to a . + Returns true if object being queried is equal to or inherits from the type in the pType parameter; otherwise returns false. + HRESULT ID3D11ShaderReflectionType::IsOfType([In] ID3D11ShaderReflectionType* pType) + + + + Indicates whether a class type implements an interface. + + + This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll. + + A reference to a . + Returns true if the interface is implemented; otherwise return false. + HRESULT ID3D11ShaderReflectionType::ImplementsInterface([In] ID3D11ShaderReflectionType* pBase) + + + +

Get the description of a shader-reflection-variable type.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476597 + GetDesc + GetDesc +
+ + +

Gets the base class of a class.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476603 + GetSubType + GetSubType +
+ + +

Gets an Interface interface containing the variable base class type.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476596 + GetBaseClass + GetBaseClass +
+ + +

Gets the number of interfaces.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476602 + GetNumInterfaces + GetNumInterfaces +
+ + +

Get the description of a shader-reflection-variable type.

+
+

A reference to a shader-type description (see ).

+

Returns one of the following Direct3D 11 Return Codes.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476597 + HRESULT ID3D11ShaderReflectionType::GetDesc([Out] D3D11_SHADER_TYPE_DESC* pDesc) + ID3D11ShaderReflectionType::GetDesc +
+ + +

Get a shader-reflection-variable type by index.

+
+

Zero-based index.

+

A reference to a Interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476599 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionType::GetMemberTypeByIndex([In] unsigned int Index) + ID3D11ShaderReflectionType::GetMemberTypeByIndex +
+ + +

Get a shader-reflection-variable type by name.

+
+

Member name.

+

A reference to a Interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476600 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionType::GetMemberTypeByName([In] const char* Name) + ID3D11ShaderReflectionType::GetMemberTypeByName +
+ + +

Get a shader-reflection-variable type.

+
+

Zero-based index.

+

The variable type.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476601 + const char* ID3D11ShaderReflectionType::GetMemberTypeName([In] unsigned int Index) + ID3D11ShaderReflectionType::GetMemberTypeName +
+ + +

Indicates whether two Interface references have the same underlying type.

+
+ No documentation. +

Returns if the references have the same underlying type; otherwise returns S_FALSE.

+ +

IsEqual indicates whether the sources of the Interface references have the same underlying type. For example, if two Interface references were retrieved from variables, IsEqual can be used to see if the variables have the same type.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476605 + HRESULT ID3D11ShaderReflectionType::IsEqual([In] ID3D11ShaderReflectionType* pType) + ID3D11ShaderReflectionType::IsEqual +
+ + +

Gets the base class of a class.

+
+

Returns a reference to a Interface containing the base class type. Returns null if the class does not have a base class.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476603 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionType::GetSubType() + ID3D11ShaderReflectionType::GetSubType +
+ + +

Gets an Interface interface containing the variable base class type.

+
+

Returns A reference to a Interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476596 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionType::GetBaseClass() + ID3D11ShaderReflectionType::GetBaseClass +
+ + +

Gets the number of interfaces.

+
+

Returns the number of interfaces.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476602 + unsigned int ID3D11ShaderReflectionType::GetNumInterfaces() + ID3D11ShaderReflectionType::GetNumInterfaces +
+ + +

Get an interface by index.

+
+

Zero-based index.

+

A reference to a Interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476598 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionType::GetInterfaceByIndex([In] unsigned int uIndex) + ID3D11ShaderReflectionType::GetInterfaceByIndex +
+ + +

Indicates whether a variable is of the specified type.

+
+

A reference to a Interface.

+

Returns if object being queried is equal to or inherits from the type in the pType parameter; otherwise returns S_FALSE.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476606 + HRESULT ID3D11ShaderReflectionType::IsOfType([In] ID3D11ShaderReflectionType* pType) + ID3D11ShaderReflectionType::IsOfType +
+ + +

Indicates whether a class type implements an interface.

+
+

A reference to a Interface.

+

Returns if the interface is implemented; otherwise return S_FALSE.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476604 + HRESULT ID3D11ShaderReflectionType::ImplementsInterface([In] ID3D11ShaderReflectionType* pBase) + ID3D11ShaderReflectionType::ImplementsInterface +
+ + + Represents a shader signature. + + + + + Initializes a new instance of the class. + + A pointer to a shader signature bytecode. + The size. + + + + Initializes a new instance of the class. + + The BLOB. + + + + Initializes a new instance of the class. + + The data. + + + + Initializes a new instance of the class. + + The data. + + + + Gets the raw data of the shader signature. + + + + + Extracts the input and output signatures from a compiled shader or effect. + + The bytecode of the compiled shader or effect. + The input and output signatures of the shader or effect. + dd607329 + HRESULT D3DGetInputAndOutputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetInputAndOutputSignatureBlob + + + + Extracts the input signature from a compiled shader or effect. + + The bytecode of the compiled shader or effect. + The input signature of the shader or effect. + dd607330 + HRESULT D3DGetInputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetInputSignatureBlob + + + + Extracts the output signature from a compiled shader or effect. + + The bytecode of the compiled shader or effect. + The output signature of the shader or effect. + HRESULT D3DGetOutputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + dd607331 + HRESULT D3DGetOutputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetOutputSignatureBlob + + + + Cast this to the underlying byte buffer. + + + A byte buffer + + + +

Bind the constant buffer to an input slot defined in HLSL code (instead of letting the compiler choose the input slot).

+
+ ff728729 + D3D_CBF_USERPACKED + D3D_CBF_USERPACKED +
+ + + None + + None + None + + + +

Values that identify the intended use of constant-buffer data.

+
+ ff728722 + D3D_CBUFFER_TYPE + D3D_CBUFFER_TYPE +
+ + +

A buffer containing scalar constants.

+
+ ff728722 + D3D_CT_CBUFFER + D3D_CT_CBUFFER +
+ + +

A buffer containing texture data.

+
+ ff728722 + D3D_CT_TBUFFER + D3D_CT_TBUFFER +
+ + +

A buffer containing interface references.

+
+ ff728722 + D3D_CT_INTERFACE_POINTERS + D3D_CT_INTERFACE_POINTERS +
+ + +

A buffer containing binding information.

+
+ ff728722 + D3D_CT_RESOURCE_BIND_INFO + D3D_CT_RESOURCE_BIND_INFO +
+ + + No documentation. + + D3D_DISASM_ENABLE_COLOR_CODE + D3D_DISASM_ENABLE_COLOR_CODE + + + + No documentation. + + D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS + D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS + + + + No documentation. + + D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING + D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING + + + + No documentation. + + D3D_DISASM_ENABLE_INSTRUCTION_CYCLE + D3D_DISASM_ENABLE_INSTRUCTION_CYCLE + + + + No documentation. + + D3D_DISASM_DISABLE_DEBUG_INFO + D3D_DISASM_DISABLE_DEBUG_INFO + + + + No documentation. + + D3D_DISASM_ENABLE_INSTRUCTION_OFFSET + D3D_DISASM_ENABLE_INSTRUCTION_OFFSET + + + + No documentation. + + D3D_DISASM_INSTRUCTION_ONLY + D3D_DISASM_INSTRUCTION_ONLY + + + + No documentation. + + D3D_DISASM_PRINT_HEX_LITERALS + D3D_DISASM_PRINT_HEX_LITERALS + + + + None + + None + None + + + + No documentation. + + D3DCOMPILE_EFFECT_CHILD_EFFECT + D3DCOMPILE_EFFECT_CHILD_EFFECT + + + + No documentation. + + D3DCOMPILE_EFFECT_ALLOW_SLOW_OPS + D3DCOMPILE_EFFECT_ALLOW_SLOW_OPS + + + + None + + None + None + + + +

Values that indicate the location of a shader #include file.

+
+ +

You pass a -typed value to the IncludeType parameter in a call to the ID3DInclude::Open method to indicate the location of the #include file.

+
+ ff728723 + D3D_INCLUDE_TYPE + D3D_INCLUDE_TYPE +
+ + +

The local directory.

+
+ ff728723 + D3D_INCLUDE_LOCAL + D3D_INCLUDE_LOCAL +
+ + +

The system directory.

+
+ ff728723 + D3D_INCLUDE_SYSTEM + D3D_INCLUDE_SYSTEM +
+ + +

Values that indicate how the pipeline interprets geometry or hull shader input primitives.

+
+ +

The ID3D11ShaderReflection::GetGSInputPrimitive method returns a -typed value.

+
+ ff728725 + D3D_PRIMITIVE + D3D_PRIMITIVE +
+ + +

The shader has not been initialized with an input primitive type.

+
+ ff728725 + D3D_PRIMITIVE_UNDEFINED + D3D_PRIMITIVE_UNDEFINED +
+ + +

Interpret the input primitive as a point.

+
+ ff728725 + D3D_PRIMITIVE_POINT + D3D_PRIMITIVE_POINT +
+ + +

Interpret the input primitive as a line.

+
+ ff728725 + D3D_PRIMITIVE_LINE + D3D_PRIMITIVE_LINE +
+ + +

Interpret the input primitive as a triangle.

+
+ ff728725 + D3D_PRIMITIVE_TRIANGLE + D3D_PRIMITIVE_TRIANGLE +
+ + +

Interpret the input primitive as a line with adjacency data.

+
+ ff728725 + D3D_PRIMITIVE_LINE_ADJ + D3D_PRIMITIVE_LINE_ADJ +
+ + +

Interpret the input primitive as a triangle with adjacency data.

+
+ ff728725 + D3D_PRIMITIVE_TRIANGLE_ADJ + D3D_PRIMITIVE_TRIANGLE_ADJ +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_1_CONTROL_POINT_PATCH + D3D_PRIMITIVE_1_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_2_CONTROL_POINT_PATCH + D3D_PRIMITIVE_2_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_3_CONTROL_POINT_PATCH + D3D_PRIMITIVE_3_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_4_CONTROL_POINT_PATCH + D3D_PRIMITIVE_4_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_5_CONTROL_POINT_PATCH + D3D_PRIMITIVE_5_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_6_CONTROL_POINT_PATCH + D3D_PRIMITIVE_6_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_7_CONTROL_POINT_PATCH + D3D_PRIMITIVE_7_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_8_CONTROL_POINT_PATCH + D3D_PRIMITIVE_8_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_9_CONTROL_POINT_PATCH + D3D_PRIMITIVE_9_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_10_CONTROL_POINT_PATCH + D3D_PRIMITIVE_10_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_11_CONTROL_POINT_PATCH + D3D_PRIMITIVE_11_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_12_CONTROL_POINT_PATCH + D3D_PRIMITIVE_12_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_13_CONTROL_POINT_PATCH + D3D_PRIMITIVE_13_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_14_CONTROL_POINT_PATCH + D3D_PRIMITIVE_14_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_15_CONTROL_POINT_PATCH + D3D_PRIMITIVE_15_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_16_CONTROL_POINT_PATCH + D3D_PRIMITIVE_16_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_17_CONTROL_POINT_PATCH + D3D_PRIMITIVE_17_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_18_CONTROL_POINT_PATCH + D3D_PRIMITIVE_18_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_19_CONTROL_POINT_PATCH + D3D_PRIMITIVE_19_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_20_CONTROL_POINT_PATCH + D3D_PRIMITIVE_20_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_21_CONTROL_POINT_PATCH + D3D_PRIMITIVE_21_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_22_CONTROL_POINT_PATCH + D3D_PRIMITIVE_22_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_23_CONTROL_POINT_PATCH + D3D_PRIMITIVE_23_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_24_CONTROL_POINT_PATCH + D3D_PRIMITIVE_24_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_25_CONTROL_POINT_PATCH + D3D_PRIMITIVE_25_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_26_CONTROL_POINT_PATCH + D3D_PRIMITIVE_26_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_27_CONTROL_POINT_PATCH + D3D_PRIMITIVE_27_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_28_CONTROL_POINT_PATCH + D3D_PRIMITIVE_28_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_29_CONTROL_POINT_PATCH + D3D_PRIMITIVE_29_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_30_CONTROL_POINT_PATCH + D3D_PRIMITIVE_30_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_31_CONTROL_POINT_PATCH + D3D_PRIMITIVE_31_CONTROL_POINT_PATCH +
+ + +

Interpret the input primitive as a control point patch.

+
+ ff728725 + D3D_PRIMITIVE_32_CONTROL_POINT_PATCH + D3D_PRIMITIVE_32_CONTROL_POINT_PATCH +
+ + +

The parameter has no semantic flags.

+
+ dn280475 + D3D_PF_NONE + D3D_PF_NONE +
+ + +

Indicates an input parameter.

+
+ dn280475 + D3D_PF_IN + D3D_PF_IN +
+ + +

Indicates an output parameter.

+
+ dn280475 + D3D_PF_OUT + D3D_PF_OUT +
+ + +

Values that identify the data types that can be stored in a register.

+
+ +

A register component type is specified in the ComponentType member of the structure.

+
+ ff728727 + D3D_REGISTER_COMPONENT_TYPE + D3D_REGISTER_COMPONENT_TYPE +
+ + +

The data type is unknown.

+
+ ff728727 + D3D_REGISTER_COMPONENT_UNKNOWN + D3D_REGISTER_COMPONENT_UNKNOWN +
+ + +

32-bit unsigned integer.

+
+ ff728727 + D3D_REGISTER_COMPONENT_UINT32 + D3D_REGISTER_COMPONENT_UINT32 +
+ + +

32-bit signed integer.

+
+ ff728727 + D3D_REGISTER_COMPONENT_SINT32 + D3D_REGISTER_COMPONENT_SINT32 +
+ + +

32-bit floating-point number.

+
+ ff728727 + D3D_REGISTER_COMPONENT_FLOAT32 + D3D_REGISTER_COMPONENT_FLOAT32 +
+ + +

Values that identify the return type of a resource.

+
+ +

A resource return type is specified in the ReturnType member of the structure.

+
+ ff728728 + D3D_RESOURCE_RETURN_TYPE + D3D_RESOURCE_RETURN_TYPE +
+ + +

Return type is an unsigned integer value normalized to a value between 0 and 1.

+
+ ff728728 + D3D_RETURN_TYPE_UNORM + D3D_RETURN_TYPE_UNORM +
+ + +

Return type is a signed integer value normalized to a value between -1 and 1.

+
+ ff728728 + D3D_RETURN_TYPE_SNORM + D3D_RETURN_TYPE_SNORM +
+ + +

Return type is a signed integer.

+
+ ff728728 + D3D_RETURN_TYPE_SINT + D3D_RETURN_TYPE_SINT +
+ + +

Return type is an unsigned integer.

+
+ ff728728 + D3D_RETURN_TYPE_UINT + D3D_RETURN_TYPE_UINT +
+ + +

Return type is a floating-point number.

+
+ ff728728 + D3D_RETURN_TYPE_FLOAT + D3D_RETURN_TYPE_FLOAT +
+ + +

Return type is unknown.

+
+ ff728728 + D3D_RETURN_TYPE_MIXED + D3D_RETURN_TYPE_MIXED +
+ + +

Return type is a double-precision value.

+
+ ff728728 + D3D_RETURN_TYPE_DOUBLE + D3D_RETURN_TYPE_DOUBLE +
+ + +

Return type is a multiple-dword type, such as a double or uint64, and the component is continued from the previous component that was declared. The first component represents the lower bits.

+
+ ff728728 + D3D_RETURN_TYPE_CONTINUED + D3D_RETURN_TYPE_CONTINUED +
+ + + No documentation. + + D3DCOMPILE_SECDATA_MERGE_UAV_SLOTS + D3DCOMPILE_SECDATA_MERGE_UAV_SLOTS + + + + No documentation. + + D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS + D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS + + + + No documentation. + + D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH + D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH + + + + None + + None + None + + + +

Values that identify parts of the content of an arbitrary length data buffer.

+
+ +

These values are passed to the D3DGetBlobPart or D3DSetBlobPart function.

+
+ ff728720 + D3D_BLOB_PART + D3D_BLOB_PART +
+ + + No documentation. + + ff728720 + D3D_BLOB_INPUT_SIGNATURE_BLOB + D3D_BLOB_INPUT_SIGNATURE_BLOB + + + + No documentation. + + ff728720 + D3D_BLOB_OUTPUT_SIGNATURE_BLOB + D3D_BLOB_OUTPUT_SIGNATURE_BLOB + + + + No documentation. + + ff728720 + D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB + D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB + + + + No documentation. + + ff728720 + D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB + D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB + + + + No documentation. + + ff728720 + D3D_BLOB_ALL_SIGNATURE_BLOB + D3D_BLOB_ALL_SIGNATURE_BLOB + + + + No documentation. + + ff728720 + D3D_BLOB_DEBUG_INFO + D3D_BLOB_DEBUG_INFO + + + + No documentation. + + ff728720 + D3D_BLOB_LEGACY_SHADER + D3D_BLOB_LEGACY_SHADER + + + + No documentation. + + ff728720 + D3D_BLOB_XNA_PREPASS_SHADER + D3D_BLOB_XNA_PREPASS_SHADER + + + + No documentation. + + ff728720 + D3D_BLOB_XNA_SHADER + D3D_BLOB_XNA_SHADER + + + + No documentation. + + ff728720 + D3D_BLOB_PDB + D3D_BLOB_PDB + + + + No documentation. + + ff728720 + D3D_BLOB_PRIVATE_DATA + D3D_BLOB_PRIVATE_DATA + + + + No documentation. + + ff728720 + D3D_BLOB_ROOT_SIGNATURE + D3D_BLOB_ROOT_SIGNATURE + + + + No documentation. + + ff728720 + D3D_BLOB_DEBUG_NAME + D3D_BLOB_DEBUG_NAME + + + + No documentation. + + ff728720 + D3D_BLOB_TEST_ALTERNATE_SHADER + D3D_BLOB_TEST_ALTERNATE_SHADER + + + + No documentation. + + ff728720 + D3D_BLOB_TEST_COMPILE_DETAILS + D3D_BLOB_TEST_COMPILE_DETAILS + + + + No documentation. + + ff728720 + D3D_BLOB_TEST_COMPILE_PERF + D3D_BLOB_TEST_COMPILE_PERF + + + + No documentation. + + ff728720 + D3D_BLOB_TEST_COMPILE_REPORT + D3D_BLOB_TEST_COMPILE_REPORT + + + + No documentation. + + D3DCOMPILE_DEBUG + D3DCOMPILE_DEBUG + + + + No documentation. + + D3DCOMPILE_SKIP_VALIDATION + D3DCOMPILE_SKIP_VALIDATION + + + + No documentation. + + D3DCOMPILE_SKIP_OPTIMIZATION + D3DCOMPILE_SKIP_OPTIMIZATION + + + + No documentation. + + D3DCOMPILE_PACK_MATRIX_ROW_MAJOR + D3DCOMPILE_PACK_MATRIX_ROW_MAJOR + + + + No documentation. + + D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR + D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR + + + + No documentation. + + D3DCOMPILE_PARTIAL_PRECISION + D3DCOMPILE_PARTIAL_PRECISION + + + + No documentation. + + D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT + D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT + + + + No documentation. + + D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT + D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT + + + + No documentation. + + D3DCOMPILE_NO_PRESHADER + D3DCOMPILE_NO_PRESHADER + + + + No documentation. + + D3DCOMPILE_AVOID_FLOW_CONTROL + D3DCOMPILE_AVOID_FLOW_CONTROL + + + + No documentation. + + D3DCOMPILE_PREFER_FLOW_CONTROL + D3DCOMPILE_PREFER_FLOW_CONTROL + + + + No documentation. + + D3DCOMPILE_ENABLE_STRICTNESS + D3DCOMPILE_ENABLE_STRICTNESS + + + + No documentation. + + D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY + D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY + + + + No documentation. + + D3DCOMPILE_IEEE_STRICTNESS + D3DCOMPILE_IEEE_STRICTNESS + + + + No documentation. + + D3DCOMPILE_OPTIMIZATION_LEVEL0 + D3DCOMPILE_OPTIMIZATION_LEVEL0 + + + + No documentation. + + D3DCOMPILE_OPTIMIZATION_LEVEL1 + D3DCOMPILE_OPTIMIZATION_LEVEL1 + + + + No documentation. + + D3DCOMPILE_OPTIMIZATION_LEVEL2 + D3DCOMPILE_OPTIMIZATION_LEVEL2 + + + + No documentation. + + D3DCOMPILE_OPTIMIZATION_LEVEL3 + D3DCOMPILE_OPTIMIZATION_LEVEL3 + + + + No documentation. + + D3DCOMPILE_RESERVED16 + D3DCOMPILE_RESERVED16 + + + + No documentation. + + D3DCOMPILE_RESERVED17 + D3DCOMPILE_RESERVED17 + + + + No documentation. + + D3DCOMPILE_WARNINGS_ARE_ERRORS + D3DCOMPILE_WARNINGS_ARE_ERRORS + + + + No documentation. + + D3DCOMPILE_DEBUG_NAME_FOR_SOURCE + D3DCOMPILE_DEBUG_NAME_FOR_SOURCE + + + + No documentation. + + D3DCOMPILE_DEBUG_NAME_FOR_BINARY + D3DCOMPILE_DEBUG_NAME_FOR_BINARY + + + + None + + None + None + + + +

Assign a shader input to a register based on the register assignment in the HLSL code (instead of letting the compiler choose the register).

+
+ ff728730 + D3D_SIF_USERPACKED + D3D_SIF_USERPACKED +
+ + +

Use a comparison sampler, which uses the SampleCmp (DirectX HLSL Texture Object) and SampleCmpLevelZero (DirectX HLSL Texture Object) sampling functions.

+
+ ff728730 + D3D_SIF_COMPARISON_SAMPLER + D3D_SIF_COMPARISON_SAMPLER +
+ + +

A 2-bit value for encoding texture components.

+
+ ff728730 + D3D_SIF_TEXTURE_COMPONENT_0 + D3D_SIF_TEXTURE_COMPONENT_0 +
+ + +

A 2-bit value for encoding texture components.

+
+ ff728730 + D3D_SIF_TEXTURE_COMPONENT_1 + D3D_SIF_TEXTURE_COMPONENT_1 +
+ + +

A 2-bit value for encoding texture components.

+
+ ff728730 + D3D_SIF_TEXTURE_COMPONENTS + D3D_SIF_TEXTURE_COMPONENTS +
+ + +

This value is reserved.

+
+ ff728730 + D3D_SIF_UNUSED + D3D_SIF_UNUSED +
+ + + None + + None + None + + + +

Values that identify resource types that can be bound to a shader and that are reflected as part of the resource description for the shader.

+
+ +

-typed values are specified in the Type member of the structure.

+
+ ff728731 + D3D_SHADER_INPUT_TYPE + D3D_SHADER_INPUT_TYPE +
+ + +

The shader resource is a constant buffer.

+
+ ff728731 + D3D_SIT_CBUFFER + D3D_SIT_CBUFFER +
+ + +

The shader resource is a texture buffer.

+
+ ff728731 + D3D_SIT_TBUFFER + D3D_SIT_TBUFFER +
+ + +

The shader resource is a texture.

+
+ ff728731 + D3D_SIT_TEXTURE + D3D_SIT_TEXTURE +
+ + +

The shader resource is a sampler.

+
+ ff728731 + D3D_SIT_SAMPLER + D3D_SIT_SAMPLER +
+ + +

The shader resource is a read-and-write buffer.

+
+ ff728731 + D3D_SIT_UAV_RWTYPED + D3D_SIT_UAV_RWTYPED +
+ + +

The shader resource is a structured buffer.

For more information about structured buffer, see the Remarks section.

+
+ ff728731 + D3D_SIT_STRUCTURED + D3D_SIT_STRUCTURED +
+ + +

The shader resource is a read-and-write structured buffer.

+
+ ff728731 + D3D_SIT_UAV_RWSTRUCTURED + D3D_SIT_UAV_RWSTRUCTURED +
+ + +

The shader resource is a byte-address buffer.

+
+ ff728731 + D3D_SIT_BYTEADDRESS + D3D_SIT_BYTEADDRESS +
+ + +

The shader resource is a read-and-write byte-address buffer.

+
+ ff728731 + D3D_SIT_UAV_RWBYTEADDRESS + D3D_SIT_UAV_RWBYTEADDRESS +
+ + +

The shader resource is an append-structured buffer.

+
+ ff728731 + D3D_SIT_UAV_APPEND_STRUCTURED + D3D_SIT_UAV_APPEND_STRUCTURED +
+ + +

The shader resource is a consume-structured buffer.

+
+ ff728731 + D3D_SIT_UAV_CONSUME_STRUCTURED + D3D_SIT_UAV_CONSUME_STRUCTURED +
+ + +

The shader resource is a read-and-write structured buffer that uses the built-in counter to append or consume.

+
+ ff728731 + D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER + D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER +
+ + + No documentation. + + D3D_SHADER_REQUIRES_DOUBLES + D3D_SHADER_REQUIRES_DOUBLES + + + + No documentation. + + D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL + D3D_SHADER_REQUIRES_EARLY_DEPTH_STENCIL + + + + No documentation. + + D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE + D3D_SHADER_REQUIRES_UAVS_AT_EVERY_STAGE + + + + No documentation. + + D3D_SHADER_REQUIRES_64_UAVS + D3D_SHADER_REQUIRES_64_UAVS + + + + No documentation. + + D3D_SHADER_REQUIRES_MINIMUM_PRECISION + D3D_SHADER_REQUIRES_MINIMUM_PRECISION + + + + No documentation. + + D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS + D3D_SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS + + + + No documentation. + + D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS + D3D_SHADER_REQUIRES_11_1_SHADER_EXTENSIONS + + + + No documentation. + + D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING + D3D_SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING + + + + No documentation. + + D3D_SHADER_REQUIRES_TILED_RESOURCES + D3D_SHADER_REQUIRES_TILED_RESOURCES + + + + No documentation. + + D3D_SHADER_REQUIRES_STENCIL_REF + D3D_SHADER_REQUIRES_STENCIL_REF + + + + No documentation. + + D3D_SHADER_REQUIRES_INNER_COVERAGE + D3D_SHADER_REQUIRES_INNER_COVERAGE + + + + No documentation. + + D3D_SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS + D3D_SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS + + + + No documentation. + + D3D_SHADER_REQUIRES_ROVS + D3D_SHADER_REQUIRES_ROVS + + + + No documentation. + + D3D_SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER + D3D_SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER + + + + None + + None + None + + + +

Values that identify the class of a shader variable.

+
+ +

The class of a shader variable is not a programming class; the class identifies the variable class such as scalar, vector, object, and so on. -typed values are specified in the Class member of the structure.

+
+ ff728733 + D3D_SHADER_VARIABLE_CLASS + D3D_SHADER_VARIABLE_CLASS +
+ + +

The shader variable is a scalar.

+
+ ff728733 + D3D_SVC_SCALAR + D3D_SVC_SCALAR +
+ + +

The shader variable is a vector.

+
+ ff728733 + D3D_SVC_VECTOR + D3D_SVC_VECTOR +
+ + +

The shader variable is a row-major matrix.

+
+ ff728733 + D3D_SVC_MATRIX_ROWS + D3D_SVC_MATRIX_ROWS +
+ + +

The shader variable is a column-major matrix.

+
+ ff728733 + D3D_SVC_MATRIX_COLUMNS + D3D_SVC_MATRIX_COLUMNS +
+ + +

The shader variable is an object.

+
+ ff728733 + D3D_SVC_OBJECT + D3D_SVC_OBJECT +
+ + +

The shader variable is a structure.

+
+ ff728733 + D3D_SVC_STRUCT + D3D_SVC_STRUCT +
+ + +

The shader variable is a class.

+
+ ff728733 + D3D_SVC_INTERFACE_CLASS + D3D_SVC_INTERFACE_CLASS +
+ + +

The shader variable is an interface.

+
+ ff728733 + D3D_SVC_INTERFACE_POINTER + D3D_SVC_INTERFACE_POINTER +
+ + +

Indicates that the registers assigned to this shader variable were explicitly declared in shader code (instead of automatically assigned by the compiler).

+
+ ff728734 + D3D_SVF_USERPACKED + D3D_SVF_USERPACKED +
+ + +

Indicates that this variable is used by this shader. This value confirms that a particular shader variable (which can be common to many different shaders) is indeed used by a particular shader.

+
+ ff728734 + D3D_SVF_USED + D3D_SVF_USED +
+ + +

Indicates that this variable is an interface.

+
+ ff728734 + D3D_SVF_INTERFACE_POINTER + D3D_SVF_INTERFACE_POINTER +
+ + +

Indicates that this variable is a parameter of an interface.

+
+ ff728734 + D3D_SVF_INTERFACE_PARAMETER + D3D_SVF_INTERFACE_PARAMETER +
+ + + None + + None + None + + + +

Values that identify various data, texture, and buffer types that can be assigned to a shader variable.

+
+ +

A call to the ID3D11ShaderReflectionType::GetDesc method returns a value in the Type member of a structure.

The types in a structured buffer describe the structure of the elements in the buffer. The layout of these types generally match their C++ struct counterparts. The following examples show structured buffers:

struct mystruct {float4 val; uint ind;}; RWStructuredBuffer<mystruct> rwbuf; RWStructuredBuffer<float3> rwbuf2;
+
+ ff728735 + D3D_SHADER_VARIABLE_TYPE + D3D_SHADER_VARIABLE_TYPE +
+ + +

The variable is a void reference.

+
+ ff728735 + D3D_SVT_VOID + D3D_SVT_VOID +
+ + +

The variable is a boolean.

+
+ ff728735 + D3D_SVT_BOOL + D3D_SVT_BOOL +
+ + +

The variable is an integer.

+
+ ff728735 + D3D_SVT_INT + D3D_SVT_INT +
+ + +

The variable is a floating-point number.

+
+ ff728735 + D3D_SVT_FLOAT + D3D_SVT_FLOAT +
+ + +

The variable is a string.

+
+ ff728735 + D3D_SVT_STRING + D3D_SVT_STRING +
+ + +

The variable is a texture.

+
+ ff728735 + D3D_SVT_TEXTURE + D3D_SVT_TEXTURE +
+ + +

The variable is a 1D texture.

+
+ ff728735 + D3D_SVT_TEXTURE1D + D3D_SVT_TEXTURE1D +
+ + +

The variable is a 2D texture.

+
+ ff728735 + D3D_SVT_TEXTURE2D + D3D_SVT_TEXTURE2D +
+ + +

The variable is a 3D texture.

+
+ ff728735 + D3D_SVT_TEXTURE3D + D3D_SVT_TEXTURE3D +
+ + +

The variable is a texture cube.

+
+ ff728735 + D3D_SVT_TEXTURECUBE + D3D_SVT_TEXTURECUBE +
+ + +

The variable is a sampler.

+
+ ff728735 + D3D_SVT_SAMPLER + D3D_SVT_SAMPLER +
+ + +

The variable is a 1D sampler.

+
+ ff728735 + D3D_SVT_SAMPLER1D + D3D_SVT_SAMPLER1D +
+ + +

The variable is a 2D sampler.

+
+ ff728735 + D3D_SVT_SAMPLER2D + D3D_SVT_SAMPLER2D +
+ + +

The variable is a 3D sampler.

+
+ ff728735 + D3D_SVT_SAMPLER3D + D3D_SVT_SAMPLER3D +
+ + +

The variable is a cube sampler.

+
+ ff728735 + D3D_SVT_SAMPLERCUBE + D3D_SVT_SAMPLERCUBE +
+ + +

The variable is a pixel shader.

+
+ ff728735 + D3D_SVT_PIXELSHADER + D3D_SVT_PIXELSHADER +
+ + +

The variable is a vertex shader.

+
+ ff728735 + D3D_SVT_VERTEXSHADER + D3D_SVT_VERTEXSHADER +
+ + +

The variable is a pixel fragment.

+
+ ff728735 + D3D_SVT_PIXELFRAGMENT + D3D_SVT_PIXELFRAGMENT +
+ + +

The variable is a vertex fragment.

+
+ ff728735 + D3D_SVT_VERTEXFRAGMENT + D3D_SVT_VERTEXFRAGMENT +
+ + +

The variable is an unsigned integer.

+
+ ff728735 + D3D_SVT_UINT + D3D_SVT_UINT +
+ + +

The variable is an 8-bit unsigned integer.

+
+ ff728735 + D3D_SVT_UINT8 + D3D_SVT_UINT8 +
+ + +

The variable is a geometry shader.

+
+ ff728735 + D3D_SVT_GEOMETRYSHADER + D3D_SVT_GEOMETRYSHADER +
+ + +

The variable is a rasterizer-state object.

+
+ ff728735 + D3D_SVT_RASTERIZER + D3D_SVT_RASTERIZER +
+ + +

The variable is a depth-stencil-state object.

+
+ ff728735 + D3D_SVT_DEPTHSTENCIL + D3D_SVT_DEPTHSTENCIL +
+ + +

The variable is a blend-state object.

+
+ ff728735 + D3D_SVT_BLEND + D3D_SVT_BLEND +
+ + +

The variable is a buffer.

+
+ ff728735 + D3D_SVT_BUFFER + D3D_SVT_BUFFER +
+ + +

The variable is a constant buffer.

+
+ ff728735 + D3D_SVT_CBUFFER + D3D_SVT_CBUFFER +
+ + +

The variable is a texture buffer.

+
+ ff728735 + D3D_SVT_TBUFFER + D3D_SVT_TBUFFER +
+ + +

The variable is a 1D-texture array.

+
+ ff728735 + D3D_SVT_TEXTURE1DARRAY + D3D_SVT_TEXTURE1DARRAY +
+ + +

The variable is a 2D-texture array.

+
+ ff728735 + D3D_SVT_TEXTURE2DARRAY + D3D_SVT_TEXTURE2DARRAY +
+ + +

The variable is a render-target view.

+
+ ff728735 + D3D_SVT_RENDERTARGETVIEW + D3D_SVT_RENDERTARGETVIEW +
+ + +

The variable is a depth-stencil view.

+
+ ff728735 + D3D_SVT_DEPTHSTENCILVIEW + D3D_SVT_DEPTHSTENCILVIEW +
+ + +

The variable is a 2D-multisampled texture.

+
+ ff728735 + D3D_SVT_TEXTURE2DMS + D3D_SVT_TEXTURE2DMS +
+ + +

The variable is a 2D-multisampled-texture array.

+
+ ff728735 + D3D_SVT_TEXTURE2DMSARRAY + D3D_SVT_TEXTURE2DMSARRAY +
+ + +

The variable is a texture-cube array.

+
+ ff728735 + D3D_SVT_TEXTURECUBEARRAY + D3D_SVT_TEXTURECUBEARRAY +
+ + +

The variable holds a compiled hull-shader binary.

+
+ ff728735 + D3D_SVT_HULLSHADER + D3D_SVT_HULLSHADER +
+ + +

The variable holds a compiled domain-shader binary.

+
+ ff728735 + D3D_SVT_DOMAINSHADER + D3D_SVT_DOMAINSHADER +
+ + +

The variable is an interface.

+
+ ff728735 + D3D_SVT_INTERFACE_POINTER + D3D_SVT_INTERFACE_POINTER +
+ + +

The variable holds a compiled compute-shader binary.

+
+ ff728735 + D3D_SVT_COMPUTESHADER + D3D_SVT_COMPUTESHADER +
+ + +

The variable is a double precision (64-bit) floating-point number.

+
+ ff728735 + D3D_SVT_DOUBLE + D3D_SVT_DOUBLE +
+ + +

The variable is a 1D read-and-write texture.

+
+ ff728735 + D3D_SVT_RWTEXTURE1D + D3D_SVT_RWTEXTURE1D +
+ + +

The variable is an array of 1D read-and-write textures.

+
+ ff728735 + D3D_SVT_RWTEXTURE1DARRAY + D3D_SVT_RWTEXTURE1DARRAY +
+ + +

The variable is a 2D read-and-write texture.

+
+ ff728735 + D3D_SVT_RWTEXTURE2D + D3D_SVT_RWTEXTURE2D +
+ + +

The variable is an array of 2D read-and-write textures.

+
+ ff728735 + D3D_SVT_RWTEXTURE2DARRAY + D3D_SVT_RWTEXTURE2DARRAY +
+ + +

The variable is a 3D read-and-write texture.

+
+ ff728735 + D3D_SVT_RWTEXTURE3D + D3D_SVT_RWTEXTURE3D +
+ + +

The variable is a read-and-write buffer.

+
+ ff728735 + D3D_SVT_RWBUFFER + D3D_SVT_RWBUFFER +
+ + +

The variable is a byte-address buffer.

+
+ ff728735 + D3D_SVT_BYTEADDRESS_BUFFER + D3D_SVT_BYTEADDRESS_BUFFER +
+ + +

The variable is a read-and-write byte-address buffer.

+
+ ff728735 + D3D_SVT_RWBYTEADDRESS_BUFFER + D3D_SVT_RWBYTEADDRESS_BUFFER +
+ + +

The variable is a structured buffer.

For more information about structured buffer, see the Remarks section.

+
+ ff728735 + D3D_SVT_STRUCTURED_BUFFER + D3D_SVT_STRUCTURED_BUFFER +
+ + +

The variable is a read-and-write structured buffer.

+
+ ff728735 + D3D_SVT_RWSTRUCTURED_BUFFER + D3D_SVT_RWSTRUCTURED_BUFFER +
+ + +

The variable is an append structured buffer.

+
+ ff728735 + D3D_SVT_APPEND_STRUCTURED_BUFFER + D3D_SVT_APPEND_STRUCTURED_BUFFER +
+ + +

The variable is a consume structured buffer.

+
+ ff728735 + D3D_SVT_CONSUME_STRUCTURED_BUFFER + D3D_SVT_CONSUME_STRUCTURED_BUFFER +
+ + +

The variable is an 8-byte FLOAT.

+
+ ff728735 + D3D_SVT_MIN8FLOAT + D3D_SVT_MIN8FLOAT +
+ + +

The variable is a 10-byte FLOAT.

+
+ ff728735 + D3D_SVT_MIN10FLOAT + D3D_SVT_MIN10FLOAT +
+ + +

The variable is a 16-byte FLOAT.

+
+ ff728735 + D3D_SVT_MIN16FLOAT + D3D_SVT_MIN16FLOAT +
+ + +

The variable is a 12-byte INT.

+
+ ff728735 + D3D_SVT_MIN12INT + D3D_SVT_MIN12INT +
+ + +

The variable is a 16-byte INT.

+
+ ff728735 + D3D_SVT_MIN16INT + D3D_SVT_MIN16INT +
+ + +

The variable is a 16-byte INT.

+
+ ff728735 + D3D_SVT_MIN16UINT + D3D_SVT_MIN16UINT +
+ + +

Indicates shader type.

+
+ ff476214 + D3D11_SHADER_VERSION_TYPE + D3D11_SHADER_VERSION_TYPE +
+ + +

Pixel shader.

+
+ ff476214 + D3D11_SHVER_PIXEL_SHADER + D3D11_SHVER_PIXEL_SHADER +
+ + +

Vertex shader.

+
+ ff476214 + D3D11_SHVER_VERTEX_SHADER + D3D11_SHVER_VERTEX_SHADER +
+ + +

Geometry shader.

+
+ ff476214 + D3D11_SHVER_GEOMETRY_SHADER + D3D11_SHVER_GEOMETRY_SHADER +
+ + +

Hull shader.

+
+ ff476214 + D3D11_SHVER_HULL_SHADER + D3D11_SHVER_HULL_SHADER +
+ + +

Domain shader.

+
+ ff476214 + D3D11_SHVER_DOMAIN_SHADER + D3D11_SHVER_DOMAIN_SHADER +
+ + +

Compute shader.

+
+ ff476214 + D3D11_SHVER_COMPUTE_SHADER + D3D11_SHVER_COMPUTE_SHADER +
+ + +

Indicates the end of the enumeration constants.

+
+ ff476214 + D3D11_SHVER_RESERVED0 + D3D11_SHVER_RESERVED0 +
+ + + No documentation. + + dd607325 + D3DCOMPILER_STRIP_REFLECTION_DATA + D3DCOMPILER_STRIP_REFLECTION_DATA + + + + No documentation. + + dd607325 + D3DCOMPILER_STRIP_DEBUG_INFO + D3DCOMPILER_STRIP_DEBUG_INFO + + + + No documentation. + + dd607325 + D3DCOMPILER_STRIP_TEST_BLOBS + D3DCOMPILER_STRIP_TEST_BLOBS + + + + No documentation. + + dd607325 + D3DCOMPILER_STRIP_PRIVATE_DATA + D3DCOMPILER_STRIP_PRIVATE_DATA + + + + No documentation. + + dd607325 + D3DCOMPILER_STRIP_ROOT_SIGNATURE + D3DCOMPILER_STRIP_ROOT_SIGNATURE + + + + None + + None + None + + + +

Values that identify shader parameters that use system-value semantics.

+
+ +

The values identify shader parameters that have predefined system-value semantics. These values are used in a shader-signature description. For more information about shader-signature description, see .

+
+ ff728724 + D3D_NAME + D3D_NAME +
+ + +

This parameter does not use a predefined system-value semantic.

+
+ ff728724 + D3D_NAME_UNDEFINED + D3D_NAME_UNDEFINED +
+ + +

This parameter contains position data.

+
+ ff728724 + D3D_NAME_POSITION + D3D_NAME_POSITION +
+ + +

This parameter contains clip-distance data.

+
+ ff728724 + D3D_NAME_CLIP_DISTANCE + D3D_NAME_CLIP_DISTANCE +
+ + +

This parameter contains cull-distance data.

+
+ ff728724 + D3D_NAME_CULL_DISTANCE + D3D_NAME_CULL_DISTANCE +
+ + +

This parameter contains a render-target-array index.

+
+ ff728724 + D3D_NAME_RENDER_TARGET_ARRAY_INDEX + D3D_NAME_RENDER_TARGET_ARRAY_INDEX +
+ + +

This parameter contains a viewport-array index.

+
+ ff728724 + D3D_NAME_VIEWPORT_ARRAY_INDEX + D3D_NAME_VIEWPORT_ARRAY_INDEX +
+ + +

This parameter contains a vertex ID.

+
+ ff728724 + D3D_NAME_VERTEX_ID + D3D_NAME_VERTEX_ID +
+ + +

This parameter contains a primitive ID.

+
+ ff728724 + D3D_NAME_PRIMITIVE_ID + D3D_NAME_PRIMITIVE_ID +
+ + +

This parameter contains an instance ID.

+
+ ff728724 + D3D_NAME_INSTANCE_ID + D3D_NAME_INSTANCE_ID +
+ + +

This parameter contains data that identifies whether or not the primitive faces the camera.

+
+ ff728724 + D3D_NAME_IS_FRONT_FACE + D3D_NAME_IS_FRONT_FACE +
+ + +

This parameter contains a sampler-array index.

+
+ ff728724 + D3D_NAME_SAMPLE_INDEX + D3D_NAME_SAMPLE_INDEX +
+ + +

This parameter contains one of four tessellation factors that correspond to the amount of parts that a quad patch is broken into along the given edge. This flag is used to tessellate a quad patch.

+
+ ff728724 + D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR + D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR +
+ + +

This parameter contains one of two tessellation factors that correspond to the amount of parts that a quad patch is broken into vertically and horizontally within the patch. This flag is used to tessellate a quad patch.

+
+ ff728724 + D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR + D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR +
+ + +

This parameter contains one of three tessellation factors that correspond to the amount of parts that a tri patch is broken into along the given edge. This flag is used to tessellate a tri patch.

+
+ ff728724 + D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR + D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR +
+ + +

This parameter contains the tessellation factor that corresponds to the amount of parts that a tri patch is broken into within the patch. This flag is used to tessellate a tri patch.

+
+ ff728724 + D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR + D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR +
+ + +

This parameter contains the tessellation factor that corresponds to the number of lines broken into within the patch. This flag is used to tessellate an isolines patch.

+
+ ff728724 + D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR + D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR +
+ + +

This parameter contains the tessellation factor that corresponds to the number of lines that are created within the patch. This flag is used to tessellate an isolines patch.

+
+ ff728724 + D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR + D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR +
+ + +

This parameter contains render-target data.

+
+ ff728724 + D3D_NAME_BARYCENTRICS + D3D_NAME_BARYCENTRICS +
+ + +

This parameter contains render-target data.

+
+ ff728724 + D3D_NAME_TARGET + D3D_NAME_TARGET +
+ + +

This parameter contains depth data.

+
+ ff728724 + D3D_NAME_DEPTH + D3D_NAME_DEPTH +
+ + +

This parameter contains alpha-coverage data.

+
+ ff728724 + D3D_NAME_COVERAGE + D3D_NAME_COVERAGE +
+ + +

This parameter signifies that the value is greater than or equal to a reference value. This flag is used to specify conservative depth for a pixel shader.

+
+ ff728724 + D3D_NAME_DEPTH_GREATER_EQUAL + D3D_NAME_DEPTH_GREATER_EQUAL +
+ + +

This parameter signifies that the value is less than or equal to a reference value. This flag is used to specify conservative depth for a pixel shader.

+
+ ff728724 + D3D_NAME_DEPTH_LESS_EQUAL + D3D_NAME_DEPTH_LESS_EQUAL +
+ + +

This parameter contains a stencil reference. See Shader Specified Stencil Reference Value.

+
+ ff728724 + D3D_NAME_STENCIL_REF + D3D_NAME_STENCIL_REF +
+ + +

This parameter contains inner input coverage data. See Conservative Rasterization.

+
+ ff728724 + D3D_NAME_INNER_COVERAGE + D3D_NAME_INNER_COVERAGE +
+ + +

Values that identify domain options for tessellator data.

+
+ +

The data domain defines the type of data. This enumeration is used by .

+
+ ff728737 + D3D_TESSELLATOR_DOMAIN + D3D_TESSELLATOR_DOMAIN +
+ + +

The data type is undefined.

+
+ ff728737 + D3D_TESSELLATOR_DOMAIN_UNDEFINED + D3D_TESSELLATOR_DOMAIN_UNDEFINED +
+ + +

Isoline data.

+
+ ff728737 + D3D_TESSELLATOR_DOMAIN_ISOLINE + D3D_TESSELLATOR_DOMAIN_ISOLINE +
+ + +

Triangle data.

+
+ ff728737 + D3D_TESSELLATOR_DOMAIN_TRI + D3D_TESSELLATOR_DOMAIN_TRI +
+ + +

Quad data.

+
+ ff728737 + D3D_TESSELLATOR_DOMAIN_QUAD + D3D_TESSELLATOR_DOMAIN_QUAD +
+ + +

Values that identify output primitive types.

+
+ +

The output primitive type determines how the tessellator output data is organized; this enumeration is used by .

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_PRIMITIVE + D3D_TESSELLATOR_OUTPUT_PRIMITIVE +
+ + +

The output primitive type is undefined.

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_UNDEFINED + D3D_TESSELLATOR_OUTPUT_UNDEFINED +
+ + +

The output primitive type is a point.

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_POINT + D3D_TESSELLATOR_OUTPUT_POINT +
+ + +

The output primitive type is a line.

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_LINE + D3D_TESSELLATOR_OUTPUT_LINE +
+ + +

The output primitive type is a clockwise triangle.

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_TRIANGLE_CW + D3D_TESSELLATOR_OUTPUT_TRIANGLE_CW +
+ + +

The output primitive type is a counter clockwise triangle.

+
+ ff728738 + D3D_TESSELLATOR_OUTPUT_TRIANGLE_CCW + D3D_TESSELLATOR_OUTPUT_TRIANGLE_CCW +
+ + +

Values that identify partitioning options.

+
+ +

During tessellation, the partition option helps to determine how the algorithm chooses the next partition value; this enumeration is used by .

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING + D3D_TESSELLATOR_PARTITIONING +
+ + +

The partitioning type is undefined.

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING_UNDEFINED + D3D_TESSELLATOR_PARTITIONING_UNDEFINED +
+ + +

Partition with integers only.

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING_INTEGER + D3D_TESSELLATOR_PARTITIONING_INTEGER +
+ + +

Partition with a power-of-two number only.

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING_POW2 + D3D_TESSELLATOR_PARTITIONING_POW2 +
+ + +

Partition with an odd, fractional number.

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD + D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD +
+ + +

Partition with an even, fractional number.

+
+ ff728739 + D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN + D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN +
+ + + Functions + + + + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store.?

Reads a file that is on disk into memory.

+
+

A reference to a constant null-terminated string that contains the name of the file to read into memory.

+

A reference to a variable that receives a reference to the ID3DBlob interface that contains information that D3DReadFileToBlob read from the pFileName file. You can use this ID3DBlob interface to access the file information and pass it to other compiler functions.

+

Returns one of the Direct3D 11 return codes.

+ + Note??The D3dcompiler_44.dll or later version of the file contains the D3DReadFileToBlob compiler function.? + + hh446877 + HRESULT D3DReadFileToBlob([In] const wchar_t* pFileName,[Out] ID3D10Blob** ppContents) + D3DReadFileToBlob +
+ + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store.?

Writes a memory blob to a file on disk.

+
+

A reference to a ID3DBlob interface that contains the memory blob to write to the file that the pFileName parameter specifies.

+

A reference to a constant null-terminated string that contains the name of the file to which to write.

+

A Boolean value that specifies whether to overwrite information in the pFileName file. TRUE specifies to overwrite information and specifies not to overwrite information.

+

Returns one of the Direct3D 11 return codes.

+ + Note??The D3dcompiler_44.dll or later version of the file contains the D3DWriteBlobToFile compiler function.? + + hh446883 + HRESULT D3DWriteBlobToFile([In] ID3D10Blob* pBlob,[In] const wchar_t* pFileName,[In] BOOL bOverwrite) + D3DWriteBlobToFile +
+ + +

Compile HLSL code or an effect file into bytecode for a given target.

+
+

A reference to uncompiled shader data; either ASCII HLSL code or a compiled effect.

+

Length of pSrcData.

+

You can use this parameter for strings that specify error messages. If not used, set to null.

+

An array of null-terminated macro definitions (see ).

+

Optional. A reference to an for handling include files. Setting this to null will cause a compile error if a shader contains a #include. You can pass the D3D_COMPILE_STANDARD_FILE_INCLUDE macro, which is a reference to a default include handler. This default include handler includes files that are relative to the current directory and files that are relative to the directory of the initial source file. When you use D3D_COMPILE_STANDARD_FILE_INCLUDE, you must specify the source file name in the pSourceName parameter; the compiler will derive the initial relative directory from pSourceName.

#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((*)()1)
+

The name of the shader entry point function where shader execution begins. When you compile using a fx profile (for example, fx_4_0, fx_5_0, and so on), D3DCompile ignores pEntrypoint. In this case, we recommend that you set pEntrypoint to null because it is good programming practice to set a reference parameter to null if the called function will not use it. For all other shader profiles, a valid pEntrypoint is required.

+

A string that specifies the shader target or set of shader features to compile against. The shader target can be shader model 2, shader model 3, shader model 4, or shader model 5. The target can also be an effect type (for example, fx_4_1). For info about the targets that various profiles support, see Specifying Compiler Targets.

+

Flags defined by D3D compile constants.

+

Flags defined by D3D compile effect constants. When you compile a shader and not an effect file, D3DCompile ignores Flags2; we recommend that you set Flags2 to zero because it is good programming practice to set a nonreference parameter to zero if the called function will not use it.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the compiled code.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access compiler error messages, or null if there are no errors.

+

Returns one of the Direct3D 11 return codes.

+ +

The difference between D3DCompile and D3DCompile2 is that the latter method takes some optional parameters that can be used to control some aspects of how bytecode is generated. If this extra flexibility is not required, there is no performance gain from using D3DCompile2.

+
+ dd607324 + HRESULT D3DCompile([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In, Optional] const char* pSourceName,[In, Buffer, Optional] const D3D_SHADER_MACRO* pDefines,[In, Optional] ID3DInclude* pInclude,[In, Optional] const char* pEntrypoint,[In] const char* pTarget,[In] unsigned int Flags1,[In] unsigned int Flags2,[Out] ID3D10Blob** ppCode,[Out, Optional] ID3D10Blob** ppErrorMsgs) + D3DCompile +
+ + +

Compiles Microsoft High Level Shader Language (HLSL) code into bytecode for a given target.

+
+

A reference to uncompiled shader data (ASCII HLSL code).

+

The size, in bytes, of the block of memory that pSrcData points to.

+

An optional reference to a constant null-terminated string containing the name that identifies the source data to use in error messages. If not used, set to null.

+

An optional array of structures that define shader macros. Each macro definition contains a name and a null-terminated definition. If not used, set to null.

+

A reference to an interface that the compiler uses to handle include files. If you set this parameter to null and the shader contains a #include, a compile error occurs. You can pass the D3D_COMPILE_STANDARD_FILE_INCLUDE macro, which is a reference to a default include handler. This default include handler includes files that are relative to the current directory and files that are relative to the directory of the initial source file. When you use D3D_COMPILE_STANDARD_FILE_INCLUDE, you must specify the source file name in the pSourceName parameter; the compiler will derive the initial relative directory from pSourceName.

#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((*)()1)
+

A reference to a constant null-terminated string that contains the name of the shader entry point function where shader execution begins. When you compile an effect, D3DCompile2 ignores pEntrypoint; we recommend that you set pEntrypoint to null because it is good programming practice to set a reference parameter to null if the called function will not use it.

+

A reference to a constant null-terminated string that specifies the shader target or set of shader features to compile against. The shader target can be a shader model (for example, shader model 2, shader model 3, shader model 4, or shader model 5). The target can also be an effect type (for example, fx_4_1). For info about the targets that various profiles support, see Specifying Compiler Targets.

+

A combination of shader D3D compile constants that are combined by using a bitwise OR operation. The resulting value specifies how the compiler compiles the HLSL code.

+

A combination of effect D3D compile effect constants that are combined by using a bitwise OR operation. The resulting value specifies how the compiler compiles the effect. When you compile a shader and not an effect file, D3DCompile2 ignores Flags2; we recommend that you set Flags2 to zero because it is good programming practice to set a nonreference parameter to zero if the called function will not use it.

+

A combination of the following flags that are combined by using a bitwise OR operation. The resulting value specifies how the compiler compiles the HLSL code.

FlagDescription
D3DCOMPILE_SECDATA_MERGE_UAV_SLOTS (0x01)Merge unordered access view (UAV) slots in the secondary data that the pSecondaryData parameter points to.
D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS (0x02)Preserve template slots in the secondary data that the pSecondaryData parameter points to.
D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH (0x04)Require that templates in the secondary data that the pSecondaryData parameter points to match when the compiler compiles the HLSL code.

?

If pSecondaryData is null, set to zero.

+

A reference to secondary data. If you don't pass secondary data, set to null. Use this secondary data to align UAV slots in two shaders. Suppose shader A has UAVs and they are bound to some slots. To compile shader B such that UAVs with the same names are mapped in B to the same slots as in A, pass A?s byte code to D3DCompile2 as the secondary data.

+

The size, in bytes, of the block of memory that pSecondaryData points to. If pSecondaryData is null, set to zero.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the compiled code.

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access compiler error messages, or null if there are no errors.

+

Returns one of the Direct3D 11 return codes.

+ +

The difference between D3DCompile2 and D3DCompile is that D3DCompile2 takes some optional parameters (SecondaryDataFlags, pSecondaryData and SecondaryDataSize) that can be used to control some aspects of how bytecode is generated. Refer to the descriptions of these parameters for more details. There is no difference otherwise to the efficiency of the bytecode generated between D3DCompile2 and D3DCompile.

+
+ hh446869 + HRESULT D3DCompile2([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In, Optional] const char* pSourceName,[In, Buffer, Optional] const D3D_SHADER_MACRO* pDefines,[In, Optional] ID3DInclude* pInclude,[In] const char* pEntrypoint,[In] const char* pTarget,[In] unsigned int Flags1,[In] unsigned int Flags2,[In] unsigned int SecondaryDataFlags,[In, Buffer, Optional] const void* pSecondaryData,[In] SIZE_T SecondaryDataSize,[Out] ID3D10Blob** ppCode,[Out, Optional] ID3D10Blob** ppErrorMsgs) + D3DCompile2 +
+ + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store. Refer to the section, "Compiling shaders for UWP", in the remarks for D3DCompile2.?

Compiles Microsoft High Level Shader Language (HLSL) code into bytecode for a given target.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

Returns one of the Direct3D 11 return codes.

+ + Note??The D3dcompiler_44.dll or later version of the file contains the D3DCompileFromFile compiler function.? + + hh446872 + HRESULT D3DCompileFromFile([In] const wchar_t* pFileName,[In, Buffer, Optional] const D3D_SHADER_MACRO* pDefines,[In, Optional] ID3DInclude* pInclude,[In] const char* pEntrypoint,[In] const char* pTarget,[In] unsigned int Flags1,[In] unsigned int Flags2,[Out] ID3D10Blob** ppCode,[Out, Optional] ID3D10Blob** ppErrorMsgs) + D3DCompileFromFile +
+ + +

Preprocesses uncompiled HLSL code.

+
+

A reference to uncompiled shader data; either ASCII HLSL code or a compiled effect.

+

Length of pSrcData.

+

The name of the file that contains the uncompiled HLSL code.

+

An array of null-terminated macro definitions (see ).

+

A reference to an for handling include files. Setting this to null will cause a compile error if a shader contains a #include. You can pass the D3D_COMPILE_STANDARD_FILE_INCLUDE macro, which is a reference to a default include handler. This default include handler includes files that are relative to the current directory and files that are relative to the directory of the initial source file. When you use D3D_COMPILE_STANDARD_FILE_INCLUDE, you must specify the source file name in the pSourceName parameter; the compiler will derive the initial relative directory from pSourceName.

#define D3D_COMPILE_STANDARD_FILE_INCLUDE ((*)()1)
+

The address of a ID3DBlob that contains the compiled code.

+

A reference to an ID3DBlob that contains compiler error messages, or null if there were no errors.

+

Returns one of the Direct3D 11 return codes.

+ +

D3DPreprocess outputs #line directives and preserves line numbering of source input so that output line numbering can be properly related to the input source.

+
+ dd607332 + HRESULT D3DPreprocess([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In, Optional] const char* pSourceName,[In, Buffer, Optional] const D3D_SHADER_MACRO* pDefines,[In, Optional] ID3DInclude* pInclude,[Out] ID3D10Blob** ppCodeText,[Out, Optional] ID3D10Blob** ppErrorMsgs) + D3DPreprocess +
+ + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store.?

Gets shader debug information.

+
+

A reference to source data; either uncompiled or compiled HLSL code.

+

Length of pSrcData.

+

A reference to a buffer that receives the ID3DBlob interface that contains debug information.

+

Returns one of the Direct3D 11 return codes.

+ +

Debug information is embedded in the body of the shader after calling D3DCompile.

+
+ dd607328 + HRESULT D3DGetDebugInfo([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppDebugInfo) + D3DGetDebugInfo +
+ + +

Gets a reference to a reflection interface.

+
+

A reference to source data as compiled HLSL code.

+

Length of pSrcData.

+

The reference of the COM interface to use. For example, IID_ID3D11ShaderReflection.

+

A reference to a reflection interface.

+

Returns one of the Direct3D 11 return codes.

+ +

Shader code contains metadata that can be inspected using the reflection APIs.

The following code illustrates retrieving a Interface from a shader.

 pd3dDevice->CreatePixelShader( pPixelShaderBuffer->GetBufferPointer(), pPixelShaderBuffer->GetBufferSize(), g_pPSClassLinkage, &g_pPixelShader ); * pReflector = null; 
+            D3DReflect( pPixelShaderBuffer->GetBufferPointer(), pPixelShaderBuffer->GetBufferSize(),  IID_ID3D11ShaderReflection, (void**) &pReflector);
+            
+
+ dd607334 + HRESULT D3DReflect([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] const GUID& pInterface,[Out] void** ppReflector) + D3DReflect +
+ + +

Creates a library-reflection interface from source data that contains an HLSL library of functions.

Note??This function is part of the HLSL shader linking technology that you can use on all Direct3D?11 platforms to create precompiled HLSL functions, package them into libraries, and link them into full shaders at run time.? +
+

A reference to source data as an HLSL library of functions.

+

The size, in bytes, of the block of memory that pSrcData points to.

+

The reference of the COM interface to use. For example, IID_ID3D11LibraryReflection.

+

A reference to a variable that receives a reference to a library-reflection interface, .

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ dn280343 + HRESULT D3DReflectLibrary([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] const GUID& riid,[Out] void** ppReflector) + D3DReflectLibrary +
+ + +

Disassembles compiled HLSL code.

+
+

A reference to source data as compiled HLSL code.

+

Length of pSrcData.

+

Flags affecting the behavior of D3DDisassemble. Flags can be a combination of zero or more of the following values.

FlagDescription
D3D_DISASM_ENABLE_COLOR_CODEEnable the output of color codes.
D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTSEnable the output of default values.
D3D_DISASM_ENABLE_INSTRUCTION_NUMBERINGEnable instruction numbering.
D3D_DISASM_ENABLE_INSTRUCTION_CYCLENo effect.
D3D_DISASM_DISABLE_DEBUG_INFODisable debug information.
D3D_DISASM_ENABLE_INSTRUCTION_OFFSETEnable instruction offsets.
D3D_DISASM_INSTRUCTION_ONLYDisassemble instructions only.
D3D_DISASM_PRINT_HEX_LITERALSUse hex symbols in disassemblies.

?

+

The comment string at the top of the shader that identifies the shader constants and variables.

+

A reference to a buffer that receives the ID3DBlob interface that accesses assembly text.

+

Returns one of the Direct3D 11 return codes.

+ dd607326 + HRESULT D3DDisassemble([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int Flags,[In, Optional] const char* szComments,[Out] ID3D10Blob** ppDisassembly) + D3DDisassemble +
+ + +

Disassembles a specific region of compiled Microsoft High Level Shader Language (HLSL) code.

+
+

A reference to compiled shader data.

+

The size, in bytes, of the block of memory that pSrcData points to.

+

A combination of zero or more of the following flags that are combined by using a bitwise OR operation. The resulting value specifies how D3DDisassembleRegion disassembles the compiled shader data.

FlagDescription
D3D_DISASM_ENABLE_COLOR_CODE (0x01)Enable the output of color codes.
D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS (0x02)Enable the output of default values.
D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING (0x04)Enable instruction numbering.
D3D_DISASM_ENABLE_INSTRUCTION_CYCLE (0x08)No effect.
D3D_DISASM_DISABLE_DEBUG_INFO (0x10)Disable the output of debug information.
D3D_DISASM_ENABLE_INSTRUCTION_OFFSET (0x20)Enable the output of instruction offsets.
D3D_DISASM_INSTRUCTION_ONLY (0x40)This flag has no effect in D3DDisassembleRegion. Cycle information comes from the trace; therefore, cycle information is available only in D3DDisassemble11Trace's trace disassembly.

?

+

A reference to a constant null-terminated string at the top of the shader that identifies the shader constants and variables.

+

The number of bytes offset into the compiled shader data where D3DDisassembleRegion starts the disassembly.

+

The number of instructions to disassemble.

+

A reference to a variable that receives the number of bytes offset into the compiled shader data where D3DDisassembleRegion finishes the disassembly.

+

A reference to a buffer that receives the ID3DBlob interface that accesses the disassembled HLSL code.

+

Returns one of the Direct3D 11 return codes.

+ + Note??The D3dcompiler_44.dll or later version of the file contains the D3DDisassembleRegion compiler function.? + + hh706344 + HRESULT D3DDisassembleRegion([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int Flags,[In, Optional] const char* szComments,[In] SIZE_T StartByteOffset,[In] SIZE_T NumInsts,[Out, Optional] SIZE_T* pFinishByteOffset,[Out] ID3D10Blob** ppDisassembly) + D3DDisassembleRegion +
+ + +

Creates a linker interface.

Note??This function is part of the HLSL shader linking technology that you can use on all Direct3D?11 platforms to create precompiled HLSL functions, package them into libraries, and link them into full shaders at run time.? +
+

A reference to a variable that receives a reference to the interface that is used to link a shader module.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ + Note??The D3dcompiler_47.dll or later version of the DLL contains the D3DCreateLinker function.? + + dn280341 + HRESULT D3DCreateLinker([Out, Fast] ID3D11Linker** ppLinker) + D3DCreateLinker +
+ + +

Creates a shader module interface from source data for the shader module.

Note??This function is part of the HLSL shader linking technology that you can use on all Direct3D?11 platforms to create precompiled HLSL functions, package them into libraries, and link them into full shaders at run time.? +
+

A reference to the source data for the shader module.

+

The size, in bytes, of the block of memory that pSrcData points to.

+

A reference to a variable that receives a reference to the interface that is used for shader resource re-binding.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ + Note??The D3dcompiler_47.dll or later version of the DLL contains the D3DLoadModule function.? + + dn280342 + HRESULT D3DLoadModule([In] const void* pSrcData,[In] SIZE_T cbSrcDataSize,[Out, Fast] ID3D11Module** ppModule) + D3DLoadModule +
+ + +

Creates a function-linking-graph interface.

Note??This function is part of the HLSL shader linking technology that you can use on all Direct3D?11 platforms to create precompiled HLSL functions, package them into libraries, and link them into full shaders at run time.? +
+

Reserved

+

A reference to a variable that receives a reference to the interface that is used for constructing shaders that consist of a sequence of precompiled function calls.

+

Returns if successful; otherwise, returns one of the Direct3D 11 Return Codes.

+ + Note??The D3dcompiler_47.dll or later version of the DLL contains the D3DCreateFunctionLinkingGraph function.? + + dn280340 + HRESULT D3DCreateFunctionLinkingGraph([In] unsigned int uFlags,[Out, Fast] ID3D11FunctionLinkingGraph** ppFunctionLinkingGraph) + D3DCreateFunctionLinkingGraph +
+ + +

Retrieves the byte offsets for instructions within a section of shader code.

+
+

A reference to the compiled shader data.

+

The size, in bytes, of the block of memory that pSrcData points to.

+

A combination of the following flags that are combined by using a bitwise OR operation. The resulting value specifies how D3DGetTraceInstructionOffsets retrieves the instruction offsets.

FlagDescription
D3D_GET_INST_OFFSETS_INCLUDE_NON_EXECUTABLE (0x01)Include non-executable code in the retrieved information.

?

+

The index of the instruction in the compiled shader data for which D3DGetTraceInstructionOffsets starts to retrieve the byte offsets.

+

The number of instructions for which D3DGetTraceInstructionOffsets retrieves the byte offsets.

+

A reference to a variable that receives the total number of instructions in the section of shader code.

+

A reference to a variable that receives the actual number of offsets.

+ +

A new kind of Microsoft High Level Shader Language (HLSL) debugging information from a program database (PDB) file uses instruction-byte offsets within a shader blob (arbitrary-length data buffer). You use D3DGetTraceInstructionOffsets to translate to and from instruction indexes.

Note??The D3dcompiler_44.dll or later version of the file contains the D3DGetTraceInstructionOffsets compiler function.? +
+ hh446875 + HRESULT D3DGetTraceInstructionOffsets([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int Flags,[In] SIZE_T StartInstIndex,[In] SIZE_T NumInsts,[Out] SIZE_T* pOffsets,[Out] SIZE_T* pTotalInsts) + D3DGetTraceInstructionOffsets +
+ + + Note??D3DGetInputSignatureBlob may be altered or unavailable for releases after Windows?8.1. Instead use D3DGetBlobPart with the D3D_BLOB_INPUT_SIGNATURE_BLOB value.?

Gets the input signature from a compilation result.

+
+ No documentation. + No documentation. + No documentation. +

Returns one of the Direct3D 11 return codes.

+ dd607330 + HRESULT D3DGetInputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetInputSignatureBlob +
+ + + Note??D3DGetOutputSignatureBlob may be altered or unavailable for releases after Windows?8.1. Instead use D3DGetBlobPart with the D3D_BLOB_OUTPUT_SIGNATURE_BLOB value.?

Gets the output signature from a compilation result.

+
+ No documentation. + No documentation. + No documentation. +

Returns one of the Direct3D 11 return codes.

+ dd607331 + HRESULT D3DGetOutputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetOutputSignatureBlob +
+ + + Note??D3DGetInputAndOutputSignatureBlob may be altered or unavailable for releases after Windows?8.1. Instead use D3DGetBlobPart with the D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB value.?

Gets the input and output signatures from a compilation result.

+
+ No documentation. + No documentation. + No documentation. +

Returns one of the Direct3D 11 return codes.

+ dd607329 + HRESULT D3DGetInputAndOutputSignatureBlob([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[Out] ID3D10Blob** ppSignatureBlob) + D3DGetInputAndOutputSignatureBlob +
+ + +

Removes unwanted blobs from a compilation result.

+
+

A reference to source data as compiled HLSL code.

+

Length of pSrcData.

+

Strip flag options, represented by .

+

A reference to a variable that receives a reference to the ID3DBlob interface that you can use to access the unwanted stripped out shader code.

+

Returns one of the Direct3D 11 return codes.

+ dd607335 + HRESULT D3DStripShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In] unsigned int uStripFlags,[Out] ID3D10Blob** ppStrippedBlob) + D3DStripShader +
+ + +

Retrieves a specific part from a compilation result.

+
+

A reference to uncompiled shader data; either ASCII HLSL code or a compiled effect.

+

Length of uncompiled shader data that pSrcData points to.

+

A -typed value that specifies the part of the buffer to retrieve.

+

Flags that indicate how to retrieve the blob part. Currently, no flags are defined.

+

The address of a reference to the ID3DBlob interface that is used to retrieve the specified part of the buffer.

+

Returns one of the Direct3D 11 return codes.

+ +

D3DGetBlobPart retrieves the part of a blob (arbitrary length data buffer) that contains the type of data that the Part parameter specifies.

+
+ ff728674 + HRESULT D3DGetBlobPart([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] D3D_BLOB_PART Part,[In] unsigned int Flags,[Out] ID3D10Blob** ppPart) + D3DGetBlobPart +
+ + +

Sets information in a compilation result.

+
+

A reference to compiled shader data.

+

The length of the compiled shader data that pSrcData points to.

+

A -typed value that specifies the part to set. Currently, you can update only private data; that is, D3DSetBlobPart currently only supports the D3D_BLOB_PRIVATE_DATA value.

+

Flags that indicate how to set the blob part. Currently, no flags are defined; therefore, set to zero.

+

A reference to data to set in the compilation result.

+

The length of the data that pPart points to.

+

A reference to a buffer that receives the ID3DBlob interface for the new shader in which the new part data is set.

+

Returns one of the Direct3D 11 return codes.

+ +

D3DSetBlobPart modifies data in a compiled shader. Currently, D3DSetBlobPart can update only the private data in a compiled shader. You can use D3DSetBlobPart to attach arbitrary uninterpreted data to a compiled shader.

Note??The D3dcompiler_44.dll or later version of the file contains the D3DSetBlobPart compiler function.? +
+ hh446880 + HRESULT D3DSetBlobPart([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] D3D_BLOB_PART Part,[In] unsigned int Flags,[In, Buffer] const void* pPart,[In] SIZE_T PartSize,[Out] ID3D10Blob** ppNewShader) + D3DSetBlobPart +
+ + +

Creates a buffer.

+
+

Number of bytes in the blob.

+

The address of a reference to the ID3DBlob interface that is used to retrieve the buffer.

+

Returns one of the Direct3D 11 return codes.

+ +

The latest D3dcompiler_nn.dll contains the D3DCreateBlob compiler function. Therefore, you are no longer required to create and use an arbitrary length data buffer by using the D3D10CreateBlob function that is contained in D3d10.dll.

+
+ ff728672 + HRESULT D3DCreateBlob([In] SIZE_T Size,[Out] ID3D10Blob** ppBlob) + D3DCreateBlob +
+ + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store.?

Compresses a set of shaders into a more compact form.

+
+

The number of shaders to compress.

+

An array of structures that describe the set of shaders to compress.

+

Flags that indicate how to compress the shaders. Currently, only the D3D_COMPRESS_SHADER_KEEP_ALL_PARTS (0x00000001) flag is defined.

+

The address of a reference to the ID3DBlob interface that is used to retrieve the compressed shader data.

+

Returns one of the Direct3D 11 return codes.

+ ff728671 + HRESULT D3DCompressShaders([In] unsigned int uNumShaders,[In, Buffer] D3D_SHADER_DATA* pShaderData,[In] unsigned int uFlags,[Out] ID3D10Blob** ppCompressedData) + D3DCompressShaders +
+ + + Note??You can use this API to develop your Windows Store apps, but you can't use it in apps that you submit to the Windows Store.?

Decompresses one or more shaders from a compressed set.

+
+

A reference to uncompiled shader data; either ASCII HLSL code or a compiled effect.

+

Length of uncompiled shader data that pSrcData points to.

+

The number of shaders to decompress.

+

The index of the first shader to decompress.

+

An array of indexes that represent the shaders to decompress.

+

Flags that indicate how to decompress. Currently, no flags are defined.

+

The address of a reference to the ID3DBlob interface that is used to retrieve the decompressed shader data.

+

A reference to a variable that receives the total number of shaders that D3DDecompressShaders decompressed.

+

Returns one of the Direct3D 11 return codes.

+ ff728673 + HRESULT D3DDecompressShaders([In, Buffer] const void* pSrcData,[In] SIZE_T SrcDataSize,[In] unsigned int uNumShaders,[In] unsigned int uStartIndex,[In, Buffer, Optional] unsigned int* pIndices,[In] unsigned int uFlags,[Out, Buffer] ID3D10Blob** ppShaders,[Out, Optional] unsigned int* pTotalShaders) + D3DDecompressShaders +
+ + + Functions + + + + +

Get a constant-buffer description.

+
+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476592 + GetDesc + GetDesc +
+ + +

Get a constant-buffer description.

+
+

A reference to a , which represents a shader-buffer description.

+

Returns one of the following Direct3D 11 Return Codes.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476592 + HRESULT ID3D11ShaderReflectionConstantBuffer::GetDesc([Out] D3D11_SHADER_BUFFER_DESC* pDesc) + ID3D11ShaderReflectionConstantBuffer::GetDesc +
+ + +

Get a shader-reflection variable by index.

+
+

Zero-based index.

+

A reference to a shader-reflection variable interface (see Interface).

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476593 + ID3D11ShaderReflectionVariable* ID3D11ShaderReflectionConstantBuffer::GetVariableByIndex([In] unsigned int Index) + ID3D11ShaderReflectionConstantBuffer::GetVariableByIndex +
+ + +

Get a shader-reflection variable by name.

+
+

Variable name.

+

Returns a sentinel object (end of list marker). To determine if GetVariableByName successfully completed, call ID3D11ShaderReflectionVariable::GetDesc and check the returned ; any return value other than success means that GetVariableByName failed.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476594 + ID3D11ShaderReflectionVariable* ID3D11ShaderReflectionConstantBuffer::GetVariableByName([In] const char* Name) + ID3D11ShaderReflectionConstantBuffer::GetVariableByName +
+ + +

Fills the parameter descriptor structure for the function's parameter.

+
+ dn280545 + GetDesc + GetDesc +
+ + +

Fills the parameter descriptor structure for the function's parameter.

+
+

A reference to a structure that receives a description of the function's parameter.

+

Returns one of the Direct3D 11 Return Codes.

+ dn280545 + HRESULT ID3D11FunctionParameterReflection::GetDesc([Out] D3D11_PARAMETER_DESC* pDesc) + ID3D11FunctionParameterReflection::GetDesc +
+ + +

Get a shader-variable description.

+
+ +

This method can be used to determine if the Interface is valid, the method returns E_FAIL when the variable is not valid.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476608 + GetDesc + GetDesc +
+ + +

This method returns the buffer of the current .

+
+ dn933280 + GetBuffer + GetBuffer +
+ + +

Get a shader-variable description.

+
+

A reference to a shader-variable description (see ).

+

Returns one of the following Direct3D 11 Return Codes.

+ +

This method can be used to determine if the Interface is valid, the method returns E_FAIL when the variable is not valid.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476608 + HRESULT ID3D11ShaderReflectionVariable::GetDesc([Out] D3D11_SHADER_VARIABLE_DESC* pDesc) + ID3D11ShaderReflectionVariable::GetDesc +
+ + +

Get a shader-variable type.

+
+

A reference to a Interface.

+ +

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476610 + ID3D11ShaderReflectionType* ID3D11ShaderReflectionVariable::GetType() + ID3D11ShaderReflectionVariable::GetType +
+ + +

This method returns the buffer of the current .

+
+

Returns a reference to the of the present .

+ dn933280 + ID3D11ShaderReflectionConstantBuffer* ID3D11ShaderReflectionVariable::GetBuffer() + ID3D11ShaderReflectionVariable::GetBuffer +
+ + +

Gets the corresponding interface slot for a variable that represents an interface reference.

+
+

Index of the array element to get the slot number for. For a non-array variable this value will be zero.

+

Returns the index of the interface in the interface array.

+ +

GetInterfaceSlot gets the corresponding slot in an dynamic linkage array for an interface instance. The returned slot number is used to set an interface instance to a particular class instance. See the HLSL Interfaces and Classes overview for additional information.

This method's interface is hosted in the out-of-box DLL D3DCompiler_xx.dll.

+
+ ff476609 + unsigned int ID3D11ShaderReflectionVariable::GetInterfaceSlot([In] unsigned int uArrayIndex) + ID3D11ShaderReflectionVariable::GetInterfaceSlot +
+ + +

Describes a shader constant-buffer.

+
+ +

Constants are supplied to shaders in a shader-constant buffer. Get the description of a shader-constant-buffer by calling ID3D11ShaderReflectionConstantBuffer::GetDesc.

+
+ ff476208 + D3D11_SHADER_BUFFER_DESC + D3D11_SHADER_BUFFER_DESC +
+ + +

The name of the buffer.

+
+ ff476208 + Name + Name +
+ + +

A -typed value that indicates the intended use of the constant data.

+
+ ff476208 + Type + Type +
+ + +

The number of unique variables.

+
+ ff476208 + Variables + Variables +
+ + +

Buffer size (in bytes).

+
+ ff476208 + Size + Size +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies properties for the shader constant-buffer.

+
+ ff476208 + uFlags + uFlags +
+ + +

Describes a function.

+
+ dn280416 + D3D11_FUNCTION_DESC + D3D11_FUNCTION_DESC +
+ + +

The shader version.

+
+ dn280416 + Version + Version +
+ + +

The name of the originator of the function.

+
+ dn280416 + Creator + Creator +
+ + +

A combination of D3DCOMPILE Constants that are combined by using a bitwise OR operation. The resulting value specifies shader compilation and parsing.

+
+ dn280416 + Flags + Flags +
+ + +

The number of constant buffers for the function.

+
+ dn280416 + ConstantBuffers + ConstantBuffers +
+ + +

The number of bound resources for the function.

+
+ dn280416 + BoundResources + BoundResources +
+ + +

The number of emitted instructions for the function.

+
+ dn280416 + InstructionCount + InstructionCount +
+ + +

The number of temporary registers used by the function.

+
+ dn280416 + TempRegisterCount + TempRegisterCount +
+ + +

The number of temporary arrays used by the function.

+
+ dn280416 + TempArrayCount + TempArrayCount +
+ + +

The number of constant defines for the function.

+
+ dn280416 + DefCount + DefCount +
+ + +

The number of declarations (input + output) for the function.

+
+ dn280416 + DclCount + DclCount +
+ + +

The number of non-categorized texture instructions for the function.

+
+ dn280416 + TextureNormalInstructions + TextureNormalInstructions +
+ + +

The number of texture load instructions for the function.

+
+ dn280416 + TextureLoadInstructions + TextureLoadInstructions +
+ + +

The number of texture comparison instructions for the function.

+
+ dn280416 + TextureCompInstructions + TextureCompInstructions +
+ + +

The number of texture bias instructions for the function.

+
+ dn280416 + TextureBiasInstructions + TextureBiasInstructions +
+ + +

The number of texture gradient instructions for the function.

+
+ dn280416 + TextureGradientInstructions + TextureGradientInstructions +
+ + +

The number of floating point arithmetic instructions used by the function.

+
+ dn280416 + FloatInstructionCount + FloatInstructionCount +
+ + +

The number of signed integer arithmetic instructions used by the function.

+
+ dn280416 + IntInstructionCount + IntInstructionCount +
+ + +

The number of unsigned integer arithmetic instructions used by the function.

+
+ dn280416 + UintInstructionCount + UintInstructionCount +
+ + +

The number of static flow control instructions used by the function.

+
+ dn280416 + StaticFlowControlCount + StaticFlowControlCount +
+ + +

The number of dynamic flow control instructions used by the function.

+
+ dn280416 + DynamicFlowControlCount + DynamicFlowControlCount +
+ + +

The number of macro instructions used by the function.

+
+ dn280416 + MacroInstructionCount + MacroInstructionCount +
+ + +

The number of array instructions used by the function.

+
+ dn280416 + ArrayInstructionCount + ArrayInstructionCount +
+ + +

The number of mov instructions used by the function.

+
+ dn280416 + MovInstructionCount + MovInstructionCount +
+ + +

The number of movc instructions used by the function.

+
+ dn280416 + MovcInstructionCount + MovcInstructionCount +
+ + +

The number of type conversion instructions used by the function.

+
+ dn280416 + ConversionInstructionCount + ConversionInstructionCount +
+ + +

The number of bitwise arithmetic instructions used by the function.

+
+ dn280416 + BitwiseInstructionCount + BitwiseInstructionCount +
+ + +

A -typed value that specifies the minimum Direct3D feature level target of the function byte code.

+
+ dn280416 + MinFeatureLevel + MinFeatureLevel +
+ + +

A value that contains a combination of one or more shader requirements flags; each flag specifies a requirement of the shader. A default value of 0 means there are no requirements. For a list of values, see ID3D11ShaderReflection::GetRequiresFlags.

+
+ dn280416 + RequiredFeatureFlags + RequiredFeatureFlags +
+ + +

The name of the function.

+
+ dn280416 + Name + Name +
+ + +

The number of logical parameters in the function signature, not including the return value.

+
+ dn280416 + FunctionParameterCount + FunctionParameterCount +
+ + +

Indicates whether the function returns a value. TRUE indicates it returns a value; otherwise, (it is a subroutine).

+
+ dn280416 + HasReturn + HasReturn +
+ + +

Indicates whether there is a Direct3D 10Level9 vertex shader blob. TRUE indicates there is a 10Level9 vertex shader blob; otherwise, .

+
+ dn280416 + Has10Level9VertexShader + Has10Level9VertexShader +
+ + +

Indicates whether there is a Direct3D 10Level9 pixel shader blob. TRUE indicates there is a 10Level9 pixel shader blob; otherwise, .

+
+ dn280416 + Has10Level9PixelShader + Has10Level9PixelShader +
+ + +

Describes how a shader resource is bound to a shader input.

+
+ +

Get a shader-input-signature description by calling ID3D11ShaderReflection::GetResourceBindingDesc or ID3D11ShaderReflection::GetResourceBindingDescByName.

+
+ ff476210 + D3D11_SHADER_INPUT_BIND_DESC + D3D11_SHADER_INPUT_BIND_DESC +
+ + +

Name of the shader resource.

+
+ ff476210 + Name + Name +
+ + +

A -typed value that identifies the type of data in the resource.

+
+ ff476210 + Type + Type +
+ + +

Starting bind point.

+
+ ff476210 + BindPoint + BindPoint +
+ + +

Number of contiguous bind points for arrays.

+
+ ff476210 + BindCount + BindCount +
+ + +

A combination of -typed values for shader input-parameter options.

+
+ ff476210 + uFlags + uFlags +
+ + +

If the input is a texture, the -typed value that identifies the return type.

+
+ ff476210 + ReturnType + ReturnType +
+ + +

A -typed value that identifies the dimensions of the bound resource.

+
+ ff476210 + Dimension + Dimension +
+ + +

The number of samples for a multisampled texture; when a texture isn't multisampled, the value is set to -1 (0xFFFFFFFF).

+
+ ff476210 + NumSamples + NumSamples +
+ + +

Describes a library.

+
+ dn280417 + D3D11_LIBRARY_DESC + D3D11_LIBRARY_DESC +
+ + +

The name of the originator of the library.

+
+ dn280417 + Creator + Creator +
+ + +

A combination of D3DCOMPILE Constants that are combined by using a bitwise OR operation. The resulting value specifies how the compiler compiles.

+
+ dn280417 + Flags + Flags +
+ + +

The number of functions exported from the library.

+
+ dn280417 + FunctionCount + FunctionCount +
+ + +

Describes a function parameter.

+
+ +

Get a function-parameter description by calling ID3D11FunctionParameterReflection::GetDesc.

+
+ dn280419 + D3D11_PARAMETER_DESC + D3D11_PARAMETER_DESC +
+ + +

The name of the function parameter.

+
+ dn280419 + Name + Name +
+ + +

The HLSL semantic that is associated with this function parameter. This name includes the index, for example, SV_Target[n].

+
+ dn280419 + SemanticName + SemanticName +
+ + +

A -typed value that identifies the variable type for the parameter.

+
+ dn280419 + Type + Type +
+ + +

A -typed value that identifies the variable class for the parameter as one of scalar, vector, matrix, object, and so on.

+
+ dn280419 + Class + Class +
+ + +

The number of rows for a matrix parameter.

+
+ dn280419 + Rows + Rows +
+ + +

The number of columns for a matrix parameter.

+
+ dn280419 + Columns + Columns +
+ + +

A -typed value that identifies the interpolation mode for the parameter.

+
+ dn280419 + InterpolationMode + InterpolationMode +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies semantic flags for the parameter.

+
+ dn280419 + Flags + Flags +
+ + +

The first input register for this parameter.

+
+ dn280419 + FirstInRegister + FirstInRegister +
+ + +

The first input register component for this parameter.

+
+ dn280419 + FirstInComponent + FirstInComponent +
+ + +

The first output register for this parameter.

+
+ dn280419 + FirstOutRegister + FirstOutRegister +
+ + +

The first output register component for this parameter.

+
+ dn280419 + FirstOutComponent + FirstOutComponent +
+ + +

Describes shader data.

+
+ +

An array of structures is passed to D3DCompressShaders to compress the shader data into a more compact form.

+
+ ff728721 + D3D_SHADER_DATA + D3D_SHADER_DATA +
+ + +

A reference to shader data.

+
+ ff728721 + pBytecode + pBytecode +
+ + +

Length of shader data that pBytecode points to.

+
+ ff728721 + BytecodeLength + BytecodeLength +
+ + +

Describes a shader.

+
+ +

A shader is written in HLSL and compiled into an intermediate language by the HLSL compiler. The shader description returns information about the compiled shader. Get a shader description by calling ID3D11ShaderReflection::GetDesc.

+
+ ff476209 + D3D11_SHADER_DESC + D3D11_SHADER_DESC +
+ + +

Shader version.

+
+ ff476209 + Version + Version +
+ + +

The name of the originator of the shader.

+
+ ff476209 + Creator + Creator +
+ + +

Shader compilation/parse flags.

+
+ ff476209 + Flags + Flags +
+ + +

The number of shader-constant buffers.

+
+ ff476209 + ConstantBuffers + ConstantBuffers +
+ + +

The number of resource (textures and buffers) bound to a shader.

+
+ ff476209 + BoundResources + BoundResources +
+ + +

The number of parameters in the input signature.

+
+ ff476209 + InputParameters + InputParameters +
+ + +

The number of parameters in the output signature.

+
+ ff476209 + OutputParameters + OutputParameters +
+ + +

The number of intermediate-language instructions in the compiled shader.

+
+ ff476209 + InstructionCount + InstructionCount +
+ + +

The number of temporary registers in the compiled shader.

+
+ ff476209 + TempRegisterCount + TempRegisterCount +
+ + +

Number of temporary arrays used.

+
+ ff476209 + TempArrayCount + TempArrayCount +
+ + +

Number of constant defines.

+
+ ff476209 + DefCount + DefCount +
+ + +

Number of declarations (input + output).

+
+ ff476209 + DclCount + DclCount +
+ + +

Number of non-categorized texture instructions.

+
+ ff476209 + TextureNormalInstructions + TextureNormalInstructions +
+ + +

Number of texture load instructions

+
+ ff476209 + TextureLoadInstructions + TextureLoadInstructions +
+ + +

Number of texture comparison instructions

+
+ ff476209 + TextureCompInstructions + TextureCompInstructions +
+ + +

Number of texture bias instructions

+
+ ff476209 + TextureBiasInstructions + TextureBiasInstructions +
+ + +

Number of texture gradient instructions.

+
+ ff476209 + TextureGradientInstructions + TextureGradientInstructions +
+ + +

Number of floating point arithmetic instructions used.

+
+ ff476209 + FloatInstructionCount + FloatInstructionCount +
+ + +

Number of signed integer arithmetic instructions used.

+
+ ff476209 + IntInstructionCount + IntInstructionCount +
+ + +

Number of unsigned integer arithmetic instructions used.

+
+ ff476209 + UintInstructionCount + UintInstructionCount +
+ + +

Number of static flow control instructions used.

+
+ ff476209 + StaticFlowControlCount + StaticFlowControlCount +
+ + +

Number of dynamic flow control instructions used.

+
+ ff476209 + DynamicFlowControlCount + DynamicFlowControlCount +
+ + +

Number of macro instructions used.

+
+ ff476209 + MacroInstructionCount + MacroInstructionCount +
+ + +

Number of array instructions used.

+
+ ff476209 + ArrayInstructionCount + ArrayInstructionCount +
+ + +

Number of cut instructions used.

+
+ ff476209 + CutInstructionCount + CutInstructionCount +
+ + +

Number of emit instructions used.

+
+ ff476209 + EmitInstructionCount + EmitInstructionCount +
+ + +

The -typed value that represents the geometry shader output topology.

+
+ ff476209 + GSOutputTopology + GSOutputTopology +
+ + +

Geometry shader maximum output vertex count.

+
+ ff476209 + GSMaxOutputVertexCount + GSMaxOutputVertexCount +
+ + +

The -typed value that represents the input primitive for a geometry shader or hull shader.

+
+ ff476209 + InputPrimitive + InputPrimitive +
+ + +

Number of parameters in the patch-constant signature.

+
+ ff476209 + PatchConstantParameters + PatchConstantParameters +
+ + +

Number of geometry shader instances.

+
+ ff476209 + cGSInstanceCount + cGSInstanceCount +
+ + +

Number of control points in the hull shader and domain shader.

+
+ ff476209 + cControlPoints + cControlPoints +
+ + +

The -typed value that represents the tessellator output-primitive type.

+
+ ff476209 + HSOutputPrimitive + HSOutputPrimitive +
+ + +

The -typed value that represents the tessellator partitioning mode.

+
+ ff476209 + HSPartitioning + HSPartitioning +
+ + +

The -typed value that represents the tessellator domain.

+
+ ff476209 + TessellatorDomain + TessellatorDomain +
+ + +

Number of barrier instructions in a compute shader.

+
+ ff476209 + cBarrierInstructions + cBarrierInstructions +
+ + +

Number of interlocked instructions in a compute shader.

+
+ ff476209 + cInterlockedInstructions + cInterlockedInstructions +
+ + +

Number of texture writes in a compute shader.

+
+ ff476209 + cTextureStoreInstructions + cTextureStoreInstructions +
+ + +

Describes a shader signature.

+
+ +

A shader can take n inputs and can produce m outputs. The order of the input (or output) parameters, their associated types, and any attached semantics make up the shader signature. Each shader has an input and an output signature.

When compiling a shader or an effect, some API calls validate shader signatures That is, they compare the output signature of one shader (like a vertex shader) with the input signature of another shader (like a pixel shader). This ensures that a shader outputs data that is compatible with a downstream shader that is consuming that data. Compatible means that a shader signature is a exact-match subset of the preceding shader stage. Exact match means parameter types and semantics must exactly match. Subset means that a parameter that is not required by a downstream stage, does not need to include that parameter in its shader signature.

Get a shader-signature from a shader or an effect by calling APIs such as ID3D11ShaderReflection::GetInputParameterDesc.

+
+ ff476215 + D3D11_SIGNATURE_PARAMETER_DESC + D3D11_SIGNATURE_PARAMETER_DESC +
+ + +

A per-parameter string that identifies how the data will be used. For more info, see Semantics.

+
+ ff476215 + SemanticName + SemanticName +
+ + +

Semantic index that modifies the semantic. Used to differentiate different parameters that use the same semantic.

+
+ ff476215 + SemanticIndex + SemanticIndex +
+ + +

The register that will contain this variable's data.

+
+ ff476215 + Register + Register +
+ + +

A -typed value that identifies a predefined string that determines the functionality of certain pipeline stages.

+
+ ff476215 + SystemValueType + SystemValueType +
+ + +

A -typed value that identifies the per-component-data type that is stored in a register. Each register can store up to four-components of data.

+
+ ff476215 + ComponentType + ComponentType +
+ + +

Mask which indicates which components of a register are used.

+
+ ff476215 + Mask + Mask +
+ + +

Mask which indicates whether a given component is never written (if the signature is an output signature) or always read (if the signature is an input signature).

+
+ ff476215 + ReadWriteMask + ReadWriteMask +
+ + +

Indicates which stream the geometry shader is using for the signature parameter.

+
+ ff476215 + Stream + Stream +
+ + +

A -typed value that indicates the minimum desired interpolation precision. For more info, see Using HLSL minimum precision.

+
+ ff476215 + MinPrecision + MinPrecision +
+ + +

Describes a shader-variable type.

+
+ +

Get a shader-variable-type description by calling ID3D11ShaderReflectionType::GetDesc.

+
+ ff476212 + D3D11_SHADER_TYPE_DESC + D3D11_SHADER_TYPE_DESC +
+ + +

A -typed value that identifies the variable class as one of scalar, vector, matrix, object, and so on.

+
+ ff476212 + Class + Class +
+ + +

A -typed value that identifies the variable type.

+
+ ff476212 + Type + Type +
+ + +

Number of rows in a matrix. Otherwise a numeric type returns 1, any other type returns 0.

+
+ ff476212 + Rows + Rows +
+ + +

Number of columns in a matrix. Otherwise a numeric type returns 1, any other type returns 0.

+
+ ff476212 + Columns + Columns +
+ + +

Number of elements in an array; otherwise 0.

+
+ ff476212 + Elements + Elements +
+ + +

Number of members in the structure; otherwise 0.

+
+ ff476212 + Members + Members +
+ + +

Offset, in bytes, between the start of the parent structure and this variable. Can be 0 if not a structure member.

+
+ ff476212 + Offset + Offset +
+ + +

Name of the shader-variable type. This member can be null if it isn't used. This member supports dynamic shader linkage interface types, which have names. For more info about dynamic shader linkage, see Dynamic Linking.

+
+ ff476212 + Name + Name +
+ + +

Describes a shader variable.

+
+ +

Get a shader-variable description using reflection by calling ID3D11ShaderReflectionVariable::GetDesc.

As of the June 2010 update, DefaultValue emits default values for reflection.

+
+ ff476213 + D3D11_SHADER_VARIABLE_DESC + D3D11_SHADER_VARIABLE_DESC +
+ + +

The variable name.

+
+ ff476213 + Name + Name +
+ + +

Offset from the start of the parent structure to the beginning of the variable.

+
+ ff476213 + StartOffset + StartOffset +
+ + +

Size of the variable (in bytes).

+
+ ff476213 + Size + Size +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value identifies shader-variable properties.

+
+ ff476213 + uFlags + uFlags +
+ + +

The default value for initializing the variable.

+
+ ff476213 + DefaultValue + DefaultValue +
+ + +

Offset from the start of the variable to the beginning of the texture.

+
+ ff476213 + StartTexture + StartTexture +
+ + +

The size of the texture, in bytes.

+
+ ff476213 + TextureSize + TextureSize +
+ + +

Offset from the start of the variable to the beginning of the sampler.

+
+ ff476213 + StartSampler + StartSampler +
+ + +

The size of the sampler, in bytes.

+
+ ff476213 + SamplerSize + SamplerSize +
+
+
diff --git a/CarConverter/bin/Release/SharpDX.DXGI.dll b/CarConverter/bin/Release/SharpDX.DXGI.dll new file mode 100644 index 0000000..8a4f50a Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.DXGI.dll differ diff --git a/CarConverter/bin/Release/SharpDX.DXGI.pdb b/CarConverter/bin/Release/SharpDX.DXGI.pdb new file mode 100644 index 0000000..2b3a749 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.DXGI.pdb differ diff --git a/CarConverter/bin/Release/SharpDX.DXGI.xml b/CarConverter/bin/Release/SharpDX.DXGI.xml new file mode 100644 index 0000000..7b4cd9c --- /dev/null +++ b/CarConverter/bin/Release/SharpDX.DXGI.xml @@ -0,0 +1,8737 @@ + + + + SharpDX.DXGI + + + + + Gets all outputs from this adapter. + + bb174525 + HRESULT IDXGIAdapter::EnumOutputs([In] unsigned int Output,[Out] IDXGIOutput** ppOutput) + IDXGIAdapter::EnumOutputs + + + + Checks to see if a device interface for a graphics component is supported by the system. + + The GUID of the interface of the device version for which support is being checked. For example, typeof(ID3D10Device).GUID. + + true if the interface is supported; otherwise, false. + + Bb174524 + HRESULT IDXGIAdapter::CheckInterfaceSupport([In] const GUID& InterfaceName,[Out] LARGE_INTEGER* pUMDVersion) + IDXGIAdapter::CheckInterfaceSupport + + + + Checks to see if a device interface for a graphics component is supported by the system. + + the interface of the device version for which support is being checked. + + true if the interface is supported; otherwise, false. + + Bb174524 + HRESULT IDXGIAdapter::CheckInterfaceSupport([In] const GUID& InterfaceName,[Out] LARGE_INTEGER* pUMDVersion) + IDXGIAdapter::CheckInterfaceSupport + + + + Checks to see if a device interface for a graphics component is supported by the system. + + the interface of the device version for which support is being checked. + The user mode driver version of InterfaceName. This is only returned if the interface is supported. + + true if the interface is supported; otherwise, false. + + Bb174524 + HRESULT IDXGIAdapter::CheckInterfaceSupport([In] const GUID& InterfaceName,[Out] LARGE_INTEGER* pUMDVersion) + IDXGIAdapter::CheckInterfaceSupport + + + + Checks to see if a device interface for a graphics component is supported by the system. + + The GUID of the interface of the device version for which support is being checked. For example, typeof(ID3D10Device).GUID. + The user mode driver version of InterfaceName. This is only returned if the interface is supported. + + true if the interface is supported; otherwise, false. + + Bb174524 + HRESULT IDXGIAdapter::CheckInterfaceSupport([In] const GUID& InterfaceName,[Out] LARGE_INTEGER* pUMDVersion) + IDXGIAdapter::CheckInterfaceSupport + + + + Gets an adapter (video card) outputs. + + The index of the output. + + An instance of + + HRESULT IDXGIAdapter::EnumOutputs([In] unsigned int Output,[Out] IDXGIOutput** ppOutput) + + When the EnumOutputs method succeeds and fills the ppOutput parameter with the address of the reference to the output interface, EnumOutputs increments the output interface's reference count. To avoid a memory leak, when you finish using the output interface, call the Release method to decrement the reference count.EnumOutputs first returns the output on which the desktop primary is displayed. This adapter corresponds with an index of zero. EnumOutputs then returns other outputs. + + if the index is greater than the number of outputs, result code + bb174525 + HRESULT IDXGIAdapter::EnumOutputs([In] unsigned int Output,[Out] IDXGIOutput** ppOutput) + IDXGIAdapter::EnumOutputs + + + + Return the number of available outputs from this adapter. + + The number of outputs + bb174525 + HRESULT IDXGIAdapter::EnumOutputs([In] unsigned int Output,[Out] IDXGIOutput** ppOutput) + IDXGIAdapter::EnumOutputs + + + +

Gets a DXGI 1.0 description of an adapter (or video card).

+
+ +

Graphics apps can use the DXGI API to retrieve an accurate set of graphics memory values on systems that have Windows Display Driver Model (WDDM) drivers. The following are the critical steps involved.

  • Graphics driver model determination ? Because DXGI is only available on systems with WDDM drivers, the app must first confirm the driver model by using the following API.
     HasWDDMDriver()
    +            { LPDIRECT3DCREATE9EX pD3D9Create9Ex = null; HMODULE             hD3D9          = null; hD3D9 = LoadLibrary( L"d3d9.dll" ); if ( null == hD3D9 ) { return false; } // /*  Try to create IDirect3D9Ex interface (also known as a DX9L interface). This interface can only be created if the driver is a WDDM driver. */ // pD3D9Create9Ex = (LPDIRECT3DCREATE9EX) GetProcAddress( hD3D9, "Direct3DCreate9Ex" ); return pD3D9Create9Ex != null;
    +            } 
  • Retrieval of graphics memory values.? After the app determines the driver model to be WDDM, the app can use the Direct3D 10 or later API and DXGI to get the amount of graphics memory. After you create a Direct3D device, use this code to obtain a structure that contains the amount of available graphics memory.
      * pDXGIDevice;
    +            hr = g_pd3dDevice->QueryInterface(__uuidof(), (void **)&pDXGIDevice);
    +             * pDXGIAdapter;
    +            pDXGIDevice->GetAdapter(&pDXGIAdapter);
    +             adapterDesc;
    +            pDXGIAdapter->GetDesc(&adapterDesc); 
+
+ bb174526 + GetDesc + GetDesc +
+ + +

Enumerate adapter (video card) outputs.

+
+

The index of the output.

+

The address of a reference to an interface at the position specified by the Output parameter.

+

A code that indicates success or failure (see DXGI_ERROR). is returned if the index is greater than the number of outputs.

If the adapter came from a device created using D3D_DRIVER_TYPE_WARP, then the adapter has no outputs, so is returned.

+ + Note??If you call this API in a Session 0 process, it returns .?

When the EnumOutputs method succeeds and fills the ppOutput parameter with the address of the reference to the output interface, EnumOutputs increments the output interface's reference count. To avoid a memory leak, when you finish using the output interface, call the Release method to decrement the reference count.

EnumOutputs first returns the output on which the desktop primary is displayed. This output corresponds with an index of zero. EnumOutputs then returns other outputs.

+
+ bb174525 + HRESULT IDXGIAdapter::EnumOutputs([In] unsigned int Output,[Out] IDXGIOutput** ppOutput) + IDXGIAdapter::EnumOutputs +
+ + +

Gets a DXGI 1.0 description of an adapter (or video card).

+
+

A reference to a structure that describes the adapter. This parameter must not be null. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID in the VendorId, DeviceId, SubSysId, and Revision members of and ?Software Adapter? for the description string in the Description member.

+

Returns if successful; otherwise returns E_INVALIDARG if the pDesc parameter is null.

+ +

Graphics apps can use the DXGI API to retrieve an accurate set of graphics memory values on systems that have Windows Display Driver Model (WDDM) drivers. The following are the critical steps involved.

  • Graphics driver model determination ? Because DXGI is only available on systems with WDDM drivers, the app must first confirm the driver model by using the following API.
     HasWDDMDriver()
    +            { LPDIRECT3DCREATE9EX pD3D9Create9Ex = null; HMODULE             hD3D9          = null; hD3D9 = LoadLibrary( L"d3d9.dll" ); if ( null == hD3D9 ) { return false; } // /*  Try to create IDirect3D9Ex interface (also known as a DX9L interface). This interface can only be created if the driver is a WDDM driver. */ // pD3D9Create9Ex = (LPDIRECT3DCREATE9EX) GetProcAddress( hD3D9, "Direct3DCreate9Ex" ); return pD3D9Create9Ex != null;
    +            } 
  • Retrieval of graphics memory values.? After the app determines the driver model to be WDDM, the app can use the Direct3D 10 or later API and DXGI to get the amount of graphics memory. After you create a Direct3D device, use this code to obtain a structure that contains the amount of available graphics memory.
      * pDXGIDevice;
    +            hr = g_pd3dDevice->QueryInterface(__uuidof(), (void **)&pDXGIDevice);
    +             * pDXGIAdapter;
    +            pDXGIDevice->GetAdapter(&pDXGIAdapter);
    +             adapterDesc;
    +            pDXGIAdapter->GetDesc(&adapterDesc); 
+
+ bb174526 + HRESULT IDXGIAdapter::GetDesc([Out] DXGI_ADAPTER_DESC* pDesc) + IDXGIAdapter::GetDesc +
+ + +

Checks whether the system supports a device interface for a graphics component.

+
+

The of the interface of the device version for which support is being checked. For example, __uuidof(ID3D10Device).

+

The user mode driver version of InterfaceName. This is returned only if the interface is supported, otherwise this parameter will be null.

+

indicates that the interface is supported, otherwise is returned (For more information, see DXGI_ERROR).

+ + Note??You can use CheckInterfaceSupport only to check whether a Direct3D 10.x interface is supported, and only on Windows Vista SP1 and later versions of the operating system. If you try to use CheckInterfaceSupport to check whether a Direct3D 11.x and later version interface is supported, CheckInterfaceSupport returns . Therefore, do not use CheckInterfaceSupport. Instead, to verify whether the operating system supports a particular interface, try to create the interface. For example, if you call the ID3D11Device::CreateBlendState method and it fails, the operating system does not support the interface.? + + bb174524 + HRESULT IDXGIAdapter::CheckInterfaceSupport([In] const GUID& InterfaceName,[Out] LARGE_INTEGER* pUMDVersion) + IDXGIAdapter::CheckInterfaceSupport +
+ + + The assembly provides managed DXGI API. + + hh404534 + DXGI + DXGI + + + + Gets the residency status of an array of resources. + + + The information returned by the pResidencyStatus argument array describes the residency status at the time that the QueryResourceResidency method was called. Note that the residency status will constantly change. If you call the QueryResourceResidency method during a device removed state, the pResidencyStatus argument will return the DXGI_RESIDENCY_EVICTED_TO_DISK flag. Note??This method should not be called every frame as it incurs a non-trivial amount of overhead. + + An array of interfaces. + Returns an array of flags. Each element describes the residency status for corresponding element in the ppResources argument array. + HRESULT IDXGIDevice::QueryResourceResidency([In, Buffer] const IUnknown** ppResources,[Out, Buffer] DXGI_RESIDENCY* pResidencyStatus,[None] int NumResources) + + + +

Returns the adapter for the specified device.

+
+ +

If the GetAdapter method succeeds, the reference count on the adapter interface will be incremented. To avoid a memory leak, be sure to release the interface when you are finished using it.

+
+ bb174531 + GetAdapter + GetAdapter +
+ + +

Gets or sets the GPU thread priority.

+
+ bb174532 + GetGPUThreadPriority / SetGPUThreadPriority + GetGPUThreadPriority +
+ + +

Returns the adapter for the specified device.

+
+

The address of an interface reference to the adapter. This parameter must not be null.

+

Returns if successful; otherwise, returns one of the DXGI_ERROR that indicates failure. If the pAdapter parameter is null this method returns E_INVALIDARG.

+ +

If the GetAdapter method succeeds, the reference count on the adapter interface will be incremented. To avoid a memory leak, be sure to release the interface when you are finished using it.

+
+ bb174531 + HRESULT IDXGIDevice::GetAdapter([Out] IDXGIAdapter** pAdapter) + IDXGIDevice::GetAdapter +
+ + +

Returns a surface. This method is used internally and you should not call it directly in your application.

+
+

A reference to a structure that describes the surface.

+

The number of surfaces to create.

+

A DXGI_USAGE flag that specifies how the surface is expected to be used.

+

An optional reference to a structure that contains shared resource information for opening views of such resources.

+

The address of an interface reference to the first created surface.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

The CreateSurface method creates a buffer to exchange data between one or more devices. It is used internally, and you should not directly call it.

The runtime automatically creates an interface when it creates a Direct3D resource object that represents a surface. For example, the runtime creates an interface when it calls ID3D11Device::CreateTexture2D or ID3D10Device::CreateTexture2D to create a 2D texture. To retrieve the interface that represents the 2D texture surface, call ID3D11Texture2D::QueryInterface or ID3D10Texture2D::QueryInterface. In this call, you must pass the identifier of . If the 2D texture has only a single MIP-map level and does not consist of an array of textures, QueryInterface succeeds and returns a reference to the interface reference. Otherwise, QueryInterface fails and does not return the reference to . +

+
+ bb174530 + HRESULT IDXGIDevice::CreateSurface([In] const DXGI_SURFACE_DESC* pDesc,[In] unsigned int NumSurfaces,[In] unsigned int Usage,[In, Optional] const DXGI_SHARED_RESOURCE* pSharedResource,[Out] IDXGISurface** ppSurface) + IDXGIDevice::CreateSurface +
+ + +

Gets the residency status of an array of resources.

+
+

An array of interfaces.

+

An array of flags. Each element describes the residency status for corresponding element in the ppResources argument array.

+

The number of resources in the ppResources argument array and pResidencyStatus argument array.

+

Returns if successful; otherwise, returns , E_INVALIDARG, or E_POINTER (see Common Values and WinError.h for more information).

+ +

The information returned by the pResidencyStatus argument array describes the residency status at the time that the QueryResourceResidency method was called.

Note??The residency status will constantly change.?

If you call the QueryResourceResidency method during a device removed state, the pResidencyStatus argument will return the DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY flag.

Note??This method should not be called every frame as it incurs a non-trivial amount of overhead.? +
+ bb174533 + HRESULT IDXGIDevice::QueryResourceResidency([In, Buffer] const IUnknown** ppResources,[Out, Buffer] DXGI_RESIDENCY* pResidencyStatus,[In] unsigned int NumResources) + IDXGIDevice::QueryResourceResidency +
+ + +

Sets the GPU thread priority.

+
+

A value that specifies the required GPU thread priority. This value must be between -7 and 7, inclusive, where 0 represents normal priority.

+

Return if successful; otherwise, returns E_INVALIDARG if the Priority parameter is invalid.

+ +

The values for the Priority parameter function as follows:

  • Positive values increase the likelihood that the GPU scheduler will grant GPU execution cycles to the device when rendering.
  • Negative values lessen the likelihood that the device will receive GPU execution cycles when devices compete for them.
  • The device is guaranteed to receive some GPU execution cycles at all settings.

To use the SetGPUThreadPriority method, you should have a comprehensive understanding of GPU scheduling. You should profile your application to ensure that it behaves as intended. If used inappropriately, the SetGPUThreadPriority method can impede rendering speed and result in a poor user experience.

+
+ bb174534 + HRESULT IDXGIDevice::SetGPUThreadPriority([In] int Priority) + IDXGIDevice::SetGPUThreadPriority +
+ + +

Gets the GPU thread priority.

+
+

A reference to a variable that receives a value that indicates the current GPU thread priority. The value will be between -7 and 7, inclusive, where 0 represents normal priority.

+

Return if successful; otherwise, returns E_POINTER if the pPriority parameter is null.

+ bb174532 + HRESULT IDXGIDevice::GetGPUThreadPriority([Out] int* pPriority) + IDXGIDevice::GetGPUThreadPriority +
+ + + Retrieves the device. + + The interface that is returned can be any interface published by the device. + The associated device. + HRESULT IDXGIDeviceSubObject::GetDevice([In] GUID* riid,[Out] void** ppDevice) + + + + Gets or sets the debug-name for this object. + + + The debug name. + + + + +

Retrieves the device.

+
+

The reference id for the device.

+

The address of a reference to the device.

+

A code that indicates success or failure (see DXGI_ERROR).

+ +

The type of interface that is returned can be any interface published by the device. For example, it could be an * called pDevice, and therefore the REFIID would be obtained by calling __uuidof(pDevice).

+
+ bb174529 + HRESULT IDXGIDeviceSubObject::GetDevice([In] const GUID& riid,[Out] void** ppDevice) + IDXGIDeviceSubObject::GetDevice +
+ + + If the DXGI debug layer is installed (e.g. on developer machines), creates the DXGI Debug object. + Otherwise, returns null. + + + Currently doesn't work for Windows Store (aka UWP) apps + + + + +

Reports info about the lifetime of an object or objects.

+
+

The globally unique identifier () of the object or objects to get info about. Use one of the DXGI_DEBUG_ID GUIDs.

+

A -typed value that specifies the amount of info to report.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780352 + HRESULT IDXGIDebug::ReportLiveObjects([In] GUID apiid,[In] DXGI_DEBUG_RLO_FLAGS flags) + IDXGIDebug::ReportLiveObjects +
+ + + If the DXGI debug layer is installed (e.g. on developer machines), creates the DXGI Debug1 object. + Otherwise, returns null. + + + Currently doesn't work for Windows Store (aka UWP) apps + + + + + No documentation. + + IsLeakTrackingEnabledForThread + IsLeakTrackingEnabledForThread + + + + No documentation. + + void IDXGIDebug1::EnableLeakTrackingForThread() + IDXGIDebug1::EnableLeakTrackingForThread + + + + No documentation. + + void IDXGIDebug1::DisableLeakTrackingForThread() + IDXGIDebug1::DisableLeakTrackingForThread + + + + No documentation. + + No documentation. + BOOL IDXGIDebug1::IsLeakTrackingEnabledForThread() + IDXGIDebug1::IsLeakTrackingEnabledForThread + + + + Gets the parent of the object. + + Type of the parent object + Returns the parent object based on the GUID of the type of the parent object. + bb174542 + HRESULT IDXGIObject::GetParent([In] const GUID& riid,[Out] void** ppParent) + IDXGIObject::GetParent + + + +

Sets application-defined data to the object and associates that data with a .

+
+

A that identifies the data. Use this in a call to GetPrivateData to get the data.

+

The size of the object's data.

+

A reference to the object's data.

+

Returns one of the DXGI_ERROR values.

+ +

SetPrivateData makes a copy of the specified data and stores it with the object.

Private data that SetPrivateData stores in the object occupies the same storage space as private data that is stored by associated Direct3D objects (for example, by a Microsoft Direct3D?11 device through ID3D11Device::SetPrivateData or by a Direct3D?11 child device through ID3D11DeviceChild::SetPrivateData).

The debug layer reports memory leaks by outputting a list of object interface references along with their friendly names. The default friendly name is "<unnamed>". You can set the friendly name so that you can determine if the corresponding object interface reference caused the leak. To set the friendly name, use the SetPrivateData method and the well-known private data () that is in D3Dcommon.h. For example, to give pContext a friendly name of My name, use the following code:

 static const char c_szName[] = "My name";
+            hr = pContext->SetPrivateData( , sizeof( c_szName ) - 1, c_szName );
+            

You can use to track down memory leaks and understand performance characteristics of your applications. This information is reflected in the output of the debug layer that is related to memory leaks (ID3D11Debug::ReportLiveDeviceObjects) and with the event tracing for Windows events that we've added to Windows?8. +

+
+ bb174544 + HRESULT IDXGIObject::SetPrivateData([In] const GUID& Name,[In] unsigned int DataSize,[In, Buffer] const void* pData) + IDXGIObject::SetPrivateData +
+ + +

Set an interface in the object's private data.

+
+

A identifying the interface.

+

The interface to set.

+

Returns one of the following DXGI_ERROR.

+ +

This API associates an interface reference with the object.

When the interface is set its reference count is incremented. When the data are overwritten (by calling SPD or SPDI with the same ) or the object is destroyed, ::Release() is called and the interface's reference count is decremented.

+
+ bb174545 + HRESULT IDXGIObject::SetPrivateDataInterface([In] const GUID& Name,[In, Optional] const IUnknown* pUnknown) + IDXGIObject::SetPrivateDataInterface +
+ + +

Get a reference to the object's data.

+
+

A identifying the data.

+

The size of the data.

+

Pointer to the data.

+

Returns one of the following DXGI_ERROR.

+ +

If the data returned is a reference to an , or one of its derivative classes, previously set by IDXGIObject::SetPrivateDataInterface, you must call ::Release() on the reference before the reference is freed to decrement the reference count.

You can pass GUID_DeviceType in the Name parameter of GetPrivateData to retrieve the device type from the display adapter object (, , ).

To get the type of device on which the display adapter was created

  1. Call IUnknown::QueryInterface on the or ID3D10Device object to retrieve the object.
  2. Call GetParent on the object to retrieve the object.
  3. Call GetPrivateData on the object with GUID_DeviceType to retrieve the type of device on which the display adapter was created. pData will point to a value from the driver-type enumeration (for example, a value from ).

On Windows?7 or earlier, this type is either a value from D3D10_DRIVER_TYPE or depending on which kind of device was created. On Windows?8, this type is always a value from . Don't use IDXGIObject::SetPrivateData with GUID_DeviceType because the behavior when doing so is undefined.

+
+ bb174543 + HRESULT IDXGIObject::GetPrivateData([In] const GUID& Name,[InOut] unsigned int* pDataSize,[Out, Buffer] void* pData) + IDXGIObject::GetPrivateData +
+ + +

Gets the parent of the object.

+
+

The ID of the requested interface.

+

The address of a reference to the parent object.

+

Returns one of the DXGI_ERROR values.

+ bb174542 + HRESULT IDXGIObject::GetParent([In] const GUID& riid,[Out] void** ppParent) + IDXGIObject::GetParent +
+ + + Gets both adapters (video cards) with or without outputs. + + The index of the adapter to enumerate. + a reference to an interface at the position specified by the Adapter parameter + + When you create a factory, the factory enumerates the set of adapters that are available in the system. Therefore, if you change the adapters in a system, you must destroy and recreate the object. The number of adapters in a system changes when you add or remove a display card, or dock or undock a laptop.When the EnumAdapters method succeeds and fills the ppAdapter parameter with the address of the reference to the adapter interface, EnumAdapters increments the adapter interface's reference count. When you finish using the adapter interface, call the Release method to decrement the reference count before you destroy the reference.EnumAdapters first returns the local adapter with the output on which the desktop primary is displayed. This adapter corresponds with an index of zero. EnumAdapters then returns other adapters with outputs. + + HRESULT IDXGIFactory::EnumAdapters([In] unsigned int Adapter,[Out] IDXGIAdapter** ppAdapter) + + + + Return an array of available from this factory. + + HRESULT IDXGIFactory::EnumAdapters([In] unsigned int Adapter,[Out] IDXGIAdapter** ppAdapter) + + + + Return the number of available adapters from this factory. + + The number of adapters + HRESULT IDXGIFactory::EnumAdapters([In] unsigned int Adapter,[Out] IDXGIAdapter** ppAdapter) + + + +

Enumerates the adapters (video cards).

+
+

The index of the adapter to enumerate.

+

The address of a reference to an interface at the position specified by the Adapter parameter. This parameter must not be null.

+

Returns if successful; otherwise, returns if the index is greater than or equal to the number of adapters in the local system, or if ppAdapter parameter is null.

+ +

When you create a factory, the factory enumerates the set of adapters that are available in the system. Therefore, if you change the adapters in a system, you must destroy and recreate the object. The number of adapters in a system changes when you add or remove a display card, or dock or undock a laptop.

When the EnumAdapters method succeeds and fills the ppAdapter parameter with the address of the reference to the adapter interface, EnumAdapters increments the adapter interface's reference count. When you finish using the adapter interface, call the Release method to decrement the reference count before you destroy the reference.

EnumAdapters first returns the adapter with the output on which the desktop primary is displayed. This adapter corresponds with an index of zero. EnumAdapters next returns other adapters with outputs. EnumAdapters finally returns adapters without outputs.

+
+ bb174538 + HRESULT IDXGIFactory::EnumAdapters([In] unsigned int Adapter,[Out] IDXGIAdapter** ppAdapter) + IDXGIFactory::EnumAdapters +
+ + +

Allows DXGI to monitor an application's message queue for the alt-enter key sequence (which causes the application to switch from windowed to full screen or vice versa).

+
+

The handle of the window that is to be monitored. This parameter can be null; but only if the flags are also 0.

+

One or more of the following values:

  • DXGI_MWA_NO_WINDOW_CHANGES - Prevent DXGI from monitoring an applications message queue; this makes DXGI unable to respond to mode changes.
  • DXGI_MWA_NO_ALT_ENTER - Prevent DXGI from responding to an alt-enter sequence.
  • DXGI_MWA_NO_PRINT_SCREEN - Prevent DXGI from responding to a print-screen key.
+

if WindowHandle is invalid, or E_OUTOFMEMORY.

+ + Note??If you call this API in a Session 0 process, it returns .?

The combination of WindowHandle and Flags informs DXGI to stop monitoring window messages for the previously-associated window.

If the application switches to full-screen mode, DXGI will choose a full-screen resolution to be the smallest supported resolution that is larger or the same size as the current back buffer size.

Applications can make some changes to make the transition from windowed to full screen more efficient. For example, on a WM_SIZE message, the application should release any outstanding swap-chain back buffers, call IDXGISwapChain::ResizeBuffers, then re-acquire the back buffers from the swap chain(s). This gives the swap chain(s) an opportunity to resize the back buffers, and/or recreate them to enable full-screen flipping operation. If the application does not perform this sequence, DXGI will still make the full-screen/windowed transition, but may be forced to use a stretch operation (since the back buffers may not be the correct size), which may be less efficient. Even if a stretch is not required, presentation may not be optimal because the back buffers might not be directly interchangeable with the front buffer. Thus, a call to ResizeBuffers on WM_SIZE is always recommended, since WM_SIZE is always sent during a fullscreen transition.

While windowed, the application can, if it chooses, restrict the size of its window's client area to sizes to which it is comfortable rendering. A fully flexible application would make no such restriction, but UI elements or other design considerations can, of course, make this flexibility untenable. If the application further chooses to restrict its window's client area to just those that match supported full-screen resolutions, the application can field WM_SIZING, then check against IDXGIOutput::FindClosestMatchingMode. If a matching mode is found, allow the resize. (The can be retrieved from IDXGISwapChain::GetContainingOutput. Absent subsequent changes to desktop topology, this will be the same output that will be chosen when alt-enter is fielded and fullscreen mode is begun for that swap chain.)

Applications that want to handle mode changes or Alt+Enter themselves should call MakeWindowAssociation with the DXGI_MWA_NO_WINDOW_CHANGES flag after swap chain creation. The WindowHandle argument, if non-null, specifies that the application message queues will not be handled by the DXGI runtime for all swap chains of a particular target . Calling MakeWindowAssociation with the DXGI_MWA_NO_WINDOW_CHANGES flag after swapchain creation ensures that DXGI will not interfere with application's handling of window mode changes or Alt+Enter.

+
+ bb174540 + HRESULT IDXGIFactory::MakeWindowAssociation([In] HWND WindowHandle,[In] unsigned int Flags) + IDXGIFactory::MakeWindowAssociation +
+ + +

Get the window through which the user controls the transition to and from full screen.

+
+

A reference to a window handle.

+ + Note??If you call this API in a Session 0 process, it returns .? + + bb174539 + HRESULT IDXGIFactory::GetWindowAssociation([Out] HWND* pWindowHandle) + IDXGIFactory::GetWindowAssociation +
+ + +

[Starting with Direct3D 11.1, we recommend not to use CreateSwapChain anymore to create a swap chain. Instead, use CreateSwapChainForHwnd, CreateSwapChainForCoreWindow, or CreateSwapChainForComposition depending on how you want to create the swap chain.]

Creates a swap chain.

+
+ No documentation. + No documentation. + No documentation. +

if pDesc or ppSwapChain is null, DXGI_STATUS_OCCLUDED if you request full-screen mode and it is unavailable, or E_OUTOFMEMORY. Other error codes defined by the type of device passed in may also be returned.

+ + Note??If you call this API in a Session 0 process, it returns .?

If you attempt to create a swap chain in full-screen mode, and full-screen mode is unavailable, the swap chain will be created in windowed mode and DXGI_STATUS_OCCLUDED will be returned.

If the buffer width or the buffer height is zero, the sizes will be inferred from the output window size in the swap-chain description.

Because the target output can't be chosen explicitly when the swap chain is created, we recommend not to create a full-screen swap chain. This can reduce presentation performance if the swap chain size and the output window size do not match. Here are two ways to ensure that the sizes match:

  • Create a windowed swap chain and then set it full-screen using IDXGISwapChain::SetFullscreenState.
  • Save a reference to the swap chain immediately after creation, and use it to get the output window size during a WM_SIZE event. Then resize the swap chain buffers (with IDXGISwapChain::ResizeBuffers) during the transition from windowed to full-screen.

If the swap chain is in full-screen mode, before you release it you must use SetFullscreenState to switch it to windowed mode. For more information about releasing a swap chain, see the "Destroying a Swap Chain" section of DXGI Overview.

After the runtime renders the initial frame in full screen, the runtime might unexpectedly exit full screen during a call to IDXGISwapChain::Present. To work around this issue, we recommend that you execute the following code right after you call CreateSwapChain to create a full-screen swap chain (Windowed member of set to ). +

 // Detect if newly created full-screen swap chain isn't actually full screen.
+            * pTarget;  bFullscreen;
+            if (SUCCEEDED(pSwapChain->GetFullscreenState(&bFullscreen, &pTarget)))
+            { pTarget->Release();
+            }
+            else bFullscreen = ;
+            // If not full screen, enable full screen again.
+            if (!bFullscreen)
+            { ShowWindow(hWnd, SW_MINIMIZE); ShowWindow(hWnd, SW_RESTORE); pSwapChain->SetFullscreenState(TRUE, null);
+            }
+            

You can specify and values in the swap-chain description that pDesc points to. These values allow you to use features like flip-model presentation and content protection by using pre-Windows?8 APIs.

However, to use stereo presentation and to change resize behavior for the flip model, applications must use the IDXGIFactory2::CreateSwapChainForHwnd method. Otherwise, the back-buffer contents implicitly scale to fit the presentation target size; that is, you can't turn off scaling.

+
+ bb174537 + HRESULT IDXGIFactory::CreateSwapChain([In] IUnknown* pDevice,[In] DXGI_SWAP_CHAIN_DESC* pDesc,[Out, Fast] IDXGISwapChain** ppSwapChain) + IDXGIFactory::CreateSwapChain +
+ + +

Create an adapter interface that represents a software adapter.

+
+

Handle to the software adapter's dll. HMODULE can be obtained with GetModuleHandle or LoadLibrary.

+

Address of a reference to an adapter (see ).

+ +

A software adapter is a DLL that implements the entirety of a device driver interface, plus emulation, if necessary, of kernel-mode graphics components for Windows. Details on implementing a software adapter can be found in the Windows Vista Driver Development Kit. This is a very complex development task, and is not recommended for general readers.

Calling this method will increment the module's reference count by one. The reference count can be decremented by calling FreeLibrary.

The typical calling scenario is to call LoadLibrary, pass the handle to CreateSoftwareAdapter, then immediately call FreeLibrary on the DLL and forget the DLL's HMODULE. Since the software adapter calls FreeLibrary when it is destroyed, the lifetime of the DLL will now be owned by the adapter, and the application is free of any further consideration of its lifetime.

+
+ bb174536 + HRESULT IDXGIFactory::CreateSoftwareAdapter([In] HINSTANCE Module,[Out] IDXGIAdapter** ppAdapter) + IDXGIFactory::CreateSoftwareAdapter +
+ + + Default Constructor for Factory1. + + + + + Gets both adapters (video cards) with or without outputs. + + The index of the adapter to enumerate. + a reference to an interface at the position specified by the Adapter parameter + + This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).When you create a factory, the factory enumerates the set of adapters that are available in the system. Therefore, if you change the adapters in a system, you must destroy and recreate the object. The number of adapters in a system changes when you add or remove a display card, or dock or undock a laptop.When the EnumAdapters1 method succeeds and fills the ppAdapter parameter with the address of the reference to the adapter interface, EnumAdapters1 increments the adapter interface's reference count. When you finish using the adapter interface, call the Release method to decrement the reference count before you destroy the reference.EnumAdapters1 first returns the local adapter with the output on which the desktop primary is displayed. This adapter corresponds with an index of zero. EnumAdapters1 next returns other adapters with outputs. EnumAdapters1 finally returns adapters without outputs. + + HRESULT IDXGIFactory1::EnumAdapters1([In] unsigned int Adapter,[Out] IDXGIAdapter1** ppAdapter) + + + + Return an array of available from this factory. + + HRESULT IDXGIFactory1::EnumAdapters1([In] unsigned int Adapter,[Out] IDXGIAdapter1** ppAdapter) + + + + Return the number of available adapters from this factory. + + The number of adapters + HRESULT IDXGIFactory1::EnumAdapters1([In] unsigned int Adapter,[Out] IDXGIAdapter1** ppAdapter) + + + +

Informs an application of the possible need to re-enumerate adapters.

+
+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

+
+ ff471337 + IsCurrent + IsCurrent +
+ + +

Enumerates both adapters (video cards) with or without outputs.

+
+

The index of the adapter to enumerate.

+

The address of a reference to an interface at the position specified by the Adapter parameter. This parameter must not be null.

+

Returns if successful; otherwise, returns if the index is greater than or equal to the number of adapters in the local system, or if ppAdapter parameter is null.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

When you create a factory, the factory enumerates the set of adapters that are available in the system. Therefore, if you change the adapters in a system, you must destroy and recreate the object. The number of adapters in a system changes when you add or remove a display card, or dock or undock a laptop.

When the EnumAdapters1 method succeeds and fills the ppAdapter parameter with the address of the reference to the adapter interface, EnumAdapters1 increments the adapter interface's reference count. When you finish using the adapter interface, call the Release method to decrement the reference count before you destroy the reference.

EnumAdapters1 first returns the adapter with the output on which the desktop primary is displayed. This adapter corresponds with an index of zero. EnumAdapters1 next returns other adapters with outputs. EnumAdapters1 finally returns adapters without outputs.

+
+ ff471336 + HRESULT IDXGIFactory1::EnumAdapters1([In] unsigned int Adapter,[Out] IDXGIAdapter1** ppAdapter) + IDXGIFactory1::EnumAdapters1 +
+ + +

Informs an application of the possible need to re-enumerate adapters.

+
+

, if a new adapter is becoming available or the current adapter is going away. TRUE, no adapter changes.

IsCurrent returns to inform the calling application to re-enumerate adapters.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

+
+ ff471337 + BOOL IDXGIFactory1::IsCurrent() + IDXGIFactory1::IsCurrent +
+ + + Initializes a new instance of class. + + True - to set the DXGI_CREATE_FACTORY_DEBUG flag. + + + +

Determines whether to use stereo mode.

+
+ +

We recommend that windowed applications call IsWindowedStereoEnabled before they attempt to use stereo. IsWindowedStereoEnabled returns TRUE if both of the following items are true:

  • All adapters in the computer have drivers that are capable of stereo. This only means that the driver is implemented to the Windows Display Driver Model (WDDM) for Windows?8 (WDDM 1.2). However, the adapter does not necessarily have to be able to scan out stereo.
  • The current desktop mode (desktop modes are mono) and system policy and hardware are configured so that the Desktop Window Manager (DWM) performs stereo composition on at least one adapter output.

The creation of a windowed stereo swap chain succeeds if the first requirement is met. However, if the adapter can't scan out stereo, the output on that adapter is reduced to mono.

The Direct3D 11.1 Simple Stereo 3D Sample shows how to add a stereoscopic 3D effect and how to respond to system stereo changes.

+
+ hh404561 + IsWindowedStereoEnabled + IsWindowedStereoEnabled +
+ + +

Determines whether to use stereo mode.

+
+

Indicates whether to use stereo mode. TRUE indicates that you can use stereo mode; otherwise, .

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, IsWindowedStereoEnabled always returns because stereoscopic 3D display behavior isn?t available with the Platform Update for Windows?7. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

We recommend that windowed applications call IsWindowedStereoEnabled before they attempt to use stereo. IsWindowedStereoEnabled returns TRUE if both of the following items are true:

  • All adapters in the computer have drivers that are capable of stereo. This only means that the driver is implemented to the Windows Display Driver Model (WDDM) for Windows?8 (WDDM 1.2). However, the adapter does not necessarily have to be able to scan out stereo.
  • The current desktop mode (desktop modes are mono) and system policy and hardware are configured so that the Desktop Window Manager (DWM) performs stereo composition on at least one adapter output.

The creation of a windowed stereo swap chain succeeds if the first requirement is met. However, if the adapter can't scan out stereo, the output on that adapter is reduced to mono.

The Direct3D 11.1 Simple Stereo 3D Sample shows how to add a stereoscopic 3D effect and how to respond to system stereo changes.

+
+ hh404561 + BOOL IDXGIFactory2::IsWindowedStereoEnabled() + IDXGIFactory2::IsWindowedStereoEnabled +
+ + +

Creates a swap chain that is associated with an handle to the output window for the swap chain.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

CreateSwapChainForHwnd returns:

  • if it successfully created a swap chain.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if the calling application provided invalid data, for example, if pDesc or ppSwapChain is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic that are defined by the type of device that you pass to pDevice.

Platform Update for Windows?7:??DXGI_SCALING_NONE is not supported on Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed and causes CreateSwapChainForHwnd to return when called. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ + Note??Do not use this method in Windows Store apps. Instead, use IDXGIFactory2::CreateSwapChainForCoreWindow.?

If you specify the width, height, or both (Width and Height members of that pDesc points to) of the swap chain as zero, the runtime obtains the size from the output window that the hWnd parameter specifies. You can subsequently call the IDXGISwapChain1::GetDesc1 method to retrieve the assigned width or height value.

Because you can associate only one flip presentation model swap chain at a time with an , the Microsoft Direct3D?11 policy of deferring the destruction of objects can cause problems if you attempt to destroy a flip presentation model swap chain and replace it with another swap chain. For more info about this situation, see Deferred Destruction Issues with Flip Presentation Swap Chains.

For info about how to choose a format for the swap chain's back buffer, see Converting data for the color space.

+
+ hh404557 + HRESULT IDXGIFactory2::CreateSwapChainForHwnd([In] IUnknown* pDevice,[In] HWND hWnd,[In] const DXGI_SWAP_CHAIN_DESC1* pDesc,[In, Optional] const DXGI_SWAP_CHAIN_FULLSCREEN_DESC* pFullscreenDesc,[In, Optional] IDXGIOutput* pRestrictToOutput,[Out, Fast] IDXGISwapChain1** ppSwapChain) + IDXGIFactory2::CreateSwapChainForHwnd +
+ + +

Creates a swap chain that is associated with the CoreWindow object for the output window for the swap chain.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

CreateSwapChainForCoreWindow returns:

  • if it successfully created a swap chain.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if the calling application provided invalid data, for example, if pDesc or ppSwapChain is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic that are defined by the type of device that you pass to pDevice.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, CreateSwapChainForCoreWindow fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ + Note??Use this method in Windows Store apps rather than IDXGIFactory2::CreateSwapChainForHwnd.?

If you specify the width, height, or both (Width and Height members of that pDesc points to) of the swap chain as zero, the runtime obtains the size from the output window that the pWindow parameter specifies. You can subsequently call the IDXGISwapChain1::GetDesc1 method to retrieve the assigned width or height value.

Because you can associate only one flip presentation model swap chain (per layer) at a time with a CoreWindow, the Microsoft Direct3D?11 policy of deferring the destruction of objects can cause problems if you attempt to destroy a flip presentation model swap chain and replace it with another swap chain. For more info about this situation, see Deferred Destruction Issues with Flip Presentation Swap Chains.

For info about how to choose a format for the swap chain's back buffer, see Converting data for the color space.

+
+ hh404559 + HRESULT IDXGIFactory2::CreateSwapChainForCoreWindow([In] IUnknown* pDevice,[In] IUnknown* pWindow,[In] const DXGI_SWAP_CHAIN_DESC1* pDesc,[In, Optional] IDXGIOutput* pRestrictToOutput,[Out, Fast] IDXGISwapChain1** ppSwapChain) + IDXGIFactory2::CreateSwapChainForCoreWindow +
+ + +

Identifies the adapter on which a shared resource object was created.

+
+

A handle to a shared resource object. The IDXGIResource1::CreateSharedHandle method returns this handle.

+

A reference to a variable that receives a locally unique identifier () value that identifies the adapter. is defined in Dxgi.h. An is a 64-bit value that is guaranteed to be unique only on the operating system on which it was generated. The uniqueness of an is guaranteed only until the operating system is restarted.

+

GetSharedResourceAdapterLuid returns:

  • if it identified the adapter.
  • if hResource is invalid.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, GetSharedResourceAdapterLuid fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

You cannot share resources across adapters. Therefore, you cannot open a shared resource on an adapter other than the adapter on which the resource was created. Call GetSharedResourceAdapterLuid before you open a shared resource to ensure that the resource was created on the appropriate adapter. To open a shared resource, call the ID3D11Device1::OpenSharedResource1 or ID3D11Device1::OpenSharedResourceByName method.

+
+ hh404560 + HRESULT IDXGIFactory2::GetSharedResourceAdapterLuid([In] void* hResource,[Out] LUID* pLuid) + IDXGIFactory2::GetSharedResourceAdapterLuid +
+ + +

Registers an application window to receive notification messages of changes of stereo status.

+
+

The handle of the window to send a notification message to when stereo status change occurs.

+

Identifies the notification message to send.

+

A reference to a key value that an application can pass to the IDXGIFactory2::UnregisterStereoStatus method to unregister the notification message that wMsg specifies.

+

RegisterStereoStatusWindow returns:

  • if it successfully registered the window.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, RegisterStereoStatusWindow fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ hh404587 + HRESULT IDXGIFactory2::RegisterStereoStatusWindow([In] HWND WindowHandle,[In] unsigned int wMsg,[Out] DWORD* pdwCookie) + IDXGIFactory2::RegisterStereoStatusWindow +
+ + +

Registers to receive notification of changes in stereo status by using event signaling.

+
+

A handle to the event object that the operating system sets when notification of stereo status change occurs. The CreateEvent or OpenEvent function returns this handle.

+

A reference to a key value that an application can pass to the IDXGIFactory2::UnregisterStereoStatus method to unregister the notification event that hEvent specifies.

+

RegisterStereoStatusEvent returns:

  • if it successfully registered the event.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, RegisterStereoStatusEvent fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ hh404584 + HRESULT IDXGIFactory2::RegisterStereoStatusEvent([In] void* hEvent,[Out] DWORD* pdwCookie) + IDXGIFactory2::RegisterStereoStatusEvent +
+ + +

Unregisters a window or an event to stop it from receiving notification when stereo status changes.

+
+

A key value for the window or event to unregister. The IDXGIFactory2::RegisterStereoStatusWindow or IDXGIFactory2::RegisterStereoStatusEvent method returns this value.

+ +

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, UnregisterStereoStatus has no effect. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404593 + void IDXGIFactory2::UnregisterStereoStatus([In] DWORD dwCookie) + IDXGIFactory2::UnregisterStereoStatus +
+ + +

Registers an application window to receive notification messages of changes of occlusion status.

+
+

The handle of the window to send a notification message to when occlusion status change occurs.

+

Identifies the notification message to send.

+

A reference to a key value that an application can pass to the IDXGIFactory2::UnregisterOcclusionStatus method to unregister the notification message that wMsg specifies.

+

RegisterOcclusionStatusWindow returns:

  • if it successfully registered the window.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if WindowHandle is not a valid window handle or not the window handle that the current process owns.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, RegisterOcclusionStatusWindow fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

Apps choose the Windows message that Windows sends when occlusion status changes.

+
+ hh404581 + HRESULT IDXGIFactory2::RegisterOcclusionStatusWindow([In] HWND WindowHandle,[In] unsigned int wMsg,[Out] DWORD* pdwCookie) + IDXGIFactory2::RegisterOcclusionStatusWindow +
+ + +

Registers to receive notification of changes in occlusion status by using event signaling.

+
+

A handle to the event object that the operating system sets when notification of occlusion status change occurs. The CreateEvent or OpenEvent function returns this handle.

+

A reference to a key value that an application can pass to the IDXGIFactory2::UnregisterOcclusionStatus method to unregister the notification event that hEvent specifies.

+

RegisterOcclusionStatusEvent returns:

  • if the method successfully registered the event.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if hEvent is not a valid handle or not an event handle.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, RegisterOcclusionStatusEvent fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

If you call RegisterOcclusionStatusEvent multiple times with the same event handle, RegisterOcclusionStatusEvent fails with .

If you call RegisterOcclusionStatusEvent multiple times with the different event handles, RegisterOcclusionStatusEvent properly registers the events.

+
+ hh404578 + HRESULT IDXGIFactory2::RegisterOcclusionStatusEvent([In] void* hEvent,[Out] DWORD* pdwCookie) + IDXGIFactory2::RegisterOcclusionStatusEvent +
+ + +

Unregisters a window or an event to stop it from receiving notification when occlusion status changes.

+
+

A key value for the window or event to unregister. The IDXGIFactory2::RegisterOcclusionStatusWindow or IDXGIFactory2::RegisterOcclusionStatusEvent method returns this value.

+ +

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, UnregisterOcclusionStatus has no effect. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404590 + void IDXGIFactory2::UnregisterOcclusionStatus([In] DWORD dwCookie) + IDXGIFactory2::UnregisterOcclusionStatus +
+ + +

Creates a swap chain that you can use to send Direct3D content into the DirectComposition API or the Windows.UI.Xaml framework to compose in a window.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

CreateSwapChainForComposition returns:

  • if it successfully created a swap chain.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if the calling application provided invalid data, for example, if pDesc or ppSwapChain is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic that are defined by the type of device that you pass to pDevice.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, CreateSwapChainForComposition fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

You can use composition swap chains with either DirectComposition?s interface or XAML?s SwapChainBackgroundPanel class. For DirectComposition, you can call the IDCompositionVisual::SetContent method to set the swap chain as the content of a visual object, which then allows you to bind the swap chain to the visual tree. For XAML, the SwapChainBackgroundPanel class exposes a classic COM interface . You can use the ISwapChainBackgroundPanelNative::SetSwapChain method to bind to the XAML UI graph. For info about how to use composition swap chains with XAML?s SwapChainBackgroundPanel class, see DirectX and XAML interop.

The IDXGISwapChain::SetFullscreenState, IDXGISwapChain::ResizeTarget, IDXGISwapChain::GetContainingOutput, IDXGISwapChain1::GetHwnd, and IDXGISwapChain::GetCoreWindow methods aren't valid on this type of swap chain. If you call any of these methods on this type of swap chain, they fail.

For info about how to choose a format for the swap chain's back buffer, see Converting data for the color space.

+
+ hh404558 + HRESULT IDXGIFactory2::CreateSwapChainForComposition([In] IUnknown* pDevice,[In] const DXGI_SWAP_CHAIN_DESC1* pDesc,[In, Optional] IDXGIOutput* pRestrictToOutput,[Out, Fast] IDXGISwapChain1** ppSwapChain) + IDXGIFactory2::CreateSwapChainForComposition +
+ + + Initializes a new instance of class. + + + + + Gets the default warp adapter. + + The warp adapter. + + + + Gets the adapter for the specified LUID. + + A unique value that identifies the adapter. + The adapter. + + + +

Outputs the for the specified .

+
+ No documentation. + No documentation. + No documentation. +

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR. See also Direct3D 12 Return Codes.

+ +

For Direct3D 12, it's no longer possible to backtrack from a device to the that was used to create it. IDXGIFactory4::EnumAdapterByLuid enables an app to retrieve information about the adapter where a D3D12 device was created. IDXGIFactory4::EnumAdapterByLuid is designed to be paired with ID3D12Device::GetAdapterLuid. For more information, see DXGI 1.4 Improvements.

+
+ mt427786 + HRESULT IDXGIFactory4::EnumAdapterByLuid([In] LUID AdapterLuid,[In] const GUID& riid,[Out] void** ppvAdapter) + IDXGIFactory4::EnumAdapterByLuid +
+ + +

Provides an adapter which can be provided to D3D12CreateDevice to use the WARP renderer.

+
+

The globally unique identifier () of the object referenced by the ppvAdapter parameter.

+

The address of an interface reference to the adapter. This parameter must not be null.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR. See also Direct3D 12 Return Codes.

+ +

For more information, see DXGI 1.4 Improvements.

+
+ mt427787 + HRESULT IDXGIFactory4::EnumWarpAdapter([In] const GUID& riid,[Out] void** ppvAdapter) + IDXGIFactory4::EnumWarpAdapter +
+ + + Helper to use with . + + + + + Calculates the size of a in bytes. Can be 0 for compressed format (as they are less than 1 byte) + + The DXGI format. + size of in bytes + + + + Calculates the size of a in bits. + + The DXGI format. + size of in bits + + + + Returns true if the is valid. + + A format to validate + True if the is valid. + + + + Returns true if the is a compressed format. + + The format to check for compressed. + True if the is a compressed format + + + + Determines whether the specified is packed. + + The DXGI Format. + true if the specified is packed; otherwise, false. + + + + Determines whether the specified is video. + + The . + true if the specified is video; otherwise, false. + + + + Determines whether the specified is a SRGB format. + + The . + true if the specified is a SRGB format; otherwise, false. + + + + Determines whether the specified is typeless. + + The . + true if the specified is typeless; otherwise, false. + + + + Computes the scanline count (number of scanlines). + + The . + The height. + The scanline count. + + + + Static initializer to speed up size calculation (not sure the JIT is enough "smart" for this kind of thing). + + + + + If the DXGI debug layer is installed (e.g. on developer machines), creates the DXGI InfoQueue object. + Otherwise, returns null. + + + Currently doesn't work for Windows Store (aka UWP) apps + + + + +

Sets the maximum number of messages that can be added to the message queue.

+
+

A DXGI_DEBUG_ID value that identifies the entity that sets the limit on the number of messages.

+

The maximum number of messages that can be added to the queue. ?1 means no limit.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780391 + HRESULT IDXGIInfoQueue::SetMessageCountLimit([In] GUID Producer,[In] unsigned longlong MessageCountLimit) + IDXGIInfoQueue::SetMessageCountLimit +
+ + +

Clears all messages from the message queue.

+
+

A DXGI_DEBUG_ID value that identifies the entity that clears the messages.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780362 + void IDXGIInfoQueue::ClearStoredMessages([In] GUID Producer) + IDXGIInfoQueue::ClearStoredMessages +
+ + +

Gets a message from the message queue.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the message.

+

An index into the message queue after an optional retrieval filter has been applied. This can be between 0 and the number of messages in the message queue that pass through the retrieval filter. Call IDXGIInfoQueue::GetNumStoredMessagesAllowedByRetrievalFilters to obtain this number. 0 is the message at the beginning of the message queue.

+

A reference to a structure that describes the message.

+

A reference to a variable that receives the size, in bytes, of the message description that pMessage points to. This size includes the size of the message string that pMessage points to.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

This method doesn't remove any messages from the message queue.

This method gets a message from the message queue after an optional retrieval filter has been applied.

Call this method twice to retrieve a message, first to obtain the size of the message and second to get the message. Here is a typical example:

 // Get the size of the message.
+             messageLength = 0;
+             hr = pInfoQueue->GetMessage(DXGI_DEBUG_ALL, 0, null, &messageLength); // Allocate space and get the message.
+             * pMessage = (*)malloc(messageLength);
+            hr = pInfoQueue->GetMessage(DXGI_DEBUG_ALL, 0, pMessage, &messageLength);
+            
Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780366 + HRESULT IDXGIInfoQueue::GetMessageW([In] GUID Producer,[In] unsigned longlong MessageIndex,[Out, Buffer, Optional] DXGI_INFO_QUEUE_MESSAGE* pMessage,[InOut] SIZE_T* pMessageByteLength) + IDXGIInfoQueue::GetMessageW +
+ + +

Gets the number of messages that can pass through a retrieval filter.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the number of messages that can pass through a retrieval filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780373 + unsigned longlong IDXGIInfoQueue::GetNumStoredMessagesAllowedByRetrievalFilters([In] GUID Producer) + IDXGIInfoQueue::GetNumStoredMessagesAllowedByRetrievalFilters +
+ + +

Gets the number of messages currently stored in the message queue.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the number of messages currently stored in the message queue.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780372 + unsigned longlong IDXGIInfoQueue::GetNumStoredMessages([In] GUID Producer) + IDXGIInfoQueue::GetNumStoredMessages +
+ + +

Gets the number of messages that were discarded due to the message count limit.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the number of messages that were discarded.

+ +

Get and set the message count limit with IDXGIInfoQueue::GetMessageCountLimit and IDXGIInfoQueue::SetMessageCountLimit, respectively.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780371 + unsigned longlong IDXGIInfoQueue::GetNumMessagesDiscardedByMessageCountLimit([In] GUID Producer) + IDXGIInfoQueue::GetNumMessagesDiscardedByMessageCountLimit +
+ + +

Gets the maximum number of messages that can be added to the message queue.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the maximum number of messages that can be added to the queue. ?1 means no limit.

+ +

When the number of messages in the message queue reaches the maximum limit, new messages coming in push old messages out.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780367 + unsigned longlong IDXGIInfoQueue::GetMessageCountLimit([In] GUID Producer) + IDXGIInfoQueue::GetMessageCountLimit +
+ + +

Gets the number of messages that a storage filter allowed to pass through.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the number of messages allowed by a storage filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780369 + unsigned longlong IDXGIInfoQueue::GetNumMessagesAllowedByStorageFilter([In] GUID Producer) + IDXGIInfoQueue::GetNumMessagesAllowedByStorageFilter +
+ + +

Gets the number of messages that were denied passage through a storage filter.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the number.

+

Returns the number of messages denied by a storage filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780370 + unsigned longlong IDXGIInfoQueue::GetNumMessagesDeniedByStorageFilter([In] GUID Producer) + IDXGIInfoQueue::GetNumMessagesDeniedByStorageFilter +
+ + +

Adds storage filters to the top of the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that produced the filters.

+

An array of structures that describe the filters.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780359 + HRESULT IDXGIInfoQueue::AddStorageFilterEntries([In] GUID Producer,[In] DXGI_INFO_QUEUE_FILTER* pFilter) + IDXGIInfoQueue::AddStorageFilterEntries +
+ + +

Gets the storage filter at the top of the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the filter.

+

A reference to a structure that describes the filter.

+

A reference to a variable that receives the size, in bytes, of the filter description to which pFilter points. If pFilter is null, GetStorageFilter outputs the size of the storage filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780376 + HRESULT IDXGIInfoQueue::GetStorageFilter([In] GUID Producer,[Out, Buffer, Optional] DXGI_INFO_QUEUE_FILTER* pFilter,[InOut] SIZE_T* pFilterByteLength) + IDXGIInfoQueue::GetStorageFilter +
+ + +

Removes a storage filter from the top of the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that removes the filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780361 + void IDXGIInfoQueue::ClearStorageFilter([In] GUID Producer) + IDXGIInfoQueue::ClearStorageFilter +
+ + +

Pushes an empty storage filter onto the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the empty storage filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

An empty storage filter allows all messages to pass through.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780385 + HRESULT IDXGIInfoQueue::PushEmptyStorageFilter([In] GUID Producer) + IDXGIInfoQueue::PushEmptyStorageFilter +
+ + +

Pushes a deny-all storage filter onto the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

A deny-all storage filter prevents all messages from passing through.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780383 + HRESULT IDXGIInfoQueue::PushDenyAllStorageFilter([In] GUID Producer) + IDXGIInfoQueue::PushDenyAllStorageFilter +
+ + +

Pushes a copy of the storage filter that is currently on the top of the storage-filter stack onto the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the copy of the storage filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780381 + HRESULT IDXGIInfoQueue::PushCopyOfStorageFilter([In] GUID Producer) + IDXGIInfoQueue::PushCopyOfStorageFilter +
+ + +

Pushes a storage filter onto the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the filter.

+

A reference to a structure that describes the filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780387 + HRESULT IDXGIInfoQueue::PushStorageFilter([In] GUID Producer,[In] DXGI_INFO_QUEUE_FILTER* pFilter) + IDXGIInfoQueue::PushStorageFilter +
+ + +

Pops a storage filter from the top of the storage-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pops the filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780379 + void IDXGIInfoQueue::PopStorageFilter([In] GUID Producer) + IDXGIInfoQueue::PopStorageFilter +
+ + +

Gets the size of the storage-filter stack in bytes.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the size.

+

Returns the size of the storage-filter stack in bytes.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780377 + unsigned int IDXGIInfoQueue::GetStorageFilterStackSize([In] GUID Producer) + IDXGIInfoQueue::GetStorageFilterStackSize +
+ + +

Adds retrieval filters to the top of the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that produced the filters.

+

An array of structures that describe the filters.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780358 + HRESULT IDXGIInfoQueue::AddRetrievalFilterEntries([In] GUID Producer,[In] DXGI_INFO_QUEUE_FILTER* pFilter) + IDXGIInfoQueue::AddRetrievalFilterEntries +
+ + +

Gets the retrieval filter at the top of the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the filter.

+

A reference to a structure that describes the filter.

+

A reference to a variable that receives the size, in bytes, of the filter description to which pFilter points. If pFilter is null, GetRetrievalFilter outputs the size of the retrieval filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780374 + HRESULT IDXGIInfoQueue::GetRetrievalFilter([In] GUID Producer,[Out, Buffer, Optional] DXGI_INFO_QUEUE_FILTER* pFilter,[InOut] SIZE_T* pFilterByteLength) + IDXGIInfoQueue::GetRetrievalFilter +
+ + +

Removes a retrieval filter from the top of the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that removes the filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780360 + void IDXGIInfoQueue::ClearRetrievalFilter([In] GUID Producer) + IDXGIInfoQueue::ClearRetrievalFilter +
+ + +

Pushes an empty retrieval filter onto the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the empty retrieval filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

An empty retrieval filter allows all messages to pass through.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780384 + HRESULT IDXGIInfoQueue::PushEmptyRetrievalFilter([In] GUID Producer) + IDXGIInfoQueue::PushEmptyRetrievalFilter +
+ + +

Pushes a deny-all retrieval filter onto the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the deny-all retrieval filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

A deny-all retrieval filter prevents all messages from passing through.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780382 + HRESULT IDXGIInfoQueue::PushDenyAllRetrievalFilter([In] GUID Producer) + IDXGIInfoQueue::PushDenyAllRetrievalFilter +
+ + +

Pushes a copy of the retrieval filter that is currently on the top of the retrieval-filter stack onto the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the copy of the retrieval filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780380 + HRESULT IDXGIInfoQueue::PushCopyOfRetrievalFilter([In] GUID Producer) + IDXGIInfoQueue::PushCopyOfRetrievalFilter +
+ + +

Pushes a retrieval filter onto the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pushes the filter.

+

A reference to a structure that describes the filter.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780386 + HRESULT IDXGIInfoQueue::PushRetrievalFilter([In] GUID Producer,[In] DXGI_INFO_QUEUE_FILTER* pFilter) + IDXGIInfoQueue::PushRetrievalFilter +
+ + +

Pops a retrieval filter from the top of the retrieval-filter stack.

+
+

A DXGI_DEBUG_ID value that identifies the entity that pops the filter.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780378 + void IDXGIInfoQueue::PopRetrievalFilter([In] GUID Producer) + IDXGIInfoQueue::PopRetrievalFilter +
+ + +

Gets the size of the retrieval-filter stack in bytes.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the size.

+

Returns the size of the retrieval-filter stack in bytes.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780375 + unsigned int IDXGIInfoQueue::GetRetrievalFilterStackSize([In] GUID Producer) + IDXGIInfoQueue::GetRetrievalFilterStackSize +
+ + +

Adds a debug message to the message queue and sends that message to the debug output.

+
+

A DXGI_DEBUG_ID value that identifies the entity that produced the message.

+

A -typed value that specifies the category of the message.

+

A -typed value that specifies the severity of the message.

+

An integer that uniquely identifies the message.

+

The message string.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780357 + HRESULT IDXGIInfoQueue::AddMessage([In] GUID Producer,[In] DXGI_INFO_QUEUE_MESSAGE_CATEGORY Category,[In] DXGI_INFO_QUEUE_MESSAGE_SEVERITY Severity,[In] int ID,[In] const char* pDescription) + IDXGIInfoQueue::AddMessage +
+ + +

Adds a user-defined message to the message queue and sends that message to the debug output.

+
+

A -typed value that specifies the severity of the message.

+

The message string.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780356 + HRESULT IDXGIInfoQueue::AddApplicationMessage([In] DXGI_INFO_QUEUE_MESSAGE_SEVERITY Severity,[In] const char* pDescription) + IDXGIInfoQueue::AddApplicationMessage +
+ + +

Sets a message category to break on when a message with that category passes through the storage filter.

+
+

A DXGI_DEBUG_ID value that identifies the entity that sets the breaking condition.

+

A -typed value that specifies the category of the message.

+

A Boolean value that specifies whether SetBreakOnCategory turns on or off this breaking condition (TRUE for on, for off).

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780388 + HRESULT IDXGIInfoQueue::SetBreakOnCategory([In] GUID Producer,[In] DXGI_INFO_QUEUE_MESSAGE_CATEGORY Category,[In] BOOL bEnable) + IDXGIInfoQueue::SetBreakOnCategory +
+ + +

Sets a message severity level to break on when a message with that severity level passes through the storage filter.

+
+

A DXGI_DEBUG_ID value that identifies the entity that sets the breaking condition.

+

A -typed value that specifies the severity of the message.

+

A Boolean value that specifies whether SetBreakOnSeverity turns on or off this breaking condition (TRUE for on, for off).

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780390 + HRESULT IDXGIInfoQueue::SetBreakOnSeverity([In] GUID Producer,[In] DXGI_INFO_QUEUE_MESSAGE_SEVERITY Severity,[In] BOOL bEnable) + IDXGIInfoQueue::SetBreakOnSeverity +
+ + +

Sets a message identifier to break on when a message with that identifier passes through the storage filter.

+
+

A DXGI_DEBUG_ID value that identifies the entity that sets the breaking condition.

+

An integer value that specifies the identifier of the message.

+

A Boolean value that specifies whether SetBreakOnID turns on or off this breaking condition (TRUE for on, for off).

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780389 + HRESULT IDXGIInfoQueue::SetBreakOnID([In] GUID Producer,[In] int ID,[In] BOOL bEnable) + IDXGIInfoQueue::SetBreakOnID +
+ + +

Determines whether the break on a message category is turned on or off.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the breaking status.

+

A -typed value that specifies the category of the message.

+

Returns a Boolean value that specifies whether this category of breaking condition is turned on or off (TRUE for on, for off).

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780363 + BOOL IDXGIInfoQueue::GetBreakOnCategory([In] GUID Producer,[In] DXGI_INFO_QUEUE_MESSAGE_CATEGORY Category) + IDXGIInfoQueue::GetBreakOnCategory +
+ + +

Determines whether the break on a message severity level is turned on or off.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the breaking status.

+

A -typed value that specifies the severity of the message.

+

Returns a Boolean value that specifies whether this severity of breaking condition is turned on or off (TRUE for on, for off).

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780365 + BOOL IDXGIInfoQueue::GetBreakOnSeverity([In] GUID Producer,[In] DXGI_INFO_QUEUE_MESSAGE_SEVERITY Severity) + IDXGIInfoQueue::GetBreakOnSeverity +
+ + +

Determines whether the break on a message identifier is turned on or off.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the breaking status.

+

An integer value that specifies the identifier of the message.

+

Returns a Boolean value that specifies whether this break on a message identifier is turned on or off (TRUE for on, for off).

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780364 + BOOL IDXGIInfoQueue::GetBreakOnID([In] GUID Producer,[In] int ID) + IDXGIInfoQueue::GetBreakOnID +
+ + +

Turns the debug output on or off.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the mute status.

+

A Boolean value that specifies whether to turn the debug output on or off (TRUE for on, for off).

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780392 + void IDXGIInfoQueue::SetMuteDebugOutput([In] GUID Producer,[In] BOOL bMute) + IDXGIInfoQueue::SetMuteDebugOutput +
+ + +

Determines whether the debug output is turned on or off.

+
+

A DXGI_DEBUG_ID value that identifies the entity that gets the mute status.

+

Returns a Boolean value that specifies whether the debug output is turned on or off (TRUE for on, for off).

+ + Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh780368 + BOOL IDXGIInfoQueue::GetMuteDebugOutput([In] GUID Producer) + IDXGIInfoQueue::GetMuteDebugOutput +
+ + + Gets the set of regions that must be updated on the shared surface. + + + + + Event fired when an update is needed. Use to get the region to update. + + + + +

Gets the boundaries of the visible region of the shared surface.

+
+ hh848331 + GetVisibleBounds + GetVisibleBounds +
+ + +

Invalidates a specific region of the shared surface for drawing.

+
+

The region of the surface to invalidate.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848332 + HRESULT IVirtualSurfaceImageSourceNative::Invalidate([In] RECT updateRect) + IVirtualSurfaceImageSourceNative::Invalidate +
+ + +

Gets the total number of regions of the surface that must be updated.

+
+

Receives the number of regions to update.

+ hh848329 + HRESULT IVirtualSurfaceImageSourceNative::GetUpdateRectCount([Out] DWORD* count) + IVirtualSurfaceImageSourceNative::GetUpdateRectCount +
+ + +

Gets the set of regions that must be updated on the shared surface.

+
+

The number of regions that must be updated. You obtain this by calling GetUpdateRectCount.

+

Receives a list of regions that must be updated.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848330 + HRESULT IVirtualSurfaceImageSourceNative::GetUpdateRects([Out, Buffer] RECT* updates,[In] DWORD count) + IVirtualSurfaceImageSourceNative::GetUpdateRects +
+ + +

Gets the boundaries of the visible region of the shared surface.

+
+

Receives a rectangle that specifies the visible region of the shared surface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848331 + HRESULT IVirtualSurfaceImageSourceNative::GetVisibleBounds([Out] RECT* bounds) + IVirtualSurfaceImageSourceNative::GetVisibleBounds +
+ + +

Registers for the callback that will perform the drawing when an update to the shared surface is requested.

+
+

Pointer to an implementation of .

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848334 + HRESULT IVirtualSurfaceImageSourceNative::RegisterForUpdatesNeeded([In, Optional] IVirtualSurfaceUpdatesCallbackNative* callback) + IVirtualSurfaceImageSourceNative::RegisterForUpdatesNeeded +
+ + +

Resizes the surface.

+
+

The updated width of the surface.

+

The updated height of the surface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848335 + HRESULT IVirtualSurfaceImageSourceNative::Resize([In] int newWidth,[In] int newHeight) + IVirtualSurfaceImageSourceNative::Resize +
+ + + Callback method for IVirtualSurfaceUpdatesCallbackNative + + HRESULT IVirtualSurfaceUpdatesCallbackNative::UpdatesNeeded() + + + +

Performs the drawing behaviors when an update to VirtualSurfaceImageSource is requested.

+
+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This method is implemented by the developer.

+
+ hh848337 + HRESULT IVirtualSurfaceUpdatesCallbackNative::UpdatesNeeded() + IVirtualSurfaceUpdatesCallbackNative::UpdatesNeeded +
+ + +

Describes a display mode.

+
+ +

This structure is used by the GetDisplayModeList and FindClosestMatchingMode methods.

The following format values are valid for display modes and when you create a bit-block transfer (bitblt) model swap chain. The valid values depend on the feature level that you are working with.

  • Feature level >= 9.1

    • DXGI_FORMAT_R8G8B8A8_UNORM
    • DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
    • DXGI_FORMAT_B8G8R8A8_UNORM (except 10.x on Windows?Vista)
    • DXGI_FORMAT_B8G8R8A8_UNORM_SRGB (except 10.x on Windows?Vista)
  • Feature level >= 10.0

    • DXGI_FORMAT_R16G16B16A16_FLOAT
    • DXGI_FORMAT_R10G10B10A2_UNORM
  • Feature level >= 11.0

    • DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM

You can pass one of these format values to ID3D11Device::CheckFormatSupport to determine if it is a valid format for displaying on screen. If ID3D11Device::CheckFormatSupport returns D3D11_FORMAT_SUPPORT_DISPLAY in the bit field to which the pFormatSupport parameter points, the format is valid for displaying on screen.

Starting with Windows?8 for a flip model swap chain (that is, a swap chain that has the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value set in the SwapEffect member of ), you must set the Format member of to DXGI_FORMAT_R16G16B16A16_FLOAT, DXGI_FORMAT_B8G8R8A8_UNORM, or DXGI_FORMAT_R8G8B8A8_UNORM.

Because of the relaxed render target creation rules that Direct3D 11 has for back buffers, applications can create a DXGI_FORMAT_B8G8R8A8_UNORM_SRGB render target view from a DXGI_FORMAT_B8G8R8A8_UNORM swap chain so they can use automatic color space conversion when they render the swap chain.

+
+ bb173064 + DXGI_MODE_DESC + DXGI_MODE_DESC +
+ + + Initializes a new instance of the structure. + + The width. + The height. + The refresh rate. + The format. + + + + Initializes a new instance of the struct. + + The format. + + + +

A value that describes the resolution width. If you specify the width as zero when you call the IDXGIFactory::CreateSwapChain method to create a swap chain, the runtime obtains the width from the output window and assigns this width value to the swap-chain description. You can subsequently call the IDXGISwapChain::GetDesc method to retrieve the assigned width value.

+
+ bb173064 + Width + Width +
+ + +

A value describing the resolution height. If you specify the height as zero when you call the IDXGIFactory::CreateSwapChain method to create a swap chain, the runtime obtains the height from the output window and assigns this height value to the swap-chain description. You can subsequently call the IDXGISwapChain::GetDesc method to retrieve the assigned height value.

+
+ bb173064 + Height + Height +
+ + +

A structure describing the refresh rate in hertz

+
+ bb173064 + RefreshRate + RefreshRate +
+ + +

A structure describing the display format.

+
+ bb173064 + Format + Format +
+ + +

A member of the enumerated type describing the scanline drawing mode.

+
+ bb173064 + ScanlineOrdering + ScanlineOrdering +
+ + +

A member of the enumerated type describing the scaling mode.

+
+ bb173064 + Scaling + Scaling +
+ + + Internal class used to initialize this assembly. + + + + + Initializes this assembly. + + + This method is called when the assembly is loaded. + + + + + The namespace provides a managed DXGI API. + + hh404534 + DXGI + DXGI + + + + Find the display mode that most closely matches the requested display mode. + + + Direct3D devices require UNORM formats. This method finds the closest matching available display mode to the mode specified in pModeToMatch. Similarly ranked fields (i.e. all specified, or all unspecified, etc) are resolved in the following order. ScanlineOrdering Scaling Format Resolution RefreshRate When determining the closest value for a particular field, previously matched fields are used to filter the display mode list choices, and other fields are ignored. For example, when matching Resolution, the display mode list will have already been filtered by a certain ScanlineOrdering, Scaling, and Format, while RefreshRate is ignored. This ordering doesn't define the absolute ordering for every usage scenario of FindClosestMatchingMode, because the application can choose some values initially, effectively changing the order that fields are chosen. Fields of the display mode are matched one at a time, generally in a specified order. If a field is unspecified, FindClosestMatchingMode gravitates toward the values for the desktop related to this output. If this output is not part of the desktop, then the default desktop output is used to find values. If an application uses a fully unspecified display mode, FindClosestMatchingMode will typically return a display mode that matches the desktop settings for this output. Unspecified fields are lower priority than specified fields and will be resolved later than specified fields. + + A reference to the Direct3D device interface. If this parameter is NULL, only modes whose format matches that of pModeToMatch will be returned; otherwise, only those formats that are supported for scan-out by the device are returned. + The desired display mode (see ). Members of DXGI_MODE_DESC can be unspecified indicating no preference for that member. A value of 0 for Width or Height indicates the value is unspecified. If either Width or Height are 0 both must be 0. A numerator and denominator of 0 in RefreshRate indicate it is unspecified. Other members of DXGI_MODE_DESC have enumeration values indicating the member is unspecified. If pConnectedDevice is NULL Format cannot be DXGI_FORMAT_UNKNOWN. + The mode that most closely matches pModeToMatch. + Returns one of the following . + HRESULT IDXGIOutput::FindClosestMatchingMode([In] const DXGI_MODE_DESC* pModeToMatch,[Out] DXGI_MODE_DESC* pClosestMatch,[In, Optional] IUnknown* pConcernedDevice) + + + + Gets the display modes that match the requested format and other input options. + + + In general, when switching from windowed to full-screen mode, a swap chain automatically chooses a display mode that meets (or exceeds) the resolution, color depth and refresh rate of the swap chain. To exercise more control over the display mode, use this API to poll the set of display modes that are validated against monitor capabilities, or all modes that match the desktop (if the desktop settings are not validated against the monitor). As shown, this API is designed to be called twice. First to get the number of modes available, and second to return a description of the modes. + UINT num = 0; + DXGI_FORMAT format = DXGI_FORMAT_R32G32B32A32_FLOAT; + UINT flags = DXGI_ENUM_MODES_INTERLACED; pOutput->GetDisplayModeList( format, flags, &num, 0); ... DXGI_MODE_DESC * pDescs = new DXGI_MODE_DESC[num]; + pOutput->GetDisplayModeList( format, flags, &num, pDescs); + + + + The color format (see ). + format for modes to include (see {{DXGI_ENUM_MODES}}). DXGI_ENUM_MODES_SCALING needs to be specified to expose the display modes that require scaling. Centered modes, requiring no scaling and corresponding directly to the display output, are enumerated by default. + Returns a list of display modes (see ); + HRESULT IDXGIOutput::GetDisplayModeList([None] DXGI_FORMAT EnumFormat,[None] int Flags,[InOut] int* pNumModes,[Out, Buffer, Optional] DXGI_MODE_DESC* pDesc) + + + +

Get a description of the output.

+
+ +

On a high DPI desktop, GetDesc returns the visualized screen size unless the app is marked high DPI aware. For info about writing DPI-aware Win32 apps, see High DPI.

+
+ bb174548 + GetDesc + GetDesc +
+ + +

Gets a description of the gamma-control capabilities.

+
+ +

Note??Calling this method is only supported while in full-screen mode.?

For info about using gamma correction, see Using gamma correction.

+
+ bb174553 + GetGammaControlCapabilities + GetGammaControlCapabilities +
+ + +

Gets or sets the gamma control settings.

+
+ +

Note??Calling this method is only supported while in full-screen mode.?

For info about using gamma correction, see Using gamma correction.

+
+ bb174552 + GetGammaControl / SetGammaControl + GetGammaControl +
+ + +

Gets statistics about recently rendered frames.

+
+ +

This API is similar to IDXGISwapChain::GetFrameStatistics.

Note??Calling this method is only supported while in full-screen mode.? +
+ bb174551 + GetFrameStatistics + GetFrameStatistics +
+ + +

Get a description of the output.

+
+

A reference to the output description (see ).

+

Returns a code that indicates success or failure. if successful, if pDesc is passed in as null.

+ +

On a high DPI desktop, GetDesc returns the visualized screen size unless the app is marked high DPI aware. For info about writing DPI-aware Win32 apps, see High DPI.

+
+ bb174548 + HRESULT IDXGIOutput::GetDesc([Out] DXGI_OUTPUT_DESC* pDesc) + IDXGIOutput::GetDesc +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetDisplayModeList anymore to retrieve the matching display mode. Instead, use IDXGIOutput1::GetDisplayModeList1, which supports stereo display mode.]

Gets the display modes that match the requested format and other input options.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

Returns one of the following DXGI_ERROR. It is rare, but possible, that the display modes available can change immediately after calling this method, in which case is returned (if there is not enough room for all the display modes). If GetDisplayModeList is called from a Remote Desktop Services session (formerly Terminal Services session), is returned.

+ +

In general, when switching from windowed to full-screen mode, a swap chain automatically chooses a display mode that meets (or exceeds) the resolution, color depth and refresh rate of the swap chain. To exercise more control over the display mode, use this API to poll the set of display modes that are validated against monitor capabilities, or all modes that match the desktop (if the desktop settings are not validated against the monitor).

As shown, this API is designed to be called twice. First to get the number of modes available, and second to return a description of the modes.

 UINT num = 0;
+             format = DXGI_FORMAT_R32G32B32A32_FLOAT;
+            UINT flags         = DXGI_ENUM_MODES_INTERLACED; pOutput->GetDisplayModeList( format, flags, &num, 0); ...  * pDescs = new [num];
+            pOutput->GetDisplayModeList( format, flags, &num, pDescs); 
+
+ bb174549 + HRESULT IDXGIOutput::GetDisplayModeList([In] DXGI_FORMAT EnumFormat,[In] unsigned int Flags,[InOut] unsigned int* pNumModes,[Out, Buffer, Optional] DXGI_MODE_DESC* pDesc) + IDXGIOutput::GetDisplayModeList +
+ + +

[Starting with Direct3D 11.1, we recommend not to use FindClosestMatchingMode anymore to find the display mode that most closely matches the requested display mode. Instead, use IDXGIOutput1::FindClosestMatchingMode1, which supports stereo display mode.]

Finds the display mode that most closely matches the requested display mode.

+
+ No documentation. + No documentation. + No documentation. +

Returns one of the following DXGI_ERROR.

+ +

FindClosestMatchingMode behaves similarly to the IDXGIOutput1::FindClosestMatchingMode1 except FindClosestMatchingMode considers only the mono display modes. IDXGIOutput1::FindClosestMatchingMode1 considers only stereo modes if you set the Stereo member in the structure that pModeToMatch points to, and considers only mono modes if Stereo is not set.

IDXGIOutput1::FindClosestMatchingMode1 returns a matched display-mode set with only stereo modes or only mono modes. + FindClosestMatchingMode behaves as though you specified the input mode as mono.

+
+ bb174547 + HRESULT IDXGIOutput::FindClosestMatchingMode([In] const DXGI_MODE_DESC* pModeToMatch,[Out] DXGI_MODE_DESC* pClosestMatch,[In, Optional] IUnknown* pConcernedDevice) + IDXGIOutput::FindClosestMatchingMode +
+ + +

Halt a thread until the next vertical blank occurs.

+
+

Returns one of the following DXGI_ERROR.

+ +

A vertical blank occurs when the raster moves from the lower right corner to the upper left corner to begin drawing the next frame.

+
+ bb174559 + HRESULT IDXGIOutput::WaitForVBlank() + IDXGIOutput::WaitForVBlank +
+ + +

Takes ownership of an output.

+
+

A reference to the interface of a device (such as an ID3D10Device).

+

Set to TRUE to enable other threads or applications to take ownership of the device; otherwise, set to .

+

Returns one of the DXGI_ERROR values.

+ +

When you are finished with the output, call IDXGIOutput::ReleaseOwnership.

TakeOwnership should not be called directly by applications, since results will be unpredictable. It is called implicitly by the DXGI swap chain object during full-screen transitions, and should not be used as a substitute for swap-chain methods.

+
+ bb174558 + HRESULT IDXGIOutput::TakeOwnership([In] IUnknown* pDevice,[In] BOOL Exclusive) + IDXGIOutput::TakeOwnership +
+ + +

Releases ownership of the output.

+
+ +

If you are not using a swap chain, get access to an output by calling IDXGIOutput::TakeOwnership and release it when you are finished by calling IDXGIOutput::ReleaseOwnership. An application that uses a swap chain will typically not call either of these methods.

+
+ bb174554 + void IDXGIOutput::ReleaseOwnership() + IDXGIOutput::ReleaseOwnership +
+ + +

Gets a description of the gamma-control capabilities.

+
+

A reference to a description of the gamma-control capabilities (see ).

+

Returns one of the DXGI_ERROR values.

+ +

Note??Calling this method is only supported while in full-screen mode.?

For info about using gamma correction, see Using gamma correction.

+
+ bb174553 + HRESULT IDXGIOutput::GetGammaControlCapabilities([Out] DXGI_GAMMA_CONTROL_CAPABILITIES* pGammaCaps) + IDXGIOutput::GetGammaControlCapabilities +
+ + +

Sets the gamma controls.

+
+

A reference to a structure that describes the gamma curve to set.

+

Returns one of the DXGI_ERROR values.

+ +

Note??Calling this method is only supported while in full-screen mode.?

For info about using gamma correction, see Using gamma correction.

+
+ bb174557 + HRESULT IDXGIOutput::SetGammaControl([In] const DXGI_GAMMA_CONTROL* pArray) + IDXGIOutput::SetGammaControl +
+ + +

Gets the gamma control settings.

+
+

An array of gamma control settings (see ).

+

Returns one of the DXGI_ERROR values.

+ +

Note??Calling this method is only supported while in full-screen mode.?

For info about using gamma correction, see Using gamma correction.

+
+ bb174552 + HRESULT IDXGIOutput::GetGammaControl([Out] DXGI_GAMMA_CONTROL* pArray) + IDXGIOutput::GetGammaControl +
+ + +

Changes the display mode.

+
+

A reference to a surface (see ) used for rendering an image to the screen. The surface must have been created as a back buffer (DXGI_USAGE_BACKBUFFER).

+

Returns one of the DXGI_ERROR values.

+ +

IDXGIOutput::SetDisplaySurface should not be called directly by applications, since results will be unpredictable. It is called implicitly by the DXGI swap chain object during full-screen transitions, and should not be used as a substitute for swap-chain methods.

This method should only be called between IDXGIOutput::TakeOwnership and IDXGIOutput::ReleaseOwnership calls.

+
+ bb174556 + HRESULT IDXGIOutput::SetDisplaySurface([In] IDXGISurface* pScanoutSurface) + IDXGIOutput::SetDisplaySurface +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetDisplaySurfaceData anymore to retrieve the current display surface. Instead, use IDXGIOutput1::GetDisplaySurfaceData1, which supports stereo display mode.]

Gets a copy of the current display surface.

+
+ No documentation. +

Returns one of the DXGI_ERROR values.

+ +

IDXGIOutput::GetDisplaySurfaceData can only be called when an output is in full-screen mode. If the method succeeds, DXGI fills the destination surface.

Use IDXGIOutput::GetDesc to determine the size (width and height) of the output when you want to allocate space for the destination surface. This is true regardless of target monitor rotation. A destination surface created by a graphics component (such as Direct3D 10) must be created with CPU-write permission (see D3D10_CPU_ACCESS_WRITE). Other surfaces should be created with CPU read-write permission (see D3D10_CPU_ACCESS_READ_WRITE). This method will modify the surface data to fit the destination surface (stretch, shrink, convert format, rotate). The stretch and shrink is performed with point-sampling.

+
+ bb174550 + HRESULT IDXGIOutput::GetDisplaySurfaceData([In] IDXGISurface* pDestination) + IDXGIOutput::GetDisplaySurfaceData +
+ + +

Gets statistics about recently rendered frames.

+
+

A reference to frame statistics (see ).

+

If this function succeeds, it returns . Otherwise, it might return .

+ +

This API is similar to IDXGISwapChain::GetFrameStatistics.

Note??Calling this method is only supported while in full-screen mode.? +
+ bb174551 + HRESULT IDXGIOutput::GetFrameStatistics([Out] DXGI_FRAME_STATISTICS* pStats) + IDXGIOutput::GetFrameStatistics +
+ + +

[This documentation is preliminary and is subject to change.]

Applies to: desktop apps | Metro style apps

Gets the display modes that match the requested format and other input options.

+
+

A -typed value for the color format.

+

A combination of DXGI_ENUM_MODES-typed values that are combined by using a bitwise OR operation. The resulting value specifies options for display modes to include. You must specify to expose the display modes that require scaling. Centered modes that require no scaling and correspond directly to the display output are enumerated by default.

+ A list of display modes + +

GetDisplayModeList1 is updated from GetDisplayModeList to return a list of structures, which are updated mode descriptions. GetDisplayModeList behaves as though it calls GetDisplayModeList1 because GetDisplayModeList can return all of the modes that are specified by DXGI_ENUM_MODES, including stereo mode. However, GetDisplayModeList returns a list of structures, which are the former mode descriptions and do not indicate stereo mode.

The GetDisplayModeList1 method does not enumerate stereo modes unless you specify the flag in the Flags parameter. If you specify , stereo modes are included in the list of returned modes that the pDesc parameter points to. In other words, the method returns both stereo and mono modes.

In general, when you switch from windowed to full-screen mode, a swap chain automatically chooses a display mode that meets (or exceeds) the resolution, color depth, and refresh rate of the swap chain. To exercise more control over the display mode, use GetDisplayModeList1 to poll the set of display modes that are validated against monitor capabilities, or all modes that match the desktop (if the desktop settings are not validated against the monitor).

The following example code shows that you need to call GetDisplayModeList1 twice. First call GetDisplayModeList1 to get the number of modes available, and second call GetDisplayModeList1 to return a description of the modes.

 UINT num = 0;	
+             format = ;	
+            UINT flags         = ; pOutput->GetDisplayModeList1( format, flags, &num, 0); ...  * pDescs = new [num];	
+            pOutput->GetDisplayModeList1( format, flags, &num, pDescs); 
+
+ hh404606 + HRESULT IDXGIOutput1::GetDisplayModeList1([In] DXGI_FORMAT EnumFormat,[In] unsigned int Flags,[InOut] unsigned int* pNumModes,[Out, Buffer, Optional] DXGI_MODE_DESC1* pDesc) + IDXGIOutput1::GetDisplayModeList1 +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetDisplayModeList anymore to retrieve the matching display mode. Instead, use IDXGIOutput1::GetDisplayModeList1, which supports stereo display mode.]

Gets the display modes that match the requested format and other input options.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

Returns one of the following DXGI_ERROR. It is rare, but possible, that the display modes available can change immediately after calling this method, in which case is returned (if there is not enough room for all the display modes). If GetDisplayModeList is called from a Remote Desktop Services session (formerly Terminal Services session), is returned.

+ +

In general, when switching from windowed to full-screen mode, a swap chain automatically chooses a display mode that meets (or exceeds) the resolution, color depth and refresh rate of the swap chain. To exercise more control over the display mode, use this API to poll the set of display modes that are validated against monitor capabilities, or all modes that match the desktop (if the desktop settings are not validated against the monitor).

As shown, this API is designed to be called twice. First to get the number of modes available, and second to return a description of the modes.

 UINT num = 0;
+             format = DXGI_FORMAT_R32G32B32A32_FLOAT;
+            UINT flags         = DXGI_ENUM_MODES_INTERLACED; pOutput->GetDisplayModeList( format, flags, &num, 0); ...  * pDescs = new [num];
+            pOutput->GetDisplayModeList( format, flags, &num, pDescs); 
+
+ bb174549 + HRESULT IDXGIOutput1::GetDisplayModeList1([In] DXGI_FORMAT EnumFormat,[In] unsigned int Flags,[InOut] unsigned int* pNumModes,[Out, Buffer, Optional] DXGI_MODE_DESC1* pDesc) + IDXGIOutput1::GetDisplayModeList1 +
+ + +

Finds the display mode that most closely matches the requested display mode.

+
+

A reference to the structure that describes the display mode to match. Members of can be unspecified, which indicates no preference for that member. A value of 0 for Width or Height indicates that the value is unspecified. If either Width or Height is 0, both must be 0. A numerator and denominator of 0 in RefreshRate indicate it is unspecified. Other members of have enumeration values that indicate that the member is unspecified. If pConcernedDevice is null, the Format member of cannot be DXGI_FORMAT_UNKNOWN.

+

A reference to the structure that receives a description of the display mode that most closely matches the display mode described at pModeToMatch.

+

A reference to the Direct3D device interface. If this parameter is null, FindClosestMatchingMode1 returns only modes whose format matches that of pModeToMatch; otherwise, FindClosestMatchingMode1 returns only those formats that are supported for scan-out by the device. For info about the formats that are supported for scan-out by the device at each feature level:

  • DXGI Format Support for Direct3D Feature Level 12.1 Hardware
  • DXGI Format Support for Direct3D Feature Level 12.0 Hardware
  • DXGI Format Support for Direct3D Feature Level 11.1 Hardware
  • DXGI Format Support for Direct3D Feature Level 11.0 Hardware
  • Hardware Support for Direct3D 10Level9 Formats
  • Hardware Support for Direct3D 10.1 Formats
  • Hardware Support for Direct3D 10 Formats
+

Returns one of the error codes described in the DXGI_ERROR topic.

+ +

Direct3D devices require UNORM formats.

FindClosestMatchingMode1 finds the closest matching available display mode to the mode that you specify in pModeToMatch.

If you set the Stereo member in the structure to which pModeToMatch points to specify a stereo mode as input, FindClosestMatchingMode1 considers only stereo modes. FindClosestMatchingMode1 considers only mono modes if Stereo is not set.

FindClosestMatchingMode1 resolves similarly ranked members of display modes (that is, all specified, or all unspecified, and so on) in the following order:

  1. ScanlineOrdering
  2. Scaling
  3. Format
  4. Resolution
  5. RefreshRate

When FindClosestMatchingMode1 determines the closest value for a particular member, it uses previously matched members to filter the display mode list choices, and ignores other members. For example, when FindClosestMatchingMode1 matches Resolution, it already filtered the display mode list by a certain ScanlineOrdering, Scaling, and Format, while it ignores RefreshRate. This ordering doesn't define the absolute ordering for every usage scenario of FindClosestMatchingMode1, because the application can choose some values initially, which effectively changes the order of resolving members.

FindClosestMatchingMode1 matches members of the display mode one at a time, generally in a specified order.

If a member is unspecified, FindClosestMatchingMode1 gravitates toward the values for the desktop related to this output. If this output is not part of the desktop, FindClosestMatchingMode1 uses the default desktop output to find values. If an application uses a fully unspecified display mode, FindClosestMatchingMode1 typically returns a display mode that matches the desktop settings for this output. Because unspecified members are lower priority than specified members, FindClosestMatchingMode1 resolves unspecified members later than specified members.

+
+ hh404603 + HRESULT IDXGIOutput1::FindClosestMatchingMode1([In] const DXGI_MODE_DESC1* pModeToMatch,[Out] DXGI_MODE_DESC1* pClosestMatch,[In, Optional] IUnknown* pConcernedDevice) + IDXGIOutput1::FindClosestMatchingMode1 +
+ + +

Copies the display surface (front buffer) to a user-provided resource.

+
+

A reference to a resource interface that represents the resource to which GetDisplaySurfaceData1 copies the display surface.

+

Returns one of the error codes described in the DXGI_ERROR topic.

+ +

GetDisplaySurfaceData1 is similar to IDXGIOutput::GetDisplaySurfaceData except GetDisplaySurfaceData1 takes an and IDXGIOutput::GetDisplaySurfaceData takes an .

GetDisplaySurfaceData1 returns an error if the input resource is not a 2D texture (represented by the interface) with an array size (ArraySize member of the structure) that is equal to the swap chain buffers.

The original IDXGIOutput::GetDisplaySurfaceData and the updated GetDisplaySurfaceData1 behave exactly the same. GetDisplaySurfaceData1 was required because textures with an array size equal to 2 (ArraySize = 2) do not implement .

You can call GetDisplaySurfaceData1 only when an output is in full-screen mode. If GetDisplaySurfaceData1 succeeds, it fills the destination resource.

Use IDXGIOutput::GetDesc to determine the size (width and height) of the output when you want to allocate space for the destination resource. This is true regardless of target monitor rotation. A destination resource created by a graphics component (such as Direct3D 11) must be created with CPU write permission (see D3D11_CPU_ACCESS_WRITE). Other surfaces can be created with CPU read-write permission (D3D11_CPU_ACCESS_READ | D3D11_CPU_ACCESS_WRITE). GetDisplaySurfaceData1 modifies the surface data to fit the destination resource (stretch, shrink, convert format, rotate). GetDisplaySurfaceData1 performs the stretch and shrink with point sampling.

+
+ hh404609 + HRESULT IDXGIOutput1::GetDisplaySurfaceData1([In] IDXGIResource* pDestination) + IDXGIOutput1::GetDisplaySurfaceData1 +
+ + +

Creates a desktop duplication interface from the interface that represents an adapter output.

+
+ No documentation. + No documentation. + +

If an application wants to duplicate the entire desktop, it must create a desktop duplication interface on each active output on the desktop. This interface does not provide an explicit way to synchronize the timing of each output image. Instead, the application must use the time stamp of each output, and then determine how to combine the images.

For DuplicateOutput to succeed, you must create pDevice from or a later version of a DXGI factory interface that inherits from .

If the current mode is a stereo mode, the desktop duplication interface provides the image for the left stereo image only.

By default, only four processes can use a interface at the same time within a single session. A process can have only one desktop duplication interface on a single desktop output; however, that process can have a desktop duplication interface for each output that is part of the desktop.

For improved performance, consider using DuplicateOutput1.

+
+ hh404600 + HRESULT IDXGIOutput1::DuplicateOutput([In] IUnknown* pDevice,[Out] IDXGIOutputDuplication** ppOutputDuplication) + IDXGIOutput1::DuplicateOutput +
+ + +

[This documentation is preliminary and is subject to change.]

Queries an adapter output for multiplane overlay support.

+
+

TRUE if the output adapter is the primary adapter and it supports multiplane overlays, otherwise returns .

+ + dn280411 + BOOL IDXGIOutput2::SupportsOverlays() + IDXGIOutput2::SupportsOverlays +
+ + +

Queries an adapter output for multiplane overlay support. If this API returns ?TRUE?, multiple swap chain composition takes place in a performant manner using overlay hardware. If this API returns false, apps should avoid using foreground swap chains (that is, avoid using swap chains created with the DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER flag).

+
+

TRUE if the output adapter is the primary adapter and it supports multiplane overlays, otherwise returns .

+ +

See CreateSwapChainForCoreWindow for info on creating a foreground swap chain.

+
+ dn280411 + BOOL IDXGIOutput2::SupportsOverlays() + IDXGIOutput2::SupportsOverlays +
+ + HRESULT IDXGIOutputDuplication::MapDesktopSurface([Out] DXGI_MAPPED_RECT* pLockedRect) + + + +

Indicates that the application is ready to process the next desktop image.

+
+

The time-out interval, in milliseconds. This interval specifies the amount of time that this method waits for a new frame before it returns to the caller. This method returns if the interval elapses, and a new desktop image is not available.

For more information about the time-out interval, see Remarks.

+

A reference to a memory location that receives the structure that describes timing and presentation statistics for a frame.

+

A reference to a variable that receives the interface of the surface that contains the desktop bitmap.

+ +

When AcquireNextFrame returns successfully, the calling application can access the desktop image that AcquireNextFrame returns in the variable at ppDesktopResource. + If the caller specifies a zero time-out interval in the TimeoutInMilliseconds parameter, AcquireNextFrame verifies whether there is a new desktop image available, returns immediately, and indicates its outcome with the return value. If the caller specifies an INFINITE time-out interval in the TimeoutInMilliseconds parameter, the time-out interval never elapses.

Note??You cannot cancel the wait that you specified in the TimeoutInMilliseconds parameter. Therefore, if you must periodically check for other conditions (for example, a terminate signal), you should specify a non-INFINITE time-out interval. After the time-out interval elapses, you can check for these other conditions and then call AcquireNextFrame again to wait for the next frame.?

AcquireNextFrame acquires a new desktop frame when the operating system either updates the desktop bitmap image or changes the shape or position of a hardware reference. The new frame that AcquireNextFrame acquires might have only the desktop image updated, only the reference shape or position updated, or both.

+
+ + hh404615 + HRESULT IDXGIOutputDuplication::AcquireNextFrame([In] unsigned int TimeoutInMilliseconds,[Out] DXGI_OUTDUPL_FRAME_INFO* pFrameInfo,[Out] IDXGIResource** ppDesktopResource) + IDXGIOutputDuplication::AcquireNextFrame +
+ + +

Retrieves a description of a duplicated output. This description specifies the dimensions of the surface that contains the desktop image.

+
+ +

After an application creates an interface, it calls GetDesc to retrieve the dimensions of the surface that contains the desktop image. The format of the desktop image is always DXGI_FORMAT_B8G8R8A8_UNORM.

+
+ hh404618 + GetDesc + GetDesc +
+ + +

Retrieves a description of a duplicated output. This description specifies the dimensions of the surface that contains the desktop image.

+
+

A reference to a structure that describes the duplicated output. This parameter must not be null.

+ +

After an application creates an interface, it calls GetDesc to retrieve the dimensions of the surface that contains the desktop image. The format of the desktop image is always DXGI_FORMAT_B8G8R8A8_UNORM.

+
+ hh404618 + void IDXGIOutputDuplication::GetDesc([Out] DXGI_OUTDUPL_DESC* pDesc) + IDXGIOutputDuplication::GetDesc +
+ + +

Indicates that the application is ready to process the next desktop image.

+
+

The time-out interval, in milliseconds. This interval specifies the amount of time that this method waits for a new frame before it returns to the caller. This method returns if the interval elapses, and a new desktop image is not available.

For more information about the time-out interval, see Remarks.

+

A reference to a memory location that receives the structure that describes timing and presentation statistics for a frame.

+

A reference to a variable that receives the interface of the surface that contains the desktop bitmap.

+

AcquireNextFrame returns:

  • if it successfully received the next desktop image.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • if the time-out interval elapsed before the next desktop frame was available.
  • if the application called AcquireNextFrame without releasing the previous frame.
  • E_INVALIDARG if one of the parameters to AcquireNextFrame is incorrect; for example, if pFrameInfo is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

When AcquireNextFrame returns successfully, the calling application can access the desktop image that AcquireNextFrame returns in the variable at ppDesktopResource. + If the caller specifies a zero time-out interval in the TimeoutInMilliseconds parameter, AcquireNextFrame verifies whether there is a new desktop image available, returns immediately, and indicates its outcome with the return value. If the caller specifies an INFINITE time-out interval in the TimeoutInMilliseconds parameter, the time-out interval never elapses.

Note??You cannot cancel the wait that you specified in the TimeoutInMilliseconds parameter. Therefore, if you must periodically check for other conditions (for example, a terminate signal), you should specify a non-INFINITE time-out interval. After the time-out interval elapses, you can check for these other conditions and then call AcquireNextFrame again to wait for the next frame.?

AcquireNextFrame acquires a new desktop frame when the operating system either updates the desktop bitmap image or changes the shape or position of a hardware reference. The new frame that AcquireNextFrame acquires might have only the desktop image updated, only the reference shape or position updated, or both.

+
+ hh404615 + HRESULT IDXGIOutputDuplication::AcquireNextFrame([In] unsigned int TimeoutInMilliseconds,[Out] DXGI_OUTDUPL_FRAME_INFO* pFrameInfo,[Out] IDXGIResource** ppDesktopResource) + IDXGIOutputDuplication::AcquireNextFrame +
+ + +

Gets information about dirty rectangles for the current desktop frame.

+
+

The size in bytes of the buffer that the caller passed to the pDirtyRectsBuffer parameter.

+

A reference to an array of structures that identifies the dirty rectangle regions for the desktop frame.

+

Pointer to a variable that receives the number of bytes that GetFrameDirtyRects needs to store information about dirty regions in the buffer at pDirtyRectsBuffer.

For more information about returning the required buffer size, see Remarks.

+

GetFrameDirtyRects returns:

  • if it successfully retrieved information about dirty rectangles.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • if the buffer that the calling application provided was not big enough.
  • if the application called GetFrameDirtyRects without owning the desktop image.
  • E_INVALIDARG if one of the parameters to GetFrameDirtyRects is incorrect; for example, if pDirtyRectsBuffer is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

GetFrameDirtyRects stores a size value in the variable at pDirtyRectsBufferSizeRequired. This value specifies the number of bytes that GetFrameDirtyRects needs to store information about dirty regions. You can use this value in the following situations to determine the amount of memory to allocate for future buffers that you pass to pDirtyRectsBuffer:

  • GetFrameDirtyRects fails with because the buffer is not big enough.
  • GetFrameDirtyRects supplies a buffer that is bigger than necessary. The size value returned at pDirtyRectsBufferSizeRequired informs the caller how much buffer space was actually used compared to how much buffer space the caller allocated and specified in the DirtyRectsBufferSize parameter.

The caller can also use the value returned at pDirtyRectsBufferSizeRequired to determine the number of s returned in the pDirtyRectsBuffer array.

The buffer contains the list of dirty s for the current frame.

Note??To produce a visually accurate copy of the desktop, an application must first process all move s before it processes dirty s.? +
+ hh404619 + HRESULT IDXGIOutputDuplication::GetFrameDirtyRects([In] unsigned int DirtyRectsBufferSize,[Out, Buffer] RECT* pDirtyRectsBuffer,[Out] unsigned int* pDirtyRectsBufferSizeRequired) + IDXGIOutputDuplication::GetFrameDirtyRects +
+ + +

Gets information about the moved rectangles for the current desktop frame.

+
+

The size in bytes of the buffer that the caller passed to the pMoveRectBuffer parameter.

+

A reference to an array of structures that identifies the moved rectangle regions for the desktop frame.

+

Pointer to a variable that receives the number of bytes that GetFrameMoveRects needs to store information about moved regions in the buffer at pMoveRectBuffer.

For more information about returning the required buffer size, see Remarks.

+

GetFrameMoveRects returns:

  • if it successfully retrieved information about moved rectangles.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • if the buffer that the calling application provided is not big enough.
  • if the application called GetFrameMoveRects without owning the desktop image.
  • E_INVALIDARG if one of the parameters to GetFrameMoveRects is incorrect; for example, if pMoveRectBuffer is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

GetFrameMoveRects stores a size value in the variable at pMoveRectsBufferSizeRequired. This value specifies the number of bytes that GetFrameMoveRects needs to store information about moved regions. You can use this value in the following situations to determine the amount of memory to allocate for future buffers that you pass to pMoveRectBuffer:

  • GetFrameMoveRects fails with because the buffer is not big enough.
  • GetFrameMoveRects supplies a buffer that is bigger than necessary. The size value returned at pMoveRectsBufferSizeRequired informs the caller how much buffer space was actually used compared to how much buffer space the caller allocated and specified in the MoveRectsBufferSize parameter.

The caller can also use the value returned at pMoveRectsBufferSizeRequired to determine the number of structures returned.

The buffer contains the list of move RECTs for the current frame.

Note??To produce a visually accurate copy of the desktop, an application must first process all move RECTs before it processes dirty RECTs.? +
+ hh404620 + HRESULT IDXGIOutputDuplication::GetFrameMoveRects([In] unsigned int MoveRectsBufferSize,[Out, Buffer] DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer,[Out] unsigned int* pMoveRectsBufferSizeRequired) + IDXGIOutputDuplication::GetFrameMoveRects +
+ + +

Gets information about the new reference shape for the current desktop frame.

+
+

The size in bytes of the buffer that the caller passed to the pPointerShapeBuffer parameter.

+

A reference to a buffer to which GetFramePointerShape copies and returns pixel data for the new reference shape.

+

Pointer to a variable that receives the number of bytes that GetFramePointerShape needs to store the new reference shape pixel data in the buffer at pPointerShapeBuffer.

For more information about returning the required buffer size, see Remarks.

+

Pointer to a structure that receives the reference shape information.

+

GetFramePointerShape returns:

  • if it successfully retrieved information about the new reference shape.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • if the buffer that the calling application provided was not big enough.
  • if the application called GetFramePointerShape without owning the desktop image.
  • E_INVALIDARG if one of the parameters to GetFramePointerShape is incorrect; for example, if pPointerShapeInfo is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

GetFramePointerShape stores a size value in the variable at pPointerShapeBufferSizeRequired. This value specifies the number of bytes that pPointerShapeBufferSizeRequired needs to store the new reference shape pixel data. You can use the value in the following situations to determine the amount of memory to allocate for future buffers that you pass to pPointerShapeBuffer:

  • GetFramePointerShape fails with because the buffer is not big enough.
  • GetFramePointerShape supplies a bigger than necessary buffer. The size value returned at pPointerShapeBufferSizeRequired informs the caller how much buffer space was actually used compared to how much buffer space the caller allocated and specified in the PointerShapeBufferSize parameter.

The pPointerShapeInfo parameter describes the new reference shape.

+
+ hh404621 + HRESULT IDXGIOutputDuplication::GetFramePointerShape([In] unsigned int PointerShapeBufferSize,[Out, Buffer] void* pPointerShapeBuffer,[Out] unsigned int* pPointerShapeBufferSizeRequired,[Out] DXGI_OUTDUPL_POINTER_SHAPE_INFO* pPointerShapeInfo) + IDXGIOutputDuplication::GetFramePointerShape +
+ + +

Provides the CPU with efficient access to a desktop image if that desktop image is already in system memory.

+
+

A reference to a structure that receives the surface data that the CPU needs to directly access the surface data.

+

MapDesktopSurface returns:

  • if it successfully retrieved the surface data.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • if the application already has an outstanding map on the desktop image. The application must call UnMapDesktopSurface before it calls MapDesktopSurface again. is also returned if the application did not own the desktop image when it called MapDesktopSurface.
  • if the desktop image is not in system memory. In this situation, the application must first transfer the image to a staging surface and then lock the image by calling the IDXGISurface::Map method.
  • E_INVALIDARG if the pLockedRect parameter is incorrect; for example, if pLockedRect is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

You can successfully call MapDesktopSurface if the DesktopImageInSystemMemory member of the structure is set to TRUE. If DesktopImageInSystemMemory is , MapDesktopSurface returns . Call IDXGIOutputDuplication::GetDesc to retrieve the structure.

+
+ hh404622 + HRESULT IDXGIOutputDuplication::MapDesktopSurface([Out] DXGI_MAPPED_RECT* pLockedRect) + IDXGIOutputDuplication::MapDesktopSurface +
+ + +

Invalidates the reference to the desktop image that was retrieved by using IDXGIOutputDuplication::MapDesktopSurface.

+
+

UnMapDesktopSurface returns:

  • if it successfully completed.
  • if the application did not map the desktop surface by calling IDXGIOutputDuplication::MapDesktopSurface.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ hh404624 + HRESULT IDXGIOutputDuplication::UnMapDesktopSurface() + IDXGIOutputDuplication::UnMapDesktopSurface +
+ + +

Indicates that the application finished processing the frame.

+
+

ReleaseFrame returns:

  • if it successfully completed.
  • if the application already released the frame.
  • if the desktop duplication interface is invalid. The desktop duplication interface typically becomes invalid when a different type of image is displayed on the desktop. Examples of this situation are:
    • Desktop switch
    • Mode change
    • Switch from DWM on, DWM off, or other full-screen application
    In this situation, the application must release the interface and create a new for the new content.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

The application must release the frame before it acquires the next frame. After the frame is released, the surface that contains the desktop bitmap becomes invalid; you will not be able to use the surface in a DirectX graphics operation.

For performance reasons, we recommend that you release the frame just before you call the IDXGIOutputDuplication::AcquireNextFrame method to acquire the next frame. When the client does not own the frame, the operating system copies all desktop updates to the surface. This can result in wasted GPU cycles if the operating system updates the same region for each frame that occurs. When the client acquires the frame, the client is aware of only the final update to this region; therefore, any overlapping updates during previous frames are wasted. When the client acquires a frame, the client owns the surface; therefore, the operating system can track only the updated regions and cannot copy desktop updates to the surface. Because of this behavior, we recommend that you minimize the time between the call to release the current frame and the call to acquire the next frame.

+
+ hh404623 + HRESULT IDXGIOutputDuplication::ReleaseFrame() + IDXGIOutputDuplication::ReleaseFrame +
+ + +

Describes information about present that helps the operating system optimize presentation.

+
+ +

This structure is used by the Present1 method.

The scroll rectangle and the list of dirty rectangles could overlap. In this situation, the dirty rectangles take priority. Applications can then have pieces of dynamic content on top of a scrolled area. For example, an application could scroll a page and play video at the same time.

The following diagram and coordinates illustrate this example.

DirtyRectsCount = 2 + pDirtyRects[ 0 ] = { 10, 30, 40, 50 } // Video + pDirtyRects[ 1 ] = { 0, 70, 50, 80 } // New line + *pScrollRect = { 0, 0, 50, 70 } + *pScrollOffset = { 0, -10 } +

Parts of the previous frame and content that the application renders are combined to produce the final frame that the operating system presents on the display screen. Most of the window is scrolled from the previous frame. The application must update the video frame with the new chunk of content that appears due to scrolling.

The dashed rectangle shows the scroll rectangle in the current frame. The scroll rectangle is specified by the pScrollRect member. + The arrow shows the scroll offset. The scroll offset is specified by the pScrollOffset member. + Filled rectangles show dirty rectangles that the application updated with new content. The filled rectangles are specified by the DirtyRectsCount and pDirtyRects members.

The scroll rectangle and offset are not supported for the DXGI_SWAP_EFFECT_DISCARD or DXGI_SWAP_EFFECT_SEQUENTIAL present option. Dirty rectangles and scroll rectangle are not supported for multisampled swap chains.

The actual implementation of composition and necessary bitblts is different for the bitblt model and the flip model. For more info about these models, see DXGI Flip Model.

For more info about the flip-model swap chain and optimizing presentation, see Enhancing presentation with the flip model, dirty rectangles, and scrolled areas.

+
+ hh404522 + DXGI_PRESENT_PARAMETERS + DXGI_PRESENT_PARAMETERS +
+ + + A list of updated rectangles that you update in the back buffer for the presented frame. An application must update every single pixel in each rectangle that it reports to the runtime; the application cannot assume that the pixels are saved from the previous frame. For more information about updating dirty rectangles, see Remarks. You can set this member to null if DirtyRectsCount is 0. An application must not update any pixel outside of the dirty rectangles. + + RECT* pDirtyRects + + + + A reference to the scrolled rectangle. The scrolled rectangle is the rectangle of the previous frame from which the runtime bit-block transfers (bitblts) content. The runtime also uses the scrolled rectangle to optimize presentation in terminal server and indirect display scenarios. + The scrolled rectangle also describes the destination rectangle, that is, the region on the current frame that is filled with scrolled content. You can set this member to null to indicate that no content is scrolled from the previous frame. + + RECT* pScrollRect + + + + A reference to the offset of the scrolled area that goes from the source rectangle (of previous frame) to the destination rectangle (of current frame). You can set this member to null to indicate no offset. + + POINT* pScrollOffset + + + +

The number of updated rectangles that you update in the back buffer for the presented frame. The operating system uses this information to optimize presentation. You can set this member to 0 to indicate that you update the whole frame.

+
+ hh404522 + DirtyRectsCount + DirtyRectsCount +
+ + +

A list of updated rectangles that you update in the back buffer for the presented frame. An application must update every single pixel in each rectangle that it reports to the runtime; the application cannot assume that the pixels are saved from the previous frame. For more information about updating dirty rectangles, see Remarks. You can set this member to null if DirtyRectsCount is 0. An application must not update any pixel outside of the dirty rectangles.

+
+ hh404522 + pDirtyRects + pDirtyRects +
+ + +

A reference to the scrolled rectangle. The scrolled rectangle is the rectangle of the previous frame from which the runtime bit-block transfers (bitblts) content. The runtime also uses the scrolled rectangle to optimize presentation in terminal server and indirect display scenarios.

The scrolled rectangle also describes the destination rectangle, that is, the region on the current frame that is filled with scrolled content. You can set this member to null to indicate that no content is scrolled from the previous frame.

+
+ hh404522 + pScrollRect + pScrollRect +
+ + +

A reference to the offset of the scrolled area that goes from the source rectangle (of previous frame) to the destination rectangle (of current frame). You can set this member to null to indicate no offset.

+
+ hh404522 + pScrollOffset + pScrollOffset +
+ + +

Represents a rational number.

+
+ +

This structure is a member of the structure.

The structure operates under the following rules:

  • 0/0 is legal and will be interpreted as 0/1.
  • 0/anything is interpreted as zero.
  • If you are representing a whole number, the denominator should be 1.
+
+ bb173069 + DXGI_RATIONAL + DXGI_RATIONAL +
+ + + An empty rational that can be used for comparisons. + + + + + Initializes a new instance of the structure. + + The numerator of the rational pair. + The denominator of the rational pair. + + + +

An unsigned integer value representing the top of the rational number.

+
+ bb173069 + Numerator + Numerator +
+ + +

An unsigned integer value representing the bottom of the rational number.

+
+ bb173069 + Denominator + Denominator +
+ + + Creates a handle to a shared resource. You can then use the returned handle with multiple Direct3D devices. + + A reference to a structure that contains two separate but related data members: an optional security descriptor, and a Boolean value that determines whether child processes can inherit the returned handle. Set this parameter to null if you want child processes that the application might create to not inherit the handle returned by CreateSharedHandle, and if you want the resource that is associated with the returned handle to get a default security descriptor. The lpSecurityDescriptor member of the structure specifies a SECURITY_DESCRIPTOR for the resource. Set this member to null if you want the runtime to assign a default security descriptor to the resource that is associated with the returned handle. + The requested access rights to the resource. In addition to the generic access rights, DXGI defines the following values: ( 0x80000000L ) - specifies read access to the resource. ( 1 ) - specifies write access to the resource. You can combine these values by using a bitwise OR operation. + The name of the resource to share. You will need the resource name if you call the method to access the shared resource by name. If you instead call the method to access the shared resource by handle, set this parameter to null. + A reference to a variable that receives the NT HANDLE value to the resource to share. You can use this handle in calls to access the resource. + + If you created the resource as shared and specified that it uses NT handles (that is, you set the flag), you must use CreateSharedHandle to get a handle for sharing. In this situation, you cannot use the method because it will fail. Similarly, if you created the resource as shared and did not specify that it uses NT handles, you cannot use CreateSharedHandle to get a handle for sharing because CreateSharedHandle will fail.You can pass the handle that CreateSharedHandle returns in a call to the or method to give a device access to a shared resource that you created on a different device.CreateSharedHandle only returns the NT handle when you created the resource as shared (that is, you set the and flags).Because the handle that CreateSharedHandle returns is an NT handle, you can use the handle with CloseHandle, DuplicateHandle, and so on. You can call CreateSharedHandle only once for a shared resource; later calls fail. If you need more handles to the same shared resource, call DuplicateHandle. When you no longer need the shared resource handle, call CloseHandle to close the handle, in order to avoid memory leaks.The creator of a shared resource must not destroy the resource until all entities that opened the resource have destroyed the resource. The validity of the handle is tied to the lifetime of the underlying video memory. If no resource objects exist on any devices that refer to this resource, the handle is no longer valid. To extend the lifetime of the handle and video memory, you must open the shared resource on a device. + + HRESULT IDXGIResource1::CreateSharedHandle([In, Optional] const SECURITY_ATTRIBUTES* pAttributes,[In] DXGI_SHARED_RESOURCE_FLAGS dwAccess,[In, Optional] const wchar_t* name,[Out] void** pHandle) + + + +

Creates a subresource surface object.

+
+

The index of the subresource surface object to enumerate.

+

The address of a reference to a interface that represents the created subresource surface object at the position specified by the index parameter.

+

Returns if successful; otherwise, returns one of the following values:

  • if the index is out of range or if the subresource is not a valid surface.
  • E_OUTOFMEMORY if insufficient memory is available to create the subresource surface object.

A subresource is a valid surface if the original resource would have been a valid surface had its array size been equal to 1.

+ +

Subresource surface objects implement the interface, which inherits from and indirectly . Therefore, the GDI-interoperable methods of work if the original resource interface object was created with the GDI-interoperable flag (D3D11_RESOURCE_MISC_GDI_COMPATIBLE).

CreateSubresourceSurface creates a subresource surface that is based on the resource interface on which CreateSubresourceSurface is called. For example, if the original resource interface object is a 2D texture, the created subresource surface is also a 2D texture.

You can use CreateSubresourceSurface to create parts of a stereo resource so you can use Direct2D on either the left or right part of the stereo resource.

+
+ hh404627 + HRESULT IDXGIResource1::CreateSubresourceSurface([In] unsigned int index,[Out, Fast] IDXGISurface2** ppSurface) + IDXGIResource1::CreateSubresourceSurface +
+ + +

Creates a handle to a shared resource. You can then use the returned handle with multiple Direct3D devices.

+
+

A reference to a structure that contains two separate but related data members: an optional security descriptor, and a Boolean value that determines whether child processes can inherit the returned handle.

Set this parameter to null if you want child processes that the application might create to not inherit the handle returned by CreateSharedHandle, and if you want the resource that is associated with the returned handle to get a default security descriptor.

The lpSecurityDescriptor member of the structure specifies a SECURITY_DESCRIPTOR for the resource. Set this member to null if you want the runtime to assign a default security descriptor to the resource that is associated with the returned handle. The ACLs in the default security descriptor for the resource come from the primary or impersonation token of the creator. For more info, see Synchronization Object Security and Access Rights.

+

The requested access rights to the resource. In addition to the generic access rights, DXGI defines the following values:

  • DXGI_SHARED_RESOURCE_READ ( 0x80000000L ) - specifies read access to the resource.
  • DXGI_SHARED_RESOURCE_WRITE ( 1 ) - specifies write access to the resource.

You can combine these values by using a bitwise OR operation.

+

The name of the resource to share. The name is limited to MAX_PATH characters. Name comparison is case sensitive. You will need the resource name if you call the ID3D11Device1::OpenSharedResourceByName method to access the shared resource by name. If you instead call the ID3D11Device1::OpenSharedResource1 method to access the shared resource by handle, set this parameter to null.

If lpName matches the name of an existing resource, CreateSharedHandle fails with . This occurs because these objects share the same namespace.

The name can have a "Global\" or "Local\" prefix to explicitly create the object in the global or session namespace. The remainder of the name can contain any character except the backslash character (\). For more information, see Kernel Object Namespaces. Fast user switching is implemented using Terminal Services sessions. Kernel object names must follow the guidelines outlined for Terminal Services so that applications can support multiple users.

The object can be created in a private namespace. For more information, see Object Namespaces.

+

A reference to a variable that receives the NT HANDLE value to the resource to share. You can use this handle in calls to access the resource.

+ +

CreateSharedHandle only returns the NT handle when you created the resource as shared and specified that it uses NT handles (that is, you set the D3D11_RESOURCE_MISC_SHARED_NTHANDLE and D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flags). If you created the resource as shared and specified that it uses NT handles, you must use CreateSharedHandle to get a handle for sharing. In this situation, you can't use the IDXGIResource::GetSharedHandle method because it will fail.

You can pass the handle that CreateSharedHandle returns in a call to the ID3D11Device1::OpenSharedResource1 method to give a device access to a shared resource that you created on a different device.

Because the handle that CreateSharedHandle returns is an NT handle, you can use the handle with CloseHandle, DuplicateHandle, and so on. You can call CreateSharedHandle only once for a shared resource; later calls fail. If you need more handles to the same shared resource, call DuplicateHandle. When you no longer need the shared resource handle, call CloseHandle to close the handle, in order to avoid memory leaks.

If you pass a name for the resource to lpName when you call CreateSharedHandle to share the resource, you can subsequently pass this name in a call to the ID3D11Device1::OpenSharedResourceByName method to give another device access to the shared resource. If you use a named resource, a malicious user can use this named resource before you do and prevent your app from starting. To prevent this situation, create a randomly named resource and store the name so that it can only be obtained by an authorized user. Alternatively, you can use a file for this purpose. To limit your app to one instance per user, create a locked file in the user's profile directory.

If you created the resource as shared and did not specify that it uses NT handles, you cannot use CreateSharedHandle to get a handle for sharing because CreateSharedHandle will fail.

+
+ hh404626 + HRESULT IDXGIResource1::CreateSharedHandle([In, Optional] const SECURITY_ATTRIBUTES* pAttributes,[In] DWORD dwAccess,[In, Optional] const wchar_t* lpName,[Out] void** pHandle) + IDXGIResource1::CreateSharedHandle +
+ + +

Describes multi-sampling parameters for a resource.

+
+ +

This structure is a member of the structure.

The default sampler mode, with no anti-aliasing, has a count of 1 and a quality level of 0.

If multi-sample antialiasing is being used, all bound render targets and depth buffers must have the same sample counts and quality levels.

Differences between Direct3D 10.0 and Direct3D 10.1 and between Direct3D 10.0 and Direct3D 11:

Direct3D 10.1 has defined two standard quality levels: D3D10_STANDARD_MULTISAMPLE_PATTERN and D3D10_CENTER_MULTISAMPLE_PATTERN in the D3D10_STANDARD_MULTISAMPLE_QUALITY_LEVELS enumeration in D3D10_1.h.

Direct3D 11 has defined two standard quality levels: D3D11_STANDARD_MULTISAMPLE_PATTERN and D3D11_CENTER_MULTISAMPLE_PATTERN in the enumeration in D3D11.h.

?

+
+ bb173072 + DXGI_SAMPLE_DESC + DXGI_SAMPLE_DESC +
+ + + Initializes a new instance of the structure. + + The sample count. + The sample quality. + + + +

The number of multisamples per pixel.

+
+ bb173072 + Count + Count +
+ + +

The image quality level. The higher the quality, the lower the performance. The valid range is between zero and one less than the level returned by ID3D10Device::CheckMultisampleQualityLevels for Direct3D 10 or ID3D11Device::CheckMultisampleQualityLevels for Direct3D 11.

For Direct3D 10.1 and Direct3D 11, you can use two special quality level values. For more information about these quality level values, see Remarks.

+
+ bb173072 + Quality + Quality +
+ + + Acquires access to the surface data. + + Flags specifying CPU access permissions. + A for accessing the mapped data, or null on failure.. + + + + Acquires access to the surface data. + + Flags specifying CPU access permissions. + Stream to contain the surface data. + A for accessing the mapped data, or null on failure.. + + + + Gets a swap chain back buffer. + + The swap chain to get the buffer from. + The index of the desired buffer. + The buffer interface, or null on failure. + + + +

Get a description of the surface.

+
+ bb174566 + GetDesc + GetDesc +
+ + +

Get a description of the surface.

+
+

A reference to the surface description (see ).

+

Returns if successful; otherwise, returns one of the error codes that are described in the DXGI_ERROR topic.

+ bb174566 + HRESULT IDXGISurface::GetDesc([Out] DXGI_SURFACE_DESC* pDesc) + IDXGISurface::GetDesc +
+ + +

Get a reference to the data contained in the surface, and deny GPU access to the surface.

+
+

A reference to the surface data (see ).

+

CPU read-write flags. These flags can be combined with a logical OR.

  • DXGI_MAP_READ - Allow CPU read access.
  • DXGI_MAP_WRITE - Allow CPU write access.
  • DXGI_MAP_DISCARD - Discard the previous contents of a resource when it is mapped.
+

Returns if successful; otherwise, returns one of the error codes that are described in the DXGI_ERROR topic.

+ +

Use IDXGISurface::Map to access a surface from the CPU. To release a mapped surface (and allow GPU access) call IDXGISurface::Unmap.

+
+ bb174567 + HRESULT IDXGISurface::Map([Out] DXGI_MAPPED_RECT* pLockedRect,[In] unsigned int MapFlags) + IDXGISurface::Map +
+ + +

Get a reference to the data contained in the surface, and deny GPU access to the surface.

+
+

Returns if successful; otherwise, returns one of the error codes that are described in the DXGI_ERROR topic.

+ +

Use IDXGISurface::Map to access a surface from the CPU. To release a mapped surface (and allow GPU access) call IDXGISurface::Unmap.

+
+ bb174567 + HRESULT IDXGISurface::Unmap() + IDXGISurface::Unmap +
+ + + Releases the GDI device context (DC) associated with the current surface and allows rendering using Direct3D. The whole surface to be considered dirty. + + + Use the ReleaseDC method to release the DC and indicate that your application has finished all GDI rendering to this surface. You must call the ReleaseDC method before you perform addition rendering using Direct3D. Prior to resizing buffers all outstanding DCs must be released. + + If the method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code. + HRESULT IDXGISurface1::ReleaseDC([In, Optional] RECT* pDirtyRect) + + + + Releases the GDI device context (DC) associated with the current surface and allows rendering using Direct3D. + + + Use the ReleaseDC method to release the DC and indicate that your application has finished all GDI rendering to this surface. You must call the ReleaseDC method before you perform addition rendering using Direct3D. Prior to resizing buffers all outstanding DCs must be released. + + A reference to a structure that identifies the dirty region of the surface. A dirty region is any part of the surface that you have used for GDI rendering and that you want to preserve. This is used as a performance hint to graphics subsystem in certain scenarios. Do not use this parameter to restrict rendering to the specified rectangular region. The area specified by the will be used as a performance hint to indicate what areas have been manipulated by GDI rendering. + If the method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code. + HRESULT IDXGISurface1::ReleaseDC([In, Optional] RECT* pDirtyRect) + + + +

Returns a device context (DC) that allows you to render to a Microsoft DirectX Graphics Infrastructure (DXGI) surface using Windows Graphics Device Interface (GDI).

+
+

A Boolean value that specifies whether to preserve Direct3D contents in the GDI DC. TRUE directs the runtime not to preserve Direct3D contents in the GDI DC; that is, the runtime discards the Direct3D contents. guarantees that Direct3D contents are available in the GDI DC.

+

A reference to an handle that represents the current device context for GDI rendering.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

After you use the GetDC method to retrieve a DC, you can render to the DXGI surface by using GDI. The GetDC method readies the surface for GDI rendering and allows inter-operation between DXGI and GDI technologies.

Keep the following in mind when using this method:

  • You must create the surface by using the D3D11_RESOURCE_MISC_GDI_COMPATIBLE flag for a surface or by using the DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE flag for swap chains, otherwise this method fails.
  • You must release the device and call the IDXGISurface1::ReleaseDC method before you issue any new Direct3D commands.
  • This method fails if an outstanding DC has already been created by this method.
  • The format for the surface or swap chain must be DXGI_FORMAT_B8G8R8A8_UNORM_SRGB or DXGI_FORMAT_B8G8R8A8_UNORM.
  • On GetDC, the render target in the output merger of the Direct3D pipeline is unbound from the surface. You must call the ID3D11DeviceContext::OMSetRenderTargets method on the device prior to Direct3D rendering after GDI rendering.
  • Prior to resizing buffers you must release all outstanding DCs.

You can also call GetDC on the back buffer at index 0 of a swap chain by obtaining an from the swap chain. The following code illustrates the process.

 * g_pSwapChain = null;
+            * g_pSurface1 = null;
+            ...
+            //Setup the device and and swapchain
+            g_pSwapChain->GetBuffer(0, __uuidof(), (void**) &g_pSurface1);
+            g_pSurface1->GetDC( , &g_hDC );
+            ...      
+            //Draw on the DC using GDI
+            ...
+            //When finish drawing release the DC
+            g_pSurface1->ReleaseDC( null ); 
+
+ ff471345 + HRESULT IDXGISurface1::GetDC([In] BOOL Discard,[Out] HDC* phdc) + IDXGISurface1::GetDC +
+ + +

Releases the GDI device context (DC) that is associated with the current surface and allows you to use Direct3D to render.

+
+

A reference to a structure that identifies the dirty region of the surface. A dirty region is any part of the surface that you used for GDI rendering and that you want to preserve. This area is used as a performance hint to graphics subsystem in certain scenarios. Do not use this parameter to restrict rendering to the specified rectangular region. If you pass in null, ReleaseDC considers the whole surface as dirty. Otherwise, ReleaseDC uses the area specified by the as a performance hint to indicate what areas have been manipulated by GDI rendering.

You can pass a reference to an empty structure (a rectangle with no position or area) if you didn't change any content.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Use the ReleaseDC method to release the DC and indicate that your application finished all GDI rendering to this surface. You must call the ReleaseDC method before you can use Direct3D to perform additional rendering.

Prior to resizing buffers you must release all outstanding DCs.

+
+ ff471346 + HRESULT IDXGISurface1::ReleaseDC([In, Optional] RECT* pDirtyRect) + IDXGISurface1::ReleaseDC +
+ + + Initializes a new sub resource surface instance of class. + + + + + + +

Gets the parent resource and subresource index that support a subresource surface.

+
+

The globally unique identifier () of the requested interface type.

+

A reference to a buffer that receives a reference to the parent resource object for the subresource surface.

+

A reference to a variable that receives the index of the subresource surface.

+

Returns if successful; otherwise, returns one of the following values:

  • E_NOINTERFACE if the object does not implement the that the riid parameter specifies.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

For subresource surface objects that the IDXGIResource1::CreateSubresourceSurface method creates, GetResource simply returns the values that were used to create the subresource surface.

Current objects that implement are either resources or views. GetResource for these objects returns ?this? or the resource that supports the view respectively. In this situation, the subresource index is 0.

+
+ hh404629 + HRESULT IDXGISurface2::GetResource([In] const GUID& riid,[Out] void** ppParentResource,[Out] unsigned int* pSubresourceIndex) + IDXGISurface2::GetResource +
+ + + Creates a swap chain. + + + If you attempt to create a swap chain in full-screen mode, and full-screen mode is unavailable, the swap chain will be created in windowed mode and DXGI_STATUS_OCCLUDED will be returned. If the buffer width or the buffer height are zero, the sizes will be inferred from the output window size in the swap-chain description. Since the target output cannot be chosen explicitly when the swap-chain is created, you should not create a full-screen swap chain. This can reduce presentation performance if the swap chain size and the output window size do not match. Here are two ways to ensure the sizes match: Create a windowed swap chain and then set it full-screen using . Save a reference to the swap-chain immediately after creation, and use it to get the output window size during a WM_SIZE event. Then resize the swap chain buffers (with ) during the transition from windowed to full-screen. If the swap chain is in full-screen mode, before you release it, you must use {{SetFullscreenState}} to switch it to windowed mode. For more information about releasing a swap chain, see the Destroying a Swap Chain section of {{DXGI Overview}}. + + a reference to a . + A reference to the device that will write 2D images to the swap chain. + A reference to the swap-chain description (see ). + HRESULT IDXGIFactory::CreateSwapChain([In] IUnknown* pDevice,[In] DXGI_SWAP_CHAIN_DESC* pDesc,[Out] IDXGISwapChain** ppSwapChain) + bb174537 + HRESULT IDXGIFactory::CreateSwapChain([In] IUnknown* pDevice,[In] DXGI_SWAP_CHAIN_DESC* pDesc,[Out, Fast] IDXGISwapChain** ppSwapChain) + IDXGIFactory::CreateSwapChain + + + + Access one of the swap-chain back buffers. + + The interface of the surface to resolve from the back buffer + A zero-based buffer index. If the swap effect is not DXGI_SWAP_EFFECT_SEQUENTIAL, this method only has access to the first buffer; for this case, set the index to zero. + + Returns a reference to a back-buffer interface. + + bb174570 + HRESULT IDXGISwapChain::GetBuffer([In] unsigned int Buffer,[In] const GUID& riid,[Out] void** ppSurface) + IDXGISwapChain::GetBuffer + + + +

Gets performance statistics about the last render frame.

+
+ +

You cannot use GetFrameStatistics for swap chains that both use the bit-block transfer (bitblt) presentation model and draw in windowed mode.

You can only use GetFrameStatistics for swap chains that either use the flip presentation model or draw in full-screen mode. You set the value in the SwapEffect member of the structure to specify that the swap chain uses the flip presentation model.

+
+ + bb174573 + GetFrameStatistics + GetFrameStatistics + HRESULT IDXGISwapChain::GetFrameStatistics([Out] DXGI_FRAME_STATISTICS* pStats) +
+ + + Gets or sets a value indicating whether the swapchain is in fullscreen. + + + true if this swapchain is in fullscreen; otherwise, false. + + bb174574 + HRESULT IDXGISwapChain::GetFullscreenState([Out] BOOL* pFullscreen,[Out] IDXGIOutput** ppTarget) + IDXGISwapChain::GetFullscreenState + + + +

[Starting with Direct3D 11.1, we recommend not to use Present anymore to present a rendered image. Instead, use . For more info, see Remarks.]

Presents a rendered image to the user.

+
+ No documentation. + No documentation. +

Possible return values include: , or (see DXGI_ERROR), (see ), or D3DDDIERR_DEVICEREMOVED.

Note??The Present method can return either or D3DDDIERR_DEVICEREMOVED if a video card has been physically removed from the computer, or a driver upgrade for the video card has occurred.

+ +

Starting with Direct3D 11.1, we recommend to instead use because you can then use dirty rectangles and the scroll rectangle in the swap chain presentation and as such use less memory bandwidth and as a result less system power. For more info about using dirty rectangles and the scroll rectangle in swap chain presentation, see Using dirty rectangles and the scroll rectangle in swap chain presentation.

For the best performance when flipping swap-chain buffers in a full-screen application, see Full-Screen Application Performance Hints.

Because calling Present might cause the render thread to wait on the message-pump thread, be careful when calling this method in an application that uses multiple threads. For more details, see Multithreading Considerations.

Differences between Direct3D 9 and Direct3D 10:

Specifying in the Flags parameter is analogous to IDirect3DDevice9::TestCooperativeLevel in Direct3D 9.

?

For flip presentation model swap chains that you create with the value set, a successful presentation unbinds back buffer 0 from the graphics pipeline, except for when you pass the flag in the Flags parameter.

For info about how data values change when you present content to the screen, see Converting data for the color space.

+
+ + bb174576 + HRESULT IDXGISwapChain::Present([In] unsigned int SyncInterval,[In] DXGI_PRESENT_FLAGS Flags) + IDXGISwapChain::Present +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetDesc anymore to get a description of the swap chain. Instead, use IDXGISwapChain1::GetDesc1.]

Get a description of the swap chain.

+
+ bb174572 + GetDesc + GetDesc +
+ + +

Get the output (the display monitor) that contains the majority of the client area of the target window.

+
+ +

If the method succeeds, the output interface will be filled and its reference count incremented. When you are finished with it, be sure to release the interface to avoid a memory leak.

The output is also owned by the adapter on which the swap chain's device was created.

You cannot call GetContainingOutput on a swap chain that you created with IDXGIFactory2::CreateSwapChainForComposition.

+
+ bb174571 + GetContainingOutput + GetContainingOutput +
+ + +

Gets the number of times that IDXGISwapChain::Present or IDXGISwapChain1::Present1 has been called.

+
+ +

For info about presentation statistics for a frame, see .

+
+ bb174575 + GetLastPresentCount + GetLastPresentCount +
+ + +

Presents a rendered image to the user.

+
+

An integer that specifies how to synchronize presentation of a frame with the vertical blank.

For the bit-block transfer (bitblt) model (DXGI_SWAP_EFFECT_DISCARD or DXGI_SWAP_EFFECT_SEQUENTIAL), values are:

  • 0 - The presentation occurs immediately, there is no synchronization.
  • 1 through 4 - Synchronize presentation after the nth vertical blank.

For the flip model (DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL), values are:

  • 0 - Cancel the remaining time on the previously presented frame and discard this frame if a newer frame is queued.
  • 1 through 4 - Synchronize presentation for at least n vertical blanks.

For an example that shows how sync-interval values affect a flip presentation queue, see Remarks.

If the update region straddles more than one output (each represented by ), Present performs the synchronization to the output that contains the largest sub-rectangle of the target window's client area.

+

An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants.

+

Possible return values include: , or (see DXGI_ERROR), DXGI_STATUS_OCCLUDED (see ), or D3DDDIERR_DEVICEREMOVED.

Note??The Present method can return either or D3DDDIERR_DEVICEREMOVED if a video card has been physically removed from the computer, or a driver upgrade for the video card has occurred.?
+ +

Starting with Direct3D 11.1, consider using IDXGISwapChain1::Present1 because you can then use dirty rectangles and the scroll rectangle in the swap chain presentation and as such use less memory bandwidth and as a result less system power. For more info about using dirty rectangles and the scroll rectangle in swap chain presentation, see Using dirty rectangles and the scroll rectangle in swap chain presentation.

For the best performance when flipping swap-chain buffers in a full-screen application, see Full-Screen Application Performance Hints.

Because calling Present might cause the render thread to wait on the message-pump thread, be careful when calling this method in an application that uses multiple threads. For more details, see Multithreading Considerations.

Differences between Direct3D 9 and Direct3D 10:

Specifying DXGI_PRESENT_TEST in the Flags parameter is analogous to IDirect3DDevice9::TestCooperativeLevel in Direct3D 9.

?

For flip presentation model swap chains that you create with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value set, a successful presentation unbinds back buffer 0 from the graphics pipeline, except for when you pass the DXGI_PRESENT_DO_NOT_SEQUENCE flag in the Flags parameter.

For info about how data values change when you present content to the screen, see Converting data for the color space.

+
+ bb174576 + HRESULT IDXGISwapChain::Present([In] unsigned int SyncInterval,[In] unsigned int Flags) + IDXGISwapChain::Present +
+ + +

Accesses one of the swap-chain's back buffers.

+
+

A zero-based buffer index.

If the swap chain's swap effect is DXGI_SWAP_EFFECT_DISCARD, this method can only access the first buffer; for this situation, set the index to zero.

If the swap chain's swap effect is either DXGI_SWAP_EFFECT_SEQUENTIAL or DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL, only the swap chain's zero-index buffer can be read from and written to. The swap chain's buffers with indexes greater than zero can only be read from; so if you call the IDXGIResource::GetUsage method for such buffers, they have the DXGI_USAGE_READ_ONLY flag set.

+

The type of interface used to manipulate the buffer.

+

A reference to a back-buffer interface.

+

Returns one of the following DXGI_ERROR.

+ bb174570 + HRESULT IDXGISwapChain::GetBuffer([In] unsigned int Buffer,[In] const GUID& riid,[Out] void** ppSurface) + IDXGISwapChain::GetBuffer +
+ + +

Sets the display state to windowed or full screen.

+
+

A Boolean value that specifies whether to set the display state to windowed or full screen. TRUE for full screen, and for windowed.

+

If you pass TRUE to the Fullscreen parameter to set the display state to full screen, you can optionally set this parameter to a reference to an interface for the output target that contains the swap chain. If you set this parameter to null, DXGI will choose the output based on the swap-chain's device and the output window's placement. If you pass to Fullscreen, you must set this parameter to null.

+

This methods returns:

  • if the action succeeded and the swap chain was placed in the requested state.
  • if the action failed. There are many reasons why a windowed-mode swap chain cannot switch to full-screen mode. For instance:
    • The application is running over Terminal Server.
    • The output window is occluded.
    • The output window does not have keyboard focus.
    • Another application is already in full-screen mode.

    When this error is returned, an application can continue to run in windowed mode and try to switch to full-screen mode later.

  • DXGI_STATUS_MODE_CHANGE_IN_PROGRESS is returned if a fullscreen/windowed mode transition is occurring when this API is called.
  • Other error codes if you run out of memory or encounter another unexpected fault; these codes may be treated as hard, non-continuable errors.
+ +

DXGI may change the display state of a swap chain in response to end user or system requests.

We recommend that you create a windowed swap chain and allow the end user to change the swap chain to full screen through SetFullscreenState; that is, do not set the Windowed member of to to force the swap chain to be full screen. However, if you create the swap chain as full screen, also provide the end user with a list of supported display modes because a swap chain that is created with an unsupported display mode might cause the display to go black and prevent the end user from seeing anything. Also, we recommend that you have a time-out confirmation screen or other fallback mechanism when you allow the end user to change display modes.

+
+ bb174579 + HRESULT IDXGISwapChain::SetFullscreenState([In] BOOL Fullscreen,[In, Optional] IDXGIOutput* pTarget) + IDXGISwapChain::SetFullscreenState +
+ + +

Get the state associated with full-screen mode.

+
+

A reference to a boolean whose value is either:

  • TRUE if the swap chain is in full-screen mode
  • if the swap chain is in windowed mode
+

A reference to the output target (see ) when the mode is full screen; otherwise null.

+

Returns one of the following DXGI_ERROR.

+ +

When the swap chain is in full-screen mode, a reference to the target output will be returned and its reference count will be incremented.

+
+ bb174574 + HRESULT IDXGISwapChain::GetFullscreenState([Out, Optional] BOOL* pFullscreen,[Out, Optional] IDXGIOutput** ppTarget) + IDXGISwapChain::GetFullscreenState +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetDesc anymore to get a description of the swap chain. Instead, use IDXGISwapChain1::GetDesc1.]

Get a description of the swap chain.

+
+ No documentation. +

Returns one of the following DXGI_ERROR.

+ bb174572 + HRESULT IDXGISwapChain::GetDesc([Out] DXGI_SWAP_CHAIN_DESC* pDesc) + IDXGISwapChain::GetDesc +
+ + +

Changes the swap chain's back buffer size, format, and number of buffers. This should be called when the application window is resized.

+
+

The number of buffers in the swap chain (including all back and front buffers). This number can be different from the number of buffers with which you created the swap chain. This number can't be greater than DXGI_MAX_SWAP_CHAIN_BUFFERS. Set this number to zero to preserve the existing number of buffers in the swap chain. You can't specify less than two buffers for the flip presentation model.

+

The new width of the back buffer. If you specify zero, DXGI will use the width of the client area of the target window. You can't specify the width as zero if you called the IDXGIFactory2::CreateSwapChainForComposition method to create the swap chain for a composition surface.

+

The new height of the back buffer. If you specify zero, DXGI will use the height of the client area of the target window. You can't specify the height as zero if you called the IDXGIFactory2::CreateSwapChainForComposition method to create the swap chain for a composition surface.

+

A -typed value for the new format of the back buffer. Set this value to DXGI_FORMAT_UNKNOWN to preserve the existing format of the back buffer. The flip presentation model supports a more restricted set of formats than the bit-block transfer (bitblt) model.

+

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for swap-chain behavior.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

You can't resize a swap chain unless you release all outstanding references to its back buffers. You must release all of its direct and indirect references on the back buffers in order for ResizeBuffers to succeed.

Direct references are held by the application after it calls AddRef on a resource.

Indirect references are held by views to a resource, binding a view of the resource to a device context, a command list that used the resource, a command list that used a view to that resource, a command list that executed another command list that used the resource, and so on.

Before you call ResizeBuffers, ensure that the application releases all references (by calling the appropriate number of Release invocations) on the resources, any views to the resource, and any command lists that use either the resources or views, and ensure that neither the resource nor a view is still bound to a device context. You can use ID3D11DeviceContext::ClearState to ensure that all references are released. If a view is bound to a deferred context, you must discard the partially built command list as well (by calling ID3D11DeviceContext::ClearState, then ID3D11DeviceContext::FinishCommandList, then Release on the command list). After you call ResizeBuffers, you can re-query interfaces via IDXGISwapChain::GetBuffer.

For swap chains that you created with DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE, before you call ResizeBuffers, also call IDXGISurface1::ReleaseDC on the swap chain's back-buffer surface to ensure that you have no outstanding GDI device contexts (DCs) open.

We recommend that you call ResizeBuffers when a client window is resized (that is, when an application receives a WM_SIZE message).

The only difference between IDXGISwapChain::ResizeBuffers in Windows?8 versus Windows?7 is with flip presentation model swap chains that you create with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL or DXGI_SWAP_EFFECT_FLIP_DISCARD value set. In Windows?8, you must call ResizeBuffers to realize a transition between full-screen mode and windowed mode; otherwise, your next call to the IDXGISwapChain::Present method fails.

+
+ bb174577 + HRESULT IDXGISwapChain::ResizeBuffers([In] unsigned int BufferCount,[In] unsigned int Width,[In] unsigned int Height,[In] DXGI_FORMAT NewFormat,[In] unsigned int SwapChainFlags) + IDXGISwapChain::ResizeBuffers +
+ + +

Resizes the output target.

+
+

A reference to a structure that describes the mode, which specifies the new width, height, format, and refresh rate of the target. If the format is DXGI_FORMAT_UNKNOWN, ResizeTarget uses the existing format. We only recommend that you use DXGI_FORMAT_UNKNOWN when the swap chain is in full-screen mode as this method is not thread safe.

+

Returns a code that indicates success or failure. DXGI_STATUS_MODE_CHANGE_IN_PROGRESS is returned if a full-screen/windowed mode transition is occurring when this API is called. See DXGI_ERROR for additional DXGI error codes.

+ +

ResizeTarget resizes the target window when the swap chain is in windowed mode, and changes the display mode on the target output when the swap chain is in full-screen mode. Therefore, apps can call ResizeTarget to resize the target window (rather than a Microsoft Win32API such as SetWindowPos) without knowledge of the swap chain display mode.

If a Windows Store app calls ResizeTarget, it fails with .

You cannot call ResizeTarget on a swap chain that you created with IDXGIFactory2::CreateSwapChainForComposition.

Apps must still call IDXGISwapChain::ResizeBuffers after they call ResizeTarget because only ResizeBuffers can change the back buffers. But, if those apps have implemented window resize processing to call ResizeBuffers, they don't need to explicitly call ResizeBuffers after they call ResizeTarget because the window resize processing will achieve what the app requires.

+
+ bb174578 + HRESULT IDXGISwapChain::ResizeTarget([In] const DXGI_MODE_DESC* pNewTargetParameters) + IDXGISwapChain::ResizeTarget +
+ + +

Get the output (the display monitor) that contains the majority of the client area of the target window.

+
+

A reference to the output interface (see ).

+

Returns one of the following DXGI_ERROR.

+ +

If the method succeeds, the output interface will be filled and its reference count incremented. When you are finished with it, be sure to release the interface to avoid a memory leak.

The output is also owned by the adapter on which the swap chain's device was created.

You cannot call GetContainingOutput on a swap chain that you created with IDXGIFactory2::CreateSwapChainForComposition.

+
+ bb174571 + HRESULT IDXGISwapChain::GetContainingOutput([Out] IDXGIOutput** ppOutput) + IDXGISwapChain::GetContainingOutput +
+ + +

Gets performance statistics about the last render frame.

+
+

A reference to a structure for the frame statistics.

+

Returns one of the DXGI_ERROR values.

+ +

You cannot use GetFrameStatistics for swap chains that both use the bit-block transfer (bitblt) presentation model and draw in windowed mode.

You can only use GetFrameStatistics for swap chains that either use the flip presentation model or draw in full-screen mode. You set the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value in the SwapEffect member of the structure to specify that the swap chain uses the flip presentation model.

+
+ bb174573 + HRESULT IDXGISwapChain::GetFrameStatistics([Out] DXGI_FRAME_STATISTICS* pStats) + IDXGISwapChain::GetFrameStatistics +
+ + +

Gets the number of times that IDXGISwapChain::Present or IDXGISwapChain1::Present1 has been called.

+
+ No documentation. +

Returns one of the DXGI_ERROR values.

+ +

For info about presentation statistics for a frame, see .

+
+ bb174575 + HRESULT IDXGISwapChain::GetLastPresentCount([Out] unsigned int* pLastPresentCount) + IDXGISwapChain::GetLastPresentCount +
+ + + Creates a swapchain associated to the specified HWND. This is applicable only for Desktop platform. + + The DXGI Factory used to create the swapchain. + The associated device instance. + The HWND of the window to which this swapchain is associated. + The swap chain description. + The fullscreen description of the swap chain. Default is null. + The output to which this swap chain should be restricted. Default is null, meaning that there is no restriction. + + + + Creates a swapchain associated to the specified CoreWindow. This is applicable only for WinRT platform. + + The DXGI Factory used to create the swapchain. + The associated device instance. + The HWND of the window to which this swapchain is associated. + The swap chain description. + The output to which this swap chain should be restricted. Default is null, meaning that there is no restriction. + + + + Creates a swapchain for DirectComposition API or WinRT XAML framework. This is applicable only for WinRT platform. + + The DXGI Factory used to create the swapchain. + The associated device instance. + The swap chain description. + The output to which this swap chain should be restricted. Default is null, meaning that there is no restriction. + + + + Presents a frame on the display screen, internally using the Present1 method. + + An integer that specifies how to synchronize presentation of a frame with the vertical blank. For the bit-block transfer (bitblt) model, values are: 0 - The presentation occurs immediately, there is no synchronization. 1,2,3,4 - Synchronize presentation after the nth vertical blank. For the flip model, values are: 0 - Discard this frame if you submitted a more recent presentation. n > 0 - Synchronize presentation for at least n vertical blanks. For an example that shows how sync-interval values affect a flip presentation queue, see Remarks. If the update region straddles more than one output (each represented by ), Present1 performs the synchronization to the output that contains the largest subrectangle of the target window's client area. + An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants. + A reference to a structure that describes updated rectangles and scroll information of the frame to present. + Possible return values include: , , , , or E_OUTOFMEMORY. + + An application can use Present1 to optimize presentation by specifying scroll and dirty rectangles. When the runtime has information about these rectangles, the runtime can then perform necessary bitblts during presentation more efficiently and pass this metadata to the Desktop Window Manager (DWM). The DWM can then use the metadata to optimize presentation and pass the metadata to indirect displays and terminal servers to optimize traffic over the wire. An application must confine its modifications to only the dirty regions that it passes to Present1, as well as modify the entire dirty region to avoid undefined resource contents from being exposed.For flip presentation model swap chains that you create with the value set, a successful presentation results in an unbind of back buffer 0 from the graphics pipeline, except for when you pass the flag in the Flags parameter.Flip presentation model queueSuppose the following frames with sync-interval values are queued from oldest (A) to newest (E) before you call Present1.A: 3, B: 0, C: 0, D: 1, E: 0When you call Present1, the runtime shows frame A for 3 vertical blank intervals, then frame D for 1 vertical blank interval, and then frame E until you submit a new presentation. The runtime discards frames C and D. + + + HRESULT IDXGISwapChain1::Present1([In] unsigned int SyncInterval,[In] unsigned int PresentFlags,[In] const void* pPresentParameters) + + + +

Gets a description of the swap chain.

+
+ hh404640 + GetDesc1 + GetDesc1 +
+ + +

Gets a description of a full-screen swap chain.

+
+ +

The semantics of GetFullscreenDesc are identical to that of the IDXGISwapchain::GetDesc method for -based swap chains.

+
+ hh404644 + GetFullscreenDesc + GetFullscreenDesc +
+ + +

Retrieves the underlying for this swap-chain object.

+
+ +

Applications call the IDXGIFactory2::CreateSwapChainForHwnd method to create a swap chain that is associated with an .

+
+ hh404647 + GetHwnd + GetHwnd +
+ + +

Determines whether a swap chain supports ?temporary mono.?

+
+ +

Temporary mono is a feature where a stereo swap chain can be presented using only the content in the left buffer. To present using the left buffer as a mono buffer, an application calls the IDXGISwapChain1::Present1 method with the DXGI_PRESENT_STEREO_TEMPORARY_MONO flag. All windowed swap chains support temporary mono. However, full-screen swap chains optionally support temporary mono because not all hardware supports temporary mono on full-screen swap chains efficiently.

+
+ hh446794 + IsTemporaryMonoSupported + IsTemporaryMonoSupported +
+ + +

Gets the output (the display monitor) to which you can restrict the contents of a present operation.

+
+ +

If the method succeeds, the runtime fills the buffer at ppRestrictToOutput with a reference to the restrict-to output interface. This restrict-to output interface has its reference count incremented. When you are finished with it, be sure to release the interface to avoid a memory leak.

The output is also owned by the adapter on which the swap chain's device was created.

+
+ hh446788 + GetRestrictToOutput + GetRestrictToOutput +
+ + +

Retrieves or sets the background color of the swap chain.

+
+ + Note??The background color that GetBackgroundColor retrieves does not indicate what the screen currently displays. The background color indicates what the screen will display with your next call to the IDXGISwapChain1::Present1 method. The default value of the background color is black with full opacity: 0,0,0,1.? + + hh404634 + GetBackgroundColor / SetBackgroundColor + GetBackgroundColor +
+ + +

Gets or sets the rotation of the back buffers for the swap chain.

+
+ hh446791 + GetRotation / SetRotation + GetRotation +
+ + +

Gets a description of the swap chain.

+
+

A reference to a structure that describes the swap chain.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ hh404640 + HRESULT IDXGISwapChain1::GetDesc1([Out] DXGI_SWAP_CHAIN_DESC1* pDesc) + IDXGISwapChain1::GetDesc1 +
+ + +

Gets a description of a full-screen swap chain.

+
+

A reference to a structure that describes the full-screen swap chain.

+

GetFullscreenDesc returns:

  • if it successfully retrieved the description of the full-screen swap chain.
  • for non- swap chains or if pDesc is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ +

The semantics of GetFullscreenDesc are identical to that of the IDXGISwapchain::GetDesc method for -based swap chains.

+
+ hh404644 + HRESULT IDXGISwapChain1::GetFullscreenDesc([Out] DXGI_SWAP_CHAIN_FULLSCREEN_DESC* pDesc) + IDXGISwapChain1::GetFullscreenDesc +
+ + +

Retrieves the underlying for this swap-chain object.

+
+ No documentation. +

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

If pHwnd receives null (that is, the swap chain is not -based), GetHwnd returns .

+ +

Applications call the IDXGIFactory2::CreateSwapChainForHwnd method to create a swap chain that is associated with an .

+
+ hh404647 + HRESULT IDXGISwapChain1::GetHwnd([Out] HWND* pHwnd) + IDXGISwapChain1::GetHwnd +
+ + +

Retrieves the underlying CoreWindow object for this swap-chain object.

+
+ No documentation. + No documentation. +

GetCoreWindow returns:

  • if it successfully retrieved the underlying CoreWindow object.
  • if ppUnk is null; that is, the swap chain is not associated with a CoreWindow object.
  • Any that a call to QueryInterface to query for an CoreWindow object might typically return.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, GetCoreWindow fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

Applications call the IDXGIFactory2::CreateSwapChainForCoreWindow method to create a swap chain that is associated with an CoreWindow object.

+
+ hh404650 + HRESULT IDXGISwapChain1::GetCoreWindow([In] const GUID& refiid,[Out] void** ppUnk) + IDXGISwapChain1::GetCoreWindow +
+ + +

Presents a frame on the display screen.

+
+

An integer that specifies how to synchronize presentation of a frame with the vertical blank.

For the bit-block transfer (bitblt) model (DXGI_SWAP_EFFECT_DISCARD or DXGI_SWAP_EFFECT_SEQUENTIAL), values are:

  • 0 - The presentation occurs immediately, there is no synchronization.
  • 1 through 4 - Synchronize presentation after the nth vertical blank.

For the flip model (DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL), values are:

  • 0 - Cancel the remaining time on the previously presented frame and discard this frame if a newer frame is queued.
  • 1 through 4 - Synchronize presentation for at least n vertical blanks.

For an example that shows how sync-interval values affect a flip presentation queue, see Remarks.

If the update region straddles more than one output (each represented by ), Present1 performs the synchronization to the output that contains the largest sub-rectangle of the target window's client area.

+

An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants.

+

A reference to a structure that describes updated rectangles and scroll information of the frame to present.

+

Possible return values include: , , DXGI_STATUS_OCCLUDED, , or E_OUTOFMEMORY.

+ +

An app can use Present1 to optimize presentation by specifying scroll and dirty rectangles. When the runtime has information about these rectangles, the runtime can then perform necessary bitblts during presentation more efficiently and pass this metadata to the Desktop Window Manager (DWM). The DWM can then use the metadata to optimize presentation and pass the metadata to indirect displays and terminal servers to optimize traffic over the wire. An app must confine its modifications to only the dirty regions that it passes to Present1, as well as modify the entire dirty region to avoid undefined resource contents from being exposed.

For flip presentation model swap chains that you create with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value set, a successful presentation results in an unbind of back buffer 0 from the graphics pipeline, except for when you pass the DXGI_PRESENT_DO_NOT_SEQUENCE flag in the Flags parameter.

For info about how data values change when you present content to the screen, see Converting data for the color space.

For info about calling Present1 when your app uses multiple threads, see Multithread Considerations and Multithreading and DXGI.

+
+ hh446797 + HRESULT IDXGISwapChain1::Present1([In] unsigned int SyncInterval,[In] unsigned int PresentFlags,[In] const DXGI_PRESENT_PARAMETERS* pPresentParameters) + IDXGISwapChain1::Present1 +
+ + +

Determines whether a swap chain supports ?temporary mono.?

+
+

Indicates whether to use the swap chain in temporary mono mode. TRUE indicates that you can use temporary-mono mode; otherwise, .

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, IsTemporaryMonoSupported always returns because stereoscopic 3D display behavior isn?t available with the Platform Update for Windows?7. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

Temporary mono is a feature where a stereo swap chain can be presented using only the content in the left buffer. To present using the left buffer as a mono buffer, an application calls the IDXGISwapChain1::Present1 method with the DXGI_PRESENT_STEREO_TEMPORARY_MONO flag. All windowed swap chains support temporary mono. However, full-screen swap chains optionally support temporary mono because not all hardware supports temporary mono on full-screen swap chains efficiently.

+
+ hh446794 + BOOL IDXGISwapChain1::IsTemporaryMonoSupported() + IDXGISwapChain1::IsTemporaryMonoSupported +
+ + +

Gets the output (the display monitor) to which you can restrict the contents of a present operation.

+
+

A reference to a buffer that receives a reference to the interface for the restrict-to output. An application passes this reference to in a call to the IDXGIFactory2::CreateSwapChainForHwnd, IDXGIFactory2::CreateSwapChainForCoreWindow, or IDXGIFactory2::CreateSwapChainForComposition method to create the swap chain.

+

Returns if the restrict-to output was successfully retrieved; otherwise, returns E_INVALIDARG if the reference is invalid.

+ +

If the method succeeds, the runtime fills the buffer at ppRestrictToOutput with a reference to the restrict-to output interface. This restrict-to output interface has its reference count incremented. When you are finished with it, be sure to release the interface to avoid a memory leak.

The output is also owned by the adapter on which the swap chain's device was created.

+
+ hh446788 + HRESULT IDXGISwapChain1::GetRestrictToOutput([Out] IDXGIOutput** ppRestrictToOutput) + IDXGISwapChain1::GetRestrictToOutput +
+ + +

Changes the background color of the swap chain.

+
+

A reference to a DXGI_RGBA structure that specifies the background color to set.

+

SetBackgroundColor returns:

  • if it successfully set the background color.
  • E_INVALIDARG if the pColor parameter is incorrect, for example, pColor is null or any of the floating-point values of the members of DXGI_RGBA to which pColor points are outside the range from 0.0 through 1.0.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, SetBackgroundColor fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

The background color affects only swap chains that you create with DXGI_SCALING_NONE in windowed mode. You pass this value in a call to IDXGIFactory2::CreateSwapChainForHwnd, IDXGIFactory2::CreateSwapChainForCoreWindow, or IDXGIFactory2::CreateSwapChainForComposition. Typically, the background color is not visible unless the swap-chain contents are smaller than the destination window.

When you set the background color, it is not immediately realized. It takes effect in conjunction with your next call to the IDXGISwapChain1::Present1 method. The DXGI_PRESENT flags that you pass to IDXGISwapChain1::Present1 can help achieve the effect that you require. For example, if you call SetBackgroundColor and then call IDXGISwapChain1::Present1 with the Flags parameter set to DXGI_PRESENT_DO_NOT_SEQUENCE, you change only the background color without changing the displayed contents of the swap chain.

When you call the IDXGISwapChain1::Present1 method to display contents of the swap chain, IDXGISwapChain1::Present1 uses the value that is specified in the AlphaMode member of the structure to determine how to handle the a member of the DXGI_RGBA structure, the alpha value of the background color, that achieves window transparency. For example, if AlphaMode is DXGI_ALPHA_MODE_IGNORE, IDXGISwapChain1::Present1 ignores the a member of DXGI_RGBA.

Note??Like all presentation data, we recommend that you perform floating point operations in a linear color space. When the desktop is in a fixed bit color depth mode, the operating system converts linear color data to standard RGB data (sRGB, gamma 2.2 corrected space) to compose to the screen. For more info, see Converting data for the color space.? +
+ hh446799 + HRESULT IDXGISwapChain1::SetBackgroundColor([In] const D3DCOLORVALUE* pColor) + IDXGISwapChain1::SetBackgroundColor +
+ + +

Retrieves the background color of the swap chain.

+
+

A reference to a DXGI_RGBA structure that receives the background color of the swap chain.

+

GetBackgroundColor returns:

  • if it successfully retrieves the background color.
  • if the pColor parameter is invalid, for example, pColor is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ + Note??The background color that GetBackgroundColor retrieves does not indicate what the screen currently displays. The background color indicates what the screen will display with your next call to the IDXGISwapChain1::Present1 method. The default value of the background color is black with full opacity: 0,0,0,1.? + + hh404634 + HRESULT IDXGISwapChain1::GetBackgroundColor([Out] D3DCOLORVALUE* pColor) + IDXGISwapChain1::GetBackgroundColor +
+ + +

Sets the rotation of the back buffers for the swap chain.

+
+

A -typed value that specifies how to set the rotation of the back buffers for the swap chain.

+

SetRotation returns:

  • if it successfully set the rotation.
  • if the swap chain is bit-block transfer (bitblt) model. The swap chain must be flip model to successfully call SetRotation.
  • Possibly other error codes that are described in the DXGI_ERROR topic.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, SetRotation fails with . For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

You can only use SetRotation to rotate the back buffers for flip-model swap chains that you present in windowed mode.

SetRotation isn't supported for rotating the back buffers for flip-model swap chains that you present in full-screen mode. In this situation, SetRotation doesn't fail, but you must ensure that you specify no rotation (DXGI_MODE_ROTATION_IDENTITY) for the swap chain. Otherwise, when you call IDXGISwapChain1::Present1 or IDXGISwapChain::Present to present a frame, the presentation fails.

+
+ hh446801 + HRESULT IDXGISwapChain1::SetRotation([In] DXGI_MODE_ROTATION Rotation) + IDXGISwapChain1::SetRotation +
+ + +

Gets the rotation of the back buffers for the swap chain.

+
+

A reference to a variable that receives a -typed value that specifies the rotation of the back buffers for the swap chain.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, GetRotation fails with . For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ hh446791 + HRESULT IDXGISwapChain1::GetRotation([Out] DXGI_MODE_ROTATION* pRotation) + IDXGISwapChain1::GetRotation +
+ + +

[This documentation is preliminary and is subject to change.]

Gets the source region used for the swap chain.

Use GetSourceSize to get the portion of the swap chain from which the operating system presents. The source rectangle is always defined by the region [0, 0, Width, Height]. Use SetSourceSize to set this portion of the swap chain.

+
+

This method can return error codes that are described in the DXGI_ERROR topic.

+ + dn280408 + HRESULT IDXGISwapChain2::GetSourceSize([Out] unsigned int* pWidth,[Out] unsigned int* pHeight) + IDXGISwapChain2::GetSourceSize +
+ + +

Gets or sets the number of frames that the swap chain is allowed to queue for rendering.

+
+ dn268311 + GetMaximumFrameLatency / SetMaximumFrameLatency + GetMaximumFrameLatency +
+ + +

Returns a waitable handle that signals when the DXGI adapter has finished presenting a new frame.

Windows?8.1 introduces new APIs that allow lower-latency rendering by waiting until the previous frame is presented to the display before drawing the next frame. To use this method, first create the DXGI swap chain with the DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT flag set, then call GetFrameLatencyWaitableObject to retrieve the waitable handle. Use the waitable handle with WaitForSingleObjectEx to synchronize rendering of each new frame with the end of the previous frame. For every frame it renders, the app should wait on this handle before starting any rendering operations. Note that this requirement includes the first frame the app renders with the swap chain. See the DirectXLatency sample.

+
+ dn268309 + GetFrameLatencyWaitableObject + GetFrameLatencyWaitableObject +
+ + +

Gets or sets the transform matrix that will be applied to a composition swap chain upon the next present.

Starting with Windows?8.1, Windows Store apps are able to place DirectX swap chain visuals in XAML pages using the SwapChainPanel element, which can be placed and sized arbitrarily. This exposes the DirectX swap chain visuals to touch scaling and translation scenarios using touch UI. The GetMatrixTransform and SetMatrixTransform methods are used to synchronize scaling of the DirectX swap chain with its associated SwapChainPanel element. Only simple scale/translation elements in the matrix are allowed ? the call will fail if the matrix contains skew/rotation elements.

+
+ dn268310 + GetMatrixTransform / SetMatrixTransform + GetMatrixTransform +
+ + +

Sets the source region to be used for the swap chain.

Use SetSourceSize to specify the portion of the swap chain from which the operating system presents. This allows an effective resize without calling the more-expensive IDXGISwapChain::ResizeBuffers method. Prior to Windows?8.1, calling IDXGISwapChain::ResizeBuffers was the only way to resize the swap chain. The source rectangle is always defined by the region [0, 0, Width, Height].

+
+ No documentation. + No documentation. +

This method can return:

  • E_INVALIDARG if one or more parameters exceed the size of the back buffer.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ dn280409 + HRESULT IDXGISwapChain2::SetSourceSize([In] unsigned int Width,[In] unsigned int Height) + IDXGISwapChain2::SetSourceSize +
+ + +

Gets the source region used for the swap chain.

Use GetSourceSize to get the portion of the swap chain from which the operating system presents. The source rectangle is always defined by the region [0, 0, Width, Height]. Use SetSourceSize to set this portion of the swap chain.

+
+ No documentation. + No documentation. +

This method can return error codes that are described in the DXGI_ERROR topic.

+ dn280408 + HRESULT IDXGISwapChain2::GetSourceSize([Out] unsigned int* pWidth,[Out] unsigned int* pHeight) + IDXGISwapChain2::GetSourceSize +
+ + +

Sets the number of frames that the swap chain is allowed to queue for rendering.

+
+

The maximum number of back buffer frames that will be queued for the swap chain. This value is 3 by default.

+

Returns if successful; otherwise, if the device was removed.

+ +

This method is only valid for use on swap chains created with DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT. Otherwise, the result will be .

+
+ dn268313 + HRESULT IDXGISwapChain2::SetMaximumFrameLatency([In] unsigned int MaxLatency) + IDXGISwapChain2::SetMaximumFrameLatency +
+ + +

Gets the number of frames that the swap chain is allowed to queue for rendering.

+
+

The maximum number of back buffer frames that will be queued for the swap chain. This value is 1 by default, but should be set to 2 if the scene takes longer than it takes for one vertical refresh (typically about 16ms) to draw.

+

Returns if successful; otherwise, returns one of the following members of the D3DERR enumerated type:

  • D3DERR_DEVICELOST
  • D3DERR_DEVICEREMOVED
  • D3DERR_DRIVERINTERNALERROR
  • D3DERR_INVALIDCALL
  • D3DERR_OUTOFVIDEOMEMORY
+ dn268311 + HRESULT IDXGISwapChain2::GetMaximumFrameLatency([Out] unsigned int* pMaxLatency) + IDXGISwapChain2::GetMaximumFrameLatency +
+ + +

Returns a waitable handle that signals when the DXGI adapter has finished presenting a new frame.

Windows?8.1 introduces new APIs that allow lower-latency rendering by waiting until the previous frame is presented to the display before drawing the next frame. To use this method, first create the DXGI swap chain with the DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT flag set, then call GetFrameLatencyWaitableObject to retrieve the waitable handle. Use the waitable handle with WaitForSingleObjectEx to synchronize rendering of each new frame with the end of the previous frame. For every frame it renders, the app should wait on this handle before starting any rendering operations. Note that this requirement includes the first frame the app renders with the swap chain. See the DirectXLatency sample.

+
+

A handle to the waitable object, or null if the swap chain was not created with DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT.

+ dn268309 + void* IDXGISwapChain2::GetFrameLatencyWaitableObject() + IDXGISwapChain2::GetFrameLatencyWaitableObject +
+ + +

Sets the transform matrix that will be applied to a composition swap chain upon the next present.

Starting with Windows?8.1, Windows Store apps are able to place DirectX swap chain visuals in XAML pages using the SwapChainPanel element, which can be placed and sized arbitrarily. This exposes the DirectX swap chain visuals to touch scaling and translation scenarios using touch UI. The GetMatrixTransform and SetMatrixTransform methods are used to synchronize scaling of the DirectX swap chain with its associated SwapChainPanel element. Only simple scale/translation elements in the matrix are allowed ? the call will fail if the matrix contains skew/rotation elements.

+
+ No documentation. +

SetMatrixTransform returns:

  • if it successfully retrieves the transform matrix.
  • E_INVALIDARG if the pMatrix parameter is incorrect, for example, pMatrix is null or the matrix represented by includes components other than scale and translation.
  • if the method is called on a swap chain that was not created with CreateSwapChainForComposition.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ dn268312 + HRESULT IDXGISwapChain2::SetMatrixTransform([In] const DXGI_MATRIX_3X2_F* pMatrix) + IDXGISwapChain2::SetMatrixTransform +
+ + +

Gets the transform matrix that will be applied to a composition swap chain upon the next present.

Starting with Windows?8.1, Windows Store apps are able to place DirectX swap chain visuals in XAML pages using the SwapChainPanel element, which can be placed and sized arbitrarily. This exposes the DirectX swap chain visuals to touch scaling and translation scenarios using touch UI. The GetMatrixTransform and SetMatrixTransform methods are used to synchronize scaling of the DirectX swap chain with its associated SwapChainPanel element. Only simple scale/translation elements in the matrix are allowed ? the call will fail if the matrix contains skew/rotation elements.

+
+ No documentation. +

GetMatrixTransform returns:

  • if it successfully retrieves the transform matrix.
  • if the method is called on a swap chain that was not created with CreateSwapChainForComposition.
  • Possibly other error codes that are described in the DXGI_ERROR topic.
+ dn268310 + HRESULT IDXGISwapChain2::GetMatrixTransform([Out] DXGI_MATRIX_3X2_F* pMatrix) + IDXGISwapChain2::GetMatrixTransform +
+ + + Internal VirtualSurfaceUpdatesCallbackNative Callback + + + + + Get a native callback pointer from a managed callback. + + The geometry sink. + A pointer to the unmanaged geometry sink counterpart + + + +

Specifies no flags.

+
+ ff471327 + DXGI_ADAPTER_FLAG_NONE + DXGI_ADAPTER_FLAG_NONE +
+ + +

Value always set to 0. This flag is reserved.

+
+ ff471327 + DXGI_ADAPTER_FLAG_REMOTE + DXGI_ADAPTER_FLAG_REMOTE +
+ + +

Specifies a software adapter. For more info about this flag, see new info in Windows?8 about enumerating adapters.

Direct3D 11:??This enumeration value is supported starting with Windows?8.

+
+ ff471327 + DXGI_ADAPTER_FLAG_SOFTWARE + DXGI_ADAPTER_FLAG_SOFTWARE +
+ + +

Identifies the type of DXGI adapter.

+
+ +

The enumerated type is used by the Flags member of the or structure to identify the type of DXGI adapter.

+
+ ff471327 + DXGI_ADAPTER_FLAG3 + DXGI_ADAPTER_FLAG3 +
+ + +

Specifies no flags.

+
+ ff471327 + DXGI_ADAPTER_FLAG3_NONE + DXGI_ADAPTER_FLAG3_NONE +
+ + +

Value always set to 0. This flag is reserved.

+
+ ff471327 + DXGI_ADAPTER_FLAG3_REMOTE + DXGI_ADAPTER_FLAG3_REMOTE +
+ + +

Specifies a software adapter. For more info about this flag, see new info in Windows?8 about enumerating adapters.

Direct3D 11:??This enumeration value is supported starting with Windows?8.

+
+ ff471327 + DXGI_ADAPTER_FLAG3_SOFTWARE + DXGI_ADAPTER_FLAG3_SOFTWARE +
+ + +

Forces this enumeration to compile to 32 bits in size. Without this value, some compilers would allow this enumeration to compile to a size other than 32 bits. This value is not used.

+
+ ff471327 + DXGI_ADAPTER_FLAG3_ACG_COMPATIBLE + DXGI_ADAPTER_FLAG3_ACG_COMPATIBLE +
+ + + No documentation. + + ff471327 + DXGI_ADAPTER_FLAG3_SUPPORT_MONITORED_FENCES + DXGI_ADAPTER_FLAG3_SUPPORT_MONITORED_FENCES + + + + No documentation. + + ff471327 + DXGI_ADAPTER_FLAG3_SUPPORT_NON_MONITORED_FENCES + DXGI_ADAPTER_FLAG3_SUPPORT_NON_MONITORED_FENCES + + + + No documentation. + + ff471327 + DXGI_ADAPTER_FLAG3_KEYED_MUTEX_CONFORMANCE + DXGI_ADAPTER_FLAG3_KEYED_MUTEX_CONFORMANCE + + + +

Identifies the alpha value, transparency behavior, of a surface.

+
+ +

For more information about alpha mode, see .

+
+ hh404496 + DXGI_ALPHA_MODE + DXGI_ALPHA_MODE +
+ + +

Indicates that the transparency behavior is not specified.

+
+ hh404496 + DXGI_ALPHA_MODE_UNSPECIFIED + DXGI_ALPHA_MODE_UNSPECIFIED +
+ + +

Indicates that the transparency behavior is premultiplied. Each color is first scaled by the alpha value. The alpha value itself is the same in both straight and premultiplied alpha. Typically, no color channel value is greater than the alpha channel value. If a color channel value in a premultiplied format is greater than the alpha channel, the standard source-over blending math results in an additive blend.

+
+ hh404496 + DXGI_ALPHA_MODE_PREMULTIPLIED + DXGI_ALPHA_MODE_PREMULTIPLIED +
+ + +

Indicates that the transparency behavior is not premultiplied. The alpha channel indicates the transparency of the color.

+
+ hh404496 + DXGI_ALPHA_MODE_STRAIGHT + DXGI_ALPHA_MODE_STRAIGHT +
+ + +

Indicates to ignore the transparency behavior.

+
+ hh404496 + DXGI_ALPHA_MODE_IGNORE + DXGI_ALPHA_MODE_IGNORE +
+ + +

Specifies color space types.

+
+ +

This enum is used within DXGI in the CheckColorSpaceSupport, SetColorSpace1 and CheckOverlayColorSpaceSupport methods. It is also referenced in D3D11 video methods such as ID3D11VideoContext1::VideoProcessorSetOutputColorSpace1, and D2D methods such as ID2D1DeviceContext2::CreateImageSourceFromDxgi.

The following color parameters are defined:

+
+ dn903661 + DXGI_COLOR_SPACE_TYPE + DXGI_COLOR_SPACE_TYPE +
+ + +
PropertyValue
ColorspaceRGB
Range0-255
Gamma2.2
SitingImage
PrimariesBT.709

?

This is the standard definition for sRGB. Note that this is often implemented with a linear segment, but in that case the exponent is corrected to stay aligned with a gamma 2.2 curve. This is usually used with 8 bit and 10 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709 + DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709 +
+ + +
PropertyValue
ColorspaceRGB
Range0-255
Gamma1.0
SitingImage
PrimariesBT.709

?

This is the standard definition for scRGB, and is usually used with 16 bit integer, 16 bit floating point, and 32 bit floating point channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709 + DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709 +
+ + +
PropertyValue
ColorspaceRGB
Range16-235
Gamma2.2
SitingImage
PrimariesBT.709

?

This is the standard definition for ITU-R Recommendation BT.709. Note that due to the inclusion of a linear segment, the transfer curve looks similar to a pure exponential gamma of 1.9. This is usually used with 8 bit and 10 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709 + DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709 +
+ + +
PropertyValue
ColorspaceRGB
Range16-235
Gamma2.2
SitingImage
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020 + DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020 +
+ + +

Reserved.

+
+ dn903661 + DXGI_COLOR_SPACE_RESERVED + DXGI_COLOR_SPACE_RESERVED +
+ + +
PropertyValue
ColorspaceYCbCr
Range0-255
Gamma2.2
SitingImage
PrimariesBT.709
TransferBT.601

?

This definition is commonly used for JPG, and is usually used with 8, 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2.2
SitingVideo
PrimariesBT.601

?

This definition is commonly used for MPEG2, and is usually used with 8, 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601 +
+ + +
PropertyValue
ColorspaceYCbCr
Range0-255
Gamma2.2
SitingVideo
PrimariesBT.601

?

This is sometimes used for H.264 camera capture, and is usually used with 8, 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2.2
SitingVideo
PrimariesBT.709

?

This definition is commonly used for H.264 and HEVC, and is usually used with 8, 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709 +
+ + +
PropertyValue
ColorspaceYCbCr
Range0-255
Gamma2.2
SitingVideo
PrimariesBT.709

?

This is sometimes used for H.264 camera capture, and is usually used with 8, 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2.2
SitingVideo
PrimariesBT.2020

?

This definition may be used by HEVC, and is usually used with 10, 12, or 16 bit color channels. +

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020 +
+ + +
PropertyValue
ColorspaceYCbCr
Range0-255
Gamma2.2
SitingVideo
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020 +
+ + +
PropertyValue
ColorspaceRGB
Range0-255
Gamma2084
SitingImage
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020 + DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2084
SitingVideo
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_LEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_LEFT_P2020 +
+ + +
PropertyValue
ColorspaceRGB
Range16-235
Gamma2084
SitingImage
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_STUDIO_G2084_NONE_P2020 + DXGI_COLOR_SPACE_RGB_STUDIO_G2084_NONE_P2020 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2.2
SitingVideo
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_TOPLEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_TOPLEFT_P2020 +
+ + +
PropertyValue
ColorspaceYCbCr
Range16-235
Gamma2084
SitingVideo
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_TOPLEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_TOPLEFT_P2020 +
+ + +
PropertyValue
ColorspaceRGB
Range0-255
Gamma2.2
SitingImage
PrimariesBT.2020

?

This is usually used with 10, 12, or 16 bit color channels.

+
+ dn903661 + DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P2020 + DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P2020 +
+ + +

A custom color definition is used.

+
+ dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_GHLG_TOPLEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_GHLG_TOPLEFT_P2020 +
+ + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_YCBCR_FULL_GHLG_TOPLEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_FULL_GHLG_TOPLEFT_P2020 + + + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P709 + DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P709 + + + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P2020 + DXGI_COLOR_SPACE_RGB_STUDIO_G24_NONE_P2020 + + + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P709 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P709 + + + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_LEFT_P2020 + + + + No documentation. + + dn903661 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_TOPLEFT_P2020 + DXGI_COLOR_SPACE_YCBCR_STUDIO_G24_TOPLEFT_P2020 + + + +

A custom color definition is used.

+
+ dn903661 + DXGI_COLOR_SPACE_CUSTOM + DXGI_COLOR_SPACE_CUSTOM +
+ + +

Identifies the granularity at which the graphics processing unit (GPU) can be preempted from performing its current compute task.

+
+ +

You call the IDXGIAdapter2::GetDesc2 method to retrieve the granularity level at which the GPU can be preempted from performing its current compute task. The operating system specifies the compute granularity level in the ComputePreemptionGranularity member of the structure.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_GRANULARITY + DXGI_COMPUTE_PREEMPTION_GRANULARITY +
+ + +

Indicates the preemption granularity as a compute packet.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_DMA_BUFFER_BOUNDARY + DXGI_COMPUTE_PREEMPTION_DMA_BUFFER_BOUNDARY +
+ + +

Indicates the preemption granularity as a dispatch (for example, a call to the ID3D11DeviceContext::Dispatch method). A dispatch is a part of a compute packet.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_DISPATCH_BOUNDARY + DXGI_COMPUTE_PREEMPTION_DISPATCH_BOUNDARY +
+ + +

Indicates the preemption granularity as a thread group. A thread group is a part of a dispatch.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_THREAD_GROUP_BOUNDARY + DXGI_COMPUTE_PREEMPTION_THREAD_GROUP_BOUNDARY +
+ + +

Indicates the preemption granularity as a thread in a thread group. A thread is a part of a thread group.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_THREAD_BOUNDARY + DXGI_COMPUTE_PREEMPTION_THREAD_BOUNDARY +
+ + +

Indicates the preemption granularity as a compute instruction in a thread.

+
+ hh404499 + DXGI_COMPUTE_PREEMPTION_INSTRUCTION_BOUNDARY + DXGI_COMPUTE_PREEMPTION_INSTRUCTION_BOUNDARY +
+ + + No documentation. + + hh780345 + DXGI_DEBUG_RLO_SUMMARY + DXGI_DEBUG_RLO_SUMMARY + + + + No documentation. + + hh780345 + DXGI_DEBUG_RLO_DETAIL + DXGI_DEBUG_RLO_DETAIL + + + + No documentation. + + hh780345 + DXGI_DEBUG_RLO_IGNORE_INTERNAL + DXGI_DEBUG_RLO_IGNORE_INTERNAL + + + + No documentation. + + hh780345 + DXGI_DEBUG_RLO_ALL + DXGI_DEBUG_RLO_ALL + + + + None + + None + None + + + + No documentation. + + DXGI_ENUM_MODES_INTERLACED + DXGI_ENUM_MODES_INTERLACED + + + + No documentation. + + DXGI_ENUM_MODES_SCALING + DXGI_ENUM_MODES_SCALING + + + + No documentation. + + DXGI_ENUM_MODES_STEREO + DXGI_ENUM_MODES_STEREO + + + + No documentation. + + DXGI_ENUM_MODES_DISABLED_STEREO + DXGI_ENUM_MODES_DISABLED_STEREO + + + +

Flags that indicate how the back buffers should be rotated to fit the physical rotation of a monitor.

+
+ bb173065 + DXGI_MODE_ROTATION + DXGI_MODE_ROTATION +
+ + +

Unspecified rotation.

+
+ bb173065 + DXGI_MODE_ROTATION_UNSPECIFIED + DXGI_MODE_ROTATION_UNSPECIFIED +
+ + +

Specifies no rotation.

+
+ bb173065 + DXGI_MODE_ROTATION_IDENTITY + DXGI_MODE_ROTATION_IDENTITY +
+ + +

Specifies 90 degrees of rotation.

+
+ bb173065 + DXGI_MODE_ROTATION_ROTATE90 + DXGI_MODE_ROTATION_ROTATE90 +
+ + +

Specifies 180 degrees of rotation.

+
+ bb173065 + DXGI_MODE_ROTATION_ROTATE180 + DXGI_MODE_ROTATION_ROTATE180 +
+ + +

Specifies 270 degrees of rotation.

+
+ bb173065 + DXGI_MODE_ROTATION_ROTATE270 + DXGI_MODE_ROTATION_ROTATE270 +
+ + +

Flags indicating how an image is stretched to fit a given monitor's resolution.

+
+ +

Selecting the CENTERED or STRETCHED modes can result in a mode change even if you specify the native resolution of the display in the . If you know the native resolution of the display and want to make sure that you do not initiate a mode change when transitioning a swap chain to full screen (either via ALT+ENTER or IDXGISwapChain::SetFullscreenState), you should use UNSPECIFIED.

This enum is used by the and structures.

+
+ bb173066 + DXGI_MODE_SCALING + DXGI_MODE_SCALING +
+ + +

Unspecified scaling.

+
+ bb173066 + DXGI_MODE_SCALING_UNSPECIFIED + DXGI_MODE_SCALING_UNSPECIFIED +
+ + +

Specifies no scaling. The image is centered on the display. This flag is typically used for a fixed-dot-pitch display (such as an LED display).

+
+ bb173066 + DXGI_MODE_SCALING_CENTERED + DXGI_MODE_SCALING_CENTERED +
+ + +

Specifies stretched scaling.

+
+ bb173066 + DXGI_MODE_SCALING_STRETCHED + DXGI_MODE_SCALING_STRETCHED +
+ + +

Flags indicating the method the raster uses to create an image on a surface.

+
+ +

This enum is used by the and structures.

+
+ bb173067 + DXGI_MODE_SCANLINE_ORDER + DXGI_MODE_SCANLINE_ORDER +
+ + +

Scanline order is unspecified.

+
+ bb173067 + DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED + DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED +
+ + +

The image is created from the first scanline to the last without skipping any.

+
+ bb173067 + DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE + DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE +
+ + +

The image is created beginning with the upper field.

+
+ bb173067 + DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST + DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST +
+ + +

The image is created beginning with the lower field.

+
+ bb173067 + DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST + DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST +
+ + +

Status codes that can be returned by DXGI functions.

+
+ +

The value for each value is determined from this macro that is defined in DXGItype.h:

 #define _FACDXGI    0x87a
+            #define MAKE_DXGI_STATUS(code)  MAKE_HRESULT(0, _FACDXGI, code)
+            

For example, DXGI_STATUS_OCCLUDED is defined as 0x087A0001:

 #define DXGI_STATUS_OCCLUDED                    MAKE_DXGI_STATUS(1)
+            
+
+ cc308061 + DXGI_STATUS + DXGI_STATUS +
+ + + No documentation. + + cc308061 + DXGI_STATUS_OCCLUDED + DXGI_STATUS_OCCLUDED + + + + No documentation. + + cc308061 + DXGI_STATUS_CLIPPED + DXGI_STATUS_CLIPPED + + + + No documentation. + + cc308061 + DXGI_STATUS_NO_REDIRECTION + DXGI_STATUS_NO_REDIRECTION + + + + No documentation. + + cc308061 + DXGI_STATUS_NO_DESKTOP_ACCESS + DXGI_STATUS_NO_DESKTOP_ACCESS + + + + No documentation. + + cc308061 + DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE + DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE + + + + No documentation. + + cc308061 + DXGI_STATUS_MODE_CHANGED + DXGI_STATUS_MODE_CHANGED + + + + No documentation. + + cc308061 + DXGI_STATUS_MODE_CHANGE_IN_PROGRESS + DXGI_STATUS_MODE_CHANGE_IN_PROGRESS + + + + No documentation. + + cc308061 + DXGI_STATUS_UNOCCLUDED + DXGI_STATUS_UNOCCLUDED + + + + No documentation. + + cc308061 + DXGI_STATUS_DDA_WAS_STILL_DRAWING + DXGI_STATUS_DDA_WAS_STILL_DRAWING + + + + No documentation. + + cc308061 + DXGI_STATUS_PRESENT_REQUIRED + DXGI_STATUS_PRESENT_REQUIRED + + + +

Specifies a range of hardware features, to be used when checking for feature support.

+
+ +

This enum is used by the CheckFeatureSupport method.

+
+ mt722565 + DXGI_FEATURE + DXGI_FEATURE +
+ + +

The display supports tearing, a requirement of variable refresh rate displays.

+
+ mt722565 + DXGI_FEATURE_PRESENT_ALLOW_TEARING + DXGI_FEATURE_PRESENT_ALLOW_TEARING +
+ + +

Resource data formats, including fully-typed and typeless formats. A list of modifiers at the bottom of the page more fully describes each format type.

+
+ bb173059 + DXGI_FORMAT + DXGI_FORMAT +
+ + +

The format is not known.

+
+ bb173059 + DXGI_FORMAT_UNKNOWN + DXGI_FORMAT_UNKNOWN +
+ + +

A four-component, 128-bit typeless format that supports 32 bits per channel including alpha. ?

+
+ bb173059 + DXGI_FORMAT_R32G32B32A32_TYPELESS + DXGI_FORMAT_R32G32B32A32_TYPELESS +
+ + +

A four-component, 128-bit floating-point format that supports 32 bits per channel including alpha. 1,5,8

+
+ bb173059 + DXGI_FORMAT_R32G32B32A32_FLOAT + DXGI_FORMAT_R32G32B32A32_FLOAT +
+ + +

A four-component, 128-bit unsigned-integer format that supports 32 bits per channel including alpha. ?

+
+ bb173059 + DXGI_FORMAT_R32G32B32A32_UINT + DXGI_FORMAT_R32G32B32A32_UINT +
+ + +

A four-component, 128-bit signed-integer format that supports 32 bits per channel including alpha. ?

+
+ bb173059 + DXGI_FORMAT_R32G32B32A32_SINT + DXGI_FORMAT_R32G32B32A32_SINT +
+ + +

A three-component, 96-bit typeless format that supports 32 bits per color channel.

+
+ bb173059 + DXGI_FORMAT_R32G32B32_TYPELESS + DXGI_FORMAT_R32G32B32_TYPELESS +
+ + +

A three-component, 96-bit floating-point format that supports 32 bits per color channel.5,8

+
+ bb173059 + DXGI_FORMAT_R32G32B32_FLOAT + DXGI_FORMAT_R32G32B32_FLOAT +
+ + +

A three-component, 96-bit unsigned-integer format that supports 32 bits per color channel.

+
+ bb173059 + DXGI_FORMAT_R32G32B32_UINT + DXGI_FORMAT_R32G32B32_UINT +
+ + +

A three-component, 96-bit signed-integer format that supports 32 bits per color channel.

+
+ bb173059 + DXGI_FORMAT_R32G32B32_SINT + DXGI_FORMAT_R32G32B32_SINT +
+ + +

A four-component, 64-bit typeless format that supports 16 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_TYPELESS + DXGI_FORMAT_R16G16B16A16_TYPELESS +
+ + +

A four-component, 64-bit floating-point format that supports 16 bits per channel including alpha.5,7

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_FLOAT + DXGI_FORMAT_R16G16B16A16_FLOAT +
+ + +

A four-component, 64-bit unsigned-normalized-integer format that supports 16 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_UNORM + DXGI_FORMAT_R16G16B16A16_UNORM +
+ + +

A four-component, 64-bit unsigned-integer format that supports 16 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_UINT + DXGI_FORMAT_R16G16B16A16_UINT +
+ + +

A four-component, 64-bit signed-normalized-integer format that supports 16 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_SNORM + DXGI_FORMAT_R16G16B16A16_SNORM +
+ + +

A four-component, 64-bit signed-integer format that supports 16 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R16G16B16A16_SINT + DXGI_FORMAT_R16G16B16A16_SINT +
+ + +

A two-component, 64-bit typeless format that supports 32 bits for the red channel and 32 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R32G32_TYPELESS + DXGI_FORMAT_R32G32_TYPELESS +
+ + +

A two-component, 64-bit floating-point format that supports 32 bits for the red channel and 32 bits for the green channel.5,8

+
+ bb173059 + DXGI_FORMAT_R32G32_FLOAT + DXGI_FORMAT_R32G32_FLOAT +
+ + +

A two-component, 64-bit unsigned-integer format that supports 32 bits for the red channel and 32 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R32G32_UINT + DXGI_FORMAT_R32G32_UINT +
+ + +

A two-component, 64-bit signed-integer format that supports 32 bits for the red channel and 32 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R32G32_SINT + DXGI_FORMAT_R32G32_SINT +
+ + +

A two-component, 64-bit typeless format that supports 32 bits for the red channel, 8 bits for the green channel, and 24 bits are unused.

+
+ bb173059 + DXGI_FORMAT_R32G8X24_TYPELESS + DXGI_FORMAT_R32G8X24_TYPELESS +
+ + +

A 32-bit floating-point component, and two unsigned-integer components (with an additional 32 bits). This format supports 32-bit depth, 8-bit stencil, and 24 bits are unused.?

+
+ bb173059 + DXGI_FORMAT_D32_FLOAT_S8X24_UINT + DXGI_FORMAT_D32_FLOAT_S8X24_UINT +
+ + +

A 32-bit floating-point component, and two typeless components (with an additional 32 bits). This format supports 32-bit red channel, 8 bits are unused, and 24 bits are unused.?

+
+ bb173059 + DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS + DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS +
+ + +

A 32-bit typeless component, and two unsigned-integer components (with an additional 32 bits). This format has 32 bits unused, 8 bits for green channel, and 24 bits are unused.

+
+ bb173059 + DXGI_FORMAT_X32_TYPELESS_G8X24_UINT + DXGI_FORMAT_X32_TYPELESS_G8X24_UINT +
+ + +

A four-component, 32-bit typeless format that supports 10 bits for each color and 2 bits for alpha.

+
+ bb173059 + DXGI_FORMAT_R10G10B10A2_TYPELESS + DXGI_FORMAT_R10G10B10A2_TYPELESS +
+ + +

A four-component, 32-bit unsigned-normalized-integer format that supports 10 bits for each color and 2 bits for alpha.

+
+ bb173059 + DXGI_FORMAT_R10G10B10A2_UNORM + DXGI_FORMAT_R10G10B10A2_UNORM +
+ + +

A four-component, 32-bit unsigned-integer format that supports 10 bits for each color and 2 bits for alpha.

+
+ bb173059 + DXGI_FORMAT_R10G10B10A2_UINT + DXGI_FORMAT_R10G10B10A2_UINT +
+ + +

Three partial-precision floating-point numbers encoded into a single 32-bit value (a variant of s10e5, which is sign bit, 10-bit mantissa, and 5-bit biased (15) exponent). There are no sign bits, and there is a 5-bit biased (15) exponent for each channel, 6-bit mantissa for R and G, and a 5-bit mantissa for B, as shown in the following illustration.5,7

+
+ bb173059 + DXGI_FORMAT_R11G11B10_FLOAT + DXGI_FORMAT_R11G11B10_FLOAT +
+ + +

A four-component, 32-bit typeless format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_TYPELESS + DXGI_FORMAT_R8G8B8A8_TYPELESS +
+ + +

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_UNORM + DXGI_FORMAT_R8G8B8A8_UNORM +
+ + +

A four-component, 32-bit unsigned-normalized integer sRGB format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_UNORM_SRGB + DXGI_FORMAT_R8G8B8A8_UNORM_SRGB +
+ + +

A four-component, 32-bit unsigned-integer format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_UINT + DXGI_FORMAT_R8G8B8A8_UINT +
+ + +

A four-component, 32-bit signed-normalized-integer format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_SNORM + DXGI_FORMAT_R8G8B8A8_SNORM +
+ + +

A four-component, 32-bit signed-integer format that supports 8 bits per channel including alpha.

+
+ bb173059 + DXGI_FORMAT_R8G8B8A8_SINT + DXGI_FORMAT_R8G8B8A8_SINT +
+ + +

A two-component, 32-bit typeless format that supports 16 bits for the red channel and 16 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R16G16_TYPELESS + DXGI_FORMAT_R16G16_TYPELESS +
+ + +

A two-component, 32-bit floating-point format that supports 16 bits for the red channel and 16 bits for the green channel.5,7

+
+ bb173059 + DXGI_FORMAT_R16G16_FLOAT + DXGI_FORMAT_R16G16_FLOAT +
+ + +

A two-component, 32-bit unsigned-normalized-integer format that supports 16 bits each for the green and red channels.

+
+ bb173059 + DXGI_FORMAT_R16G16_UNORM + DXGI_FORMAT_R16G16_UNORM +
+ + +

A two-component, 32-bit unsigned-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R16G16_UINT + DXGI_FORMAT_R16G16_UINT +
+ + +

A two-component, 32-bit signed-normalized-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R16G16_SNORM + DXGI_FORMAT_R16G16_SNORM +
+ + +

A two-component, 32-bit signed-integer format that supports 16 bits for the red channel and 16 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R16G16_SINT + DXGI_FORMAT_R16G16_SINT +
+ + +

A single-component, 32-bit typeless format that supports 32 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R32_TYPELESS + DXGI_FORMAT_R32_TYPELESS +
+ + +

A single-component, 32-bit floating-point format that supports 32 bits for depth.5,8

+
+ bb173059 + DXGI_FORMAT_D32_FLOAT + DXGI_FORMAT_D32_FLOAT +
+ + +

A single-component, 32-bit floating-point format that supports 32 bits for the red channel.5,8

+
+ bb173059 + DXGI_FORMAT_R32_FLOAT + DXGI_FORMAT_R32_FLOAT +
+ + +

A single-component, 32-bit unsigned-integer format that supports 32 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R32_UINT + DXGI_FORMAT_R32_UINT +
+ + +

A single-component, 32-bit signed-integer format that supports 32 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R32_SINT + DXGI_FORMAT_R32_SINT +
+ + +

A two-component, 32-bit typeless format that supports 24 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R24G8_TYPELESS + DXGI_FORMAT_R24G8_TYPELESS +
+ + +

A 32-bit z-buffer format that supports 24 bits for depth and 8 bits for stencil.

+
+ bb173059 + DXGI_FORMAT_D24_UNORM_S8_UINT + DXGI_FORMAT_D24_UNORM_S8_UINT +
+ + +

A 32-bit format, that contains a 24 bit, single-component, unsigned-normalized integer, with an additional typeless 8 bits. This format has 24 bits red channel and 8 bits unused.

+
+ bb173059 + DXGI_FORMAT_R24_UNORM_X8_TYPELESS + DXGI_FORMAT_R24_UNORM_X8_TYPELESS +
+ + +

A 32-bit format, that contains a 24 bit, single-component, typeless format, with an additional 8 bit unsigned integer component. This format has 24 bits unused and 8 bits green channel.

+
+ bb173059 + DXGI_FORMAT_X24_TYPELESS_G8_UINT + DXGI_FORMAT_X24_TYPELESS_G8_UINT +
+ + +

A two-component, 16-bit typeless format that supports 8 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R8G8_TYPELESS + DXGI_FORMAT_R8G8_TYPELESS +
+ + +

A two-component, 16-bit unsigned-normalized-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R8G8_UNORM + DXGI_FORMAT_R8G8_UNORM +
+ + +

A two-component, 16-bit unsigned-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R8G8_UINT + DXGI_FORMAT_R8G8_UINT +
+ + +

A two-component, 16-bit signed-normalized-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R8G8_SNORM + DXGI_FORMAT_R8G8_SNORM +
+ + +

A two-component, 16-bit signed-integer format that supports 8 bits for the red channel and 8 bits for the green channel.

+
+ bb173059 + DXGI_FORMAT_R8G8_SINT + DXGI_FORMAT_R8G8_SINT +
+ + +

A single-component, 16-bit typeless format that supports 16 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R16_TYPELESS + DXGI_FORMAT_R16_TYPELESS +
+ + +

A single-component, 16-bit floating-point format that supports 16 bits for the red channel.5,7

+
+ bb173059 + DXGI_FORMAT_R16_FLOAT + DXGI_FORMAT_R16_FLOAT +
+ + +

A single-component, 16-bit unsigned-normalized-integer format that supports 16 bits for depth.

+
+ bb173059 + DXGI_FORMAT_D16_UNORM + DXGI_FORMAT_D16_UNORM +
+ + +

A single-component, 16-bit unsigned-normalized-integer format that supports 16 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R16_UNORM + DXGI_FORMAT_R16_UNORM +
+ + +

A single-component, 16-bit unsigned-integer format that supports 16 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R16_UINT + DXGI_FORMAT_R16_UINT +
+ + +

A single-component, 16-bit signed-normalized-integer format that supports 16 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R16_SNORM + DXGI_FORMAT_R16_SNORM +
+ + +

A single-component, 16-bit signed-integer format that supports 16 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R16_SINT + DXGI_FORMAT_R16_SINT +
+ + +

A single-component, 8-bit typeless format that supports 8 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R8_TYPELESS + DXGI_FORMAT_R8_TYPELESS +
+ + +

A single-component, 8-bit unsigned-normalized-integer format that supports 8 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R8_UNORM + DXGI_FORMAT_R8_UNORM +
+ + +

A single-component, 8-bit unsigned-integer format that supports 8 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R8_UINT + DXGI_FORMAT_R8_UINT +
+ + +

A single-component, 8-bit signed-normalized-integer format that supports 8 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R8_SNORM + DXGI_FORMAT_R8_SNORM +
+ + +

A single-component, 8-bit signed-integer format that supports 8 bits for the red channel.

+
+ bb173059 + DXGI_FORMAT_R8_SINT + DXGI_FORMAT_R8_SINT +
+ + +

A single-component, 8-bit unsigned-normalized-integer format for alpha only.

+
+ bb173059 + DXGI_FORMAT_A8_UNORM + DXGI_FORMAT_A8_UNORM +
+ + +

A single-component, 1-bit unsigned-normalized integer format that supports 1 bit for the red channel. ?.

+
+ bb173059 + DXGI_FORMAT_R1_UNORM + DXGI_FORMAT_R1_UNORM +
+ + +

Three partial-precision floating-point numbers encoded into a single 32-bit value all sharing the same 5-bit exponent (variant of s10e5, which is sign bit, 10-bit mantissa, and 5-bit biased (15) exponent). There is no sign bit, and there is a shared 5-bit biased (15) exponent and a 9-bit mantissa for each channel, as shown in the following illustration. 2,6,7.

+
+ bb173059 + DXGI_FORMAT_R9G9B9E5_SHAREDEXP + DXGI_FORMAT_R9G9B9E5_SHAREDEXP +
+ + +

A four-component, 32-bit unsigned-normalized-integer format. This packed RGB format is analogous to the UYVY format. Each 32-bit block describes a pair of pixels: (R8, G8, B8) and (R8, G8, B8) where the R8/B8 values are repeated, and the G8 values are unique to each pixel. ?

Width must be even.

+
+ bb173059 + DXGI_FORMAT_R8G8_B8G8_UNORM + DXGI_FORMAT_R8G8_B8G8_UNORM +
+ + +

A four-component, 32-bit unsigned-normalized-integer format. This packed RGB format is analogous to the YUY2 format. Each 32-bit block describes a pair of pixels: (R8, G8, B8) and (R8, G8, B8) where the R8/B8 values are repeated, and the G8 values are unique to each pixel. ?

Width must be even.

+
+ bb173059 + DXGI_FORMAT_G8R8_G8B8_UNORM + DXGI_FORMAT_G8R8_G8B8_UNORM +
+ + +

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC1_TYPELESS + DXGI_FORMAT_BC1_TYPELESS +
+ + +

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC1_UNORM + DXGI_FORMAT_BC1_UNORM +
+ + +

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC1_UNORM_SRGB + DXGI_FORMAT_BC1_UNORM_SRGB +
+ + +

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC2_TYPELESS + DXGI_FORMAT_BC2_TYPELESS +
+ + +

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC2_UNORM + DXGI_FORMAT_BC2_UNORM +
+ + +

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC2_UNORM_SRGB + DXGI_FORMAT_BC2_UNORM_SRGB +
+ + +

Four-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC3_TYPELESS + DXGI_FORMAT_BC3_TYPELESS +
+ + +

Four-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC3_UNORM + DXGI_FORMAT_BC3_UNORM +
+ + +

Four-component block-compression format for sRGB data. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC3_UNORM_SRGB + DXGI_FORMAT_BC3_UNORM_SRGB +
+ + +

One-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC4_TYPELESS + DXGI_FORMAT_BC4_TYPELESS +
+ + +

One-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC4_UNORM + DXGI_FORMAT_BC4_UNORM +
+ + +

One-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC4_SNORM + DXGI_FORMAT_BC4_SNORM +
+ + +

Two-component typeless block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC5_TYPELESS + DXGI_FORMAT_BC5_TYPELESS +
+ + +

Two-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC5_UNORM + DXGI_FORMAT_BC5_UNORM +
+ + +

Two-component block-compression format. For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC5_SNORM + DXGI_FORMAT_BC5_SNORM +
+ + +

A three-component, 16-bit unsigned-normalized-integer format that supports 5 bits for blue, 6 bits for green, and 5 bits for red.

Direct3D 10 through Direct3D 11:??This value is defined for DXGI. However, Direct3D 10, 10.1, or 11 devices do not support this format.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_B5G6R5_UNORM + DXGI_FORMAT_B5G6R5_UNORM +
+ + +

A four-component, 16-bit unsigned-normalized-integer format that supports 5 bits for each color channel and 1-bit alpha.

Direct3D 10 through Direct3D 11:??This value is defined for DXGI. However, Direct3D 10, 10.1, or 11 devices do not support this format.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_B5G5R5A1_UNORM + DXGI_FORMAT_B5G5R5A1_UNORM +
+ + +

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits for each color channel and 8-bit alpha.

+
+ bb173059 + DXGI_FORMAT_B8G8R8A8_UNORM + DXGI_FORMAT_B8G8R8A8_UNORM +
+ + +

A four-component, 32-bit unsigned-normalized-integer format that supports 8 bits for each color channel and 8 bits unused.

+
+ bb173059 + DXGI_FORMAT_B8G8R8X8_UNORM + DXGI_FORMAT_B8G8R8X8_UNORM +
+ + +

A four-component, 32-bit 2.8-biased fixed-point format that supports 10 bits for each color channel and 2-bit alpha.

+
+ bb173059 + DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM + DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM +
+ + +

A four-component, 32-bit typeless format that supports 8 bits for each channel including alpha. ?

+
+ bb173059 + DXGI_FORMAT_B8G8R8A8_TYPELESS + DXGI_FORMAT_B8G8R8A8_TYPELESS +
+ + +

A four-component, 32-bit unsigned-normalized standard RGB format that supports 8 bits for each channel including alpha. ?

+
+ bb173059 + DXGI_FORMAT_B8G8R8A8_UNORM_SRGB + DXGI_FORMAT_B8G8R8A8_UNORM_SRGB +
+ + +

A four-component, 32-bit typeless format that supports 8 bits for each color channel, and 8 bits are unused. ?

+
+ bb173059 + DXGI_FORMAT_B8G8R8X8_TYPELESS + DXGI_FORMAT_B8G8R8X8_TYPELESS +
+ + +

A four-component, 32-bit unsigned-normalized standard RGB format that supports 8 bits for each color channel, and 8 bits are unused. ?

+
+ bb173059 + DXGI_FORMAT_B8G8R8X8_UNORM_SRGB + DXGI_FORMAT_B8G8R8X8_UNORM_SRGB +
+ + +

A typeless block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC6H_TYPELESS + DXGI_FORMAT_BC6H_TYPELESS +
+ + +

A block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.?

+
+ bb173059 + DXGI_FORMAT_BC6H_UF16 + DXGI_FORMAT_BC6H_UF16 +
+ + +

A block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.?

+
+ bb173059 + DXGI_FORMAT_BC6H_SF16 + DXGI_FORMAT_BC6H_SF16 +
+ + +

A typeless block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC7_TYPELESS + DXGI_FORMAT_BC7_TYPELESS +
+ + +

A block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC7_UNORM + DXGI_FORMAT_BC7_UNORM +
+ + +

A block-compression format. ? For information about block-compression formats, see Texture Block Compression in Direct3D 11.

+
+ bb173059 + DXGI_FORMAT_BC7_UNORM_SRGB + DXGI_FORMAT_BC7_UNORM_SRGB +
+ + +

Most common YUV 4:4:4 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UINT. For UAVs, an additional valid view format is DXGI_FORMAT_R32_UINT. By using DXGI_FORMAT_R32_UINT for UAVs, you can both read and write as opposed to just write for DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UINT. Supported view types are SRV, RTV, and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is V->R8, + U->G8, + Y->B8, + and A->A8.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_AYUV + DXGI_FORMAT_AYUV +
+ + +

10-bit per channel packed YUV 4:4:4 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R10G10B10A2_UNORM and DXGI_FORMAT_R10G10B10A2_UINT. For UAVs, an additional valid view format is DXGI_FORMAT_R32_UINT. By using DXGI_FORMAT_R32_UINT for UAVs, you can both read and write as opposed to just write for DXGI_FORMAT_R10G10B10A2_UNORM and DXGI_FORMAT_R10G10B10A2_UINT. Supported view types are SRV and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is U->R10, + Y->G10, + V->B10, + and A->A2.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_Y410 + DXGI_FORMAT_Y410 +
+ + +

16-bit per channel packed YUV 4:4:4 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R16G16B16A16_UNORM and DXGI_FORMAT_R16G16B16A16_UINT. Supported view types are SRV and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is U->R16, + Y->G16, + V->B16, + and A->A16.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_Y416 + DXGI_FORMAT_Y416 +
+ + +

Most common YUV 4:2:0 video resource format. Valid luminance data view formats for this video resource format are DXGI_FORMAT_R8_UNORM and DXGI_FORMAT_R8_UINT. Valid chrominance data view formats (width and height are each 1/2 of luminance view) for this video resource format are DXGI_FORMAT_R8G8_UNORM and DXGI_FORMAT_R8G8_UINT. Supported view types are SRV, RTV, and UAV. For luminance data view, the mapping to the view channel is Y->R8. For chrominance data view, the mapping to the view channel is U->R8 and + V->G8.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width and height must be even. Direct3D 11 staging resources and initData parameters for this format use (rowPitch * (height + (height / 2))) bytes. The first (SysMemPitch * height) bytes are the Y plane, the remaining (SysMemPitch * (height / 2)) bytes are the UV plane.

An app using the YUY 4:2:0 formats must map the luma (Y) plane separately from the chroma (UV) planes. Developers do this by calling ID3D12Device::CreateShaderResourceView twice for the same texture and passing in 1-channel and 2-channel formats. Passing in a 1-channel format compatible with the Y plane maps only the Y plane. Passing in a 2-channel format compatible with the UV planes (together) maps only the U and V planes as a single resource view.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_NV12 + DXGI_FORMAT_NV12 +
+ + +

10-bit per channel planar YUV 4:2:0 video resource format. Valid luminance data view formats for this video resource format are DXGI_FORMAT_R16_UNORM and DXGI_FORMAT_R16_UINT. The runtime does not enforce whether the lowest 6 bits are 0 (given that this video resource format is a 10-bit format that uses 16 bits). If required, application shader code would have to enforce this manually. From the runtime's point of view, DXGI_FORMAT_P010 is no different than DXGI_FORMAT_P016. Valid chrominance data view formats (width and height are each 1/2 of luminance view) for this video resource format are DXGI_FORMAT_R16G16_UNORM and DXGI_FORMAT_R16G16_UINT. For UAVs, an additional valid chrominance data view format is DXGI_FORMAT_R32_UINT. By using DXGI_FORMAT_R32_UINT for UAVs, you can both read and write as opposed to just write for DXGI_FORMAT_R16G16_UNORM and DXGI_FORMAT_R16G16_UINT. Supported view types are SRV, RTV, and UAV. For luminance data view, the mapping to the view channel is Y->R16. For chrominance data view, the mapping to the view channel is U->R16 and + V->G16.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width and height must be even. Direct3D 11 staging resources and initData parameters for this format use (rowPitch * (height + (height / 2))) bytes. The first (SysMemPitch * height) bytes are the Y plane, the remaining (SysMemPitch * (height / 2)) bytes are the UV plane.

An app using the YUY 4:2:0 formats must map the luma (Y) plane separately from the chroma (UV) planes. Developers do this by calling ID3D12Device::CreateShaderResourceView twice for the same texture and passing in 1-channel and 2-channel formats. Passing in a 1-channel format compatible with the Y plane maps only the Y plane. Passing in a 2-channel format compatible with the UV planes (together) maps only the U and V planes as a single resource view.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_P010 + DXGI_FORMAT_P010 +
+ + +

16-bit per channel planar YUV 4:2:0 video resource format. Valid luminance data view formats for this video resource format are DXGI_FORMAT_R16_UNORM and DXGI_FORMAT_R16_UINT. Valid chrominance data view formats (width and height are each 1/2 of luminance view) for this video resource format are DXGI_FORMAT_R16G16_UNORM and DXGI_FORMAT_R16G16_UINT. For UAVs, an additional valid chrominance data view format is DXGI_FORMAT_R32_UINT. By using DXGI_FORMAT_R32_UINT for UAVs, you can both read and write as opposed to just write for DXGI_FORMAT_R16G16_UNORM and DXGI_FORMAT_R16G16_UINT. Supported view types are SRV, RTV, and UAV. For luminance data view, the mapping to the view channel is Y->R16. For chrominance data view, the mapping to the view channel is U->R16 and + V->G16.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width and height must be even. Direct3D 11 staging resources and initData parameters for this format use (rowPitch * (height + (height / 2))) bytes. The first (SysMemPitch * height) bytes are the Y plane, the remaining (SysMemPitch * (height / 2)) bytes are the UV plane.

An app using the YUY 4:2:0 formats must map the luma (Y) plane separately from the chroma (UV) planes. Developers do this by calling ID3D12Device::CreateShaderResourceView twice for the same texture and passing in 1-channel and 2-channel formats. Passing in a 1-channel format compatible with the Y plane maps only the Y plane. Passing in a 2-channel format compatible with the UV planes (together) maps only the U and V planes as a single resource view.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_P016 + DXGI_FORMAT_P016 +
+ + +

8-bit per channel planar YUV 4:2:0 video resource format. This format is subsampled where each pixel has its own Y value, but each 2x2 pixel block shares a single U and V value. The runtime requires that the width and height of all resources that are created with this format are multiples of 2. The runtime also requires that the left, right, top, and bottom members of any that are used for this format are multiples of 2. This format differs from DXGI_FORMAT_NV12 in that the layout of the data within the resource is completely opaque to applications. Applications cannot use the CPU to map the resource and then access the data within the resource. You cannot use shaders with this format. Because of this behavior, legacy hardware that supports a non-NV12 4:2:0 layout (for example, YV12, and so on) can be used. Also, new hardware that has a 4:2:0 implementation better than NV12 can be used when the application does not need the data to be in a standard layout.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width and height must be even. Direct3D 11 staging resources and initData parameters for this format use (rowPitch * (height + (height / 2))) bytes.

An app using the YUY 4:2:0 formats must map the luma (Y) plane separately from the chroma (UV) planes. Developers do this by calling ID3D12Device::CreateShaderResourceView twice for the same texture and passing in 1-channel and 2-channel formats. Passing in a 1-channel format compatible with the Y plane maps only the Y plane. Passing in a 2-channel format compatible with the UV planes (together) maps only the U and V planes as a single resource view.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_420_OPAQUE + DXGI_FORMAT_420_OPAQUE +
+ + +

Most common YUV 4:2:2 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UINT. For UAVs, an additional valid view format is DXGI_FORMAT_R32_UINT. By using DXGI_FORMAT_R32_UINT for UAVs, you can both read and write as opposed to just write for DXGI_FORMAT_R8G8B8A8_UNORM and DXGI_FORMAT_R8G8B8A8_UINT. Supported view types are SRV and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is Y0->R8, + U0->G8, + Y1->B8, + and V0->A8.

A unique valid view format for this video resource format is DXGI_FORMAT_R8G8_B8G8_UNORM. With this view format, the width of the view appears to be twice what the DXGI_FORMAT_R8G8B8A8_UNORM or DXGI_FORMAT_R8G8B8A8_UINT view would be when hardware reconstructs RGBA automatically on read and before filtering. This Direct3D hardware behavior is legacy and is likely not useful any more. With this view format, the mapping to the view channel is Y0->R8, + U0-> + G8[0], + Y1->B8, + and V0-> + G8[1].

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width must be even.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_YUY2 + DXGI_FORMAT_YUY2 +
+ + +

10-bit per channel packed YUV 4:2:2 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R16G16B16A16_UNORM and DXGI_FORMAT_R16G16B16A16_UINT. The runtime does not enforce whether the lowest 6 bits are 0 (given that this video resource format is a 10-bit format that uses 16 bits). If required, application shader code would have to enforce this manually. From the runtime's point of view, DXGI_FORMAT_Y210 is no different than DXGI_FORMAT_Y216. Supported view types are SRV and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is Y0->R16, + U->G16, + Y1->B16, + and V->A16.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width must be even.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_Y210 + DXGI_FORMAT_Y210 +
+ + +

16-bit per channel packed YUV 4:2:2 video resource format. Valid view formats for this video resource format are DXGI_FORMAT_R16G16B16A16_UNORM and DXGI_FORMAT_R16G16B16A16_UINT. Supported view types are SRV and UAV. One view provides a straightforward mapping of the entire surface. The mapping to the view channel is Y0->R16, + U->G16, + Y1->B16, + and V->A16.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width must be even.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_Y216 + DXGI_FORMAT_Y216 +
+ + +

Most common planar YUV 4:1:1 video resource format. Valid luminance data view formats for this video resource format are DXGI_FORMAT_R8_UNORM and DXGI_FORMAT_R8_UINT. Valid chrominance data view formats (width and height are each 1/4 of luminance view) for this video resource format are DXGI_FORMAT_R8G8_UNORM and DXGI_FORMAT_R8G8_UINT. Supported view types are SRV, RTV, and UAV. For luminance data view, the mapping to the view channel is Y->R8. For chrominance data view, the mapping to the view channel is U->R8 and + V->G8.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Width must be a multiple of 4. Direct3D11 staging resources and initData parameters for this format use (rowPitch * height * 2) bytes. The first (SysMemPitch * height) bytes are the Y plane, the next ((SysMemPitch / 2) * height) bytes are the UV plane, and the remainder is padding.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_NV11 + DXGI_FORMAT_NV11 +
+ + +

4-bit palletized YUV format that is commonly used for DVD subpicture.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_AI44 + DXGI_FORMAT_AI44 +
+ + +

4-bit palletized YUV format that is commonly used for DVD subpicture.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_IA44 + DXGI_FORMAT_IA44 +
+ + +

8-bit palletized format that is used for palletized RGB data when the processor processes ISDB-T data and for palletized YUV data when the processor processes BluRay data.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_P8 + DXGI_FORMAT_P8 +
+ + +

8-bit palletized format with 8 bits of alpha that is used for palletized YUV data when the processor processes BluRay data.

For more info about YUV formats for video rendering, see Recommended 8-Bit YUV Formats for Video Rendering.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_A8P8 + DXGI_FORMAT_A8P8 +
+ + +

A four-component, 16-bit unsigned-normalized integer format that supports 4 bits for each channel including alpha.

Direct3D 11.1:??This value is not supported until Windows?8.

+
+ bb173059 + DXGI_FORMAT_B4G4R4A4_UNORM + DXGI_FORMAT_B4G4R4A4_UNORM +
+ + +

A video format; an 8-bit version of a hybrid planar 4:2:2 format.

+
+ bb173059 + DXGI_FORMAT_P208 + DXGI_FORMAT_P208 +
+ + +

An 8 bit YCbCrA 4:4 rendering format.

+
+ bb173059 + DXGI_FORMAT_V208 + DXGI_FORMAT_V208 +
+ + +

An 8 bit YCbCrA 4:4:4:4 rendering format.

+
+ bb173059 + DXGI_FORMAT_V408 + DXGI_FORMAT_V408 +
+ + +

Indicates options for presenting frames to the swap chain.

+
+ +

This enum is used by the structure.

+
+ dn384107 + DXGI_FRAME_PRESENTATION_MODE + DXGI_FRAME_PRESENTATION_MODE +
+ + +

Specifies that the presentation mode is a composition surface, meaning that the conversion from YUV to RGB is happening once per output refresh (for example, 60 Hz). When this value is returned, the media app should discontinue use of the decode swap chain and perform YUV to RGB conversion itself, reducing the frequency of YUV to RGB conversion to once per video frame.

+
+ dn384107 + DXGI_FRAME_PRESENTATION_MODE_COMPOSED + DXGI_FRAME_PRESENTATION_MODE_COMPOSED +
+ + +

Specifies that the presentation mode is an overlay surface, meaning that the YUV to RGB conversion is happening efficiently in hardware (once per video frame). When this value is returned, the media app can continue to use the decode swap chain. See .

+
+ dn384107 + DXGI_FRAME_PRESENTATION_MODE_OVERLAY + DXGI_FRAME_PRESENTATION_MODE_OVERLAY +
+ + +

No presentation is specified.

+
+ dn384107 + DXGI_FRAME_PRESENTATION_MODE_NONE + DXGI_FRAME_PRESENTATION_MODE_NONE +
+ + +

An issue occurred that caused content protection to be invalidated in a swap-chain with hardware content protection, and is usually because the system ran out of hardware protected memory. The app will need to do one of the following:

  • Drastically reduce the amount of hardware protected memory used. For example, media applications might be able to reduce their buffering. +
  • Stop using hardware protection if possible.

Note that simply re-creating the swap chain or the device will usually have no impact as the DWM will continue to run out of memory and will return the same failure.

+
+ dn384107 + DXGI_FRAME_PRESENTATION_MODE_COMPOSITION_FAILURE + DXGI_FRAME_PRESENTATION_MODE_COMPOSITION_FAILURE +
+ + +

Identifies the granularity at which the graphics processing unit (GPU) can be preempted from performing its current graphics rendering task.

+
+ +

You call the IDXGIAdapter2::GetDesc2 method to retrieve the granularity level at which the GPU can be preempted from performing its current graphics rendering task. The operating system specifies the graphics granularity level in the GraphicsPreemptionGranularity member of the structure.

The following figure shows granularity of graphics rendering tasks.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_GRANULARITY + DXGI_GRAPHICS_PREEMPTION_GRANULARITY +
+ + +

Indicates the preemption granularity as a DMA buffer.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_DMA_BUFFER_BOUNDARY + DXGI_GRAPHICS_PREEMPTION_DMA_BUFFER_BOUNDARY +
+ + +

Indicates the preemption granularity as a graphics primitive. A primitive is a section in a DMA buffer and can be a group of triangles.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_PRIMITIVE_BOUNDARY + DXGI_GRAPHICS_PREEMPTION_PRIMITIVE_BOUNDARY +
+ + +

Indicates the preemption granularity as a triangle. A triangle is a part of a primitive.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_TRIANGLE_BOUNDARY + DXGI_GRAPHICS_PREEMPTION_TRIANGLE_BOUNDARY +
+ + +

Indicates the preemption granularity as a pixel. A pixel is a part of a triangle.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_PIXEL_BOUNDARY + DXGI_GRAPHICS_PREEMPTION_PIXEL_BOUNDARY +
+ + +

Indicates the preemption granularity as a graphics instruction. A graphics instruction operates on a pixel.

+
+ hh404504 + DXGI_GRAPHICS_PREEMPTION_INSTRUCTION_BOUNDARY + DXGI_GRAPHICS_PREEMPTION_INSTRUCTION_BOUNDARY +
+ + + No documentation. + + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_FULLSCREEN + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_FULLSCREEN + + + + No documentation. + + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_WINDOWED + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_WINDOWED + + + + No documentation. + + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_CURSOR_STRETCHED + DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_CURSOR_STRETCHED + + + + None + + None + None + + + +

Specifies the header metadata type.

+
+ +

This enum is used by the SetHDRMetaData method.

+
+ mt732701 + DXGI_HDR_METADATA_TYPE + DXGI_HDR_METADATA_TYPE +
+ + +

Indicates there is no header metadata.

+
+ mt732701 + DXGI_HDR_METADATA_TYPE_NONE + DXGI_HDR_METADATA_TYPE_NONE +
+ + +

Indicates the header metadata is held by a structure.

+
+ mt732701 + DXGI_HDR_METADATA_TYPE_HDR10 + DXGI_HDR_METADATA_TYPE_HDR10 +
+ + +

Values that specify categories of debug messages.

+
+ +

Use this enumeration when you call IDXGIInfoQueue::GetMessage to retrieve a message and when you call IDXGIInfoQueue::AddMessage to add a message. When you create an info queue filter, you can use these values to allow or deny any categories of messages to pass through the storage and retrieval filters.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY + DXGI_INFO_QUEUE_MESSAGE_CATEGORY +
+ + +

Unknown category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_UNKNOWN + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_UNKNOWN +
+ + +

Miscellaneous category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_MISCELLANEOUS + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_MISCELLANEOUS +
+ + +

Initialization category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_INITIALIZATION + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_INITIALIZATION +
+ + +

Cleanup category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_CLEANUP + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_CLEANUP +
+ + +

Compilation category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_COMPILATION + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_COMPILATION +
+ + +

State creation category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_CREATION + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_CREATION +
+ + +

State setting category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_SETTING + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_SETTING +
+ + +

State getting category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_GETTING + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_STATE_GETTING +
+ + +

Resource manipulation category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_RESOURCE_MANIPULATION + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_RESOURCE_MANIPULATION +
+ + +

Execution category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_EXECUTION + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_EXECUTION +
+ + +

Shader category.

+
+ hh780349 + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_SHADER + DXGI_INFO_QUEUE_MESSAGE_CATEGORY_SHADER +
+ + +

Values that specify debug message severity levels for an information queue.

+
+ +

Use this enumeration when you call IDXGIInfoQueue::GetMessage to retrieve a message and when you call IDXGIInfoQueue::AddMessage to add a message. Also, use this enumeration with IDXGIInfoQueue::AddApplicationMessage.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY + DXGI_INFO_QUEUE_MESSAGE_SEVERITY +
+ + +

Defines some type of corruption that has occurred.

+
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_CORRUPTION + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_CORRUPTION +
+ + +

Defines an error message.

+
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_ERROR + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_ERROR +
+ + +

Defines a warning message.

+
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_WARNING + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_WARNING +
+ + +

Defines an information message.

+
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_INFO + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_INFO +
+ + +

Defines a message other than corruption, error, warning, or information.

+
+ hh780350 + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_MESSAGE + DXGI_INFO_QUEUE_MESSAGE_SEVERITY_MESSAGE +
+ + +

A reference to the surface data (see ).

+
+ bb174567 + DXGI_MAP_READ + DXGI_MAP_READ +
+ + +

CPU read-write flags. These flags can be combined with a logical OR.

  • DXGI_MAP_READ - Allow CPU read access.
  • DXGI_MAP_WRITE - Allow CPU write access.
  • DXGI_MAP_DISCARD - Discard the previous contents of a resource when it is mapped.
+
+ bb174567 + DXGI_MAP_WRITE + DXGI_MAP_WRITE +
+ + + No documentation. + + bb174567 + DXGI_MAP_DISCARD + DXGI_MAP_DISCARD + + + +

Specifies the memory segment group to use.

+
+ +

This enum is used by QueryVideoMemoryInfo and SetVideoMemoryReservation.

Refer to the remarks for .

+
+ dn933219 + DXGI_MEMORY_SEGMENT_GROUP + DXGI_MEMORY_SEGMENT_GROUP +
+ + +

The grouping of segments which is considered local to the video adapter, and represents the fastest available memory to the GPU. Applications should target the local segment group as the target size for their working set.

+
+ dn933219 + DXGI_MEMORY_SEGMENT_GROUP_LOCAL + DXGI_MEMORY_SEGMENT_GROUP_LOCAL +
+ + +

The grouping of segments which is considered non-local to the video adapter, and may have slower performance than the local segment group.

+
+ dn933219 + DXGI_MEMORY_SEGMENT_GROUP_NON_LOCAL + DXGI_MEMORY_SEGMENT_GROUP_NON_LOCAL +
+ + +

Specifies nominal range YCbCr, which isn't an absolute color space, but a way of encoding RGB info.

+
+ dn313170 + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE +
+ + +

Specifies BT.709, which standardizes the format of high-definition television and has 16:9 (widescreen) aspect ratio.

+
+ dn313170 + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_BT709 + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_BT709 +
+ + +

Specifies xvYCC or extended-gamut YCC (also x.v.Color) color space that can be used in the video electronics of television sets to support a gamut 1.8 times as large as that of the sRGB color space.

+
+ dn313170 + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_xvYCC + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_xvYCC +
+ + + None + + None + None + + + + No documentation. + + mt732702 + DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT + DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT + + + + None + + None + None + + + +

Identifies the importance of a resource?s content when you call the IDXGIDevice2::OfferResources method to offer the resource.

+
+ +

Priority determines how likely the operating system is to discard an offered resource. Resources offered with lower priority are discarded first.

+
+ dn933257 + DXGI_OFFER_RESOURCE_PRIORITY + DXGI_OFFER_RESOURCE_PRIORITY +
+ + + No documentation. + + dn933257 + DXGI_OFFER_RESOURCE_PRIORITY_LOW + DXGI_OFFER_RESOURCE_PRIORITY_LOW + + + + No documentation. + + dn933257 + DXGI_OFFER_RESOURCE_PRIORITY_NORMAL + DXGI_OFFER_RESOURCE_PRIORITY_NORMAL + + + + No documentation. + + dn933257 + DXGI_OFFER_RESOURCE_PRIORITY_HIGH + DXGI_OFFER_RESOURCE_PRIORITY_HIGH + + + + No documentation. + + DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY + DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY + + + + None + + None + None + + + +

Identifies the type of reference shape.

+
+ hh404520 + DXGI_OUTDUPL_POINTER_SHAPE_TYPE + DXGI_OUTDUPL_POINTER_SHAPE_TYPE +
+ + +

The reference type is a monochrome mouse reference, which is a monochrome bitmap. The bitmap's size is specified by width and height in a 1 bits per pixel (bpp) device independent bitmap (DIB) format AND mask that is followed by another 1 bpp DIB format XOR mask of the same size.

+
+ hh404520 + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MONOCHROME + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MONOCHROME +
+ + +

The reference type is a color mouse reference, which is a color bitmap. The bitmap's size is specified by width and height in a 32 bpp ARGB DIB format.

+
+ hh404520 + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_COLOR + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_COLOR +
+ + +

The reference type is a masked color mouse reference. A masked color mouse reference is a 32 bpp ARGB format bitmap with the mask value in the alpha bits. The only allowed mask values are 0 and 0xFF. When the mask value is 0, the RGB value should replace the screen pixel. When the mask value is 0xFF, an XOR operation is performed on the RGB value and the screen pixel; the result replaces the screen pixel.

+
+ hh404520 + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MASKED_COLOR + DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MASKED_COLOR +
+ + +

Overlay color space support is present.

+
+ dn903665 + DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_PRESENT + DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_PRESENT +
+ + + None + + None + None + + + + No documentation. + + dn903667 + DXGI_OVERLAY_SUPPORT_FLAG_DIRECT + DXGI_OVERLAY_SUPPORT_FLAG_DIRECT + + + + No documentation. + + dn903667 + DXGI_OVERLAY_SUPPORT_FLAG_SCALING + DXGI_OVERLAY_SUPPORT_FLAG_SCALING + + + +

An integer that specifies how to synchronize presentation of a frame with the vertical blank. +

For the bit-block transfer (bitblt) model (DXGI_SWAP_EFFECT_DISCARD or DXGI_SWAP_EFFECT_SEQUENTIAL), values are:

  • 0 - The presentation occurs immediately, there is no synchronization.
  • 1 through 4 - Synchronize presentation after the nth vertical blank.

For the flip model (DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL), values are:

  • 0 - Cancel the remaining time on the previously presented frame and discard this frame if a newer frame is queued. +
  • 1 through 4 - Synchronize presentation for at least n vertical blanks.

For an example that shows how sync-interval values affect a flip presentation queue, see Remarks.

If the update region straddles more than one output (each represented by ), Present performs the synchronization to the output that contains the largest sub-rectangle of the target window's client area.

+
+ bb174576 + DXGI_PRESENT_TEST + DXGI_PRESENT_TEST +
+ + +

An integer value that contains swap-chain presentation options. These options are defined by the DXGI_PRESENT constants.

+
+ bb174576 + DXGI_PRESENT_DO_NOT_SEQUENCE + DXGI_PRESENT_DO_NOT_SEQUENCE +
+ + + No documentation. + + bb174576 + DXGI_PRESENT_RESTART + DXGI_PRESENT_RESTART + + + + No documentation. + + bb174576 + DXGI_PRESENT_DO_NOT_WAIT + DXGI_PRESENT_DO_NOT_WAIT + + + + No documentation. + + bb174576 + DXGI_PRESENT_STEREO_PREFER_RIGHT + DXGI_PRESENT_STEREO_PREFER_RIGHT + + + + No documentation. + + bb174576 + DXGI_PRESENT_STEREO_TEMPORARY_MONO + DXGI_PRESENT_STEREO_TEMPORARY_MONO + + + + No documentation. + + bb174576 + DXGI_PRESENT_RESTRICT_TO_OUTPUT + DXGI_PRESENT_RESTRICT_TO_OUTPUT + + + + No documentation. + + bb174576 + DXGI_PRESENT_USE_DURATION + DXGI_PRESENT_USE_DURATION + + + + No documentation. + + bb174576 + DXGI_PRESENT_ALLOW_TEARING + DXGI_PRESENT_ALLOW_TEARING + + + + None + + None + None + + + +

Specifies result flags for the ReclaimResources1 method.

+
+ mt732703 + DXGI_RECLAIM_RESOURCE_RESULTS + DXGI_RECLAIM_RESOURCE_RESULTS +
+ + + No documentation. + + mt732703 + DXGI_RECLAIM_RESOURCE_RESULT_OK + DXGI_RECLAIM_RESOURCE_RESULT_OK + + + + No documentation. + + mt732703 + DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED + DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED + + + + No documentation. + + mt732703 + DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED + DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED + + + +

Flags indicating the memory location of a resource.

+
+ +

This enum is used by QueryResourceResidency.

+
+ bb173070 + DXGI_RESIDENCY + DXGI_RESIDENCY +
+ + +

The resource is located in video memory.

+
+ bb173070 + DXGI_RESIDENCY_FULLY_RESIDENT + DXGI_RESIDENCY_FULLY_RESIDENT +
+ + +

At least some of the resource is located in CPU memory.

+
+ bb173070 + DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY + DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY +
+ + +

At least some of the resource has been paged out to the hard drive.

+
+ bb173070 + DXGI_RESIDENCY_EVICTED_TO_DISK + DXGI_RESIDENCY_EVICTED_TO_DISK +
+ + +

Set the priority for evicting the resource from memory.

+
+ +

The eviction priority is a memory-management variable that is used by DXGI for determining how to populate overcommitted memory.

You can set priority levels other than the defined values when appropriate. For example, you can set a resource with a priority level of 0x78000001 to indicate that the resource is slightly above normal.

+
+ bb174564 + DXGI_RESOURCE_PRIORITY + DXGI_RESOURCE_PRIORITY +
+ + +

The priority is one of the following values:

ValueMeaning
DXGI_RESOURCE_PRIORITY_MINIMUM (0x28000000)

The resource is unused and can be evicted as soon as another resource requires the memory that the resource occupies.

DXGI_RESOURCE_PRIORITY_LOW (0x50000000)

The eviction priority of the resource is low. The placement of the resource is not critical, and minimal work is performed to find a location for the resource. For example, if a GPU can render with a vertex buffer from either local or non-local memory with little difference in performance, that vertex buffer is low priority. Other more critical resources (for example, a render target or texture) can then occupy the faster memory.

DXGI_RESOURCE_PRIORITY_NORMAL (0x78000000)

The eviction priority of the resource is normal. The placement of the resource is important, but not critical, for performance. The resource is placed in its preferred location instead of a low-priority resource.

DXGI_RESOURCE_PRIORITY_HIGH (0xa0000000)

The eviction priority of the resource is high. The resource is placed in its preferred location instead of a low-priority or normal-priority resource.

DXGI_RESOURCE_PRIORITY_MAXIMUM (0xc8000000)

The resource is evicted from memory only if there is no other way of resolving the memory requirement.

?

+
+ bb174564 + DXGI_RESOURCE_PRIORITY_MINIMUM + DXGI_RESOURCE_PRIORITY_MINIMUM +
+ + + No documentation. + + bb174564 + DXGI_RESOURCE_PRIORITY_LOW + DXGI_RESOURCE_PRIORITY_LOW + + + + No documentation. + + bb174564 + DXGI_RESOURCE_PRIORITY_NORMAL + DXGI_RESOURCE_PRIORITY_NORMAL + + + + No documentation. + + bb174564 + DXGI_RESOURCE_PRIORITY_HIGH + DXGI_RESOURCE_PRIORITY_HIGH + + + + No documentation. + + bb174564 + DXGI_RESOURCE_PRIORITY_MAXIMUM + DXGI_RESOURCE_PRIORITY_MAXIMUM + + + +

Identifies resize behavior when the back-buffer size does not match the size of the target output.

+
+ +

The DXGI_SCALING_NONE value is supported only for flip presentation model swap chains that you create with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value. You pass these values in a call to IDXGIFactory2::CreateSwapChainForHwnd, IDXGIFactory2::CreateSwapChainForCoreWindow, or IDXGIFactory2::CreateSwapChainForComposition.

DXGI_SCALING_ASPECT_RATIO_STRETCH will prefer to use a horizontal fill, otherwise it will use a vertical fill, using the following logic.

float aspectRatio = backBufferWidth / float(backBufferHeight); // Horizontal fill float scaledWidth = outputWidth; float scaledHeight = outputWidth / aspectRatio; if (scaledHeight >= outputHeight) { // Do vertical fill scaledWidth = outputHeight * aspectRatio; scaledHeight = outputHeight; } float offsetX = (outputWidth - scaledWidth) * 0.5f; float offsetY = (outputHeight - scaledHeight) * 0.5f; rect.left = static_cast<>(offsetX); rect.top = static_cast<>(offsetY); rect.right = static_cast<>(offsetX + scaledWidth); rect.bottom = static_cast<>(offsetY + scaledHeight); rect.left = std::max<>(0, rect.left); rect.top = std::max<>(0, rect.top); rect.right = std::min<>(static_cast<>(outputWidth), rect.right); rect.bottom = std::min<>(static_cast<>(outputHeight), rect.bottom); +

Note that outputWidth and outputHeight are the pixel sizes of the presentation target size. In the case of CoreWindow, this requires converting the logicalWidth and logicalHeight values from DIPS to pixels using the window's DPI property.

+
+ hh404526 + DXGI_SCALING + DXGI_SCALING +
+ + +

Directs DXGI to make the back-buffer contents scale to fit the presentation target size. This is the implicit behavior of DXGI when you call the IDXGIFactory::CreateSwapChain method.

+
+ hh404526 + DXGI_SCALING_STRETCH + DXGI_SCALING_STRETCH +
+ + +

Directs DXGI to make the back-buffer contents appear without any scaling when the presentation target size is not equal to the back-buffer size. The top edges of the back buffer and presentation target are aligned together. If the WS_EX_LAYOUTRTL style is associated with the handle to the target output window, the right edges of the back buffer and presentation target are aligned together; otherwise, the left edges are aligned together. All target area outside the back buffer is filled with window background color.

This value specifies that all target areas outside the back buffer of a swap chain are filled with the background color that you specify in a call to IDXGISwapChain1::SetBackgroundColor.

+
+ hh404526 + DXGI_SCALING_NONE + DXGI_SCALING_NONE +
+ + +

Directs DXGI to make the back-buffer contents scale to fit the presentation target size, while preserving the aspect ratio of the back-buffer. If the scaled back-buffer does not fill the presentation area, it will be centered with black borders.

This constant is supported on Windows Phone 8 and Windows 10.

Note that with legacy Win32 window swapchains, this works the same as DXGI_SCALING_STRETCH. +

+
+ hh404526 + DXGI_SCALING_ASPECT_RATIO_STRETCH + DXGI_SCALING_ASPECT_RATIO_STRETCH +
+ + + No documentation. + + DXGI_SHARED_RESOURCE_READ + DXGI_SHARED_RESOURCE_READ + + + + No documentation. + + DXGI_SHARED_RESOURCE_WRITE + DXGI_SHARED_RESOURCE_WRITE + + + + None + + None + None + + + +

Color space support is present.

+
+ dn903668 + DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_PRESENT + DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_PRESENT +
+ + +

Overlay color space support is present.

+
+ dn903668 + DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_OVERLAY_PRESENT + DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_OVERLAY_PRESENT +
+ + + None + + None + None + + + +

Set this flag to turn off automatic image rotation; that is, do not perform a rotation when transferring the contents of the front buffer to the monitor. Use this flag to avoid a bandwidth penalty when an application expects to handle rotation. This option is valid only during full-screen mode.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_NONPREROTATED + DXGI_SWAP_CHAIN_FLAG_NONPREROTATED +
+ + +

Set this flag to enable an application to switch modes by calling IDXGISwapChain::ResizeTarget. When switching from windowed to full-screen mode, the display mode (or monitor resolution) will be changed to match the dimensions of the application window.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH + DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH +
+ + +

Set this flag to enable an application to render using GDI on a swap chain or a surface. This will allow the application to call IDXGISurface1::GetDC on the 0th back buffer or a surface.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE + DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE +
+ + +

Set this flag to indicate that the swap chain might contain protected content; therefore, the operating system supports the creation of the swap chain only when driver and hardware protection is used. If the driver and hardware do not support content protection, the call to create a resource for the swap chain fails.

Direct3D 11:??This enumeration value is supported starting with Windows?8.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT + DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT +
+ + +

Set this flag to indicate that shared resources that are created within the swap chain must be protected by using the driver?s mechanism for restricting access to shared surfaces.

Direct3D 11:??This enumeration value is supported starting with Windows?8.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER + DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER +
+ + +

Set this flag to restrict presented content to the local displays. Therefore, the presented content is not accessible via remote accessing or through the desktop duplication APIs.

This flag supports the window content protection features of Windows. Applications can use this flag to protect their own onscreen window content from being captured or copied through a specific set of public operating system features and APIs.

If you use this flag with windowed ( or IWindow) swap chains where another process created the , the owner of the must use the SetWindowDisplayAffinity function appropriately in order to allow calls to IDXGISwapChain::Present or IDXGISwapChain1::Present1 to succeed. +

Direct3D 11:??This enumeration value is supported starting with Windows?8.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY + DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY +
+ + +

Set this flag to create a waitable object you can use to ensure rendering does not begin while a frame is still being presented. When this flag is used, the swapchain's latency must be set with the IDXGISwapChain2::SetMaximumFrameLatency API instead of IDXGIDevice1::SetMaximumFrameLatency.

Note??This enumeration value is supported starting with Windows?8.1.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT + DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT +
+ + +

Set this flag to create a swap chain in the foreground layer for multi-plane rendering. This flag can only be used with CoreWindow swap chains, which are created with CreateSwapChainForCoreWindow. Apps should not create foreground swap chains if IDXGIOutput2::SupportsOverlays indicates that hardware support for overlays is not available.

Note that IDXGISwapChain::ResizeBuffers cannot be used to add or remove this flag.

Note??This enumeration value is supported starting with Windows?8.1.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER + DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER +
+ + +

Set this flag to create a swap chain for full-screen video.

Note??This enumeration value is supported starting with Windows?8.1.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO + DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO +
+ + +

Set this flag to create a swap chain for YUV video.

Note??This enumeration value is supported starting with Windows?8.1.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO + DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO +
+ + +

Indicates that the swap chain should be created such that all underlying resources can be protected by the hardware. Resource creation will fail if hardware content protection is not supported.

This flag has the following restrictions:

  • This flag can only be used with swap effect DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL.
Note??Creating a swap chain using this flag does not automatically guarantee that hardware protection will be enabled for the underlying allocation. Some implementations require that the DRM components are first initialized prior to any guarantees of protection. ?

Note??This enumeration value is supported starting with Windows?10.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED + DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED +
+ + +

Tearing support is a requirement to enable displays that support variable refresh rates to function properly when the application presents a swap chain tied to a full screen borderless window. Win32 apps can already achieve tearing in fullscreen exclusive mode by calling SetFullscreenState(TRUE), but the recommended approach for Win32 developers is to use this tearing flag instead.

To check for hardware support of this feature, refer to IDXGIFactory5::CheckFeatureSupport. For usage information refer to IDXGISwapChain::Present and the DXGI_PRESENT flags.

+
+ bb173076 + DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING + DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING +
+ + + No documentation. + + bb173076 + DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS + DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS + + + + None + + None + None + + + +

Options for handling pixels in a display surface after calling IDXGISwapChain1::Present1.

+
+ +

This enumeration is used by the and structures.

To use multisampling with DXGI_SWAP_EFFECT_SEQUENTIAL or DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL, you must perform the multisampling in a separate render target. For example, create a multisampled texture by calling ID3D11Device::CreateTexture2D with a filled structure (BindFlags member set to D3D11_BIND_RENDER_TARGET and SampleDesc member with multisampling parameters). Next call ID3D11Device::CreateRenderTargetView to create a render-target view for the texture, and render your scene into the texture. Finally call ID3D11DeviceContext::ResolveSubresource to resolve the multisampled texture into your non-multisampled swap chain.

The primary difference between presentation models is how back-buffer contents get to the Desktop Window Manager (DWM) for composition. In the bitblt model, which is used with the DXGI_SWAP_EFFECT_DISCARD and DXGI_SWAP_EFFECT_SEQUENTIAL values, contents of the back buffer get copied into the redirection surface on each call to IDXGISwapChain1::Present1. In the flip model, which is used with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value, all back buffers are shared with the DWM. Therefore, the DWM can compose straight from those back buffers without any additional copy operations. In general, the flip model is the more efficient model. The flip model also provides more features, such as enhanced present statistics.

When you call IDXGISwapChain1::Present1 on a flip model swap chain (DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL) with 0 specified in the SyncInterval parameter, IDXGISwapChain1::Present1's behavior is the same as the behavior of Direct3D 9Ex's IDirect3DDevice9Ex::PresentEx with D3DSWAPEFFECT_FLIPEX and D3DPRESENT_FORCEIMMEDIATE. That is, the runtime not only presents the next frame instead of any previously queued frames, it also terminates any remaining time left on the previously queued frames.

Regardless of whether the flip model is more efficient, an application still might choose the bitblt model because the bitblt model is the only way to mix GDI and DirectX presentation. In the flip model, the application must create the swap chain with DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE, and then must use GetDC on the back buffer explicitly. After the first successful call to IDXGISwapChain1::Present1 on a flip-model swap chain, GDI no longer works with the that is associated with that swap chain, even after the destruction of the swap chain. This restriction even extends to methods like ScrollWindowEx.

For more info about the flip-model swap chain and optimizing presentation, see Enhancing presentation with the flip model, dirty rectangles, and scrolled areas.

+
+ bb173077 + DXGI_SWAP_EFFECT + DXGI_SWAP_EFFECT +
+ + + No documentation. + + bb173077 + DXGI_SWAP_EFFECT_DISCARD + DXGI_SWAP_EFFECT_DISCARD + + + + No documentation. + + bb173077 + DXGI_SWAP_EFFECT_SEQUENTIAL + DXGI_SWAP_EFFECT_SEQUENTIAL + + + + No documentation. + + bb173077 + DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL + DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL + + + + No documentation. + + bb173077 + DXGI_SWAP_EFFECT_FLIP_DISCARD + DXGI_SWAP_EFFECT_FLIP_DISCARD + + + + No documentation. + + DXGI_USAGE_SHADER_INPUT + DXGI_USAGE_SHADER_INPUT + + + + No documentation. + + DXGI_USAGE_RENDER_TARGET_OUTPUT + DXGI_USAGE_RENDER_TARGET_OUTPUT + + + + No documentation. + + DXGI_USAGE_BACK_BUFFER + DXGI_USAGE_BACK_BUFFER + + + + No documentation. + + DXGI_USAGE_SHARED + DXGI_USAGE_SHARED + + + + No documentation. + + DXGI_USAGE_READ_ONLY + DXGI_USAGE_READ_ONLY + + + + No documentation. + + DXGI_USAGE_DISCARD_ON_PRESENT + DXGI_USAGE_DISCARD_ON_PRESENT + + + + No documentation. + + DXGI_USAGE_UNORDERED_ACCESS + DXGI_USAGE_UNORDERED_ACCESS + + + + No documentation. + + DXGI_MWA_NO_WINDOW_CHANGES + DXGI_MWA_NO_WINDOW_CHANGES + + + + No documentation. + + DXGI_MWA_NO_ALT_ENTER + DXGI_MWA_NO_ALT_ENTER + + + + No documentation. + + DXGI_MWA_NO_PRINT_SCREEN + DXGI_MWA_NO_PRINT_SCREEN + + + + No documentation. + + DXGI_MWA_VALID + DXGI_MWA_VALID + + + + None + + None + None + + + + Functions + + + + Constant CreateFactoryDebug + DXGI_CREATE_FACTORY_DEBUG + + + +

Creates a DXGI 1.1 factory that you can use to generate other DXGI objects.

+
+

The globally unique identifier () of the object referenced by the ppFactory parameter.

+

Address of a reference to an object.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

Use a DXGI 1.1 factory to generate objects that enumerate adapters, create swap chains, and associate a window with the alt+enter key sequence for toggling to and from the full-screen display mode.

If the CreateDXGIFactory1 function succeeds, the reference count on the interface is incremented. To avoid a memory leak, when you finish using the interface, call the IDXGIFactory1::Release method to release the interface.

This entry point is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Note??Do not mix the use of DXGI 1.0 () and DXGI 1.1 () in an application. Use or , but not both in an application.?Note??CreateDXGIFactory1 fails if your app's DllMain function calls it. For more info about how DXGI responds from DllMain, see DXGI Responses from DLLMain.?Note??Starting with Windows?8, all DXGI factories (regardless if they were created with CreateDXGIFactory or CreateDXGIFactory1) enumerate adapters identically. The enumeration order of adapters, which you retrieve with IDXGIFactory::EnumAdapters or IDXGIFactory1::EnumAdapters1, is as follows:
  • Adapter with the output on which the desktop primary is displayed. This adapter corresponds with an index of zero.
  • Adapters with outputs.
  • Adapters without outputs.
? +
+ ff471318 + HRESULT CreateDXGIFactory1([In] const GUID& riid,[Out] void** ppFactory) + CreateDXGIFactory1 +
+ + +

Creates a DXGI 1.3 factory that you can use to generate other DXGI objects.

In Windows?8, any DXGI factory created while DXGIDebug.dll was present on the system would load and use it. Starting in Windows?8.1, apps explicitly request that DXGIDebug.dll be loaded instead. Use CreateDXGIFactory2 and specify the flag to request DXGIDebug.dll; the DLL will be loaded if it is present on the system.

+
+

Valid values include the (0x01) flag, and zero.

Note??This flag will be set by the D3D runtime if:
  • The system creates an implicit factory during device creation.
  • The D3D11_CREATE_DEVICE_DEBUG flag is specified during device creation, for example using D3D11CreateDevice (or the swapchain method, or the Direct3D 10 equivalents).
?
+

The globally unique identifier () of the object referenced by the ppFactory parameter.

+

Address of a reference to an object.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

This function accepts a flag indicating whether DXGIDebug.dll is loaded. The function otherwise behaves identically to CreateDXGIFactory1.

+
+ dn268307 + HRESULT CreateDXGIFactory2([In] unsigned int Flags,[In] const GUID& riid,[Out] void** ppFactory) + CreateDXGIFactory2 +
+ + + Functions + + + + Constant InvalidCall + DXGI_ERROR_INVALID_CALL + + + Constant NotFound + DXGI_ERROR_NOT_FOUND + + + Constant MoreData + DXGI_ERROR_MORE_DATA + + + Constant Unsupported + DXGI_ERROR_UNSUPPORTED + + + Constant DeviceRemoved + DXGI_ERROR_DEVICE_REMOVED + + + Constant DeviceHung + DXGI_ERROR_DEVICE_HUNG + + + Constant DeviceReset + DXGI_ERROR_DEVICE_RESET + + + Constant WasStillDrawing + DXGI_ERROR_WAS_STILL_DRAWING + + + Constant FrameStatisticsDisjoint + DXGI_ERROR_FRAME_STATISTICS_DISJOINT + + + Constant GraphicsVidpnSourceInUse + DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE + + + Constant DriverInternalError + DXGI_ERROR_DRIVER_INTERNAL_ERROR + + + Constant Nonexclusive + DXGI_ERROR_NONEXCLUSIVE + + + Constant NotCurrentlyAvailable + DXGI_ERROR_NOT_CURRENTLY_AVAILABLE + + + Constant RemoteClientDisconnected + DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED + + + Constant RemoteOufOfMemory + DXGI_ERROR_REMOTE_OUTOFMEMORY + + + Constant AccessLost + DXGI_ERROR_ACCESS_LOST + + + Constant WaitTimeout + DXGI_ERROR_WAIT_TIMEOUT + + + Constant SessionDisconnected + DXGI_ERROR_SESSION_DISCONNECTED + + + Constant RestrictToOutputStale + DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE + + + Constant CannotProtectContent + DXGI_ERROR_CANNOT_PROTECT_CONTENT + + + Constant AccessDenied + DXGI_ERROR_ACCESS_DENIED + + + Constant NameAlreadyExists + DXGI_ERROR_NAME_ALREADY_EXISTS + + + Constant SdkComponentMissing + DXGI_ERROR_SDK_COMPONENT_MISSING + + + Constant NotCurrent + DXGI_ERROR_NOT_CURRENT + + + Constant HwProtectionOufOfMemory + DXGI_ERROR_HW_PROTECTION_OUTOFMEMORY + + + Constant DynamicCodePolicyViolation + DXGI_ERROR_DYNAMIC_CODE_POLICY_VIOLATION + + + Constant NonCompositedUi + DXGI_ERROR_NON_COMPOSITED_UI + + + Constant ModeChangeInProgress + DXGI_ERROR_MODE_CHANGE_IN_PROGRESS + + + Constant CacheCorrupt + DXGI_ERROR_CACHE_CORRUPT + + + Constant CacheFull + DXGI_ERROR_CACHE_FULL + + + Constant CacheHashCollision + DXGI_ERROR_CACHE_HASH_COLLISION + + + Constant AlreadyExists + DXGI_ERROR_ALREADY_EXISTS + + + +

Gets a DXGI 1.1 description of an adapter (or video card).

+
+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Use the GetDesc1 method to get a DXGI 1.1 description of an adapter. To get a DXGI 1.0 description, use the method.

+
+ ff471330 + GetDesc1 + GetDesc1 +
+ + +

Gets a DXGI 1.1 description of an adapter (or video card).

+
+

A reference to a structure that describes the adapter. This parameter must not be null. On feature level 9 graphics hardware, GetDesc1 returns zeros for the PCI ID in the VendorId, DeviceId, SubSysId, and Revision members of and ?Software Adapter? for the description string in the Description member.

+

Returns if successful; otherwise, returns E_INVALIDARG if the pDesc parameter is null.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Use the GetDesc1 method to get a DXGI 1.1 description of an adapter. To get a DXGI 1.0 description, use the method.

+
+ ff471330 + HRESULT IDXGIAdapter1::GetDesc1([Out] DXGI_ADAPTER_DESC1* pDesc) + IDXGIAdapter1::GetDesc1 +
+ + +

Gets a Microsoft DirectX Graphics Infrastructure (DXGI) 1.2 description of an adapter or video card. This description includes information about the granularity at which the graphics processing unit (GPU) can be preempted from performing its current task.

+
+ +

Use the GetDesc2 method to get a DXGI 1.2 description of an adapter. To get a DXGI 1.1 description, use the IDXGIAdapter1::GetDesc1 method. To get a DXGI 1.0 description, use the IDXGIAdapter::GetDesc method.

The Windows Display Driver Model (WDDM) scheduler can preempt the GPU's execution of application tasks. The granularity at which the GPU can be preempted from performing its current task in the WDDM 1.1 or earlier driver model is a direct memory access (DMA) buffer for graphics tasks or a compute packet for compute tasks. The GPU can switch between tasks only after it completes the currently executing unit of work, a DMA buffer or a compute packet.

A DMA buffer is the largest independent unit of graphics work that the WDDM scheduler can submit to the GPU. This buffer contains a set of GPU instructions that the WDDM driver and GPU use. A compute packet is the largest independent unit of compute work that the WDDM scheduler can submit to the GPU. A compute packet contains dispatches (for example, calls to the ID3D11DeviceContext::Dispatch method), which contain thread groups. The WDDM 1.2 or later driver model allows the GPU to be preempted at finer granularity levels than a DMA buffer or compute packet. You can use the GetDesc2 method to retrieve the granularity levels for graphics and compute tasks.

+
+ hh404540 + GetDesc2 + GetDesc2 +
+ + +

Gets a Microsoft DirectX Graphics Infrastructure (DXGI) 1.2 description of an adapter or video card. This description includes information about the granularity at which the graphics processing unit (GPU) can be preempted from performing its current task.

+
+

A reference to a structure that describes the adapter. This parameter must not be null. On feature level 9 graphics hardware, earlier versions of GetDesc2 (GetDesc and GetDesc1) return zeros for the PCI ID in the VendorId, DeviceId, SubSysId, and Revision members of the adapter description structure and ?Software Adapter? for the description string in the Description member. GetDesc2 returns the actual feature level 9 hardware values in these members.

+

Returns if successful; otherwise, returns E_INVALIDARG if the pDesc parameter is null.

+ +

Use the GetDesc2 method to get a DXGI 1.2 description of an adapter. To get a DXGI 1.1 description, use the IDXGIAdapter1::GetDesc1 method. To get a DXGI 1.0 description, use the IDXGIAdapter::GetDesc method.

The Windows Display Driver Model (WDDM) scheduler can preempt the GPU's execution of application tasks. The granularity at which the GPU can be preempted from performing its current task in the WDDM 1.1 or earlier driver model is a direct memory access (DMA) buffer for graphics tasks or a compute packet for compute tasks. The GPU can switch between tasks only after it completes the currently executing unit of work, a DMA buffer or a compute packet.

A DMA buffer is the largest independent unit of graphics work that the WDDM scheduler can submit to the GPU. This buffer contains a set of GPU instructions that the WDDM driver and GPU use. A compute packet is the largest independent unit of compute work that the WDDM scheduler can submit to the GPU. A compute packet contains dispatches (for example, calls to the ID3D11DeviceContext::Dispatch method), which contain thread groups. The WDDM 1.2 or later driver model allows the GPU to be preempted at finer granularity levels than a DMA buffer or compute packet. You can use the GetDesc2 method to retrieve the granularity levels for graphics and compute tasks.

+
+ hh404540 + HRESULT IDXGIAdapter2::GetDesc2([Out] DXGI_ADAPTER_DESC2* pDesc) + IDXGIAdapter2::GetDesc2 +
+ + +

Registers to receive notification of hardware content protection teardown events.

+
+

A handle to the event object that the operating system sets when hardware content protection teardown occurs. The CreateEvent or OpenEvent function returns this handle.

+

A reference to a key value that an application can pass to the IDXGIAdapter3::UnregisterHardwareContentProtectionTeardownStatus method to unregister the notification event that hEvent specifies.

+ +

Call ID3D11VideoDevice::GetContentProtectionCaps() to check for the presence of the D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN capability to know whether the hardware contains an automatic teardown mechanism. After the event is signaled, the application can call ID3D11VideoContext1::CheckCryptoSessionStatus to determine the impact of the hardware teardown for a specific interface. +

+
+ dn933230 + HRESULT IDXGIAdapter3::RegisterHardwareContentProtectionTeardownStatusEvent([In] void* hEvent,[Out] DWORD* pdwCookie) + IDXGIAdapter3::RegisterHardwareContentProtectionTeardownStatusEvent +
+ + +

Unregisters an event to stop it from receiving notification of hardware content protection teardown events.

+
+

A key value for the window or event to unregister. The IDXGIAdapter3::RegisterHardwareContentProtectionTeardownStatusEvent method returns this value.

+ dn933233 + void IDXGIAdapter3::UnregisterHardwareContentProtectionTeardownStatus([In] DWORD dwCookie) + IDXGIAdapter3::UnregisterHardwareContentProtectionTeardownStatus +
+ + +

This method informs the process of the current budget and process usage.

+
+

Specifies the device's physical adapter for which the video memory information is queried. For single-GPU operation, set this to zero. If there are multiple GPU nodes, set this to the index of the node (the device's physical adapter) for which the video memory information is queried. See Multi-Adapter.

+

Specifies a that identifies the group as local or non-local.

+

Fills in a structure with the current values.

+ +

Applications must explicitly manage their usage of physical memory explicitly and keep usage within the budget assigned to the application process. Processes that cannot kept their usage within their assigned budgets will likely experience stuttering, as they are intermittently frozen and paged-out to allow other processes to run.

+
+ dn933223 + HRESULT IDXGIAdapter3::QueryVideoMemoryInfo([In] unsigned int NodeIndex,[In] DXGI_MEMORY_SEGMENT_GROUP MemorySegmentGroup,[Out] DXGI_QUERY_VIDEO_MEMORY_INFO* pVideoMemoryInfo) + IDXGIAdapter3::QueryVideoMemoryInfo +
+ + +

This method sends the minimum required physical memory for an application, to the OS.

+
+

Specifies the device's physical adapter for which the video memory information is being set. For single-GPU operation, set this to zero. If there are multiple GPU nodes, set this to the index of the node (the device's physical adapter) for which the video memory information is being set. See Multi-Adapter.

+

Specifies a that identifies the group as local or non-local.

+

Specifies a UINT64 that sets the minimum required physical memory, in bytes.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

Applications are encouraged to set a video reservation to denote the amount of physical memory they cannot go without. This value helps the OS quickly minimize the impact of large memory pressure situations.

+
+ dn933232 + HRESULT IDXGIAdapter3::SetVideoMemoryReservation([In] unsigned int NodeIndex,[In] DXGI_MEMORY_SEGMENT_GROUP MemorySegmentGroup,[In] unsigned longlong Reservation) + IDXGIAdapter3::SetVideoMemoryReservation +
+ + +

This method establishes a correlation between a CPU synchronization object and the budget change event.

+
+

Specifies a HANDLE for the event.

+

A key value for the window or event to unregister. The IDXGIAdapter3::RegisterHardwareContentProtectionTeardownStatusEvent method returns this value.

+ +

Instead of calling QueryVideoMemoryInfo regularly, applications can use CPU synchronization objects to efficiently wake threads when budget changes occur.

+
+ dn933231 + HRESULT IDXGIAdapter3::RegisterVideoMemoryBudgetChangeNotificationEvent([In] void* hEvent,[Out] DWORD* pdwCookie) + IDXGIAdapter3::RegisterVideoMemoryBudgetChangeNotificationEvent +
+ + +

This method stops notifying a CPU synchronization object whenever a budget change occurs. An application may switch back to polling the information regularly.

+
+

A key value for the window or event to unregister. The IDXGIAdapter3::RegisterHardwareContentProtectionTeardownStatusEvent method returns this value.

+ +

An application may switch back to polling for the information regularly.

+
+ dn933234 + void IDXGIAdapter3::UnregisterVideoMemoryBudgetChangeNotification([In] DWORD dwCookie) + IDXGIAdapter3::UnregisterVideoMemoryBudgetChangeNotification +
+ + + No documentation. + + GetDesc3 + GetDesc3 + + + + No documentation. + + No documentation. + No documentation. + HRESULT IDXGIAdapter4::GetDesc3([Out] DXGI_ADAPTER_DESC3* pDesc) + IDXGIAdapter4::GetDesc3 + + + +

Gets or sets the source region that is used for the swap chain.

+
+ dn384121 + GetSourceRect / SetSourceRect + GetSourceRect +
+ + +

Gets or sets the rectangle that defines the target region for the video processing blit operation.

+
+ dn384122 + GetTargetRect / SetTargetRect + GetTargetRect +
+ + +

Gets or sets the color space used by the swap chain.

+
+ dn384119 + GetColorSpace / SetColorSpace + GetColorSpace +
+ + +

Presents a frame on the output adapter. The frame is a subresource of the object that was used to create the decode swap chain.

+
+ No documentation. + No documentation. + No documentation. +

This method returns on success, or it returns one of the following error codes:

  • DXGI_STATUS_OCCLUDED
  • E_OUTOFMEMORY
+ dn384123 + HRESULT IDXGIDecodeSwapChain::PresentBuffer([In] unsigned int BufferToPresent,[In] unsigned int SyncInterval,[In] unsigned int Flags) + IDXGIDecodeSwapChain::PresentBuffer +
+ + +

Sets the rectangle that defines the source region for the video processing blit operation.

The source rectangle is the portion of the input surface that is blitted to the destination surface. The source rectangle is given in pixel coordinates, relative to the input surface.

+
+

A reference to a structure that contains the source region to set for the swap chain.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384126 + HRESULT IDXGIDecodeSwapChain::SetSourceRect([In] const RECT* pRect) + IDXGIDecodeSwapChain::SetSourceRect +
+ + +

Sets the rectangle that defines the target region for the video processing blit operation.

The target rectangle is the area within the destination surface where the output will be drawn. The target rectangle is given in pixel coordinates, relative to the destination surface.

+
+

A reference to a structure that contains the target region to set for the swap chain.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384127 + HRESULT IDXGIDecodeSwapChain::SetTargetRect([In] const RECT* pRect) + IDXGIDecodeSwapChain::SetTargetRect +
+ + +

Sets the size of the destination surface to use for the video processing blit operation.

The destination rectangle is the portion of the output surface that receives the blit for this stream. The destination rectangle is given in pixel coordinates, relative to the output surface.

+
+

The width of the destination size, in pixels.

+

The height of the destination size, in pixels.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384125 + HRESULT IDXGIDecodeSwapChain::SetDestSize([In] unsigned int Width,[In] unsigned int Height) + IDXGIDecodeSwapChain::SetDestSize +
+ + +

Gets the source region that is used for the swap chain.

+
+

A reference to a structure that receives the source region for the swap chain.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384121 + HRESULT IDXGIDecodeSwapChain::GetSourceRect([Out] RECT* pRect) + IDXGIDecodeSwapChain::GetSourceRect +
+ + +

Gets the rectangle that defines the target region for the video processing blit operation.

+
+

A reference to a structure that receives the target region for the swap chain.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384122 + HRESULT IDXGIDecodeSwapChain::GetTargetRect([Out] RECT* pRect) + IDXGIDecodeSwapChain::GetTargetRect +
+ + +

Gets the size of the destination surface to use for the video processing blit operation.

+
+

A reference to a variable that receives the width in pixels.

+

A reference to a variable that receives the height in pixels.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384120 + HRESULT IDXGIDecodeSwapChain::GetDestSize([Out] unsigned int* pWidth,[Out] unsigned int* pHeight) + IDXGIDecodeSwapChain::GetDestSize +
+ + +

Sets the color space used by the swap chain.

+
+

A reference to a combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies the color space to set for the swap chain.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn384124 + HRESULT IDXGIDecodeSwapChain::SetColorSpace([In] DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS ColorSpace) + IDXGIDecodeSwapChain::SetColorSpace +
+ + +

Gets the color space used by the swap chain.

+
+

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies the color space for the swap chain.

+ dn384119 + DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS IDXGIDecodeSwapChain::GetColorSpace() + IDXGIDecodeSwapChain::GetColorSpace +
+ + +

Gets or sets the number of frames that the system is allowed to queue for rendering.

+
+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Frame latency is the number of frames that are allowed to be stored in a queue before submission for rendering. Latency is often used to control how the CPU chooses between responding to user input and frames that are in the render queue. It is often beneficial for applications that have no user input (for example, video playback) to queue more than 3 frames of data.

+
+ ff471332 + GetMaximumFrameLatency / SetMaximumFrameLatency + GetMaximumFrameLatency +
+ + +

Sets the number of frames that the system is allowed to queue for rendering.

+
+

The maximum number of back buffer frames that a driver can queue. The value defaults to 3, but can range from 1 to 16. A value of 0 will reset latency to the default. For multi-head devices, this value is specified per-head.

+

Returns if successful; otherwise, if the device was removed.

+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Frame latency is the number of frames that are allowed to be stored in a queue before submission for rendering. Latency is often used to control how the CPU chooses between responding to user input and frames that are in the render queue. It is often beneficial for applications that have no user input (for example, video playback) to queue more than 3 frames of data.

+
+ ff471334 + HRESULT IDXGIDevice1::SetMaximumFrameLatency([In] unsigned int MaxLatency) + IDXGIDevice1::SetMaximumFrameLatency +
+ + +

Gets the number of frames that the system is allowed to queue for rendering.

+
+

This value is set to the number of frames that can be queued for render. This value defaults to 3, but can range from 1 to 16.

+

Returns if successful; otherwise, returns one of the following members of the D3DERR enumerated type:

  • D3DERR_DEVICELOST
  • D3DERR_DEVICEREMOVED
  • D3DERR_DRIVERINTERNALERROR
  • D3DERR_INVALIDCALL
  • D3DERR_OUTOFVIDEOMEMORY
+ +

This method is not supported by DXGI 1.0, which shipped in Windows?Vista and Windows Server?2008. DXGI 1.1 support is required, which is available on Windows?7, Windows Server?2008?R2, and as an update to Windows?Vista with Service Pack?2 (SP2) (KB 971644) and Windows Server?2008 (KB 971512).

Frame latency is the number of frames that are allowed to be stored in a queue before submission for rendering. Latency is often used to control how the CPU chooses between responding to user input and frames that are in the render queue. It is often beneficial for applications that have no user input (for example, video playback) to queue more than 3 frames of data.

+
+ ff471332 + HRESULT IDXGIDevice1::GetMaximumFrameLatency([Out] unsigned int* pMaxLatency) + IDXGIDevice1::GetMaximumFrameLatency +
+ + +

Allows the operating system to free the video memory of resources by discarding their content.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

OfferResources returns:

  • if resources were successfully offered
  • E_INVALIDARG if a resource in the array or the priority is invalid
+ +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the IDXGIDevice2::ReclaimResource method to reclaim the resource. You cannot call OfferResources to offer immutable resources.

To offer shared resources, call OfferResources on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

Note??The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.?

Platform Update for Windows?7:??The runtime validates that OfferResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404549 + HRESULT IDXGIDevice2::OfferResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority) + IDXGIDevice2::OfferResources +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice2::OfferResources.

+
+ No documentation. + No documentation. + No documentation. +

ReclaimResources returns:

  • if resources were successfully reclaimed
  • E_INVALIDARG if the resources are invalid
+ +

After you call IDXGIDevice2::OfferResources to offer one or more resources, you must call ReclaimResources before you can use those resources again. You must check the values in the array at pDiscarded to determine whether each resource?s content was discarded. If a resource?s content was discarded while it was offered, its current content is undefined. Therefore, you must overwrite the resource?s content before you use the resource.

To reclaim shared resources, call ReclaimResources only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources only while you hold the mutex.

Platform Update for Windows?7:??The runtime validates that ReclaimResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404551 + HRESULT IDXGIDevice2::ReclaimResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer, Optional] BOOL* pDiscarded) + IDXGIDevice2::ReclaimResources +
+ + +

Flushes any outstanding rendering commands and sets the specified event object to the signaled state after all previously submitted rendering commands complete.

+
+

A handle to the event object. The CreateEvent or OpenEvent function returns this handle. All types of event objects (manual-reset, auto-reset, and so on) are supported.

The handle must have the EVENT_MODIFY_STATE access right. For more information about access rights, see Synchronization Object Security and Access Rights.

+

Returns if successful; otherwise, returns one of the following values:

  • E_OUTOFMEMORY if insufficient memory is available to complete the operation.
  • E_INVALIDARG if the parameter was validated and determined to be incorrect.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, EnqueueSetEvent fails with E_NOTIMPL. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

EnqueueSetEvent calls the SetEvent function on the event object after all previously submitted rendering commands complete or the device is removed.

After an application calls EnqueueSetEvent, it can immediately call the WaitForSingleObject function to put itself to sleep until rendering commands complete.

You cannot use EnqueueSetEvent to determine work completion that is associated with presentation (IDXGISwapChain::Present); instead, we recommend that you use IDXGISwapChain::GetFrameStatistics.

+
+ hh404546 + HRESULT IDXGIDevice2::EnqueueSetEvent([In] void* hEvent) + IDXGIDevice2::EnqueueSetEvent +
+ + +

Allows the operating system to free the video memory of resources by discarding their content.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

OfferResources returns:

  • if resources were successfully offered
  • E_INVALIDARG if a resource in the array or the priority is invalid
+ +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the IDXGIDevice2::ReclaimResource method to reclaim the resource. You cannot call OfferResources to offer immutable resources.

To offer shared resources, call OfferResources on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

Note??The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.?

Platform Update for Windows?7:??The runtime validates that OfferResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404549 + HRESULT IDXGIDevice2::OfferResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority) + IDXGIDevice2::OfferResources +
+ + +

Allows the operating system to free the video memory of resources by discarding their content.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

OfferResources returns:

  • if resources were successfully offered
  • E_INVALIDARG if a resource in the array or the priority is invalid
+ +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the IDXGIDevice2::ReclaimResource method to reclaim the resource. You cannot call OfferResources to offer immutable resources.

To offer shared resources, call OfferResources on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

Note??The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.?

Platform Update for Windows?7:??The runtime validates that OfferResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404549 + HRESULT IDXGIDevice2::OfferResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority) + IDXGIDevice2::OfferResources +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice2::OfferResources.

+
+ No documentation. + No documentation. + No documentation. +

ReclaimResources returns:

  • if resources were successfully reclaimed
  • E_INVALIDARG if the resources are invalid
+ +

After you call IDXGIDevice2::OfferResources to offer one or more resources, you must call ReclaimResources before you can use those resources again. You must check the values in the array at pDiscarded to determine whether each resource?s content was discarded. If a resource?s content was discarded while it was offered, its current content is undefined. Therefore, you must overwrite the resource?s content before you use the resource.

To reclaim shared resources, call ReclaimResources only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources only while you hold the mutex.

Platform Update for Windows?7:??The runtime validates that ReclaimResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404551 + HRESULT IDXGIDevice2::ReclaimResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer, Optional] BOOL* pDiscarded) + IDXGIDevice2::ReclaimResources +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice2::OfferResources.

+
+ No documentation. + No documentation. + No documentation. +

ReclaimResources returns:

  • if resources were successfully reclaimed
  • E_INVALIDARG if the resources are invalid
+ +

After you call IDXGIDevice2::OfferResources to offer one or more resources, you must call ReclaimResources before you can use those resources again. You must check the values in the array at pDiscarded to determine whether each resource?s content was discarded. If a resource?s content was discarded while it was offered, its current content is undefined. Therefore, you must overwrite the resource?s content before you use the resource.

To reclaim shared resources, call ReclaimResources only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources only while you hold the mutex.

Platform Update for Windows?7:??The runtime validates that ReclaimResources is used correctly on non-shared resources but doesn't perform the intended functionality. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404551 + HRESULT IDXGIDevice2::ReclaimResources([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer, Optional] BOOL* pDiscarded) + IDXGIDevice2::ReclaimResources +
+ + +

Trims the graphics memory allocated by the DXGI device on the app's behalf.

For apps that render with DirectX, graphics drivers periodically allocate internal memory buffers in order to speed up subsequent rendering requests. These memory allocations count against the app's memory usage for PLM and in general lead to increased memory usage by the overall system.

Starting in Windows?8.1, apps that render with Direct2D and/or Direct3D (including CoreWindow and XAML interop) must call Trim in response to the PLM suspend callback. The Direct3D runtime and the graphics driver will discard internal memory buffers allocated for the app, reducing its memory footprint.

Calling this method does not change the rendering state of the graphics device and it has no effect on rendering operations. There is a brief performance hit when internal buffers are reallocated during the first rendering operations after the Trim call, therefore apps should only call Trim when going idle for a period of time (in response to PLM suspend, for example).

Apps should ensure that they call Trim as one of the last D3D operations done before going idle. Direct3D will normally defer the destruction of D3D objects. Calling Trim, however, forces Direct3D to destroy objects immediately. For this reason, it is not guaranteed that releasing the final reference on Direct3D objects after calling Trim will cause the object to be destroyed and memory to be deallocated before the app suspends.

Similar to ID3D11DeviceContext::Flush, apps should call ID3D11DeviceContext::ClearState before calling Trim. ClearState clears the Direct3D pipeline bindings, ensuring that Direct3D does not hold any references to the Direct3D objects you are trying to release.

It is also prudent to release references on middleware before calling Trim, as that middleware may also need to release references + to Direct3D objects.

+
+ dn280346 + void IDXGIDevice3::Trim() + IDXGIDevice3::Trim +
+ + +

Allows the operating system to free the video memory of resources, including both discarding the content and de-committing the memory.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

Specifies the .

+

This method returns an success or error code, which can include E_INVALIDARG if a resource in the array, or the priority, is invalid.

+ +

OfferResources1 (an extension of the original IDXGIDevice2::OfferResources API) enables D3D based applications to allow de-committing of an allocation?s backing store to reduce system commit under low memory conditions. + A de-committed allocation cannot be reused, so opting in to the new DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT flag means the new reclaim results must be properly handled. Refer to the flag descriptions in and the Example below.

OfferResources1 and ReclaimResources1 may not be used interchangeably with OfferResources and ReclaimResources. +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources1 to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources1 on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the ReclaimResources1 method to reclaim the resource. You cannot call OfferResources1 to offer immutable resources.

To offer shared resources, call OfferResources1 on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources1 only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources1. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.

+
+ mt732705 + HRESULT IDXGIDevice4::OfferResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority,[In] unsigned int Flags) + IDXGIDevice4::OfferResources1 +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice4::OfferResources1.

+
+ No documentation. + No documentation. + No documentation. +

This method returns an success or error code, including E_INVALIDARG if the resources are invalid.

+ +

After you call OfferResources1 to offer one or more resources, you must call ReclaimResources1 before you can use those resources again.

To reclaim shared resources, call ReclaimResources1 only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources1 only while you hold the mutex.

+
+ mt732706 + HRESULT IDXGIDevice4::ReclaimResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer] DXGI_RECLAIM_RESOURCE_RESULTS* pResults) + IDXGIDevice4::ReclaimResources1 +
+ + +

Allows the operating system to free the video memory of resources, including both discarding the content and de-committing the memory.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

Specifies the .

+

This method returns an success or error code, which can include E_INVALIDARG if a resource in the array, or the priority, is invalid.

+ +

OfferResources1 (an extension of the original IDXGIDevice2::OfferResources API) enables D3D based applications to allow de-committing of an allocation?s backing store to reduce system commit under low memory conditions. + A de-committed allocation cannot be reused, so opting in to the new DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT flag means the new reclaim results must be properly handled. Refer to the flag descriptions in and the Example below.

OfferResources1 and ReclaimResources1 may not be used interchangeably with OfferResources and ReclaimResources. +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources1 to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources1 on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the ReclaimResources1 method to reclaim the resource. You cannot call OfferResources1 to offer immutable resources.

To offer shared resources, call OfferResources1 on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources1 only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources1. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.

+
+ mt732705 + HRESULT IDXGIDevice4::OfferResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority,[In] unsigned int Flags) + IDXGIDevice4::OfferResources1 +
+ + +

Allows the operating system to free the video memory of resources, including both discarding the content and de-committing the memory.

+
+

The number of resources in the ppResources argument array.

+

An array of references to interfaces for the resources to offer.

+

A -typed value that indicates how valuable data is.

+

Specifies the .

+

This method returns an success or error code, which can include E_INVALIDARG if a resource in the array, or the priority, is invalid.

+ +

OfferResources1 (an extension of the original IDXGIDevice2::OfferResources API) enables D3D based applications to allow de-committing of an allocation?s backing store to reduce system commit under low memory conditions. + A de-committed allocation cannot be reused, so opting in to the new DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT flag means the new reclaim results must be properly handled. Refer to the flag descriptions in and the Example below.

OfferResources1 and ReclaimResources1 may not be used interchangeably with OfferResources and ReclaimResources. +

The priority value that the Priority parameter specifies describes how valuable the caller considers the content to be. The operating system uses the priority value to discard resources in order of priority. The operating system discards a resource that is offered with low priority before it discards a resource that is offered with a higher priority.

If you call OfferResources1 to offer a resource while the resource is bound to the pipeline, the resource is unbound. You cannot call OfferResources1 on a resource that is mapped. After you offer a resource, the resource cannot be mapped or bound to the pipeline until you call the ReclaimResources1 method to reclaim the resource. You cannot call OfferResources1 to offer immutable resources.

To offer shared resources, call OfferResources1 on only one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call OfferResources1 only while you hold the mutex. In fact, you can't offer shared resources unless you use because offering shared resources without using isn't supported.

The user mode display driver might not immediately offer the resources that you specified in a call to OfferResources1. The driver can postpone offering them until the next call to IDXGISwapChain::Present, IDXGISwapChain1::Present1, or ID3D11DeviceContext::Flush.

+
+ mt732705 + HRESULT IDXGIDevice4::OfferResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[In] DXGI_OFFER_RESOURCE_PRIORITY Priority,[In] unsigned int Flags) + IDXGIDevice4::OfferResources1 +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice4::OfferResources1.

+
+ No documentation. + No documentation. + No documentation. +

This method returns an success or error code, including E_INVALIDARG if the resources are invalid.

+ +

After you call OfferResources1 to offer one or more resources, you must call ReclaimResources1 before you can use those resources again.

To reclaim shared resources, call ReclaimResources1 only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources1 only while you hold the mutex.

+
+ mt732706 + HRESULT IDXGIDevice4::ReclaimResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer] DXGI_RECLAIM_RESOURCE_RESULTS* pResults) + IDXGIDevice4::ReclaimResources1 +
+ + +

Restores access to resources that were previously offered by calling IDXGIDevice4::OfferResources1.

+
+ No documentation. + No documentation. + No documentation. +

This method returns an success or error code, including E_INVALIDARG if the resources are invalid.

+ +

After you call OfferResources1 to offer one or more resources, you must call ReclaimResources1 before you can use those resources again.

To reclaim shared resources, call ReclaimResources1 only on one of the sharing devices. To ensure exclusive access to the resources, you must use an object and then call ReclaimResources1 only while you hold the mutex.

+
+ mt732706 + HRESULT IDXGIDevice4::ReclaimResources1([In] unsigned int NumResources,[In, Buffer] const IDXGIResource** ppResources,[Out, Buffer] DXGI_RECLAIM_RESOURCE_RESULTS* pResults) + IDXGIDevice4::ReclaimResources1 +
+ + +

Retrieves a Boolean value that indicates whether the operating system's stereoscopic 3D display behavior is enabled.

+
+ +

You pass a Boolean value to the IDXGIDisplayControl::SetStereoEnabled method to either enable or disable the operating system's stereoscopic 3D display behavior. TRUE enables the operating system's stereoscopic 3D display behavior and disables it.

+
+ hh404553 + IsStereoEnabled + IsStereoEnabled +
+ + +

Set a Boolean value to either enable or disable the operating system's stereoscopic 3D display behavior.

+
+ +

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, SetStereoEnabled doesn't change stereoscopic 3D display behavior because stereoscopic 3D display behavior isn?t available with the Platform Update for Windows?7. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404554 + SetStereoEnabled + SetStereoEnabled +
+ + +

Retrieves a Boolean value that indicates whether the operating system's stereoscopic 3D display behavior is enabled.

+
+

IsStereoEnabled returns TRUE when the operating system's stereoscopic 3D display behavior is enabled and when this behavior is disabled.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, IsStereoEnabled always returns because stereoscopic 3D display behavior isn?t available with the Platform Update for Windows?7. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

You pass a Boolean value to the IDXGIDisplayControl::SetStereoEnabled method to either enable or disable the operating system's stereoscopic 3D display behavior. TRUE enables the operating system's stereoscopic 3D display behavior and disables it.

+
+ hh404553 + BOOL IDXGIDisplayControl::IsStereoEnabled() + IDXGIDisplayControl::IsStereoEnabled +
+ + +

Set a Boolean value to either enable or disable the operating system's stereoscopic 3D display behavior.

+
+

A Boolean value that either enables or disables the operating system's stereoscopic 3D display behavior. TRUE enables the operating system's stereoscopic 3D display behavior and disables it.

+ +

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, SetStereoEnabled doesn't change stereoscopic 3D display behavior because stereoscopic 3D display behavior isn?t available with the Platform Update for Windows?7. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+
+ hh404554 + void IDXGIDisplayControl::SetStereoEnabled([In] BOOL enabled) + IDXGIDisplayControl::SetStereoEnabled +
+ + +

Gets the flags that were used when a Microsoft DirectX Graphics Infrastructure (DXGI) object was created.

+
+ +

The GetCreationFlags method returns flags that were passed to the CreateDXGIFactory2 function, or were implicitly constructed by CreateDXGIFactory, CreateDXGIFactory1, D3D11CreateDevice, or D3D11CreateDeviceAndSwapChain.

+
+ dn457943 + GetCreationFlags + GetCreationFlags +
+ + +

Gets the flags that were used when a Microsoft DirectX Graphics Infrastructure (DXGI) object was created.

+
+

The creation flags.

+ +

The GetCreationFlags method returns flags that were passed to the CreateDXGIFactory2 function, or were implicitly constructed by CreateDXGIFactory, CreateDXGIFactory1, D3D11CreateDevice, or D3D11CreateDeviceAndSwapChain.

+
+ dn457943 + unsigned int IDXGIFactory3::GetCreationFlags() + IDXGIFactory3::GetCreationFlags +
+ + +

Used to check for hardware feature support.

+
+

Specifies one member of to query support for.

+

Specifies a reference to a buffer that will be filled with data that describes the feature support.

+

The size, in bytes, of pFeatureSupportData.

+

This method returns an success or error code.

+ +

Refer to the description of DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING.

+
+ mt722567 + HRESULT IDXGIFactory5::CheckFeatureSupport([In] DXGI_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + IDXGIFactory5::CheckFeatureSupport +
+ + +

Creates a YUV swap chain for an existing DirectComposition surface handle.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

CreateSwapChainForCompositionSurfaceHandle returns:

  • if it successfully created a swap chain.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if the calling application provided invalid data, for example, if pDesc, pYuvDecodeBuffers, or ppSwapChain is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic that are defined by the type of device that you pass to pDevice.
+ dn384130 + HRESULT IDXGIFactoryMedia::CreateSwapChainForCompositionSurfaceHandle([In] IUnknown* pDevice,[In, Optional] void* hSurface,[In] const DXGI_SWAP_CHAIN_DESC1* pDesc,[In, Optional] IDXGIOutput* pRestrictToOutput,[Out] IDXGISwapChain1** ppSwapChain) + IDXGIFactoryMedia::CreateSwapChainForCompositionSurfaceHandle +
+ + +

Creates a YUV swap chain for an existing DirectComposition surface handle. The swap chain is created with pre-existing buffers and very few descriptive elements are required. Instead, this method requires a DirectComposition surface handle and an buffer to hold decoded frame data. The swap chain format is determined by the format of the subresources of the .

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

CreateDecodeSwapChainForCompositionSurfaceHandle returns:

  • if it successfully created a swap chain.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • if the calling application provided invalid data, for example, if pDesc, pYuvDecodeBuffers, or ppSwapChain is null.
  • Possibly other error codes that are described in the DXGI_ERROR topic that are defined by the type of device that you pass to pDevice.
+ +

The provided via the pYuvDecodeBuffers parameter must point to at least one subresource, and all subresources must be created with the D3D11_BIND_DECODER flag.

+
+ dn384129 + HRESULT IDXGIFactoryMedia::CreateDecodeSwapChainForCompositionSurfaceHandle([In] IUnknown* pDevice,[In, Optional] void* hSurface,[In] DXGI_DECODE_SWAP_CHAIN_DESC* pDesc,[In] IDXGIResource* pYuvDecodeBuffers,[In, Optional] IDXGIOutput* pRestrictToOutput,[Out] IDXGIDecodeSwapChain** ppSwapChain) + IDXGIFactoryMedia::CreateDecodeSwapChainForCompositionSurfaceHandle +
+ + +

Flushes all current GPU work for all SurfaceImageSource or VirtualSurfaceImageSource objects associated with the given device.

+
+ No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The FlushAllSurfacesWithDevice method flushes current GPU work for all SurfaceImageSource objects that were created with device. This GPU work includes Direct2D rendering work and internal GPU work done by the framework associated with rendering. This is useful if an application has created multiple SurfaceImageSource objects and needs to flush the GPU work for all of these surfaces from the background rendering thread. By flushing this work from the background thread the work can be better parallelized, with work being done on the UI thread to improve performance.

You can call the FlushAllSurfacesWithDevice method from a non-UI thread.

+
+ dn448960 + HRESULT ISurfaceImageSourceManagerNative::FlushAllSurfacesWithDevice([In] IUnknown* device) + ISurfaceImageSourceManagerNative::FlushAllSurfacesWithDevice +
+ + +

Sets the DXGI device, created with D3D11_CREATE_DEVICE_BGRA_SUPPORT, that will draw the surface. This method must be called from the UI thread.

+
+ hh848325 + SetDevice + SetDevice +
+ + +

Sets the DXGI device, created with D3D11_CREATE_DEVICE_BGRA_SUPPORT, that will draw the surface. This method must be called from the UI thread.

+
+

Pointer to the DXGI device interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848325 + HRESULT ISurfaceImageSourceNative::SetDevice([In] IDXGIDevice* device) + ISurfaceImageSourceNative::SetDevice +
+ + +

Opens the supplied DXGI surface for drawing.

+
+

The region of the surface that will be drawn into.

+

Receives the point (x,y) offset of the surface that will be drawn into.

+

Receives a reference to the surface for drawing.

+ +

If the app window that contains the SurfaceImageSource isn't active, like when it's suspended, calling the BeginDraw method returns an error.

+
+ hh848323 + HRESULT ISurfaceImageSourceNative::BeginDraw([In] RECT updateRect,[Out] IDXGISurface** surface,[Out] POINT* offset) + ISurfaceImageSourceNative::BeginDraw +
+ + +

Closes the surface draw operation.

+
+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848324 + HRESULT ISurfaceImageSourceNative::EndDraw() + ISurfaceImageSourceNative::EndDraw +
+ + +

Sets the Microsoft DirectX Graphics Infrastructure (DXGI) or Direct2D device, created with D3D11_CREATE_DEVICE_BGRA_SUPPORT, that will draw the surface.

+
+ dn302141 + SetDevice + SetDevice +
+ + +

Sets the Microsoft DirectX Graphics Infrastructure (DXGI) or Direct2D device, created with D3D11_CREATE_DEVICE_BGRA_SUPPORT, that will draw the surface.

+
+

Pointer to the DXGI device interface. You can pass an to signal that this surface participates in Direct2D batching to improve performance when updating Direct2D content across multiple surfaces. The device must have multithreading supported enabled if the app draws to the surface from a background thread.

+

This method fails when the SurfaceImageSource is larger than the maximum texture size supported by the Direct3D device. Apps should use VirtualSurfaceImageSource for surfaces larger than the maximum texture size supported by the Direct3D device.

+ dn302141 + HRESULT ISurfaceImageSourceNativeWithD2D::SetDevice([In] IUnknown* device) + ISurfaceImageSourceNativeWithD2D::SetDevice +
+ + +

Initiates an update to the associated SurfaceImageSource or VirtualSurfaceImageSource.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ dn302138 + HRESULT ISurfaceImageSourceNativeWithD2D::BeginDraw([In] const RECT& updateRect,[In] const GUID& iid,[Out] void** updateObject,[Out] POINT* offset) + ISurfaceImageSourceNativeWithD2D::BeginDraw +
+ + +

Closes the surface draw operation.

+
+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

Always call the EndDraw method on the UI thread in order to synchronize updating the Microsoft DirectX content with the current XAML UI thread frame.

+
+ dn302139 + HRESULT ISurfaceImageSourceNativeWithD2D::EndDraw() + ISurfaceImageSourceNativeWithD2D::EndDraw +
+ + +

Suspends the drawing operation.

+
+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ dn302142 + HRESULT ISurfaceImageSourceNativeWithD2D::SuspendDraw() + ISurfaceImageSourceNativeWithD2D::SuspendDraw +
+ + +

Resume the drawing operation.

+
+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ dn302140 + HRESULT ISurfaceImageSourceNativeWithD2D::ResumeDraw() + ISurfaceImageSourceNativeWithD2D::ResumeDraw +
+ + +

Sets the DirectX swap chain for SwapChainBackgroundPanel.

+
+ hh848327 + SetSwapChain + SetSwapChain +
+ + +

Sets the DirectX swap chain for SwapChainBackgroundPanel.

+
+ No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh848327 + HRESULT ISwapChainBackgroundPanelNative::SetSwapChain([In] IDXGISwapChain* swapChain) + ISwapChainBackgroundPanelNative::SetSwapChain +
+ + +

Sets the DirectX swap chain for SwapChainPanel.

+
+ dn302144 + SetSwapChain + SetSwapChain +
+ + +

Sets the DirectX swap chain for SwapChainPanel.

+
+ No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ dn302144 + HRESULT ISwapChainPanelNative::SetSwapChain([In] IDXGISwapChain* swapChain) + ISwapChainPanelNative::SetSwapChain +
+ + +

Sets the DirectX swap chain for SwapChainPanel using a handle to the swap chain.

+
+ +

SetSwapChain(HANDLE swapChainHandle) allows a swap chain to be rendered by referencing a shared handle to the swap chain. This enables scenarios where a swap chain is created in one process and needs to be passed to another process.

XAML supports setting a DXGI swap chain as the content of a SwapChainPanel element. Apps accomplish this by querying for the interface from a SwapChainPanel instance and calling SetSwapChain( *swapChain).

This process works for references to in process swap chains. However, this doesn?t work for VoIP apps, which use a two-process model to enable continuing calls on a background process when a foreground process is suspended or shut down. This two-process implementation requires the ability to pass a shared handle to a swap chain, rather than a reference, created on the background process to the foreground process to be rendered in a XAML SwapChainPanel in the foreground app.

 <!-- XAML markup --> 
+            <Page>  <SwapChainPanel x:Name=?captureStreamDisplayPanel? /> 
+            </Page>  // Definitions 
+            ComPtr<> m_swapChain; 
+            HANDLE m_swapChainHandle; 
+            ComPtr<> m_d3dDevice; 
+            ComPtr<> dxgiAdapter; 
+            ComPtr<> dxgiFactory; 
+            ComPtr<> dxgiFactoryMedia; 
+            ComPtr<> dxgiDevice; 
+             swapChainDesc = {0};  // Get DXGI factory (assume standard boilerplate has created D3D11Device) 
+            m_d3dDevice.As(&dxgiDevice); 
+            dxgiDevice->GetAdapter(&dxgiAdapter); 
+            dxgiAdapter->GetParent(__uuidof(), &dxgiFactory);  // Create swap chain and get handle 
+            DCompositionCreateSurfaceHandle(GENERIC_ALL, nullptr, &m_swapChainHandle); 
+            dxgiFactory.As(&dxgiFactoryMedia); 
+            dxgiFactoryMedia->CreateSwapChainForCompositionSurfaceHandle(  m_d3dDevice.Get(),  m_swapChainHandle,  &swapChainDesc,  nullptr,  &m_swapChain 
+            );  // Set swap chain to display in a SwapChainPanel 
+            ComPtr<> panelNative; 
+            reinterpret_cast<*>(captureStreamDisplayPanel)->QueryInterface(IID_PPV_ARGS(&panelNative))); 
+            panelNative->SetSwapChainHandle(m_swapChainHandle);  
+
+ dn858173 + SetSwapChainHandle + SetSwapChainHandle +
+ + +

Sets the DirectX swap chain for SwapChainPanel using a handle to the swap chain.

+
+ No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

SetSwapChain(HANDLE swapChainHandle) allows a swap chain to be rendered by referencing a shared handle to the swap chain. This enables scenarios where a swap chain is created in one process and needs to be passed to another process.

XAML supports setting a DXGI swap chain as the content of a SwapChainPanel element. Apps accomplish this by querying for the interface from a SwapChainPanel instance and calling SetSwapChain( *swapChain).

This process works for references to in process swap chains. However, this doesn?t work for VoIP apps, which use a two-process model to enable continuing calls on a background process when a foreground process is suspended or shut down. This two-process implementation requires the ability to pass a shared handle to a swap chain, rather than a reference, created on the background process to the foreground process to be rendered in a XAML SwapChainPanel in the foreground app.

 <!-- XAML markup --> 
+            <Page>  <SwapChainPanel x:Name=?captureStreamDisplayPanel? /> 
+            </Page>  // Definitions 
+            ComPtr<> m_swapChain; 
+            HANDLE m_swapChainHandle; 
+            ComPtr<> m_d3dDevice; 
+            ComPtr<> dxgiAdapter; 
+            ComPtr<> dxgiFactory; 
+            ComPtr<> dxgiFactoryMedia; 
+            ComPtr<> dxgiDevice; 
+             swapChainDesc = {0};  // Get DXGI factory (assume standard boilerplate has created D3D11Device) 
+            m_d3dDevice.As(&dxgiDevice); 
+            dxgiDevice->GetAdapter(&dxgiAdapter); 
+            dxgiAdapter->GetParent(__uuidof(), &dxgiFactory);  // Create swap chain and get handle 
+            DCompositionCreateSurfaceHandle(GENERIC_ALL, nullptr, &m_swapChainHandle); 
+            dxgiFactory.As(&dxgiFactoryMedia); 
+            dxgiFactoryMedia->CreateSwapChainForCompositionSurfaceHandle(  m_d3dDevice.Get(),  m_swapChainHandle,  &swapChainDesc,  nullptr,  &m_swapChain 
+            );  // Set swap chain to display in a SwapChainPanel 
+            ComPtr<> panelNative; 
+            reinterpret_cast<*>(captureStreamDisplayPanel)->QueryInterface(IID_PPV_ARGS(&panelNative))); 
+            panelNative->SetSwapChainHandle(m_swapChainHandle);  
+
+ dn858173 + HRESULT ISwapChainPanelNative2::SetSwapChainHandle([In] void* swapChainHandle) + ISwapChainPanelNative2::SetSwapChainHandle +
+ + +

Using a key, acquires exclusive rendering access to a shared resource.

+
+

A value that indicates which device to give access to. This method will succeed when the device that currently owns the surface calls the IDXGIKeyedMutex::ReleaseSync method using the same value. This value can be any UINT64 value.

+

The time-out interval, in milliseconds. This method will return if the interval elapses, and the keyed mutex has not been released using the specified Key. If this value is set to zero, the AcquireSync method will test to see if the keyed mutex has been released and returns immediately. If this value is set to INFINITE, the time-out interval will never elapse.

+

Return if successful.

If the owning device attempted to create another keyed mutex on the same shared resource, AcquireSync returns E_FAIL.

AcquireSync can also return the following constants. Therefore, you should explicitly check for these constants. If you only use the SUCCEEDED macro on the return value to determine if AcquireSync succeeded, you will not catch these constants.

  • WAIT_ABANDONED - The shared surface and keyed mutex are no longer in a consistent state. If AcquireSync returns this value, you should release and recreate both the keyed mutex and the shared surface.
  • WAIT_TIMEOUT - The time-out interval elapsed before the specified key was released.
+ +

The AcquireSync method creates a lock to a surface that is shared between multiple devices, allowing only one device to render to a surface at a time. This method uses a key to determine which device currently has exclusive access to the surface.

When a surface is created using the D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX value of the D3D10_RESOURCE_MISC_FLAG enumeration, you must call the AcquireSync method before rendering to the surface. You must call the ReleaseSync method when you are done rendering to a surface.

To acquire a reference to the keyed mutex object of a shared resource, call the QueryInterface method of the resource and pass in the UUID of the interface. For more information about acquiring this reference, see the following code example.

The AcquireSync method uses the key as follows, depending on the state of the surface:

  • On initial creation, the surface is unowned and any device can call the AcquireSync method to gain access. For an unowned device, only a key of 0 will succeed. Calling the AcquireSync method for any other key will stall the calling CPU thread.
  • If the surface is owned by a device when you call the AcquireSync method, the CPU thread that called the AcquireSync method will stall until the owning device calls the ReleaseSync method using the same Key.
  • If the surface is unowned when you call the AcquireSync method (for example, the last owning device has already called the ReleaseSync method), the AcquireSync method will succeed if you specify the same key that was specified when the ReleaseSync method was last called. Calling the AcquireSync method using any other key will cause a stall.
  • When the owning device calls the ReleaseSync method with a particular key, and more than one device is waiting after calling the AcquireSync method using the same key, any one of the waiting devices could be woken up first. The order in which devices are woken up is undefined.
  • A keyed mutex does not support recursive calls to the AcquireSync method.
+
+ ff471339 + HRESULT IDXGIKeyedMutex::AcquireSync([In] unsigned longlong Key,[In] DWORD dwMilliseconds) + IDXGIKeyedMutex::AcquireSync +
+ + +

Using a key, releases exclusive rendering access to a shared resource.

+
+

A value that indicates which device to give access to. This method succeeds when the device that currently owns the surface calls the ReleaseSync method using the same value. This value can be any UINT64 value.

+

Returns if successful.

If the device attempted to release a keyed mutex that is not valid or owned by the device, ReleaseSync returns E_FAIL.

+ +

The ReleaseSync method releases a lock to a surface that is shared between multiple devices. This method uses a key to determine which device currently has exclusive access to the surface.

When a surface is created using the D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX value of the D3D10_RESOURCE_MISC_FLAG enumeration, you must call the IDXGIKeyedMutex::AcquireSync method before rendering to the surface. You must call the ReleaseSync method when you are done rendering to a surface.

After you call the ReleaseSync method, the shared resource is unset from the rendering pipeline.

To acquire a reference to the keyed mutex object of a shared resource, call the QueryInterface method of the resource and pass in the UUID of the interface. For more information about acquiring this reference, see the following code example.

+
+ ff471340 + HRESULT IDXGIKeyedMutex::ReleaseSync([In] unsigned longlong Key) + IDXGIKeyedMutex::ReleaseSync +
+ + +

Checks for overlay support.

+
+

A -typed value for the color format.

+

A reference to the Direct3D device interface. CheckOverlaySupport returns only support info about this scan-out device.

+

A reference to a variable that receives a combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for overlay support.

+ dn903670 + HRESULT IDXGIOutput3::CheckOverlaySupport([In] DXGI_FORMAT EnumFormat,[In] IUnknown* pConcernedDevice,[Out] unsigned int* pFlags) + IDXGIOutput3::CheckOverlaySupport +
+ + +

Checks for overlay color space support.

+
+

A -typed value for the color format.

+

A -typed value that specifies color space type to check overlay support for.

+

A reference to the Direct3D device interface. CheckOverlayColorSpaceSupport returns only support info about this scan-out device.

+

A reference to a variable that receives a combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for overlay color space support.

+ dn903672 + HRESULT IDXGIOutput4::CheckOverlayColorSpaceSupport([In] DXGI_FORMAT Format,[In] DXGI_COLOR_SPACE_TYPE ColorSpace,[In] IUnknown* pConcernedDevice,[Out] unsigned int* pFlags) + IDXGIOutput4::CheckOverlayColorSpaceSupport +
+ + +

Allows specifying a list of supported formats for fullscreen surfaces that can be returned by the object.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

This method allows directly receiving the original back buffer format used by a running fullscreen application. For comparison, using the original DuplicateOutput function always converts the fullscreen surface to a 32-bit BGRA format. In cases where the current fullscreen application is using a different buffer format, a conversion to 32-bit BGRA incurs a performance penalty. Besides the performance benefit of being able to skip format conversion, using DuplicateOutput1 also allows receiving the full gamut of colors in cases where a high-color format (such as R10G10B10A2) is being presented.

The pSupportedFormats array should only contain display scan-out formats. See Format Support for Direct3D Feature Level 11.0 Hardware for required scan-out formats at each feature level. If the current fullscreen buffer format is not contained in the pSupportedFormats array, DXGI will pick one of the supplied formats and convert the fullscreen buffer to that format before returning from IDXGIOutputDuplication::AcquireNextFrame. The list of supported formats should always contain DXGI_FORMAT_B8G8R8A8_UNORM, as this is the most common format for the desktop. +

+
+ mt679496 + HRESULT IDXGIOutput5::DuplicateOutput1([In] IUnknown* pDevice,[In] unsigned int Flags,[In] unsigned int SupportedFormatsCount,[In, Buffer] const DXGI_FORMAT* pSupportedFormats,[Out] IDXGIOutputDuplication** ppOutputDuplication) + IDXGIOutput5::DuplicateOutput1 +
+ + + No documentation. + + GetDesc1 + GetDesc1 + + + + No documentation. + + No documentation. + No documentation. + HRESULT IDXGIOutput6::GetDesc1([Out] DXGI_OUTPUT_DESC1* pDesc) + IDXGIOutput6::GetDesc1 + + + + No documentation. + + No documentation. + No documentation. + HRESULT IDXGIOutput6::CheckHardwareCompositionSupport([Out] unsigned int* pFlags) + IDXGIOutput6::CheckHardwareCompositionSupport + + + +

[Starting with Direct3D 11.1, we recommend not to use GetSharedHandle anymore to retrieve the handle to a shared resource. Instead, use IDXGIResource1::CreateSharedHandle to get a handle for sharing. To use IDXGIResource1::CreateSharedHandle, you must create the resource as shared and specify that it uses NT handles (that is, you set the D3D11_RESOURCE_MISC_SHARED_NTHANDLE flag). We also recommend that you create shared resources that use NT handles so you can use CloseHandle, DuplicateHandle, and so on on those shared resources.]

Gets the handle to a shared resource.

+
+ +

GetSharedHandle returns a handle for the resource that you created as shared (that is, you set the D3D11_RESOURCE_MISC_SHARED with or without the D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flag). You can pass this handle to the ID3D11Device::OpenSharedResource method to give another device access to the shared resource. You can also marshal this handle to another process to share a resource with a device in another process. However, this handle is not an NT handle. Therefore, don't use the handle with CloseHandle, DuplicateHandle, and so on.

The creator of a shared resource must not destroy the resource until all intended entities have opened the resource. The validity of the handle is tied to the lifetime of the underlying video memory. If no resource objects exist on any devices that refer to this resource, the handle is no longer valid. To extend the lifetime of the handle and video memory, you must open the shared resource on a device.

GetSharedHandle can also return handles for resources that were passed into ID3D11Device::OpenSharedResource to open those resources.

GetSharedHandle fails if the resource to which it wants to get a handle is not shared.

+
+ bb174562 + GetSharedHandle + GetSharedHandle +
+ + +

Get or sets the eviction priority.

+
+ +

The eviction priority is a memory-management variable that is used by DXGI to determine how to manage overcommitted memory.

Priority levels other than the defined values are used when appropriate. For example, a resource with a priority level of 0x78000001 indicates that the resource is slightly above normal.

+
+ bb174561 + GetEvictionPriority / SetEvictionPriority + GetEvictionPriority +
+ + +

[Starting with Direct3D 11.1, we recommend not to use GetSharedHandle anymore to retrieve the handle to a shared resource. Instead, use IDXGIResource1::CreateSharedHandle to get a handle for sharing. To use IDXGIResource1::CreateSharedHandle, you must create the resource as shared and specify that it uses NT handles (that is, you set the D3D11_RESOURCE_MISC_SHARED_NTHANDLE flag). We also recommend that you create shared resources that use NT handles so you can use CloseHandle, DuplicateHandle, and so on on those shared resources.]

Gets the handle to a shared resource.

+
+ No documentation. +

Returns one of the DXGI_ERROR values.

+ +

GetSharedHandle returns a handle for the resource that you created as shared (that is, you set the D3D11_RESOURCE_MISC_SHARED with or without the D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flag). You can pass this handle to the ID3D11Device::OpenSharedResource method to give another device access to the shared resource. You can also marshal this handle to another process to share a resource with a device in another process. However, this handle is not an NT handle. Therefore, don't use the handle with CloseHandle, DuplicateHandle, and so on.

The creator of a shared resource must not destroy the resource until all intended entities have opened the resource. The validity of the handle is tied to the lifetime of the underlying video memory. If no resource objects exist on any devices that refer to this resource, the handle is no longer valid. To extend the lifetime of the handle and video memory, you must open the shared resource on a device.

GetSharedHandle can also return handles for resources that were passed into ID3D11Device::OpenSharedResource to open those resources.

GetSharedHandle fails if the resource to which it wants to get a handle is not shared.

+
+ bb174562 + HRESULT IDXGIResource::GetSharedHandle([Out] void** pSharedHandle) + IDXGIResource::GetSharedHandle +
+ + +

Get the expected resource usage.

+
+

A reference to a usage flag (see DXGI_USAGE). For Direct3D 10, a surface can be used as a shader input or a render-target output.

+

Returns one of the following DXGI_ERROR.

+ bb174563 + HRESULT IDXGIResource::GetUsage([In] unsigned int* pUsage) + IDXGIResource::GetUsage +
+ + +

Set the priority for evicting the resource from memory.

+
+

The priority is one of the following values:

ValueMeaning
DXGI_RESOURCE_PRIORITY_MINIMUM (0x28000000)

The resource is unused and can be evicted as soon as another resource requires the memory that the resource occupies.

DXGI_RESOURCE_PRIORITY_LOW (0x50000000)

The eviction priority of the resource is low. The placement of the resource is not critical, and minimal work is performed to find a location for the resource. For example, if a GPU can render with a vertex buffer from either local or non-local memory with little difference in performance, that vertex buffer is low priority. Other more critical resources (for example, a render target or texture) can then occupy the faster memory.

DXGI_RESOURCE_PRIORITY_NORMAL (0x78000000)

The eviction priority of the resource is normal. The placement of the resource is important, but not critical, for performance. The resource is placed in its preferred location instead of a low-priority resource.

DXGI_RESOURCE_PRIORITY_HIGH (0xa0000000)

The eviction priority of the resource is high. The resource is placed in its preferred location instead of a low-priority or normal-priority resource.

DXGI_RESOURCE_PRIORITY_MAXIMUM (0xc8000000)

The resource is evicted from memory only if there is no other way of resolving the memory requirement.

?

+

Returns one of the following DXGI_ERROR.

+ +

The eviction priority is a memory-management variable that is used by DXGI for determining how to populate overcommitted memory.

You can set priority levels other than the defined values when appropriate. For example, you can set a resource with a priority level of 0x78000001 to indicate that the resource is slightly above normal.

+
+ bb174564 + HRESULT IDXGIResource::SetEvictionPriority([In] unsigned int EvictionPriority) + IDXGIResource::SetEvictionPriority +
+ + +

Get the eviction priority.

+
+

A reference to the eviction priority, which determines when a resource can be evicted from memory.

The following defined values are possible.

ValueMeaning
DXGI_RESOURCE_PRIORITY_MINIMUM (0x28000000)

The resource is unused and can be evicted as soon as another resource requires the memory that the resource occupies.

DXGI_RESOURCE_PRIORITY_LOW (0x50000000)

The eviction priority of the resource is low. The placement of the resource is not critical, and minimal work is performed to find a location for the resource. For example, if a GPU can render with a vertex buffer from either local or non-local memory with little difference in performance, that vertex buffer is low priority. Other more critical resources (for example, a render target or texture) can then occupy the faster memory.

DXGI_RESOURCE_PRIORITY_NORMAL (0x78000000)

The eviction priority of the resource is normal. The placement of the resource is important, but not critical, for performance. The resource is placed in its preferred location instead of a low-priority resource.

DXGI_RESOURCE_PRIORITY_HIGH (0xa0000000)

The eviction priority of the resource is high. The resource is placed in its preferred location instead of a low-priority or normal-priority resource.

DXGI_RESOURCE_PRIORITY_MAXIMUM (0xc8000000)

The resource is evicted from memory only if there is no other way of resolving the memory requirement.

?

+

Returns one of the following DXGI_ERROR.

+ +

The eviction priority is a memory-management variable that is used by DXGI to determine how to manage overcommitted memory.

Priority levels other than the defined values are used when appropriate. For example, a resource with a priority level of 0x78000001 indicates that the resource is slightly above normal.

+
+ bb174561 + HRESULT IDXGIResource::GetEvictionPriority([Out] unsigned int* pEvictionPriority) + IDXGIResource::GetEvictionPriority +
+ + +

Gets the index of the swap chain's current back buffer.

+
+ dn903675 + GetCurrentBackBufferIndex + GetCurrentBackBufferIndex +
+ + +

Sets the color space used by the swap chain.

+
+ dn903676 + SetColorSpace1 + SetColorSpace1 +
+ + +

Gets the index of the swap chain's current back buffer.

+
+

Returns the index of the current back buffer.

+ dn903675 + unsigned int IDXGISwapChain3::GetCurrentBackBufferIndex() + IDXGISwapChain3::GetCurrentBackBufferIndex +
+ + +

Checks the swap chain's support for color space.

+
+

A -typed value that specifies color space type to check support for.

+

A reference to a variable that receives a combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for color space support.

+ dn903674 + HRESULT IDXGISwapChain3::CheckColorSpaceSupport([In] DXGI_COLOR_SPACE_TYPE ColorSpace,[Out] unsigned int* pColorSpaceSupport) + IDXGISwapChain3::CheckColorSpaceSupport +
+ + +

Sets the color space used by the swap chain.

+
+

A -typed value that specifies the color space to set.

+

This method returns on success, or it returns one of the error codes that are described in the DXGI_ERROR topic.

+ dn903676 + HRESULT IDXGISwapChain3::SetColorSpace1([In] DXGI_COLOR_SPACE_TYPE ColorSpace) + IDXGISwapChain3::SetColorSpace1 +
+ + +

Changes the swap chain's back buffer size, format, and number of buffers, where the swap chain was created using a D3D12 command queue as an input device. This should be called when the application window is resized.

+
+

The number of buffers in the swap chain (including all back and front buffers). This number can be different from the number of buffers with which you created the swap chain. This number can't be greater than DXGI_MAX_SWAP_CHAIN_BUFFERS. Set this number to zero to preserve the existing number of buffers in the swap chain. You can't specify less than two buffers for the flip presentation model.

+

The new width of the back buffer. If you specify zero, DXGI will use the width of the client area of the target window. You can't specify the width as zero if you called the IDXGIFactory2::CreateSwapChainForComposition method to create the swap chain for a composition surface.

+

The new height of the back buffer. If you specify zero, DXGI will use the height of the client area of the target window. You can't specify the height as zero if you called the IDXGIFactory2::CreateSwapChainForComposition method to create the swap chain for a composition surface.

+

A -typed value for the new format of the back buffer. Set this value to DXGI_FORMAT_UNKNOWN to preserve the existing format of the back buffer. The flip presentation model supports a more restricted set of formats than the bit-block transfer (bitblt) model.

+

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for swap-chain behavior.

+

An array of UINTs, of total size BufferCount, where the value indicates which node the back buffer should be created on. Buffers created using ResizeBuffers1 with a non-null pCreationNodeMask array are visible to all nodes.

+

An array of command queues ( instances), of total size BufferCount. Each queue provided must match the corresponding creation node mask specified in the pCreationNodeMask array. When Present() is called, in addition to rotating to the next buffer for the next frame, the swapchain will also rotate through these command queues. This allows the app to control which queue requires synchronization for a given present operation.

+

Returns if successful; an error code otherwise. For a list of error codes, see DXGI_ERROR.

+ +

This method is only valid to call when the swapchain was created using a D3D12 command queue () as an input device.

When a swapchain is created on a multi-GPU adapter, the backbuffers are all created on node 1 and only a single command queue is supported. ResizeBuffers1 enables applications to create backbuffers on different nodes, allowing a different command queue to be used with each node. These capabilities enable Alternate Frame Rendering (AFR) techniques to be used with the swapchain. See Direct3D 12 Multi-Adapters.

The only difference between IDXGISwapChain::ResizeBuffers in Windows?8 versus Windows?7 is with flip presentation model swap chains that you create with the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL or DXGI_SWAP_EFFECT_FLIP_DISCARD value set. In Windows?8, you must call ResizeBuffers to realize a transition between full-screen mode and windowed mode; otherwise, your next call to the IDXGISwapChain::Present method fails.

Also see the Remarks section in IDXGISwapChain::ResizeBuffers, all of which is relevant to ResizeBuffers1.

+
+ mt403341 + HRESULT IDXGISwapChain3::ResizeBuffers1([In] unsigned int BufferCount,[In] unsigned int Width,[In] unsigned int Height,[In] DXGI_FORMAT Format,[In] unsigned int SwapChainFlags,[In, Buffer] const unsigned int* pCreationNodeMask,[In, Buffer] const IUnknown** ppPresentQueue) + IDXGISwapChain3::ResizeBuffers1 +
+ + +

This method sets High Dynamic Range (HDR) and Wide Color Gamut (WCG) header metadata.

+
+

Specifies one member of the enum.

+

Specifies the size of pMetaData, in bytes.

+

Specifies a void reference that references the metadata, if it exists. Refer to the structure.

+

This method returns an success or error code.

+ +

This method sets metadata to enable a monitor's output to be adjusted depending on its capabilities.

+
+ mt732708 + HRESULT IDXGISwapChain4::SetHDRMetaData([In] DXGI_HDR_METADATA_TYPE Type,[In] unsigned int Size,[In, Buffer, Optional] void* pMetaData) + IDXGISwapChain4::SetHDRMetaData +
+ + +

Queries the system for a structure that indicates whether a custom refresh rate is currently approved by the system.

+
+ dn384133 + GetFrameStatisticsMedia + GetFrameStatisticsMedia +
+ + +

Requests a custom presentation duration (custom refresh rate).

+
+ dn384134 + SetPresentDuration + SetPresentDuration +
+ + +

Queries the system for a structure that indicates whether a custom refresh rate is currently approved by the system.

+
+ No documentation. +

This method returns on success, or a DXGI error code on failure.

+ dn384133 + HRESULT IDXGISwapChainMedia::GetFrameStatisticsMedia([Out] DXGI_FRAME_STATISTICS_MEDIA* pStats) + IDXGISwapChainMedia::GetFrameStatisticsMedia +
+ + +

Requests a custom presentation duration (custom refresh rate).

+
+

The custom presentation duration, specified in hundreds of nanoseconds.

+

This method returns on success, or a DXGI error code on failure.

+ dn384134 + HRESULT IDXGISwapChainMedia::SetPresentDuration([In] unsigned int Duration) + IDXGISwapChainMedia::SetPresentDuration +
+ + +

Queries the graphics driver for a supported frame present duration corresponding to a custom refresh rate.

+
+

Indicates the frame duration to check. This value is the duration of one frame at the desired refresh rate, specified in hundreds of nanoseconds. For example, set this field to 167777 to check for 60 Hz refresh rate support.

+

A variable that will be set to the closest supported frame present duration that's smaller than the requested value, or zero if the device does not support any lower duration.

+

A variable that will be set to the closest supported frame present duration that's larger than the requested value, or zero if the device does not support any higher duration.

+

This method returns on success, or a DXGI error code on failure.

+ +

If the DXGI output adapter does not support custom refresh rates (for example, an external display) then the display driver will set upper and lower bounds to (0, 0).

+
+ dn384132 + HRESULT IDXGISwapChainMedia::CheckPresentDurationSupport([In] unsigned int DesiredPresentDuration,[Out] unsigned int* pClosestSmallerPresentDuration,[Out] unsigned int* pClosestLargerPresentDuration) + IDXGISwapChainMedia::CheckPresentDurationSupport +
+ + +

Describes an adapter (or video card) by using DXGI 1.0.

+
+ +

The structure provides a description of an adapter. This structure is initialized by using the IDXGIAdapter::GetDesc method.

+
+ bb173058 + DXGI_ADAPTER_DESC + DXGI_ADAPTER_DESC +
+ + +

A string that contains the adapter description. On feature level 9 graphics hardware, GetDesc returns ?Software Adapter? for the description string.

+
+ bb173058 + Description + Description +
+ + +

The PCI ID of the hardware vendor. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the hardware vendor.

+
+ bb173058 + VendorId + VendorId +
+ + +

The PCI ID of the hardware device. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the hardware device.

+
+ bb173058 + DeviceId + DeviceId +
+ + +

The PCI ID of the sub system. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the sub system.

+
+ bb173058 + SubSysId + SubSysId +
+ + +

The PCI ID of the revision number of the adapter. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the revision number of the adapter.

+
+ bb173058 + Revision + Revision +
+ + +

The number of bytes of dedicated video memory that are not shared with the CPU.

+
+ bb173058 + DedicatedVideoMemory + DedicatedVideoMemory +
+ + +

The number of bytes of dedicated system memory that are not shared with the CPU. This memory is allocated from available system memory at boot time.

+
+ bb173058 + DedicatedSystemMemory + DedicatedSystemMemory +
+ + +

The number of bytes of shared system memory. This is the maximum value of system memory that may be consumed by the adapter during operation. Any incidental memory consumed by the driver as it manages and uses video memory is additional.

+
+ bb173058 + SharedSystemMemory + SharedSystemMemory +
+ + +

A unique value that identifies the adapter. See for a definition of the structure. is defined in dxgi.h.

+
+ bb173058 + AdapterLuid + AdapterLuid +
+ + +

Describes an adapter (or video card) using DXGI 1.1.

+
+ +

The structure provides a DXGI 1.1 description of an adapter. This structure is initialized by using the IDXGIAdapter1::GetDesc1 method.

+
+ ff471326 + DXGI_ADAPTER_DESC1 + DXGI_ADAPTER_DESC1 +
+ + +

A string that contains the adapter description. On feature level 9 graphics hardware, GetDesc1 returns ?Software Adapter? for the description string.

+
+ ff471326 + Description + Description +
+ + +

The PCI ID of the hardware vendor. On feature level 9 graphics hardware, GetDesc1 returns zeros for the PCI ID of the hardware vendor.

+
+ ff471326 + VendorId + VendorId +
+ + +

The PCI ID of the hardware device. On feature level 9 graphics hardware, GetDesc1 returns zeros for the PCI ID of the hardware device.

+
+ ff471326 + DeviceId + DeviceId +
+ + +

The PCI ID of the sub system. On feature level 9 graphics hardware, GetDesc1 returns zeros for the PCI ID of the sub system.

+
+ ff471326 + SubSysId + SubSysId +
+ + +

The PCI ID of the revision number of the adapter. On feature level 9 graphics hardware, GetDesc1 returns zeros for the PCI ID of the revision number of the adapter.

+
+ ff471326 + Revision + Revision +
+ + +

The number of bytes of dedicated video memory that are not shared with the CPU.

+
+ ff471326 + DedicatedVideoMemory + DedicatedVideoMemory +
+ + +

The number of bytes of dedicated system memory that are not shared with the CPU. This memory is allocated from available system memory at boot time.

+
+ ff471326 + DedicatedSystemMemory + DedicatedSystemMemory +
+ + +

The number of bytes of shared system memory. This is the maximum value of system memory that may be consumed by the adapter during operation. Any incidental memory consumed by the driver as it manages and uses video memory is additional.

+
+ ff471326 + SharedSystemMemory + SharedSystemMemory +
+ + +

A unique value that identifies the adapter. See for a definition of the structure. is defined in dxgi.h.

+
+ ff471326 + AdapterLuid + AdapterLuid +
+ + +

A value of the enumerated type that describes the adapter type. The DXGI_ADAPTER_FLAG_REMOTE flag is reserved.

+
+ ff471326 + Flags + Flags +
+ + +

Describes an adapter (or video card) that uses Microsoft DirectX Graphics Infrastructure (DXGI) 1.2.

+
+ +

The structure provides a DXGI 1.2 description of an adapter. This structure is initialized by using the IDXGIAdapter2::GetDesc2 method.

+
+ hh404493 + DXGI_ADAPTER_DESC2 + DXGI_ADAPTER_DESC2 +
+ + +

A string that contains the adapter description.

+
+ hh404493 + Description + Description +
+ + +

The PCI ID of the hardware vendor.

+
+ hh404493 + VendorId + VendorId +
+ + +

The PCI ID of the hardware device.

+
+ hh404493 + DeviceId + DeviceId +
+ + +

The PCI ID of the sub system.

+
+ hh404493 + SubSysId + SubSysId +
+ + +

The PCI ID of the revision number of the adapter.

+
+ hh404493 + Revision + Revision +
+ + +

The number of bytes of dedicated video memory that are not shared with the CPU.

+
+ hh404493 + DedicatedVideoMemory + DedicatedVideoMemory +
+ + +

The number of bytes of dedicated system memory that are not shared with the CPU. This memory is allocated from available system memory at boot time.

+
+ hh404493 + DedicatedSystemMemory + DedicatedSystemMemory +
+ + +

The number of bytes of shared system memory. This is the maximum value of system memory that may be consumed by the adapter during operation. Any incidental memory consumed by the driver as it manages and uses video memory is additional.

+
+ hh404493 + SharedSystemMemory + SharedSystemMemory +
+ + +

A unique value that identifies the adapter. See for a definition of the structure. is defined in dxgi.h.

+
+ hh404493 + AdapterLuid + AdapterLuid +
+ + +

A value of the enumerated type that describes the adapter type. The DXGI_ADAPTER_FLAG_REMOTE flag is reserved.

+
+ hh404493 + Flags + Flags +
+ + +

A value of the enumerated type that describes the granularity level at which the GPU can be preempted from performing its current graphics rendering task.

+
+ hh404493 + GraphicsPreemptionGranularity + GraphicsPreemptionGranularity +
+ + +

A value of the enumerated type that describes the granularity level at which the GPU can be preempted from performing its current compute task.

+
+ hh404493 + ComputePreemptionGranularity + ComputePreemptionGranularity +
+ + +

Describes an adapter (or video card) by using DXGI 1.0.

+
+ +

The structure provides a description of an adapter. This structure is initialized by using the IDXGIAdapter::GetDesc method.

+
+ bb173058 + DXGI_ADAPTER_DESC3 + DXGI_ADAPTER_DESC3 +
+ + +

A string that contains the adapter description. On feature level 9 graphics hardware, GetDesc returns ?Software Adapter? for the description string.

+
+ bb173058 + Description + Description +
+ + +

The PCI ID of the hardware vendor. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the hardware vendor.

+
+ bb173058 + VendorId + VendorId +
+ + +

The PCI ID of the hardware device. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the hardware device.

+
+ bb173058 + DeviceId + DeviceId +
+ + +

The PCI ID of the sub system. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the sub system.

+
+ bb173058 + SubSysId + SubSysId +
+ + +

The PCI ID of the revision number of the adapter. On feature level 9 graphics hardware, GetDesc returns zeros for the PCI ID of the revision number of the adapter.

+
+ bb173058 + Revision + Revision +
+ + +

The number of bytes of dedicated video memory that are not shared with the CPU.

+
+ bb173058 + DedicatedVideoMemory + DedicatedVideoMemory +
+ + +

The number of bytes of dedicated system memory that are not shared with the CPU. This memory is allocated from available system memory at boot time.

+
+ bb173058 + DedicatedSystemMemory + DedicatedSystemMemory +
+ + +

The number of bytes of shared system memory. This is the maximum value of system memory that may be consumed by the adapter during operation. Any incidental memory consumed by the driver as it manages and uses video memory is additional.

+
+ bb173058 + SharedSystemMemory + SharedSystemMemory +
+ + +

A unique value that identifies the adapter. See for a definition of the structure. is defined in dxgi.h.

+
+ bb173058 + AdapterLuid + AdapterLuid +
+ + + No documentation. + + bb173058 + Flags + Flags + + + + No documentation. + + bb173058 + GraphicsPreemptionGranularity + GraphicsPreemptionGranularity + + + + No documentation. + + bb173058 + ComputePreemptionGranularity + ComputePreemptionGranularity + + + +

Used with ::CreateDecodeSwapChainForCompositionSurfaceHandle to describe a decode swap chain.

+
+ dn384106 + DXGI_DECODE_SWAP_CHAIN_DESC + DXGI_DECODE_SWAP_CHAIN_DESC +
+ + + No documentation. + + dn384106 + Flags + Flags + + + +

Describes timing and presentation statistics for a frame.

+
+ +

You initialize the structure with the IDXGIOutput::GetFrameStatistics or IDXGISwapChain::GetFrameStatistics method.

You can only use IDXGISwapChain::GetFrameStatistics for swap chains that either use the flip presentation model or draw in full-screen mode. You set the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value in the SwapEffect member of the structure to specify that the swap chain uses the flip presentation model.

The values in the PresentCount and PresentRefreshCount members indicate information about when a frame was presented on the display screen. You can use these values to determine whether a glitch occurred. The values in the SyncRefreshCount and SyncQPCTime members indicate timing information that you can use for audio and video synchronization or very precise animation. If the swap chain draws in full-screen mode, these values are based on when the computer booted. + If the swap chain draws in windowed mode, these values are based on when the swap chain is created.

+
+ bb173060 + DXGI_FRAME_STATISTICS + DXGI_FRAME_STATISTICS +
+ + +

A value that represents the running total count of times that an image was presented to the monitor since the computer booted.

Note??The number of times that an image was presented to the monitor is not necessarily the same as the number of times that you called IDXGISwapChain::Present or IDXGISwapChain1::Present1. ?
+
+ bb173060 + PresentCount + PresentCount +
+ + +

A value that represents the running total count of v-blanks at which the last image was presented to the monitor and that have happened since the computer booted (for windowed mode, since the swap chain was created).

+
+ bb173060 + PresentRefreshCount + PresentRefreshCount +
+ + +

A value that represents the running total count of v-blanks when the scheduler last sampled the machine time by calling QueryPerformanceCounter and that have happened since the computer booted (for windowed mode, since the swap chain was created).

+
+ bb173060 + SyncRefreshCount + SyncRefreshCount +
+ + +

A value that represents the high-resolution performance counter timer. This value is the same as the value returned by the QueryPerformanceCounter function.

+
+ bb173060 + SyncQPCTime + SyncQPCTime +
+ + +

Reserved. Always returns 0.

+
+ bb173060 + SyncGPUTime + SyncGPUTime +
+ + +

Used to verify system approval for the app's custom present duration (custom refresh rate). Approval should be continuously verified on a frame-by-frame basis.

+
+ +

This structure is used with the GetFrameStatisticsMedia method.

+
+ dn384108 + DXGI_FRAME_STATISTICS_MEDIA + DXGI_FRAME_STATISTICS_MEDIA +
+ + +

A value that represents the running total count of times that an image was presented to the monitor since the computer booted.

Note??The number of times that an image was presented to the monitor is not necessarily the same as the number of times that you called IDXGISwapChain::Present or IDXGISwapChain1::Present1. ?
+
+ dn384108 + PresentCount + PresentCount +
+ + +

A value that represents the running total count of v-blanks at which the last image was presented to the monitor and that have happened since the computer booted (for windowed mode, since the swap chain was created).

+
+ dn384108 + PresentRefreshCount + PresentRefreshCount +
+ + +

A value that represents the running total count of v-blanks when the scheduler last sampled the machine time by calling QueryPerformanceCounter and that have happened since the computer booted (for windowed mode, since the swap chain was created).

+
+ dn384108 + SyncRefreshCount + SyncRefreshCount +
+ + +

A value that represents the high-resolution performance counter timer. This value is the same as the value returned by the QueryPerformanceCounter function.

+
+ dn384108 + SyncQPCTime + SyncQPCTime +
+ + +

Reserved. Always returns 0.

+
+ dn384108 + SyncGPUTime + SyncGPUTime +
+ + +

A value indicating the composition presentation mode. This value is used to determine whether the app should continue to use the decode swap chain. See .

+
+ dn384108 + CompositionMode + CompositionMode +
+ + +

If the system approves an app's custom present duration request, this field is set to the approved custom present duration.

If the app's custom present duration request is not approved, this field is set to zero.

+
+ dn384108 + ApprovedPresentDuration + ApprovedPresentDuration +
+ + +

Controls the settings of a gamma curve.

+
+ +

The structure is used by the IDXGIOutput::SetGammaControl method.

For info about using gamma correction, see Using gamma correction.

+
+ bb173061 + DXGI_GAMMA_CONTROL + DXGI_GAMMA_CONTROL +
+ + +

A structure with scalar values that are applied to rgb values before being sent to the gamma look up table.

+
+ bb173061 + Scale + Scale +
+ + +

A structure with offset values that are applied to the rgb values before being sent to the gamma look up table.

+
+ bb173061 + Offset + Offset +
+ + +

An array of structures that control the points of a gamma curve.

+
+ bb173061 + GammaCurve + GammaCurve +
+ + +

Controls the gamma capabilities of an adapter.

+
+ +

To get a list of the capabilities for controlling gamma correction, call IDXGIOutput::GetGammaControlCapabilities.

For info about using gamma correction, see Using gamma correction.

+
+ bb173062 + DXGI_GAMMA_CONTROL_CAPABILITIES + DXGI_GAMMA_CONTROL_CAPABILITIES +
+ + +

True if scaling and offset operations are supported during gamma correction; otherwise, false.

+
+ bb173062 + ScaleAndOffsetSupported + ScaleAndOffsetSupported +
+ + +

A value describing the maximum range of the control-point positions.

+
+ bb173062 + MaxConvertedValue + MaxConvertedValue +
+ + +

A value describing the minimum range of the control-point positions.

+
+ bb173062 + MinConvertedValue + MinConvertedValue +
+ + +

A value describing the number of control points in the array.

+
+ bb173062 + NumGammaControlPoints + NumGammaControlPoints +
+ + +

An array of values describing control points; the maximum length of control points is 1025.

+
+ bb173062 + ControlPointPositions + ControlPointPositions +
+ + +

Describes the 10 bit display metadata, and is usually used for video. This is used to adjust the output to best match a display's capabilities.

+
+ +

The X and Y coordinates of the parameters mean the xy chromacity coordinate in the CIE1931 color space. The values are normalized to 50000, so to get a value between 0.0 and 1.0, divide by 50000.

This structure is used in conjunction with the SetHDRMetaData method.

+
+ mt732700 + DXGI_HDR_METADATA_HDR10 + DXGI_HDR_METADATA_HDR10 +
+ + +

The chromaticity coordinates of the 1.0 red value. Index 0 contains the X coordinate and index 1 contains the Y coordinate.

+
+ mt732700 + RedPrimary + RedPrimary +
+ + +

The chromaticity coordinates of the 1.0 green value. Index 0 contains the X coordinate and index 1 contains the Y coordinate.

+
+ mt732700 + GreenPrimary + GreenPrimary +
+ + +

The chromaticity coordinates of the 1.0 blue value. Index 0 contains the X coordinate and index 1 contains the Y coordinate.

+
+ mt732700 + BluePrimary + BluePrimary +
+ + +

The chromaticity coordinates of the white point. Index 0 contains the X coordinate and index 1 contains the Y coordinate.

+
+ mt732700 + WhitePoint + WhitePoint +
+ + +

The maximum number of nits of the display used to master the content. Units are 0.0001 nit, so if the value is 1 nit, the value should be 10,000.

+
+ mt732700 + MaxMasteringLuminance + MaxMasteringLuminance +
+ + +

The minimum number of nits (in units of 0.00001 nit) of the display used to master the content.

+
+ mt732700 + MinMasteringLuminance + MinMasteringLuminance +
+ + +

The maximum nit value (in units of 0.00001 nit) used anywhere in the content.

+
+ mt732700 + MaxContentLightLevel + MaxContentLightLevel +
+ + +

The per-frame average of the maximum nit values (in units of 0.00001 nit).

+
+ mt732700 + MaxFrameAverageLightLevel + MaxFrameAverageLightLevel +
+ + +

Describes a debug message filter, which contains lists of message types to allow and deny.

+
+ +

Use with an interface.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780346 + DXGI_INFO_QUEUE_FILTER + DXGI_INFO_QUEUE_FILTER +
+ + +

A structure that describes the types of messages to allow.

+
+ hh780346 + AllowList + AllowList +
+ + +

A structure that describes the types of messages to deny.

+
+ hh780346 + DenyList + DenyList +
+ + +

Describes the types of messages to allow or deny to pass through a filter.

+
+ +

This structure is a member of the structure.

This API requires the Windows Software Development Kit (SDK) for Windows?8.

+
+ hh780347 + DXGI_INFO_QUEUE_FILTER_DESC + DXGI_INFO_QUEUE_FILTER_DESC +
+ + +

The number of message categories to allow or deny.

+
+ hh780347 + NumCategories + NumCategories +
+ + +

An array of enumeration values that describe the message categories to allow or deny. The array must have at least NumCategories number of elements.

+
+ hh780347 + pCategoryList + pCategoryList +
+ + +

The number of message severity levels to allow or deny.

+
+ hh780347 + NumSeverities + NumSeverities +
+ + +

An array of enumeration values that describe the message severity levels to allow or deny. The array must have at least NumSeverities number of elements.

+
+ hh780347 + pSeverityList + pSeverityList +
+ + +

The number of message IDs to allow or deny.

+
+ hh780347 + NumIDs + NumIDs +
+ + +

An array of integers that represent the message IDs to allow or deny. The array must have at least NumIDs number of elements.

+
+ hh780347 + pIDList + pIDList +
+ + +

Describes a debug message in the information queue.

+
+ +

IDXGIInfoQueue::GetMessage returns a reference to this structure.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh780348 + DXGI_INFO_QUEUE_MESSAGE + DXGI_INFO_QUEUE_MESSAGE +
+ + +

A DXGI_DEBUG_ID value that identifies the entity that produced the message.

+
+ hh780348 + Producer + Producer +
+ + +

A -typed value that specifies the category of the message.

+
+ hh780348 + Category + Category +
+ + +

A -typed value that specifies the severity of the message.

+
+ hh780348 + Severity + Severity +
+ + +

An integer that uniquely identifies the message.

+
+ hh780348 + ID + ID +
+ + +

The message string.

+
+ hh780348 + pDescription + pDescription +
+ + +

The length of the message string at pDescription, in bytes.

+
+ hh780348 + DescriptionByteLength + DescriptionByteLength +
+ + +

Describes a JPEG AC huffman table.

+
+ dn903662 + DXGI_JPEG_AC_HUFFMAN_TABLE + DXGI_JPEG_AC_HUFFMAN_TABLE +
+ + +

The number of codes for each code length.

+
+ dn903662 + CodeCounts + CodeCounts +
+ + +

The Huffman code values, in order of increasing code length.

+
+ dn903662 + CodeValues + CodeValues +
+ + +

Describes a JPEG DC huffman table.

+
+ dn903663 + DXGI_JPEG_DC_HUFFMAN_TABLE + DXGI_JPEG_DC_HUFFMAN_TABLE +
+ + +

The number of codes for each code length.

+
+ dn903663 + CodeCounts + CodeCounts +
+ + +

The Huffman code values, in order of increasing code length.

+
+ dn903663 + CodeValues + CodeValues +
+ + +

Describes a JPEG quantization table.

+
+ dn903664 + DXGI_JPEG_QUANTIZATION_TABLE + DXGI_JPEG_QUANTIZATION_TABLE +
+ + +

An array of bytes containing the elements of the quantization table.

+
+ dn903664 + Elements + Elements +
+ + +

Describes a mapped rectangle that is used to access a surface.

+
+ +

The structure is initialized by the IDXGISurface::Map method.

+
+ bb173063 + DXGI_MAPPED_RECT + DXGI_MAPPED_RECT +
+ + +

A value that describes the width, in bytes, of the surface.

+
+ bb173063 + Pitch + Pitch +
+ + +

A reference to the image buffer of the surface.

+
+ bb173063 + pBits + pBits +
+ + +

Describes a display mode and whether the display mode supports stereo.

+
+ +

is identical to except that includes the Stereo member.

This structure is used by the GetDisplayModeList1 and FindClosestMatchingMode1 methods.

+
+ hh404507 + DXGI_MODE_DESC1 + DXGI_MODE_DESC1 +
+ + +

A value that describes the resolution width.

+
+ hh404507 + Width + Width +
+ + +

A value that describes the resolution height.

+
+ hh404507 + Height + Height +
+ + +

A structure that describes the refresh rate in hertz.

+
+ hh404507 + RefreshRate + RefreshRate +
+ + +

A -typed value that describes the display format.

+
+ hh404507 + Format + Format +
+ + +

A -typed value that describes the scan-line drawing mode.

+
+ hh404507 + ScanlineOrdering + ScanlineOrdering +
+ + +

A -typed value that describes the scaling mode.

+
+ hh404507 + Scaling + Scaling +
+ + +

Specifies whether the full-screen display mode is stereo. TRUE if stereo; otherwise, .

+
+ hh404507 + Stereo + Stereo +
+ + +

Describes an output or physical connection between the adapter (video card) and a device.

+
+ +

The structure is initialized by the IDXGIOutput::GetDesc method.

+
+ bb173068 + DXGI_OUTPUT_DESC + DXGI_OUTPUT_DESC +
+ + +

A string that contains the name of the output device.

+
+ bb173068 + DeviceName + DeviceName +
+ + +

A structure containing the bounds of the output in desktop coordinates. Desktop coordinates depend on the dots per inch (DPI) of the desktop. + For info about writing DPI-aware Win32 apps, see High DPI.

+
+ bb173068 + DesktopCoordinates + DesktopCoordinates +
+ + +

True if the output is attached to the desktop; otherwise, false.

+
+ bb173068 + AttachedToDesktop + AttachedToDesktop +
+ + +

A member of the enumerated type describing on how an image is rotated by the output.

+
+ bb173068 + Rotation + Rotation +
+ + +

An handle that represents the display monitor. For more information, see and the Device Context.

+
+ bb173068 + Monitor + Monitor +
+ + +

Describes an output or physical connection between the adapter (video card) and a device.

+
+ +

The structure is initialized by the IDXGIOutput::GetDesc method.

+
+ bb173068 + DXGI_OUTPUT_DESC1 + DXGI_OUTPUT_DESC1 +
+ + +

A string that contains the name of the output device.

+
+ bb173068 + DeviceName + DeviceName +
+ + +

A structure containing the bounds of the output in desktop coordinates. Desktop coordinates depend on the dots per inch (DPI) of the desktop. + For info about writing DPI-aware Win32 apps, see High DPI.

+
+ bb173068 + DesktopCoordinates + DesktopCoordinates +
+ + +

True if the output is attached to the desktop; otherwise, false.

+
+ bb173068 + AttachedToDesktop + AttachedToDesktop +
+ + +

A member of the enumerated type describing on how an image is rotated by the output.

+
+ bb173068 + Rotation + Rotation +
+ + +

An handle that represents the display monitor. For more information, see and the Device Context.

+
+ bb173068 + Monitor + Monitor +
+ + + No documentation. + + bb173068 + BitsPerColor + BitsPerColor + + + + No documentation. + + bb173068 + ColorSpace + ColorSpace + + + + No documentation. + + bb173068 + RedPrimary + RedPrimary + + + + No documentation. + + bb173068 + GreenPrimary + GreenPrimary + + + + No documentation. + + bb173068 + BluePrimary + BluePrimary + + + + No documentation. + + bb173068 + WhitePoint + WhitePoint + + + + No documentation. + + bb173068 + MinLuminance + MinLuminance + + + + No documentation. + + bb173068 + MaxLuminance + MaxLuminance + + + + No documentation. + + bb173068 + MaxFullFrameLuminance + MaxFullFrameLuminance + + + +

The structure describes the dimension of the output and the surface that contains the desktop image. The format of the desktop image is always DXGI_FORMAT_B8G8R8A8_UNORM.

+
+ +

This structure is used by GetDesc.

+
+ hh404510 + DXGI_OUTDUPL_DESC + DXGI_OUTDUPL_DESC +
+ + + No documentation. + + hh404510 + ModeDesc + ModeDesc + + + + No documentation. + + hh404510 + Rotation + Rotation + + + + No documentation. + + hh404510 + DesktopImageInSystemMemory + DesktopImageInSystemMemory + + + +

The structure describes the current desktop image.

+
+ +

A non-zero LastMouseUpdateTime indicates an update to either a mouse reference position or a mouse reference position and shape. That is, the mouse reference position is always valid for a non-zero LastMouseUpdateTime; however, the application must check the value of the PointerShapeBufferSize member to determine whether the shape was updated too.

If only the reference was updated (that is, the desktop image was not updated), the AccumulatedFrames, TotalMetadataBufferSize, and LastPresentTime members are set to zero.

An AccumulatedFrames value of one indicates that the application completed processing the last frame before a new desktop image was presented. If the AccumulatedFrames value is greater than one, more desktop image updates have occurred while the application processed the last desktop update. In this situation, the operating system accumulated the update regions. For more information about desktop updates, see Desktop Update Data.

A non-zero TotalMetadataBufferSize indicates the total size of the buffers that are required to store all the desktop update metadata. An application cannot determine the size of each type of metadata. The application must call the IDXGIOutputDuplication::GetFrameDirtyRects, IDXGIOutputDuplication::GetFrameMoveRects, or IDXGIOutputDuplication::GetFramePointerShape method to obtain information about each type of metadata.

Note??To correct visual effects, an application must process the move region data before it processes the dirty rectangles.? +
+ hh404512 + DXGI_OUTDUPL_FRAME_INFO + DXGI_OUTDUPL_FRAME_INFO +
+ + +

The time stamp of the last update of the desktop image. The operating system calls the QueryPerformanceCounter function to obtain the value. A zero value indicates that the desktop image was not updated since an application last called the IDXGIOutputDuplication::AcquireNextFrame method to acquire the next frame of the desktop image.

+
+ hh404512 + LastPresentTime + LastPresentTime +
+ + +

The time stamp of the last update to the mouse. The operating system calls the QueryPerformanceCounter function to obtain the value. A zero value indicates that the position or shape of the mouse was not updated since an application last called the IDXGIOutputDuplication::AcquireNextFrame method to acquire the next frame of the desktop image. The mouse position is always supplied for a mouse update. A new reference shape is indicated by a non-zero value in the PointerShapeBufferSize member.

+
+ hh404512 + LastMouseUpdateTime + LastMouseUpdateTime +
+ + +

The number of frames that the operating system accumulated in the desktop image surface since the calling application processed the last desktop image. For more information about this number, see Remarks.

+
+ hh404512 + AccumulatedFrames + AccumulatedFrames +
+ + +

Specifies whether the operating system accumulated updates by coalescing dirty regions. Therefore, the dirty regions might contain unmodified pixels. TRUE if dirty regions were accumulated; otherwise, .

+
+ hh404512 + RectsCoalesced + RectsCoalesced +
+ + +

Specifies whether the desktop image might contain protected content that was already blacked out in the desktop image. TRUE if protected content was already blacked; otherwise, . The application can use this information to notify the remote user that some of the desktop content might be protected and therefore not visible.

+
+ hh404512 + ProtectedContentMaskedOut + ProtectedContentMaskedOut +
+ + +

A structure that describes the most recent mouse position if the LastMouseUpdateTime member is a non-zero value; otherwise, this value is ignored. This value provides the coordinates of the location where the top-left-hand corner of the reference shape is drawn; this value is not the desktop position of the hot spot.

+
+ hh404512 + PointerPosition + PointerPosition +
+ + +

Size in bytes of the buffers to store all the desktop update metadata for this frame. For more information about this size, see Remarks.

+
+ hh404512 + TotalMetadataBufferSize + TotalMetadataBufferSize +
+ + +

Size in bytes of the buffer to hold the new pixel data for the mouse shape. For more information about this size, see Remarks.

+
+ hh404512 + PointerShapeBufferSize + PointerShapeBufferSize +
+ + +

The structure describes the movement of a rectangle.

+
+ +

This structure is used by GetFrameMoveRects.

+
+ hh404514 + DXGI_OUTDUPL_MOVE_RECT + DXGI_OUTDUPL_MOVE_RECT +
+ + +

The starting position of a rectangle.

+
+ hh404514 + SourcePoint + SourcePoint +
+ + +

The target region to which to move a rectangle.

+
+ hh404514 + DestinationRect + DestinationRect +
+ + +

The structure describes the position of the hardware cursor.

+
+ +

The Position member is valid only if the Visible member?s value is set to TRUE.

+
+ hh404516 + DXGI_OUTDUPL_POINTER_POSITION + DXGI_OUTDUPL_POINTER_POSITION +
+ + +

The position of the hardware cursor relative to the top-left of the adapter output.

+
+ hh404516 + Position + Position +
+ + +

Specifies whether the hardware cursor is visible. TRUE if visible; otherwise, . If the hardware cursor is not visible, the calling application does not display the cursor in the client.

+
+ hh404516 + Visible + Visible +
+ + +

The structure describes information about the cursor shape.

+
+ +

An application draws the cursor shape with the top-left-hand corner drawn at the position that the Position member of the structure specifies; the application does not use the hot spot to draw the cursor shape.

An application calls the IDXGIOutputDuplication::GetFramePointerShape method to retrieve cursor shape information in a structure.

+
+ hh404518 + DXGI_OUTDUPL_POINTER_SHAPE_INFO + DXGI_OUTDUPL_POINTER_SHAPE_INFO +
+ + +

A -typed value that specifies the type of cursor shape.

+
+ hh404518 + Type + Type +
+ + +

The width in pixels of the mouse cursor.

+
+ hh404518 + Width + Width +
+ + +

The height in scan lines of the mouse cursor.

+
+ hh404518 + Height + Height +
+ + +

The width in bytes of the mouse cursor.

+
+ hh404518 + Pitch + Pitch +
+ + +

The position of the cursor's hot spot relative to its upper-left pixel. An application does not use the hot spot when it determines where to draw the cursor shape.

+
+ hh404518 + HotSpot + HotSpot +
+ + +

Describes the current video memory budgeting parameters.

+
+ +

Use this structure with QueryVideoMemoryInfo.

Refer to the remarks for .

+
+ dn933220 + DXGI_QUERY_VIDEO_MEMORY_INFO + DXGI_QUERY_VIDEO_MEMORY_INFO +
+ + +

Specifies the OS-provided video memory budget, in bytes, that the application should target. If CurrentUsage is greater than Budget, the application may incur stuttering or performance penalties due to background activity by the OS to provide other applications with a fair usage of video memory.

+
+ dn933220 + Budget + Budget +
+ + +

Specifies the application?s current video memory usage, in bytes.

+
+ dn933220 + CurrentUsage + CurrentUsage +
+ + +

The amount of video memory, in bytes, that the application has available for reservation. To reserve this video memory, the application should call IDXGIAdapter3::SetVideoMemoryReservation.

+
+ dn933220 + AvailableForReservation + AvailableForReservation +
+ + +

The amount of video memory, in bytes, that is reserved by the application. The OS uses the reservation as a hint to determine the application?s minimum working set. Applications should attempt to ensure that their video memory usage can be trimmed to meet this requirement.

+
+ dn933220 + CurrentReservation + CurrentReservation +
+ + +

Represents a handle to a shared resource.

+
+ +

To create a shared surface, pass a shared-resource handle into the IDXGIDevice::CreateSurface method.

+
+ bb173073 + DXGI_SHARED_RESOURCE + DXGI_SHARED_RESOURCE +
+ + +

A handle to a shared resource.

+
+ bb173073 + Handle + Handle +
+ + +

Describes a surface.

+
+ +

This structure is used by the GetDesc and CreateSurface methods.

+
+ bb173074 + DXGI_SURFACE_DESC + DXGI_SURFACE_DESC +
+ + +

A value describing the surface width.

+
+ bb173074 + Width + Width +
+ + +

A value describing the surface height.

+
+ bb173074 + Height + Height +
+ + +

A member of the enumerated type that describes the surface format.

+
+ bb173074 + Format + Format +
+ + +

A member of the structure that describes multi-sampling parameters for the surface.

+
+ bb173074 + SampleDesc + SampleDesc +
+ + +

Describes a swap chain.

+
+ +

This structure is used by the GetDesc and CreateSwapChain methods.

In full-screen mode, there is a dedicated front buffer; in windowed mode, the desktop is the front buffer.

If you create a swap chain with one buffer, specifying DXGI_SWAP_EFFECT_SEQUENTIAL does not cause the contents of the single buffer to be swapped with the front buffer.

For performance information about flipping swap-chain buffers in full-screen application, see Full-Screen Application Performance Hints.

+
+ bb173075 + DXGI_SWAP_CHAIN_DESC + DXGI_SWAP_CHAIN_DESC +
+ + +

A structure that describes the backbuffer display mode.

+
+ bb173075 + BufferDesc + BufferDesc +
+ + +

A structure that describes multi-sampling parameters.

+
+ bb173075 + SampleDesc + SampleDesc +
+ + +

A member of the DXGI_USAGE enumerated type that describes the surface usage and CPU access options for the back buffer. The back buffer can be used for shader input or render-target output.

+
+ bb173075 + BufferUsage + BufferUsage +
+ + +

A value that describes the number of buffers in the swap chain. When you call IDXGIFactory::CreateSwapChain to create a full-screen swap chain, you typically include the front buffer in this value. For more information about swap-chain buffers, see Remarks.

+
+ bb173075 + BufferCount + BufferCount +
+ + +

An handle to the output window. This member must not be null.

+
+ bb173075 + OutputWindow + OutputWindow +
+ + +

A Boolean value that specifies whether the output is in windowed mode. TRUE if the output is in windowed mode; otherwise, .

We recommend that you create a windowed swap chain and allow the end user to change the swap chain to full screen through IDXGISwapChain::SetFullscreenState; that is, do not set this member to to force the swap chain to be full screen. However, if you create the swap chain as full screen, also provide the end user with a list of supported display modes through the BufferDesc member because a swap chain that is created with an unsupported display mode might cause the display to go black and prevent the end user from seeing anything.

For more information about choosing windowed verses full screen, see IDXGIFactory::CreateSwapChain.

+
+ bb173075 + Windowed + Windowed +
+ + +

A member of the enumerated type that describes options for handling the contents of the presentation buffer after presenting a surface.

+
+ bb173075 + SwapEffect + SwapEffect +
+ + +

A member of the enumerated type that describes options for swap-chain behavior.

+
+ bb173075 + Flags + Flags +
+ + +

Describes a swap chain.

+
+ +

This structure is used by the CreateSwapChainForHwnd, CreateSwapChainForCoreWindow, CreateSwapChainForComposition, CreateSwapChainForCompositionSurfaceHandle, and GetDesc1 methods.

Note??You cannot cast a to a and vice versa. An application must explicitly use the IDXGISwapChain1::GetDesc1 method to retrieve the newer version of the swap-chain description structure.?

In full-screen mode, there is a dedicated front buffer; in windowed mode, the desktop is the front buffer.

For a flip-model swap chain (that is, a swap chain that has the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value set in the SwapEffect member), you must set the Format member to DXGI_FORMAT_R16G16B16A16_FLOAT, DXGI_FORMAT_B8G8R8A8_UNORM, or DXGI_FORMAT_R8G8B8A8_UNORM; you must set the Count member of the structure that the SampleDesc member specifies to one and the Quality member of to zero because multiple sample antialiasing (MSAA) is not supported; you must set the BufferCount member to from two to sixteen. For more info about flip-model swap chain, see DXGI Flip Model.

+
+ hh404528 + DXGI_SWAP_CHAIN_DESC1 + DXGI_SWAP_CHAIN_DESC1 +
+ + +

A value that describes the resolution width. If you specify the width as zero when you call the IDXGIFactory2::CreateSwapChainForHwnd method to create a swap chain, the runtime obtains the width from the output window and assigns this width value to the swap-chain description. You can subsequently call the IDXGISwapChain1::GetDesc1 method to retrieve the assigned width value. You cannot specify the width as zero when you call the IDXGIFactory2::CreateSwapChainForComposition method.

+
+ hh404528 + Width + Width +
+ + +

A value that describes the resolution height. If you specify the height as zero when you call the IDXGIFactory2::CreateSwapChainForHwnd method to create a swap chain, the runtime obtains the height from the output window and assigns this height value to the swap-chain description. You can subsequently call the IDXGISwapChain1::GetDesc1 method to retrieve the assigned height value. You cannot specify the height as zero when you call the IDXGIFactory2::CreateSwapChainForComposition method.

+
+ hh404528 + Height + Height +
+ + +

A structure that describes the display format.

+
+ hh404528 + Format + Format +
+ + +

Specifies whether the full-screen display mode or the swap-chain back buffer is stereo. TRUE if stereo; otherwise, . If you specify stereo, you must also specify a flip-model swap chain (that is, a swap chain that has the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value set in the SwapEffect member).

+
+ hh404528 + Stereo + Stereo +
+ + +

A structure that describes multi-sampling parameters. This member is valid only with bit-block transfer (bitblt) model swap chains.

+
+ hh404528 + SampleDesc + SampleDesc +
+ + +

A DXGI_USAGE-typed value that describes the surface usage and CPU access options for the back buffer. The back buffer can be used for shader input or render-target output.

+
+ hh404528 + BufferUsage + BufferUsage +
+ + +

A value that describes the number of buffers in the swap chain. When you create a full-screen swap chain, you typically include the front buffer in this value.

+
+ hh404528 + BufferCount + BufferCount +
+ + +

A -typed value that identifies resize behavior if the size of the back buffer is not equal to the target output.

+
+ hh404528 + Scaling + Scaling +
+ + +

A -typed value that describes the presentation model that is used by the swap chain and options for handling the contents of the presentation buffer after presenting a surface. You must specify the DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL value when you call the IDXGIFactory2::CreateSwapChainForComposition method because this method supports only flip presentation model.

+
+ hh404528 + SwapEffect + SwapEffect +
+ + +

A -typed value that identifies the transparency behavior of the swap-chain back buffer.

+
+ hh404528 + AlphaMode + AlphaMode +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies options for swap-chain behavior.

+
+ hh404528 + Flags + Flags +
+ + +

Describes full-screen mode for a swap chain.

+
+ +

This structure is used by the CreateSwapChainForHwnd and GetFullscreenDesc methods.

+
+ hh404531 + DXGI_SWAP_CHAIN_FULLSCREEN_DESC + DXGI_SWAP_CHAIN_FULLSCREEN_DESC +
+ + +

A structure that describes the refresh rate in hertz.

+
+ hh404531 + RefreshRate + RefreshRate +
+ + +

A member of the enumerated type that describes the scan-line drawing mode.

+
+ hh404531 + ScanlineOrdering + ScanlineOrdering +
+ + +

A member of the enumerated type that describes the scaling mode.

+
+ hh404531 + Scaling + Scaling +
+ + +

A Boolean value that specifies whether the swap chain is in windowed mode. TRUE if the swap chain is in windowed mode; otherwise, .

+
+ hh404531 + Windowed + Windowed +
+
+
diff --git a/CarConverter/bin/Release/SharpDX.Direct3D11.dll b/CarConverter/bin/Release/SharpDX.Direct3D11.dll new file mode 100644 index 0000000..f413811 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.Direct3D11.dll differ diff --git a/CarConverter/bin/Release/SharpDX.Direct3D11.pdb b/CarConverter/bin/Release/SharpDX.Direct3D11.pdb new file mode 100644 index 0000000..5b79c2b Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.Direct3D11.pdb differ diff --git a/CarConverter/bin/Release/SharpDX.Direct3D11.xml b/CarConverter/bin/Release/SharpDX.Direct3D11.xml new file mode 100644 index 0000000..a644b4b --- /dev/null +++ b/CarConverter/bin/Release/SharpDX.Direct3D11.xml @@ -0,0 +1,31826 @@ + + + + SharpDX.Direct3D11 + + + + + The assembly provides managed Direct3D11 API. + + ff476080 + Direct3D11 + Direct3D11 + + + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + + + +

Gets the description for blending state that you used to create the blend-state object.

+
+ +

You use the description for blending state in a call to the ID3D11Device::CreateBlendState method to create the blend-state object.

+
+ ff476350 + GetDesc + GetDesc +
+ + +

Gets the description for blending state that you used to create the blend-state object.

+
+

A reference to a structure that receives a description of the blend state.

+ +

You use the description for blending state in a call to the ID3D11Device::CreateBlendState method to create the blend-state object.

+
+ ff476350 + void ID3D11BlendState::GetDesc([Out] D3D11_BLEND_DESC* pDesc) + ID3D11BlendState::GetDesc +
+ + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + + + +

Gets the description for blending state that you used to create the blend-state object.

+
+ +

You use the description for blending state in a call to the ID3D11Device1::CreateBlendState1 method to create the blend-state object.

+
+ hh404573 + GetDesc1 + GetDesc1 +
+ + +

Gets the description for blending state that you used to create the blend-state object.

+
+

A reference to a structure that receives a description of the blend state. This blend state can specify logical operations as well as blending operations.

+ +

You use the description for blending state in a call to the ID3D11Device1::CreateBlendState1 method to create the blend-state object.

+
+ hh404573 + void ID3D11BlendState1::GetDesc1([Out] D3D11_BLEND_DESC1* pDesc) + ID3D11BlendState1::GetDesc1 +
+ + +

Describes the blend state that you use in a call to ID3D11Device::CreateBlendState to create a blend-state object.

+
+ +

Here are the default values for blend state.

StateDefault Value
AlphaToCoverageEnable
IndependentBlendEnable
RenderTarget[0].BlendEnable
RenderTarget[0].SrcBlendD3D11_BLEND_ONE
RenderTarget[0].DestBlendD3D11_BLEND_ZERO
RenderTarget[0].BlendOpD3D11_BLEND_OP_ADD
RenderTarget[0].SrcBlendAlphaD3D11_BLEND_ONE
RenderTarget[0].DestBlendAlphaD3D11_BLEND_ZERO
RenderTarget[0].BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTarget[0].RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

Note?? is identical to D3D10_BLEND_DESC1.?

If the driver type is set to D3D_DRIVER_TYPE_HARDWARE, the feature level is set to less than or equal to D3D_FEATURE_LEVEL_9_3, and the pixel format of the render target is set to DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB, or DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, the display device performs the blend in standard RGB (sRGB) space and not in linear space. However, if the feature level is set to greater than D3D_FEATURE_LEVEL_9_3, the display device performs the blend in linear space, which is ideal.

+
+ ff476087 + D3D11_BLEND_DESC + D3D11_BLEND_DESC +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + + Clones this instance. + + A copy of this instance. + + Because this structure contains an array, it is not possible to modify it without making an explicit clone method. + + + + + No documentation. + + ff476087 + AlphaToCoverageEnable + AlphaToCoverageEnable + + + + No documentation. + + ff476087 + IndependentBlendEnable + IndependentBlendEnable + + + + No documentation. + + ff476087 + RenderTarget + RenderTarget + + + + Note?? This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes the blend state that you use in a call to ID3D11Device1::CreateBlendState1 to create a blend-state object.

+
+ +

Here are the default values for blend state.

StateDefault Value
AlphaToCoverageEnable
IndependentBlendEnable
RenderTarget[0].BlendEnable
RenderTarget[0].LogicOpEnable
RenderTarget[0].SrcBlendD3D11_BLEND_ONE
RenderTarget[0].DestBlendD3D11_BLEND_ZERO
RenderTarget[0].BlendOpD3D11_BLEND_OP_ADD
RenderTarget[0].SrcBlendAlphaD3D11_BLEND_ONE
RenderTarget[0].DestBlendAlphaD3D11_BLEND_ZERO
RenderTarget[0].BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTarget[0].LogicOpD3D11_LOGIC_OP_NOOP
RenderTarget[0].RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

If the driver type is set to D3D_DRIVER_TYPE_HARDWARE, the feature level is set to less than or equal to D3D_FEATURE_LEVEL_9_3, and the pixel format of the render target is set to DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB, or DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, the display device performs the blend in standard RGB (sRGB) space and not in linear space. However, if the feature level is set to greater than D3D_FEATURE_LEVEL_9_3, the display device performs the blend in linear space, which is ideal.

When you set the LogicOpEnable member of the first element of the RenderTarget array (RenderTarget[0]) to TRUE, you must also set the BlendEnable member of RenderTarget[0] to , and the IndependentBlendEnable member of this to . This reflects the limitation in hardware that you can't mix logic operations with blending across multiple render targets, and that when you use a logic operation, you must apply the same logic operation to all render targets.

+
+ hh404435 + D3D11_BLEND_DESC1 + D3D11_BLEND_DESC1 +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + + Clones this instance. + + A copy of this instance. + + Because this structure contains an array, it is not possible to modify it without making an explicit clone method. + + + + + No documentation. + + hh404435 + AlphaToCoverageEnable + AlphaToCoverageEnable + + + + No documentation. + + hh404435 + IndependentBlendEnable + IndependentBlendEnable + + + + No documentation. + + hh404435 + RenderTarget + RenderTarget + + + + Initializes a new instance of the class. + + The device with which to associate the buffer. + The description of the buffer. + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Initializes a new instance of the class. + + The device with which to associate the buffer. + Initial data used to initialize the buffer. + The description of the buffer. + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Initializes a new instance of the class. + + The device with which to associate the buffer. + The data pointer. + The description of the buffer. + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Initializes a new instance of the class. + + The device with which to associate the buffer. + The size, in bytes, of the buffer. + The usage pattern for the buffer. + Flags specifying how the buffer will be bound to the pipeline. + Flags specifying how the buffer will be accessible from the CPU. + Miscellaneous resource options. + The size (in bytes) of the structure element for structured buffers. + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Initializes a new instance of the class. + + The device with which to associate the buffer. + Initial data used to initialize the buffer. + The size, in bytes, of the buffer. + The usage pattern for the buffer. + Flags specifying how the buffer will be bound to the pipeline. + Flags specifying how the buffer will be accessible from the CPU. + Miscellaneous resource options. + The size (in bytes) of the structure element for structured buffers. + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Creates a new instance of the class. + + Type of the data to upload + The device with which to associate the buffer. + Flags specifying how the buffer will be bound to the pipeline. + Initial data used to initialize the buffer. + The size, in bytes, of the buffer. If 0 is specified, sizeof(T) is used. + The usage pattern for the buffer. + Flags specifying how the buffer will be accessible from the CPU. + Miscellaneous resource options. + The size (in bytes) of the structure element for structured buffers. + An initialized buffer + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Creates a new instance of the class. + + Type of the data to upload + The device with which to associate the buffer. + Flags specifying how the buffer will be bound to the pipeline. + Initial data used to initialize the buffer. + The size, in bytes, of the buffer. If 0 is specified, sizeof(T) * data.Length is used. + The usage pattern for the buffer. + Flags specifying how the buffer will be accessible from the CPU. + Miscellaneous resource options. + The size (in bytes) of the structure element for structured buffers. + An initialized buffer + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Creates a new instance of the class. + + Type of the data to upload + The device with which to associate the buffer. + Initial data used to initialize the buffer. + The description. + + An initialized buffer + + + If the is at 0, sizeof(T) is used. + + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + + Creates a new instance of the class. + + Type of the data to upload + The device with which to associate the buffer. + Initial data used to initialize the buffer. + The description. + + An initialized buffer + + + If the is at 0, sizeof(T) * data.Length is used. + + ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer + + + +

Get the properties of a buffer resource.

+
+ ff476352 + GetDesc + GetDesc +
+ + +

Get the properties of a buffer resource.

+
+

Pointer to a resource description (see ) filled in by the method.

+ ff476352 + void ID3D11Buffer::GetDesc([Out] D3D11_BUFFER_DESC* pDesc) + ID3D11Buffer::GetDesc +
+ + +

Describes a buffer resource.

+
+ +

This structure is used by ID3D11Device::CreateBuffer to create buffer resources.

In addition to this structure, you can also use the CD3D11_BUFFER_DESC derived structure, which is defined in D3D11.h and behaves like an inherited class, to help create a buffer description.

If the bind flag is D3D11_BIND_CONSTANT_BUFFER, you must set the ByteWidth value in multiples of 16, and less than or equal to D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT.

+
+ ff476092 + D3D11_BUFFER_DESC + D3D11_BUFFER_DESC +
+ + + Initializes a new instance of the struct. + + The size in bytes. + The usage. + The bind flags. + The CPU access flags. + The option flags. + The structure byte stride. + + + + Initializes a new instance of the struct. + + The size in bytes. + The bind flags. + The usage. + + + +

Size of the buffer in bytes.

+
+ ff476092 + ByteWidth + ByteWidth +
+ + +

Identify how the buffer is expected to be read from and written to. Frequency of update is a key factor. The most common value is typically D3D11_USAGE_DEFAULT; see for all possible values.

+
+ ff476092 + Usage + Usage +
+ + +

Identify how the buffer will be bound to the pipeline. Flags (see ) can be combined with a logical OR.

+
+ ff476092 + BindFlags + BindFlags +
+ + +

CPU access flags (see ) or 0 if no CPU access is necessary. Flags can be combined with a logical OR.

+
+ ff476092 + CPUAccessFlags + CPUAccessFlags +
+ + +

Miscellaneous flags (see ) or 0 if unused. Flags can be combined with a logical OR.

+
+ ff476092 + MiscFlags + MiscFlags +
+ + +

The size of each element in the buffer structure (in bytes) when the buffer represents a structured buffer. For more info about structured buffers, see Structured Buffer.

The size value in StructureByteStride must match the size of the format that you use for views of the buffer. For example, if you use a shader resource view (SRV) to read a buffer in a pixel shader, the SRV format size must match the size value in StructureByteStride.

+
+ ff476092 + StructureByteStride + StructureByteStride +
+ + + Initializes a class-instance object that represents an HLSL class instance. + + + Instances can be created (or gotten) before or after a shader is created. Use the same shader linkage object to acquire a class instance and create the shader the instance is going to be used in. For more information about using the interface, see {{Dynamic Linking}}. + + An instance of . + The type name of a class to initialize. + Identifies the constant buffer that contains the class data. + The four-component vector offset from the start of the constant buffer where the class data will begin. Consequently, this is not a byte offset. + The texture slot for the first texture; there may be multiple textures following the offset. + The sampler slot for the first sampler; there may be multiple samplers following the offset. + Returns S_OK if successful; otherwise, returns one of the following {{Direct3D 11 Return Codes}}. + HRESULT ID3D11ClassLinkage::CreateClassInstance([In] const char* pClassTypeName,[In] int ConstantBufferOffset,[In] int ConstantVectorOffset,[In] int TextureOffset,[In] int SamplerOffset,[Out] ID3D11ClassInstance** ppInstance) + + + + Gets the instance name of the current HLSL class. + + + GetInstanceName will return a valid name only for instances acquired using .For more information about using the interface, see {{Dynamic Linking}}. + + The instance name of the current HLSL class. + void GetInstanceName([Out, Buffer, Optional] LPSTR pInstanceName,[InOut] SIZE_T* pBufferLength) + + + + Gets the type of the current HLSL class. + + + GetTypeName will return a valid name only for instances acquired using .For more information about using the interface, see {{Dynamic Linking}}. + + Type of the current HLSL class. + void GetTypeName([Out, Buffer, Optional] LPSTR pTypeName,[InOut] SIZE_T* pBufferLength) + + + +

Gets the object associated with the current HLSL class.

+
+ +

For more information about using the interface, see Dynamic Linking.

Windows?Phone?8: This API is supported.

+
+ ff476354 + GetClassLinkage + GetClassLinkage +
+ + +

Gets a description of the current HLSL class.

+
+ +

For more information about using the interface, see Dynamic Linking.

An instance is not restricted to being used for a single type in a single shader. An instance is flexible and can be used for any shader that used the same type name or instance name when the instance was generated.

  • A created instance will work for any shader that contains a type of the same type name. For instance, a class instance created with the type name DefaultShader would work in any shader that contained a type DefaultShader even though several shaders could describe a different type.
  • A gotten instance maps directly to an instance name/index in a shader. A class instance aquired using GetClassInstance will work for any shader that contains a class instance of the name used to generate the runtime instance, the instance does not have to be the same type in all of the shaders it's used in.

An instance does not replace the importance of reflection for a particular shader since a gotten instance will not know its slot location and a created instance only specifies a type name.

Windows?Phone?8: This API is supported.

+
+ ff476355 + GetDesc + GetDesc +
+ + +

Gets the object associated with the current HLSL class.

+
+ No documentation. + +

For more information about using the interface, see Dynamic Linking.

Windows?Phone?8: This API is supported.

+
+ ff476354 + void ID3D11ClassInstance::GetClassLinkage([Out] ID3D11ClassLinkage** ppLinkage) + ID3D11ClassInstance::GetClassLinkage +
+ + +

Gets a description of the current HLSL class.

+
+

A reference to a structure that describes the current HLSL class.

+ +

For more information about using the interface, see Dynamic Linking.

An instance is not restricted to being used for a single type in a single shader. An instance is flexible and can be used for any shader that used the same type name or instance name when the instance was generated.

  • A created instance will work for any shader that contains a type of the same type name. For instance, a class instance created with the type name DefaultShader would work in any shader that contained a type DefaultShader even though several shaders could describe a different type.
  • A gotten instance maps directly to an instance name/index in a shader. A class instance aquired using GetClassInstance will work for any shader that contains a class instance of the name used to generate the runtime instance, the instance does not have to be the same type in all of the shaders it's used in.

An instance does not replace the importance of reflection for a particular shader since a gotten instance will not know its slot location and a created instance only specifies a type name.

Windows?Phone?8: This API is supported.

+
+ ff476355 + void ID3D11ClassInstance::GetDesc([Out] D3D11_CLASS_INSTANCE_DESC* pDesc) + ID3D11ClassInstance::GetDesc +
+ + +

Gets the instance name of the current HLSL class.

+
+

The instance name of the current HLSL class.

+

The length of the pInstanceName parameter.

+ +

GetInstanceName will return a valid name only for instances acquired using ID3D11ClassLinkage::GetClassInstance.

For more information about using the interface, see Dynamic Linking.

Windows?Phone?8: This API is supported.

+
+ ff476356 + void ID3D11ClassInstance::GetInstanceName([Out, Buffer, Optional] char* pInstanceName,[InOut] SIZE_T* pBufferLength) + ID3D11ClassInstance::GetInstanceName +
+ + +

Gets the type of the current HLSL class.

+
+

Type of the current HLSL class.

+

The length of the pTypeName parameter.

+ +

GetTypeName will return a valid name only for instances acquired using ID3D11ClassLinkage::GetClassInstance.

For more information about using the interface, see Dynamic Linking.

Windows?Phone?8: This API is supported.

+
+ ff476357 + void ID3D11ClassInstance::GetTypeName([Out, Buffer, Optional] char* pTypeName,[InOut] SIZE_T* pBufferLength) + ID3D11ClassInstance::GetTypeName +
+ + + Create a new instance of . + + + + + +

Gets the class-instance object that represents the specified HLSL class.

+
+

The name of a class for which to get the class instance.

+

The index of the class instance.

+

The address of a reference to an interface to initialize.

+ +

For more information about using the interface, see Dynamic Linking.

A class instance must have at least 1 data member in order to be available for the runtime to use with ID3D11ClassLinkage::GetClassInstance. Any instance with no members will be optimized out of a compiled shader blob as a zero-sized object. If you have a class with no data members, use ID3D11ClassLinkage::CreateClassInstance instead.

Windows?Phone?8: This API is supported.

+
+ ff476360 + HRESULT ID3D11ClassLinkage::GetClassInstance([In] const char* pClassInstanceName,[In] unsigned int InstanceIndex,[Out] ID3D11ClassInstance** ppInstance) + ID3D11ClassLinkage::GetClassInstance +
+ + +

Initializes a class-instance object that represents an HLSL class instance.

+
+

The type name of a class to initialize.

+

Identifies the constant buffer that contains the class data.

+

The four-component vector offset from the start of the constant buffer where the class data will begin. Consequently, this is not a byte offset.

+

The texture slot for the first texture; there may be multiple textures following the offset.

+

The sampler slot for the first sampler; there may be multiple samplers following the offset.

+

The address of a reference to an interface to initialize.

+

Returns if successful; otherwise, returns one of the following Direct3D 11 Return Codes.

+ +

Instances can be created (or gotten) before or after a shader is created. Use the same shader linkage object to acquire a class instance and create the shader the instance is going to be used in.

For more information about using the interface, see Dynamic Linking.

Windows?Phone?8: This API is supported.

+
+ ff476359 + HRESULT ID3D11ClassLinkage::CreateClassInstance([In] const char* pClassTypeName,[In] unsigned int ConstantBufferOffset,[In] unsigned int ConstantVectorOffset,[In] unsigned int TextureOffset,[In] unsigned int SamplerOffset,[Out, Fast] ID3D11ClassInstance** ppInstance) + ID3D11ClassLinkage::CreateClassInstance +
+ + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The counter description. + The newly created object. + + + +

Get a counter description.

+
+ ff476365 + GetDesc + GetDesc +
+ + +

Get a counter description.

+
+

Pointer to a counter description (see ).

+ ff476365 + void ID3D11Counter::GetDesc([Out] D3D11_COUNTER_DESC* pDesc) + ID3D11Counter::GetDesc +
+ + + Counter metadata that contains the type, name, units of measure, and a description of an existing counter. + + + + + Gets the data type of a counter (see ). + + The type. + + + + Gets the number of hardware counters that are needed for this counter type to be created. All instances of the same counter type use the same hardware counters. + + The hardware counter count. + + + + Gets a brief name for the counter. + + The name. + + + + Gets the units a counter measures. + + The units. + + + + Gets a description of the counter. + + The description. + + + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + ff476506 + HRESULT ID3D11Device::CreateDepthStencilState([In] const D3D11_DEPTH_STENCIL_DESC* pDepthStencilDesc,[Out, Fast] ID3D11DepthStencilState** ppDepthStencilState) + ID3D11Device::CreateDepthStencilState + + + +

Gets the description for depth-stencil state that you used to create the depth-stencil-state object.

+
+ +

You use the description for depth-stencil state in a call to the ID3D11Device::CreateDepthStencilState method to create the depth-stencil-state object.

+
+ ff476376 + GetDesc + GetDesc +
+ + +

Gets the description for depth-stencil state that you used to create the depth-stencil-state object.

+
+

A reference to a structure that receives a description of the depth-stencil state.

+ +

You use the description for depth-stencil state in a call to the ID3D11Device::CreateDepthStencilState method to create the depth-stencil-state object.

+
+ ff476376 + void ID3D11DepthStencilState::GetDesc([Out] D3D11_DEPTH_STENCIL_DESC* pDesc) + ID3D11DepthStencilState::GetDesc +
+ + +

Describes depth-stencil state.

+
+ +

Pass a reference to to the ID3D11Device::CreateDepthStencilState method to create the depth-stencil state object.

Depth-stencil state controls how depth-stencil testing is performed by the output-merger stage.

The following table shows the default values of depth-stencil states.

StateDefault Value
DepthEnableTRUE
DepthWriteMaskD3D11_DEPTH_WRITE_MASK_ALL
DepthFuncD3D11_COMPARISON_LESS
StencilEnable
StencilReadMaskD3D11_DEFAULT_STENCIL_READ_MASK
StencilWriteMaskD3D11_DEFAULT_STENCIL_WRITE_MASK

FrontFace.StencilFunc

and

BackFace.StencilFunc

D3D11_COMPARISON_ALWAYS

FrontFace.StencilDepthFailOp

and

BackFace.StencilDepthFailOp

D3D11_STENCIL_OP_KEEP

FrontFace.StencilPassOp

and

BackFace.StencilPassOp

D3D11_STENCIL_OP_KEEP

FrontFace.StencilFailOp

and

BackFace.StencilFailOp

D3D11_STENCIL_OP_KEEP

?

The formats that support stenciling are DXGI_FORMAT_D24_UNORM_S8_UINT and DXGI_FORMAT_D32_FLOAT_S8X24_UINT.

+
+ ff476110 + D3D11_DEPTH_STENCIL_DESC + D3D11_DEPTH_STENCIL_DESC +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + +

Enable depth testing.

+
+ ff476110 + DepthEnable + DepthEnable +
+ + +

Identify a portion of the depth-stencil buffer that can be modified by depth data (see ).

+
+ ff476110 + DepthWriteMask + DepthWriteMask +
+ + +

A function that compares depth data against existing depth data. The function options are listed in .

+
+ ff476110 + DepthFunc + DepthFunc +
+ + +

Enable stencil testing.

+
+ ff476110 + StencilEnable + StencilEnable +
+ + +

Identify a portion of the depth-stencil buffer for reading stencil data.

+
+ ff476110 + StencilReadMask + StencilReadMask +
+ + +

Identify a portion of the depth-stencil buffer for writing stencil data.

+
+ ff476110 + StencilWriteMask + StencilWriteMask +
+ + +

Identify how to use the results of the depth test and the stencil test for pixels whose surface normal is facing towards the camera (see ).

+
+ ff476110 + FrontFace + FrontFace +
+ + +

Identify how to use the results of the depth test and the stencil test for pixels whose surface normal is facing away from the camera (see ).

+
+ ff476110 + BackFace + BackFace +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the DepthStencil flag. + ID3D11Device::CreateDepthStencilView + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the DepthStencil flag. + A structure describing the to be created. + ID3D11Device::CreateDepthStencilView + + + +

A depth-stencil-view interface accesses a texture resource during depth-stencil testing.

+
+ +

To create a depth-stencil view, call ID3D11Device::CreateDepthStencilView.

To bind a depth-stencil view to the pipeline, call ID3D11DeviceContext::OMSetRenderTargets.

+
+ ff476377 + GetDesc + GetDesc +
+ + +

A depth-stencil-view interface accesses a texture resource during depth-stencil testing.

+
+ No documentation. + +

To create a depth-stencil view, call ID3D11Device::CreateDepthStencilView.

To bind a depth-stencil view to the pipeline, call ID3D11DeviceContext::OMSetRenderTargets.

+
+ ff476377 + void ID3D11DepthStencilView::GetDesc([Out] D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc) + ID3D11DepthStencilView::GetDesc +
+ + + Initializes a new instance of the class. + + + Type of the driver. + + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Initializes a new instance of the class. + + + The adapter. + + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Constructor for a D3D11 Device. See for more information. + + Type of the driver. + The flags. + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Constructor for a D3D11 Device. See for more information. + + + + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Constructor for a D3D11 Device. See for more information. + + + + + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Constructor for a D3D11 Device. See for more information. + + + + + ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice + + + + Initializes a new instance of the class along with a new used for rendering. + + The type of device to create. + A list of runtime layers to enable. + Details used to create the swap chain. + When the method completes, contains the created device instance. + When the method completes, contains the created swap chain instance. + A object describing the result of the operation. + + + + Initializes a new instance of the class along with a new used for rendering. + + The video adapter on which the device should be created. + A list of runtime layers to enable. + Details used to create the swap chain. + When the method completes, contains the created device instance. + When the method completes, contains the created swap chain instance. + A object describing the result of the operation. + + + + Initializes a new instance of the class along with a new used for rendering. + + The type of device to create. + A list of runtime layers to enable. + A list of feature levels which determine the order of feature levels to attempt to create. + Details used to create the swap chain. + When the method completes, contains the created device instance. + When the method completes, contains the created swap chain instance. + A object describing the result of the operation. + + + + Initializes a new instance of the class along with a new used for rendering. + + The video adapter on which the device should be created. + A list of runtime layers to enable. + A list of feature levels which determine the order of feature levels to attempt to create. + Details used to create the swap chain. + When the method completes, contains the created device instance. + When the method completes, contains the created swap chain instance. + A object describing the result of the operation. + + + + This overload has been deprecated. Use one of the alternatives that does not take both an adapter and a driver type. + + + + + Get the type, name, units of measure, and a description of an existing counter. + + The counter description. + Description of the counter + + + + Give a device access to a shared resource created on a different Direct3d device. + + The type of the resource we are gaining access to. + A resource handle. See remarks. + + This method returns a reference to the resource we are gaining access to. + + + To share a resource between two Direct3D 10 devices the resource must have been created with the flag, if it was created using the ID3D10Device interface. If it was created using the IDXGIDevice interface, then the resource is always shared. The REFIID, or GUID, of the interface to the resource can be obtained by using the __uuidof() macro. For example, __uuidof(ID3D10Buffer) will get the GUID of the interface to a buffer resource. When sharing a resource between two Direct3D 10 devices the unique handle of the resource can be obtained by querying the resource for the interface and then calling {{GetSharedHandle}}. + IDXGIResource* pOtherResource(NULL); + hr = pOtherDeviceResource->QueryInterface( __uuidof(IDXGIResource), (void**)&pOtherResource ); + HANDLE sharedHandle; + pOtherResource->GetSharedHandle(&sharedHandle); + The only resources that can be shared are 2D non-mipmapped textures. To share a resource between a Direct3D 9 device and a Direct3D 10 device the texture must have been created using the pSharedHandle argument of {{CreateTexture}}. The shared Direct3D 9 handle is then passed to OpenSharedResource in the hResource argument. The following code illustrates the method calls involved. + sharedHandle = NULL; // must be set to NULL to create, can use a valid handle here to open in D3D9 + pDevice9->CreateTexture(..., pTex2D_9, &sharedHandle); + ... + pDevice10->OpenSharedResource(sharedHandle, __uuidof(ID3D10Resource), (void**)(&tempResource10)); + tempResource10->QueryInterface(__uuidof(ID3D10Texture2D), (void**)(&pTex2D_10)); + tempResource10->Release(); + // now use pTex2D_10 with pDevice10 + Textures being shared from D3D9 to D3D10 have the following restrictions. Textures must be 2D Only 1 mip level is allowed Texture must have default usage Texture must be write only MSAA textures are not allowed Bind flags must have SHADER_RESOURCE and RENDER_TARGET set Only R10G10B10A2_UNORM, R16G16B16A16_FLOAT and R8G8B8A8_UNORM formats are allowed If a shared texture is updated on one device must be called on that device. + + HRESULT ID3D10Device::OpenSharedResource([In] void* hResource,[In] GUID* ReturnedInterface,[Out, Optional] void** ppResource) + + + + Check if this device is supporting compute shaders for the specified format. + + The format for which to check support. + Flags indicating usage contexts in which the specified format is supported. + + + +

Gets information about the features that are supported by the current graphics driver.

+
+ Returns a structure + ff476497 + HRESULT ID3D11Device::CheckFeatureSupport([In] D3D11_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + ID3D11Device::CheckFeatureSupport +
+ + +

Gets information about the features that are supported by the current graphics driver.

+
+ Returns a structure + ff476497 + HRESULT ID3D11Device::CheckFeatureSupport([In] D3D11_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + ID3D11Device::CheckFeatureSupport +
+ + +

Gets information about whether the driver supports the nonpowers-of-2-unconditionally feature. TRUE for hardware at Direct3D 10 and higher feature levels.

+
+ Returns true if this hardware supports non-powers-of-2 texture. This returns always true Direct3D 10 and higher feature levels. + ff476497 + HRESULT ID3D11Device::CheckFeatureSupport([In] D3D11_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + ID3D11Device::CheckFeatureSupport +
+ + +

Gets information about whether a rendering device batches rendering commands and performs multipass rendering into tiles or bins over a render area. Certain API usage patterns that are fine TileBasedDefferredRenderers (TBDRs) can perform worse on non-TBDRs and vice versa. Applications that are careful about rendering can be friendly to both TBDR and non-TBDR architectures.

+
+ Returns TRUE if the rendering device batches rendering commands and otherwise. + ff476497 + HRESULT ID3D11Device::CheckFeatureSupport([In] D3D11_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + ID3D11Device::CheckFeatureSupport +
+ + + Retrieves information about Direct3D11.3 feature options in the current graphics driver + + dn879499 + Returns a structure + + + + Retrieves additional information about Direct3D11.3 feature options in the current graphics driver + + dn933226 + Returns a structure + + + + Retrieves additional information about Direct3D11.3 feature options in the current graphics driver + + dn933226 + Returns a structure + + + + Check if this device is supporting a feature. + + The feature to check. + + Returns true if this device supports this feature, otherwise false. + + + + + Check if this device is supporting threading. + + Support concurrent resources. + Support command lists. + + A object describing the result of the operation. + + + + + Check if a feature level is supported by a primary adapter. + + The feature level. + true if the primary adapter is supporting this feature level; otherwise, false. + + + + Check if a feature level is supported by a particular adapter. + + The adapter. + The feature level. + true if the specified adapter is supporting this feature level; otherwise, false. + + + + Gets the highest supported hardware feature level of the primary adapter. + + The highest supported hardware feature level. + + + + Gets the highest supported hardware feature level of the primary adapter. + + The adapter. + + The highest supported hardware feature level. + + + + + Gets a value indicating whether the current device is using the reference rasterizer. + + + + + Gets or sets the debug-name for this object. + + + The debug name. + + + + + Internal CreateDevice + + + + + + + + +

Creates a device that uses Direct3D 11 functionality in Direct3D 12, specifying a pre-existing D3D12 device to use for D3D11 interop.

+
+

Specifies a pre-existing D3D12 device to use for D3D11 interop. May not be null.

+

Any of those documented for D3D11CreateDeviceAndSwapChain. Specifies which runtime layers to enable (see the enumeration); values can be bitwise OR'd together. Flags must be compatible with device flags, and its NodeMask must be a subset of the NodeMask provided to the present API.

+

An array of any of the following:

The first feature level which is less than or equal to the D3D12 device's feature level will be used to perform D3D11 validation. Creation will fail if no acceptable feature levels are provided. Providing null will default to the D3D12 device's feature level.

+

An array of unique queues for D3D11On12 to use. Valid queue types: 3D command queue.

+ The Direct3D11 device created around the specified Direct3D12 device + +

The function signature PFN_D3D11ON12_CREATE_DEVICE is provided as a typedef, so that you can use dynamic linking techniques (GetProcAddress) instead of statically linking.

+
+ dn933209 + HRESULT D3D11On12CreateDevice([In] IUnknown* pDevice,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In, Buffer, Optional] const IUnknown** ppCommandQueues,[In] unsigned int NumQueues,[In] unsigned int NodeMask,[Out] ID3D11Device** ppDevice,[Out, Optional] ID3D11DeviceContext** ppImmediateContext,[Out, Optional] D3D_FEATURE_LEVEL* pChosenFeatureLevel) + D3D11On12CreateDevice +
+ + Constant MultisampleCountMaximum + D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT + + + +

Gets the feature level of the hardware device.

+
+ +

Feature levels determine the capabilities of your device.

+
+ ff476528 + GetFeatureLevel + GetFeatureLevel +
+ + +

Get the flags used during the call to create the device with D3D11CreateDevice.

+
+ ff476525 + GetCreationFlags + GetCreationFlags +
+ + +

Get the reason why the device was removed.

+
+ ff476526 + GetDeviceRemovedReason + GetDeviceRemovedReason +
+ + +

Gets an immediate context, which can play back command lists.

+
+ +

The GetImmediateContext method returns an object that represents an immediate context which is used to perform rendering that you want immediately submitted to a device. For most applications, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ ff476529 + GetImmediateContext + GetImmediateContext +
+ + +

Get or sets the exception-mode flags.

+
+ +

An exception-mode flag is used to elevate an error condition to a non-continuable exception.

+
+ ff476527 + GetExceptionMode / SetExceptionMode + GetExceptionMode +
+ + +

Creates a buffer (vertex buffer, index buffer, or shader-constant buffer).

+
+

A reference to a structure that describes the buffer.

+

A reference to a structure that describes the initialization data; use null to allocate space only (with the exception that it cannot be null if the usage flag is D3D11_USAGE_IMMUTABLE).

If you don't pass anything to pInitialData, the initial content of the memory for the buffer is undefined. In this case, you need to write the buffer content some other way before the resource is read.

+

Address of a reference to the interface for the buffer object created. Set this parameter to null to validate the other input parameters (S_FALSE indicates a pass).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the buffer. See Direct3D 11 Return Codes for other possible return values.

+ +

For example code, see How to: Create a Vertex Buffer, How to: Create an Index Buffer or How to: Create a Constant Buffer.

For a constant buffer (BindFlags of set to D3D11_BIND_CONSTANT_BUFFER), you must set the ByteWidth value of in multiples of 16, and less than or equal to D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT.

The Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems, provides the following new functionality for CreateBuffer:

You can create a constant buffer that is larger than the maximum constant buffer size that a shader can access (4096 32-bit*4-component constants ? 64KB). When you bind the constant buffer to the pipeline (for example, via PSSetConstantBuffers or PSSetConstantBuffers1), you can define a range of the buffer that the shader can access that fits within the 4096 constant limit.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher. On existing drivers that are implemented to feature level 10 and higher, a call to CreateBuffer to request a constant buffer that is larger than 4096 fails.

+
+ ff476501 + HRESULT ID3D11Device::CreateBuffer([In] const D3D11_BUFFER_DESC* pDesc,[In, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Buffer** ppBuffer) + ID3D11Device::CreateBuffer +
+ + +

Creates an array of 1D textures.

+
+ No documentation. + No documentation. + No documentation. +

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

CreateTexture1D creates a 1D texture resource, which can contain a number of 1D subresources. The number of textures is specified in the texture description. All textures in a resource must have the same format, size, and number of mipmap levels.

All resources are made up of one or more subresources. To load data into the texture, applications can supply the data initially as an array of structures pointed to by pInitialData, or they can use one of the D3DX texture functions such as D3DX11CreateTextureFromFile.

For a 32 width texture with a full mipmap chain, the pInitialData array has the following 6 elements: +

  • pInitialData[0] = 32x1
  • pInitialData[1] = 16x1
  • pInitialData[2] = 8x1
  • pInitialData[3] = 4x1 +
  • pInitialData[4] = 2x1 +
  • pInitialData[5] = 1x1 +
+
+ ff476520 + HRESULT ID3D11Device::CreateTexture1D([In] const D3D11_TEXTURE1D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture1D** ppTexture1D) + ID3D11Device::CreateTexture1D +
+ + +

Create an array of 2D textures.

+
+ No documentation. + No documentation. + No documentation. +

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

CreateTexture2D creates a 2D texture resource, which can contain a number of 2D subresources. The number of textures is specified in the texture description. All textures in a resource must have the same format, size, and number of mipmap levels.

All resources are made up of one or more subresources. To load data into the texture, applications can supply the data initially as an array of structures pointed to by pInitialData, or it may use one of the D3DX texture functions such as D3DX11CreateTextureFromFile.

For a 32 x 32 texture with a full mipmap chain, the pInitialData array has the following 6 elements: +

  • pInitialData[0] = 32x32
  • pInitialData[1] = 16x16
  • pInitialData[2] = 8x8
  • pInitialData[3] = 4x4 +
  • pInitialData[4] = 2x2 +
  • pInitialData[5] = 1x1 +
+
+ ff476521 + HRESULT ID3D11Device::CreateTexture2D([In] const D3D11_TEXTURE2D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D** ppTexture2D) + ID3D11Device::CreateTexture2D +
+ + +

Create a single 3D texture.

+
+ No documentation. + No documentation. + No documentation. +

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

CreateTexture3D creates a 3D texture resource, which can contain a number of 3D subresources. The number of textures is specified in the texture description. All textures in a resource must have the same format, size, and number of mipmap levels.

All resources are made up of one or more subresources. To load data into the texture, applications can supply the data initially as an array of structures pointed to by pInitialData, or they can use one of the D3DX texture functions such as D3DX11CreateTextureFromFile.

Each element of pInitialData provides all of the slices that are defined for a given miplevel. For example, for a 32 x 32 x 4 volume texture with a full mipmap chain, the array has the following 6 elements:

  • pInitialData[0] = 32x32 with 4 slices
  • pInitialData[1] = 16x16 with 2 slices
  • pInitialData[2] = 8x8 with 1 slice
  • pInitialData[3] = 4x4 + with 1 slice
  • pInitialData[4] = 2x2 + with 1 slice
  • pInitialData[5] = 1x1 + with 1 slice
+
+ ff476522 + HRESULT ID3D11Device::CreateTexture3D([In] const D3D11_TEXTURE3D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture3D** ppTexture3D) + ID3D11Device::CreateTexture3D +
+ + +

Create a shader-resource view for accessing data in a resource.

+
+

Pointer to the resource that will serve as input to a shader. This resource must have been created with the D3D11_BIND_SHADER_RESOURCE flag.

+

Pointer to a shader-resource view description (see ). Set this parameter to null to create a view that accesses the entire resource (using the format the resource was created with).

+

Address of a reference to an . Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

A resource is made up of one or more subresources; a view identifies which subresources to allow the pipeline to access. In addition, each resource is bound to the pipeline using a view. A shader-resource view is designed to bind any buffer or texture resource to the shader stages using the following API methods: ID3D11DeviceContext::VSSetShaderResources, ID3D11DeviceContext::GSSetShaderResources and ID3D11DeviceContext::PSSetShaderResources.

Because a view is fully typed, this means that typeless resources become fully typed when bound to the pipeline.

Note?? To successfully create a shader-resource view from a typeless buffer (for example, DXGI_FORMAT_R32G32B32A32_TYPELESS), you must set the D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS flag when you create the buffer.?

The Direct3D 11.1 runtime, which is available starting with Windows?8, allows you to use CreateShaderResourceView for the following new purpose.

You can create shader-resource views of video resources so that Direct3D shaders can process those shader-resource views. These video resources are either Texture2D or Texture2DArray. The value in the ViewDimension member of the structure for a created shader-resource view must match the type of video resource, D3D11_SRV_DIMENSION_TEXTURE2D for Texture2D and D3D11_SRV_DIMENSION_TEXTURE2DARRAY for Texture2DArray. Additionally, the format of the underlying video resource restricts the formats that the view can use. The video resource format values on the reference page specify the format values that views are restricted to.

The runtime read+write conflict prevention logic (which stops a resource from being bound as an SRV and RTV or UAV at the same time) treats views of different parts of the same video surface as conflicting for simplicity. Therefore, the runtime does not allow an application to read from luma while the application simultaneously renders to chroma in the same surface even though the hardware might allow these simultaneous operations.

Windows?Phone?8: This API is supported.

+
+ ff476519 + HRESULT ID3D11Device::CreateShaderResourceView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc,[Out, Fast] ID3D11ShaderResourceView** ppSRView) + ID3D11Device::CreateShaderResourceView +
+ + +

Creates a view for accessing an unordered access resource.

+
+ No documentation. + No documentation. + No documentation. +

This method returns one of the Direct3D 11 Return Codes.

+ +

The Direct3D 11.1 runtime, which is available starting with Windows?8, allows you to use CreateUnorderedAccessView for the following new purpose.

You can create unordered-access views of video resources so that Direct3D shaders can process those unordered-access views. These video resources are either Texture2D or Texture2DArray. The value in the ViewDimension member of the structure for a created unordered-access view must match the type of video resource, D3D11_UAV_DIMENSION_TEXTURE2D for Texture2D and D3D11_UAV_DIMENSION_TEXTURE2DARRAY for Texture2DArray. Additionally, the format of the underlying video resource restricts the formats that the view can use. The video resource format values on the reference page specify the format values that views are restricted to.

The runtime read+write conflict prevention logic (which stops a resource from being bound as an SRV and RTV or UAV at the same time) treats views of different parts of the same video surface as conflicting for simplicity. Therefore, the runtime does not allow an application to read from luma while the application simultaneously renders to chroma in the same surface even though the hardware might allow these simultaneous operations.

+
+ ff476523 + HRESULT ID3D11Device::CreateUnorderedAccessView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc,[Out, Fast] ID3D11UnorderedAccessView** ppUAView) + ID3D11Device::CreateUnorderedAccessView +
+ + +

Creates a render-target view for accessing resource data.

+
+

Pointer to a that represents a render target. This resource must have been created with the D3D11_BIND_RENDER_TARGET flag.

+

Pointer to a that represents a render-target view description. Set this parameter to null to create a view that accesses all of the subresources in mipmap level 0.

+

Address of a reference to an . Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns one of the Direct3D 11 Return Codes.

+ +

A render-target view can be bound to the output-merger stage by calling ID3D11DeviceContext::OMSetRenderTargets.

The Direct3D 11.1 runtime, which is available starting with Windows?8, allows you to use CreateRenderTargetView for the following new purpose.

You can create render-target views of video resources so that Direct3D shaders can process those render-target views. These video resources are either Texture2D or Texture2DArray. The value in the ViewDimension member of the structure for a created render-target view must match the type of video resource, D3D11_RTV_DIMENSION_TEXTURE2D for Texture2D and D3D11_RTV_DIMENSION_TEXTURE2DARRAY for Texture2DArray. Additionally, the format of the underlying video resource restricts the formats that the view can use. The video resource format values on the reference page specify the format values that views are restricted to.

The runtime read+write conflict prevention logic (which stops a resource from being bound as an SRV and RTV or UAV at the same time) treats views of different parts of the same video surface as conflicting for simplicity. Therefore, the runtime does not allow an application to read from luma while the application simultaneously renders to chroma in the same surface even though the hardware might allow these simultaneous operations.

+
+ ff476517 + HRESULT ID3D11Device::CreateRenderTargetView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_RENDER_TARGET_VIEW_DESC* pDesc,[Out, Fast] ID3D11RenderTargetView** ppRTView) + ID3D11Device::CreateRenderTargetView +
+ + +

Create a depth-stencil view for accessing resource data.

+
+

Pointer to the resource that will serve as the depth-stencil surface. This resource must have been created with the D3D11_BIND_DEPTH_STENCIL flag.

+

Pointer to a depth-stencil-view description (see ). Set this parameter to null to create a view that accesses mipmap level 0 of the entire resource (using the format the resource was created with).

+

Address of a reference to an . Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

A depth-stencil view can be bound to the output-merger stage by calling ID3D11DeviceContext::OMSetRenderTargets.

+
+ ff476507 + HRESULT ID3D11Device::CreateDepthStencilView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_DEPTH_STENCIL_VIEW_DESC* pDesc,[Out, Fast] ID3D11DepthStencilView** ppDepthStencilView) + ID3D11Device::CreateDepthStencilView +
+ + +

Create an input-layout object to describe the input-buffer data for the input-assembler stage.

+
+

An array of the input-assembler stage input data types; each type is described by an element description (see ).

+

The number of input-data types in the array of input-elements.

+

A reference to the compiled shader. The compiled shader code contains a input signature which is validated against the array of elements. See remarks.

+

Size of the compiled shader.

+

A reference to the input-layout object created (see ). To validate the other input parameters, set this reference to be null and verify that the method returns S_FALSE.

+

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

After creating an input layout object, it must be bound to the input-assembler stage before calling a draw API.

Once an input-layout object is created from a shader signature, the input-layout object can be reused with any other shader that has an identical input signature (semantics included). This can simplify the creation of input-layout objects when you are working with many shaders with identical inputs.

If a data type in the input-layout declaration does not match the data type in a shader-input signature, CreateInputLayout will generate a warning during compilation. The warning is simply to call attention to the fact that the data may be reinterpreted when read from a register. You may either disregard this warning (if reinterpretation is intentional) or make the data types match in both declarations to eliminate the warning.

Windows?Phone?8: This API is supported.

+
+ ff476512 + HRESULT ID3D11Device::CreateInputLayout([In, Buffer] const D3D11_INPUT_ELEMENT_DESC* pInputElementDescs,[In] unsigned int NumElements,[In, Buffer] const void* pShaderBytecodeWithInputSignature,[In] SIZE_T BytecodeLength,[Out, Fast] ID3D11InputLayout** ppInputLayout) + ID3D11Device::CreateInputLayout +
+ + +

Create a vertex-shader object from a compiled shader.

+
+

A reference to the compiled shader.

+

Size of the compiled vertex shader.

+

A reference to a class linkage interface (see ); the value can be null.

+

Address of a reference to a interface. If this is null, all other parameters will be validated, and if all parameters pass validation this API will return S_FALSE instead of .

+

This method returns one of the Direct3D 11 Return Codes.

+ +

The Direct3D 11.1 runtime, which is available starting with Windows?8, provides the following new functionality for CreateVertexShader.

The following shader model 5.0 instructions are available to just pixel shaders and compute shaders in the Direct3D 11.0 runtime. For the Direct3D 11.1 runtime, because unordered access views (UAV) are available at all shader stages, you can use these instructions in all shader stages.

Therefore, if you use the following shader model 5.0 instructions in a vertex shader, you can successfully pass the compiled vertex shader to pShaderBytecode. That is, the call to CreateVertexShader succeeds.

If you pass a compiled shader to pShaderBytecode that uses any of the following instructions on a device that doesn?t support UAVs at every shader stage (including existing drivers that are not implemented to support UAVs at every shader stage), CreateVertexShader fails. CreateVertexShader also fails if the shader tries to use a UAV slot beyond the set of UAV slots that the hardware supports.

  • dcl_uav_typed
  • dcl_uav_raw
  • dcl_uav_structured
  • ld_raw
  • ld_structured
  • ld_uav_typed
  • store_raw
  • store_structured
  • store_uav_typed
  • sync_uglobal
  • All atomics and immediate atomics (for example, atomic_and and imm_atomic_and)
+
+ ff476524 + HRESULT ID3D11Device::CreateVertexShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11VertexShader** ppVertexShader) + ID3D11Device::CreateVertexShader +
+ + +

Create a geometry shader.

+
+

A reference to the compiled shader.

+

Size of the compiled geometry shader.

+

A reference to a class linkage interface (see ); the value can be null.

+

Address of a reference to a interface. If this is null, all other parameters will be validated, and if all parameters pass validation this API will return S_FALSE instead of .

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

After it is created, the shader can be set to the device by calling ID3D11DeviceContext::GSSetShader.

The Direct3D 11.1 runtime, which is available starting with Windows?8, provides the following new functionality for CreateGeometryShader.

The following shader model 5.0 instructions are available to just pixel shaders and compute shaders in the Direct3D 11.0 runtime. For the Direct3D 11.1 runtime, because unordered access views (UAV) are available at all shader stages, you can use these instructions in all shader stages.

Therefore, if you use the following shader model 5.0 instructions in a geometry shader, you can successfully pass the compiled geometry shader to pShaderBytecode. That is, the call to CreateGeometryShader succeeds.

If you pass a compiled shader to pShaderBytecode that uses any of the following instructions on a device that doesn?t support UAVs at every shader stage (including existing drivers that are not implemented to support UAVs at every shader stage), CreateGeometryShader fails. CreateGeometryShader also fails if the shader tries to use a UAV slot beyond the set of UAV slots that the hardware supports.

  • dcl_uav_typed
  • dcl_uav_raw
  • dcl_uav_structured
  • ld_raw
  • ld_structured
  • ld_uav_typed
  • store_raw
  • store_structured
  • store_uav_typed
  • sync_uglobal
  • All atomics and immediate atomics (for example, atomic_and and imm_atomic_and)
+
+ ff476509 + HRESULT ID3D11Device::CreateGeometryShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11GeometryShader** ppGeometryShader) + ID3D11Device::CreateGeometryShader +
+ + +

Creates a geometry shader that can write to streaming output buffers.

+
+

A reference to the compiled geometry shader for a standard geometry shader plus stream output. For info on how to get this reference, see Getting a Pointer to a Compiled Shader.

To create the stream output without using a geometry shader, pass a reference to the output signature for the prior stage. To obtain this output signature, call the D3DGetOutputSignatureBlob compiler function. You can also pass a reference to the compiled shader for the prior stage (for example, the vertex-shader stage or domain-shader stage). This compiled shader provides the output signature for the data.

+

Size of the compiled geometry shader.

+

Pointer to a array. Cannot be null if NumEntries > 0.

+

The number of entries in the stream output declaration ( ranges from 0 to * ).

+

An array of buffer strides; each stride is the size of an element for that buffer.

+

The number of strides (or buffers) in pBufferStrides (ranges from 0 to ).

+

The index number of the stream to be sent to the rasterizer stage (ranges from 0 to - 1). Set to if no stream is to be rasterized.

+

A reference to a class linkage interface (see ); the value can be null.

+

Address of a reference to an interface, representing the geometry shader that was created. Set this to null to validate the other parameters; if validation passes, the method will return S_FALSE instead of .

+

This method returns one of the Direct3D 11 Return Codes.

+ +

For more info about using CreateGeometryShaderWithStreamOutput, see Create a Geometry-Shader Object with Stream Output.

The Direct3D 11.1 runtime, which is available starting with Windows?8, provides the following new functionality for CreateGeometryShaderWithStreamOutput.

The following shader model 5.0 instructions are available to just pixel shaders and compute shaders in the Direct3D 11.0 runtime. For the Direct3D 11.1 runtime, because unordered access views (UAV) are available at all shader stages, you can use these instructions in all shader stages.

Therefore, if you use the following shader model 5.0 instructions in a geometry shader, you can successfully pass the compiled geometry shader to pShaderBytecode. That is, the call to CreateGeometryShaderWithStreamOutput succeeds.

If you pass a compiled shader to pShaderBytecode that uses any of the following instructions on a device that doesn?t support UAVs at every shader stage (including existing drivers that are not implemented to support UAVs at every shader stage), CreateGeometryShaderWithStreamOutput fails. CreateGeometryShaderWithStreamOutput also fails if the shader tries to use a UAV slot beyond the set of UAV slots that the hardware supports.

  • dcl_uav_typed
  • dcl_uav_raw
  • dcl_uav_structured
  • ld_raw
  • ld_structured
  • ld_uav_typed
  • store_raw
  • store_structured
  • store_uav_typed
  • sync_uglobal
  • All atomics and immediate atomics (for example, atomic_and and imm_atomic_and)

Windows?Phone?8: This API is supported.

+
+ ff476510 + HRESULT ID3D11Device::CreateGeometryShaderWithStreamOutput([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Buffer, Optional] const D3D11_SO_DECLARATION_ENTRY* pSODeclaration,[In] unsigned int NumEntries,[In, Buffer, Optional] const unsigned int* pBufferStrides,[In] unsigned int NumStrides,[In] unsigned int RasterizedStream,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11GeometryShader** ppGeometryShader) + ID3D11Device::CreateGeometryShaderWithStreamOutput +
+ + +

Create a pixel shader.

+
+

A reference to the compiled shader.

+

Size of the compiled pixel shader.

+

A reference to a class linkage interface (see ); the value can be null.

+

Address of a reference to a interface. If this is null, all other parameters will be validated, and if all parameters pass validation this API will return S_FALSE instead of .

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

After creating the pixel shader, you can set it to the device using ID3D11DeviceContext::PSSetShader.

+
+ ff476513 + HRESULT ID3D11Device::CreatePixelShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11PixelShader** ppPixelShader) + ID3D11Device::CreatePixelShader +
+ + +

Create a hull shader.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

This method returns one of the Direct3D 11 Return Codes.

+ +

The Direct3D 11.1 runtime, which is available starting with Windows?8, provides the following new functionality for CreateHullShader.

The following shader model 5.0 instructions are available to just pixel shaders and compute shaders in the Direct3D 11.0 runtime. For the Direct3D 11.1 runtime, because unordered access views (UAV) are available at all shader stages, you can use these instructions in all shader stages.

Therefore, if you use the following shader model 5.0 instructions in a hull shader, you can successfully pass the compiled hull shader to pShaderBytecode. That is, the call to CreateHullShader succeeds.

If you pass a compiled shader to pShaderBytecode that uses any of the following instructions on a device that doesn?t support UAVs at every shader stage (including existing drivers that are not implemented to support UAVs at every shader stage), CreateHullShader fails. CreateHullShader also fails if the shader tries to use a UAV slot beyond the set of UAV slots that the hardware supports.

  • dcl_uav_typed
  • dcl_uav_raw
  • dcl_uav_structured
  • ld_raw
  • ld_structured
  • ld_uav_typed
  • store_raw
  • store_structured
  • store_uav_typed
  • sync_uglobal
  • All atomics and immediate atomics (for example, atomic_and and imm_atomic_and)
+
+ ff476511 + HRESULT ID3D11Device::CreateHullShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11HullShader** ppHullShader) + ID3D11Device::CreateHullShader +
+ + +

Create a domain shader .

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

This method returns one of the following Direct3D 11 Return Codes.

+ +

The Direct3D 11.1 runtime, which is available starting with Windows?8, provides the following new functionality for CreateDomainShader.

The following shader model 5.0 instructions are available to just pixel shaders and compute shaders in the Direct3D 11.0 runtime. For the Direct3D 11.1 runtime, because unordered access views (UAV) are available at all shader stages, you can use these instructions in all shader stages.

Therefore, if you use the following shader model 5.0 instructions in a domain shader, you can successfully pass the compiled domain shader to pShaderBytecode. That is, the call to CreateDomainShader succeeds.

If you pass a compiled shader to pShaderBytecode that uses any of the following instructions on a device that doesn?t support UAVs at every shader stage (including existing drivers that are not implemented to support UAVs at every shader stage), CreateDomainShader fails. CreateDomainShader also fails if the shader tries to use a UAV slot beyond the set of UAV slots that the hardware supports.

  • dcl_uav_typed
  • dcl_uav_raw
  • dcl_uav_structured
  • ld_raw
  • ld_structured
  • ld_uav_typed
  • store_raw
  • store_structured
  • store_uav_typed
  • sync_uglobal
  • All atomics and immediate atomics (for example, atomic_and and imm_atomic_and)
+
+ ff476508 + HRESULT ID3D11Device::CreateDomainShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11DomainShader** ppDomainShader) + ID3D11Device::CreateDomainShader +
+ + +

Create a compute shader.

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

This method returns E_OUTOFMEMORY if there is insufficient memory to create the compute shader. See Direct3D 11 Return Codes for other possible return values.

+ +

For an example, see How To: Create a Compute Shader and HDRToneMappingCS11 Sample.

+
+ ff476503 + HRESULT ID3D11Device::CreateComputeShader([In, Buffer] const void* pShaderBytecode,[In] SIZE_T BytecodeLength,[In, Optional] ID3D11ClassLinkage* pClassLinkage,[Out, Fast] ID3D11ComputeShader** ppComputeShader) + ID3D11Device::CreateComputeShader +
+ + +

Creates class linkage libraries to enable dynamic shader linkage.

+
+

A reference to a class-linkage interface reference (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The interface returned in ppLinkage is associated with a shader by passing it as a parameter to one of the create shader methods such as ID3D11Device::CreatePixelShader.

+
+ ff476502 + HRESULT ID3D11Device::CreateClassLinkage([Out, Fast] ID3D11ClassLinkage** ppLinkage) + ID3D11Device::CreateClassLinkage +
+ + +

Create a blend-state object that encapsules blend state for the output-merger stage.

+
+

Pointer to a blend-state description (see ).

+

Address of a reference to the blend-state object created (see ).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the blend-state object. See Direct3D 11 Return Codes for other possible return values.

+ +

An application can create up to 4096 unique blend-state objects. For each object created, the runtime checks to see if a previous object has the same state. If such a previous object exists, the runtime will return a reference to previous instance instead of creating a duplicate object.

Windows?Phone?8: This API is supported.

+
+ ff476500 + HRESULT ID3D11Device::CreateBlendState([In] const D3D11_BLEND_DESC* pBlendStateDesc,[Out, Fast] ID3D11BlendState** ppBlendState) + ID3D11Device::CreateBlendState +
+ + +

Create a depth-stencil state object that encapsulates depth-stencil test information for the output-merger stage.

+
+

Pointer to a depth-stencil state description (see ).

+

Address of a reference to the depth-stencil state object created (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

4096 unique depth-stencil state objects can be created on a device at a time.

If an application attempts to create a depth-stencil-state interface with the same state as an existing interface, the same interface will be returned and the total number of unique depth-stencil state objects will stay the same.

+
+ ff476506 + HRESULT ID3D11Device::CreateDepthStencilState([In] const D3D11_DEPTH_STENCIL_DESC* pDepthStencilDesc,[Out, Fast] ID3D11DepthStencilState** ppDepthStencilState) + ID3D11Device::CreateDepthStencilState +
+ + +

Create a rasterizer state object that tells the rasterizer stage how to behave.

+
+

Pointer to a rasterizer state description (see ).

+

Address of a reference to the rasterizer state object created (see ).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the compute shader. See Direct3D 11 Return Codes for other possible return values.

+ +

4096 unique rasterizer state objects can be created on a device at a time.

If an application attempts to create a rasterizer-state interface with the same state as an existing interface, the same interface will be returned and the total number of unique rasterizer state objects will stay the same.

+
+ ff476516 + HRESULT ID3D11Device::CreateRasterizerState([In] const D3D11_RASTERIZER_DESC* pRasterizerDesc,[Out, Fast] ID3D11RasterizerState** ppRasterizerState) + ID3D11Device::CreateRasterizerState +
+ + +

Create a sampler-state object that encapsulates sampling information for a texture.

+
+

Pointer to a sampler state description (see ).

+

Address of a reference to the sampler state object created (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

4096 unique sampler state objects can be created on a device at a time.

If an application attempts to create a sampler-state interface with the same state as an existing interface, the same interface will be returned and the total number of unique sampler state objects will stay the same.

+
+ ff476518 + HRESULT ID3D11Device::CreateSamplerState([In] const D3D11_SAMPLER_DESC* pSamplerDesc,[Out, Fast] ID3D11SamplerState** ppSamplerState) + ID3D11Device::CreateSamplerState +
+ + +

This interface encapsulates methods for querying information from the GPU.

+
+

Pointer to a query description (see ).

+

Address of a reference to the query object created (see ).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the query object. See Direct3D 11 Return Codes for other possible return values.

+ ff476515 + HRESULT ID3D11Device::CreateQuery([In] const D3D11_QUERY_DESC* pQueryDesc,[Out, Fast] ID3D11Query** ppQuery) + ID3D11Device::CreateQuery +
+ + +

Creates a predicate.

+
+

Pointer to a query description where the type of query must be a D3D11_QUERY_SO_OVERFLOW_PREDICATE or D3D11_QUERY_OCCLUSION_PREDICATE (see ).

+

Address of a reference to a predicate (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476514 + HRESULT ID3D11Device::CreatePredicate([In] const D3D11_QUERY_DESC* pPredicateDesc,[Out, Fast] ID3D11Predicate** ppPredicate) + ID3D11Device::CreatePredicate +
+ + +

Create a counter object for measuring GPU performance.

+
+

Pointer to a counter description (see ).

+

Address of a reference to a counter (see ).

+

If this function succeeds, it will return . If it fails, possible return values are: S_FALSE, E_OUTOFMEMORY, , , or E_INVALIDARG.

is returned whenever the application requests to create a well-known counter, but the current device does not support it.

indicates that another device object is currently using the counters, so they cannot be used by this device at the moment.

E_INVALIDARG is returned whenever an out-of-range well-known or device-dependent counter is requested, or when the simulataneously active counters have been exhausted.

+ ff476504 + HRESULT ID3D11Device::CreateCounter([In] const D3D11_COUNTER_DESC* pCounterDesc,[Out, Fast] ID3D11Counter** ppCounter) + ID3D11Device::CreateCounter +
+ + +

Creates a deferred context, which can record command lists.

+
+

Reserved for future use. Pass 0.

+

Upon completion of the method, the passed reference to an interface reference is initialized.

+

Returns if successful; otherwise, returns one of the following:

  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred. If this error occurs, you should destroy and recreate the device.
  • Returns if the CreateDeferredContext method cannot be called from the current context. For example, if the device was created with the D3D11_CREATE_DEVICE_SINGLETHREADED value, CreateDeferredContext returns .
  • Returns E_INVALIDARG if the ContextFlags parameter is invalid.
  • Returns E_OUTOFMEMORY if the application has exhausted available memory.
+ +

A deferred context is a thread-safe context that you can use to record graphics commands on a thread other than the main rendering thread. Using a deferred context, you can record graphics commands into a command list that is encapsulated by the interface. After all scene items are recorded, you can then submit them to the main render thread for final rendering. In this manner, you can perform rendering tasks concurrently across multiple threads and potentially improve performance in multi-core CPU scenarios.

You can create multiple deferred contexts.

Note?? If you use the D3D11_CREATE_DEVICE_SINGLETHREADED value to create the device that is represented by , the CreateDeferredContext method will fail, and you will not be able to create a deferred context.?

For more information about deferred contexts, see Immediate and Deferred Rendering.

Windows?Phone?8: This API is supported.

+
+ ff476505 + HRESULT ID3D11Device::CreateDeferredContext([In] unsigned int ContextFlags,[Out, Fast] ID3D11DeviceContext** ppDeferredContext) + ID3D11Device::CreateDeferredContext +
+ + +

Give a device access to a shared resource created on a different device.

+
+

A resource handle. See remarks.

+

The globally unique identifier () for the resource interface. See remarks.

+

Address of a reference to the resource we are gaining access to.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The REFIID, or , of the interface to the resource can be obtained by using the __uuidof() macro. For example, __uuidof() will get the of the interface to a buffer resource.

The unique handle of the resource is obtained differently depending on the type of device that originally created the resource.

To share a resource between two Direct3D 11 devices the resource must have been created with the D3D11_RESOURCE_MISC_SHARED flag, if it was created using the interface. If it was created using a DXGI device interface, then the resource is always shared.

The REFIID, or , of the interface to the resource can be obtained by using the __uuidof() macro. For example, __uuidof() will get the of the interface to a buffer resource.

When sharing a resource between two Direct3D 10/11 devices the unique handle of the resource can be obtained by querying the resource for the interface and then calling GetSharedHandle.

 * pOtherResource(null);
+            hr = pOtherDeviceResource->QueryInterface( __uuidof(), (void**)&pOtherResource );
+            HANDLE sharedHandle;
+            pOtherResource->GetSharedHandle(&sharedHandle); 

The only resources that can be shared are 2D non-mipmapped textures.

To share a resource between a Direct3D 9 device and a Direct3D 11 device the texture must have been created using the pSharedHandle argument of CreateTexture. The shared Direct3D 9 handle is then passed to OpenSharedResource in the hResource argument.

The following code illustrates the method calls involved.

 sharedHandle = null; // must be set to null to create, can use a valid handle here to open in D3D9 
+            pDevice9->CreateTexture(..., pTex2D_9, &sharedHandle); 
+            ... 
+            pDevice11->OpenSharedResource(sharedHandle, __uuidof(), (void**)(&tempResource11)); 
+            tempResource11->QueryInterface(__uuidof(), (void**)(&pTex2D_11)); 
+            tempResource11->Release(); 
+            // now use pTex2D_11 with pDevice11    

Textures being shared from D3D9 to D3D11 have the following restrictions.

  • Textures must be 2D
  • Only 1 mip level is allowed
  • Texture must have default usage
  • Texture must be write only
  • MSAA textures are not allowed
  • Bind flags must have SHADER_RESOURCE and RENDER_TARGET set
  • Only R10G10B10A2_UNORM, R16G16B16A16_FLOAT and R8G8B8A8_UNORM formats are allowed

If a shared texture is updated on one device ID3D11DeviceContext::Flush must be called on that device.

+
+ ff476531 + HRESULT ID3D11Device::OpenSharedResource([In] void* hResource,[In] const GUID& ReturnedInterface,[Out, Optional] void** ppResource) + ID3D11Device::OpenSharedResource +
+ + +

Get the support of a given format on the installed video device.

+
+

A enumeration that describes a format for which to check for support.

+

A bitfield of enumeration values describing how the specified format is supported on the installed device. The values are ORed together.

+ ff476498 + HRESULT ID3D11Device::CheckFormatSupport([In] DXGI_FORMAT Format,[Out] unsigned int* pFormatSupport) + ID3D11Device::CheckFormatSupport +
+ + +

Get the number of quality levels available during multisampling.

+
+

The texture format. See .

+

The number of samples during multisampling.

+

Number of quality levels supported by the adapter. See remarks.

+ +

When multisampling a texture, the number of quality levels available for an adapter is dependent on the texture format used and the number of samples requested. The maximum number of quality levels is defined by in D3D11.h. If this method returns 0, the format and sample count combination is not supported for the installed adapter.

Furthermore, the definition of a quality level is up to each hardware vendor to define, however no facility is provided by Direct3D to help discover this information.

Note that FEATURE_LEVEL_10_1 devices are required to support 4x MSAA for all render targets except R32G32B32A32 and R32G32B32. FEATURE_LEVEL_11_0 devices are required to support 4x MSAA for all render target formats, and 8x MSAA for all render target formats except R32G32B32A32 formats.

+
+ ff476499 + HRESULT ID3D11Device::CheckMultisampleQualityLevels([In] DXGI_FORMAT Format,[In] unsigned int SampleCount,[Out] unsigned int* pNumQualityLevels) + ID3D11Device::CheckMultisampleQualityLevels +
+ + +

Get a counter's information.

+
+ ff476496 + void ID3D11Device::CheckCounterInfo([Out] D3D11_COUNTER_INFO* pCounterInfo) + ID3D11Device::CheckCounterInfo +
+ + +

Get the type, name, units of measure, and a description of an existing counter.

+
+

Pointer to a counter description (see ). Specifies which counter information is to be retrieved about.

+

Pointer to the data type of a counter (see ). Specifies the data type of the counter being retrieved.

+

Pointer to the number of hardware counters that are needed for this counter type to be created. All instances of the same counter type use the same hardware counters.

+

String to be filled with a brief name for the counter. May be null if the application is not interested in the name of the counter.

+

Length of the string returned to szName. Can be null.

+

Name of the units a counter measures, provided the memory the reference points to has enough room to hold the string. Can be null. The returned string will always be in English.

+

Length of the string returned to szUnits. Can be null.

+

A description of the counter, provided the memory the reference points to has enough room to hold the string. Can be null. The returned string will always be in English.

+

Length of the string returned to szDescription. Can be null.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

Length parameters can be null, which indicates the application is not interested in the length nor the corresponding string value. When a length parameter is non-null and the corresponding string is null, the input value of the length parameter is ignored, and the length of the corresponding string (including terminating null) will be returned through the length parameter. When length and the corresponding parameter are both non-null, the input value of length is checked to ensure there is enough room, and then the length of the string (including terminating null character) is passed out through the length parameter.

Windows?Phone?8: This API is supported.

+
+ ff476495 + HRESULT ID3D11Device::CheckCounter([In] const D3D11_COUNTER_DESC* pDesc,[Out] D3D11_COUNTER_TYPE* pType,[Out] unsigned int* pActiveCounters,[Out, Buffer, Optional] char* szName,[InOut, Optional] unsigned int* pNameLength,[Out, Buffer, Optional] char* szUnits,[InOut, Optional] unsigned int* pUnitsLength,[Out, Buffer, Optional] char* szDescription,[InOut, Optional] unsigned int* pDescriptionLength) + ID3D11Device::CheckCounter +
+ + +

Gets information about the features that are supported by the current graphics driver.

+
+

A member of the enumerated type that describes which feature to query for support.

+

Upon completion of the method, the passed structure is filled with data that describes the feature support.

+

The size of the structure passed to the pFeatureSupportData parameter.

+

Returns if successful; otherwise, returns E_INVALIDARG if an unsupported data type is passed to the pFeatureSupportData parameter or a size mismatch is detected for the FeatureSupportDataSize parameter.

+ +

To query for multi-threading support, pass the D3D11_FEATURE_THREADING value to the Feature parameter, pass the structure to the pFeatureSupportData parameter, and pass the size of the structure to the FeatureSupportDataSize parameter.

Calling CheckFeatureSupport with Feature set to D3D11_FEATURE_FORMAT_SUPPORT causes the method to return the same information that would be returned by ID3D11Device::CheckFormatSupport.

+
+ ff476497 + HRESULT ID3D11Device::CheckFeatureSupport([In] D3D11_FEATURE Feature,[Out, Buffer] void* pFeatureSupportData,[In] unsigned int FeatureSupportDataSize) + ID3D11Device::CheckFeatureSupport +
+ + +

Get application-defined data from a device.

+
+

Guid associated with the data.

+

A reference to a variable that on input contains the size, in bytes, of the buffer that pData points to, and on output contains the size, in bytes, of the amount of data that GetPrivateData retrieved.

+

A reference to a buffer that GetPrivateData fills with data from the device if pDataSize points to a value that specifies a buffer large enough to hold the data.

+

This method returns one of the codes described in the topic Direct3D 11 Return Codes.

+ ff476530 + HRESULT ID3D11Device::GetPrivateData([In] const GUID& guid,[InOut] unsigned int* pDataSize,[Out, Buffer, Optional] void* pData) + ID3D11Device::GetPrivateData +
+ + +

Set data to a device and associate that data with a guid.

+
+

Guid associated with the data.

+

Size of the data.

+

Pointer to the data to be stored with this device. If pData is null, DataSize must also be 0, and any data previously associated with the guid will be destroyed.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The data stored in the device with this method can be retrieved with ID3D11Device::GetPrivateData.

The data and guid set with this method will typically be application-defined.

The debug layer reports memory leaks by outputting a list of object interface references along with their friendly names. The default friendly name is "<unnamed>". You can set the friendly name so that you can determine if the corresponding object interface reference caused the leak. To set the friendly name, use the SetPrivateData method and the that is in D3Dcommon.h. For example, to give pContext a friendly name of My name, use the following code:

 static const char c_szName[] = "My name";
+            hr = pContext->SetPrivateData( , sizeof( c_szName ) - 1, c_szName );
+            
+
+ ff476533 + HRESULT ID3D11Device::SetPrivateData([In] const GUID& guid,[In] unsigned int DataSize,[In, Buffer, Optional] const void* pData) + ID3D11Device::SetPrivateData +
+ + +

Associate an -derived interface with this device child and associate that interface with an application-defined guid.

+
+

Guid associated with the interface.

+

Pointer to an -derived interface to be associated with the device child.

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476534 + HRESULT ID3D11Device::SetPrivateDataInterface([In] const GUID& guid,[In, Optional] const IUnknown* pData) + ID3D11Device::SetPrivateDataInterface +
+ + +

Gets the feature level of the hardware device.

+
+

A member of the enumerated type that describes the feature level of the hardware device.

+ +

Feature levels determine the capabilities of your device.

+
+ ff476528 + D3D_FEATURE_LEVEL ID3D11Device::GetFeatureLevel() + ID3D11Device::GetFeatureLevel +
+ + +

Get the flags used during the call to create the device with D3D11CreateDevice.

+
+

A bitfield containing the flags used to create the device. See .

+ ff476525 + unsigned int ID3D11Device::GetCreationFlags() + ID3D11Device::GetCreationFlags +
+ + +

Get the reason why the device was removed.

+
+

Possible return values include:

For more detail on these return codes, see DXGI_ERROR.

+ ff476526 + HRESULT ID3D11Device::GetDeviceRemovedReason() + ID3D11Device::GetDeviceRemovedReason +
+ + +

Gets an immediate context, which can play back command lists.

+
+

Upon completion of the method, the passed reference to an interface reference is initialized.

+ +

The GetImmediateContext method returns an object that represents an immediate context which is used to perform rendering that you want immediately submitted to a device. For most applications, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ ff476529 + void ID3D11Device::GetImmediateContext([Out] ID3D11DeviceContext** ppImmediateContext) + ID3D11Device::GetImmediateContext +
+ + +

Get the exception-mode flags.

+
+

A value that contains one or more exception flags; each flag specifies a condition which will cause an exception to be raised. The flags are listed in D3D11_RAISE_FLAG. A default value of 0 means there are no flags.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

Set an exception-mode flag to elevate an error condition to a non-continuable exception.

Whenever an error occurs, a Direct3D device enters the DEVICEREMOVED state and if the appropriate exception flag has been set, an exception is raised. A raised exception is designed to terminate an application. Before termination, the last chance an application has to persist data is by using an UnhandledExceptionFilter (see Structured Exception Handling). In general, UnhandledExceptionFilters are leveraged to try to persist data when an application is crashing (to disk, for example). Any code that executes during an UnhandledExceptionFilter is not guaranteed to reliably execute (due to possible process corruption). Any data that the UnhandledExceptionFilter manages to persist, before the UnhandledExceptionFilter crashes again, should be treated as suspect, and therefore inspected by a new, non-corrupted process to see if it is usable.

+
+ ff476532 + HRESULT ID3D11Device::SetExceptionMode([In] unsigned int RaiseFlags) + ID3D11Device::SetExceptionMode +
+ + +

Get the exception-mode flags.

+
+

A value that contains one or more exception flags; each flag specifies a condition which will cause an exception to be raised. The flags are listed in D3D11_RAISE_FLAG. A default value of 0 means there are no flags.

+ +

An exception-mode flag is used to elevate an error condition to a non-continuable exception.

+
+ ff476527 + unsigned int ID3D11Device::GetExceptionMode() + ID3D11Device::GetExceptionMode +
+ + + Creates a context state object that holds all Microsoft Direct3D state and some Direct3D behavior. + + The type of the emulated interface. This value specifies the behavior of the device when the context state object is active. Valid values are , , , and . See Remarks. + A combination of values that are combined by using a bitwise OR operation. The resulting value specifies how to create the context state object. The flag is currently the only defined flag. If the original device was created with , you must create all context state objects from that device with the flag. The context state object that CreateDeviceContextState creates inherits the threading model of its associated device context. By default the context state object is rent-threaded, so that an application synchronizes access to the device context, typically by use of critical sections. In contrast, the context state object is free-threaded if you used the ID3D10Multithread interface to turn on thread protection for the device context. If you set the single-threaded flag for both the context state object and the device, you guarantee that you will call the whole set of context methods and device methods only from one thread. You therefore do not need to use critical sections to synchronize access to the device context, and the runtime can avoid working with those processor-intensive critical sections. + A reference to an array of values. The array determines the order of feature levels for which creation is attempted. To get the greatest feature level available, set pFeatureLevels to null, so that CreateDeviceContextState uses the following array of feature level values: { , , , , , , ,}; + A reference to a variable that receives a value from the pFeatureLevels array. This is the first array value with which CreateDeviceContextState succeeded in creating the context state object. If the call to CreateDeviceContextState fails, the variable pointed to by pChosenFeatureLevel is set to zero. + A object that represents the state of a Direct3D device. + + The REFIID value of the emulated interface is a obtained by use of the __uuidof operator. For example, __uuidof() gets the of the interface to a Microsoft Direct3D?11 device.Call the method to activate the context state object. When the context state object is active, the device behaviors that are associated with both the context state object's feature level and its compatible interface are activated on the Direct3D device until the next call to SwapDeviceContextState.When a context state object is active, the runtime disables certain methods on the device and context interfaces. For example, a context state object that is created with __uuidof() will cause the runtime to turn off most of the Microsoft Direct3D?10 device interfaces, and a context state object that is created with __uuidof() or __uuidof() will cause the runtime to turn off most of the methods. + This behavior ensures that a user of either emulated interface cannot set device state that the other emulated interface is unable to express. This restriction helps guarantee that the emulated interface accurately reflects the full state of the pipeline and that the emulated interface will not operate contrary to its original interface definition.For example, suppose the tessellation stage is made active through the interface + when you create the device through or D3D11CreateDeviceAndSwapChain, instead of through the Direct3D?10 equivalents. Because the Direct3D?11 context is active, a Direct3D?10 interface is inactive when you first retrieve it via QueryInterface. This means that you cannot immediately pass a Direct3D?10 interface that you retrieved from a Direct3D?11 device to a function. You must first call SwapDeviceContextState to activate a Direct3D?10-compatible context state object.The following table shows the methods that are active and inactive for each emulated interface.Emulated interface Active device or immediate context interfaces Inactive device or immediate context interfaces or + + + + + + + + ID3D10Multithread + or + + + + + + + ID3D10Multithread + + (As published by the immediate context. The Direct3D?10 or Microsoft Direct3D?10.1 emulated interface has no effect on deferred contexts.)?The following table shows the immediate context methods that the runtime disables when the indicated context state objects are active.Methods of when __uuidof() or __uuidof() is active Methods of when __uuidof() is active Begin + ClearDepthStencilView + ClearDepthStencilView + ClearRenderTargetView + ClearRenderTargetView + ClearState + ClearState + ClearUnorderedAccessViewUint + ClearUnorderedAccessViewFloat + CopyResource + CopyResource + CopyStructureCount + CopySubresourceRegion + CopySubresourceRegion + CSGetConstantBuffers + CSGetSamplers + CSGetShader + CSGetShaderResources + CSGetUnorderedAccessViews + CSSetConstantBuffers + CSSetSamplers + CSSetShader + CSSetShaderResources + CSSetUnorderedAccessViews + Dispatch + DispatchIndirect + CreateBlendState + Draw + Draw + DrawAuto + DrawAuto + DrawIndexed + DrawIndexed + DrawIndexedInstanced + DrawIndexedInstanced + DrawIndexedInstancedIndirect + DrawInstanced + DrawInstanced + DrawInstancedIndirect + DSGetConstantBuffers + DSGetSamplers + DSGetShader + DSGetShaderResources + DSSetConstantBuffers + DSSetSamplers + DSSetShader + DSSetShaderResources + End + ExecuteCommandList + FinishCommandList + Flush + Flush + GenerateMips + GenerateMips + GetData + GetPredication + GetPredication + GetResourceMinLOD + GetType + GetTextFilterSize + GSGetConstantBuffers + GSGetConstantBuffers + GSGetSamplers + GSGetSamplers + GSGetShader + GSGetShader + GSGetShaderResources + GSGetShaderResources + GSSetConstantBuffers + GSSetConstantBuffers + GSSetSamplers + GSSetSamplers + GSSetShader + GSSetShader + GSSetShaderResources + GSSetShaderResources + HSGetConstantBuffers + HSGetSamplers + HSGetShader + HSGetShaderResources + HSSetConstantBuffers + HSSetSamplers + HSSetShader + HSSetShaderResources + IAGetIndexBuffer + IAGetIndexBuffer + IAGetInputLayout + IAGetInputLayout + IAGetPrimitiveTopology + IAGetPrimitiveTopology + IAGetVertexBuffers + IASetIndexBuffer + IASetInputLayout + IASetPrimitiveTopology + IASetVertexBuffers + OMGetBlendState + OMGetBlendState + OMGetDepthStencilState + OMGetDepthStencilState + OMGetRenderTargets + OMGetRenderTargets + OMGetRenderTargetsAndUnorderedAccessViews + OMSetBlendState + OMSetBlendState + OMSetDepthStencilState + OMSetDepthStencilState + OMSetRenderTargets + OMSetRenderTargets + OMSetRenderTargetsAndUnorderedAccessViews + PSGetConstantBuffers + PSGetConstantBuffers + PSGetSamplers + PSGetSamplers + PSGetShader + PSGetShader + PSGetShaderResources + PSGetShaderResources + PSSetConstantBuffers + PSSetConstantBuffers + PSSetSamplers + PSSetSamplers + PSSetShader + PSSetShader + PSSetShaderResources + PSSetShaderResources + ResolveSubresource + ResolveSubresource + RSGetScissorRects + RSGetScissorRects + RSGetState + RSGetState + RSGetViewports + RSGetViewports + RSSetScissorRects + RSSetScissorRects + RSSetState + RSSetState + RSSetViewports + RSSetViewports + SetPredication + SetPredication + SetResourceMinLOD + SetTextFilterSize + SOGetTargets + SOGetTargets + SOSetTargets + SOSetTargets + UpdateSubresource + UpdateSubresource + VSGetConstantBuffers + VSGetConstantBuffers + VSGetSamplers + VSGetSamplers + VSGetShader + VSGetShader + VSGetShaderResources + VSGetShaderResources + VSSetConstantBuffers + VSSetConstantBuffers + VSSetSamplers + VSSetSamplers + VSSetShader + VSSetShader + VSSetShaderResources + VSSetShaderResources ?The following table shows the immediate context methods that the runtime does not disable when the indicated context state objects are active.Methods of when __uuidof() or __uuidof() is active Methods of when __uuidof() is active GetCreationFlags + GetPrivateData + GetContextFlags + Map + Unmap ?The following table shows the interface methods that the runtime does not disable because they are not immediate context methods.Methods of CheckCounter + CheckCounterInfo + Create*, like CreateQuery + GetDeviceRemovedReason + GetExceptionMode + OpenSharedResource + SetExceptionMode + SetPrivateData + SetPrivateDataInterface ? + + HRESULT ID3D11Device1::CreateDeviceContextState([In] D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG Flags,[In, Buffer] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[In] const GUID& EmulatedInterface,[Out, Optional] D3D_FEATURE_LEVEL* pChosenFeatureLevel,[Out, Fast] ID3DDeviceContextState** ppContextState) + + + + Gives a device access to a shared resource that is referenced by name and that was created on a different device. You must have previously created the resource as shared and specified that it uses NT handles (that is, you set the flag). + + Type of the resource + The resource handle. + An instance of T + + The behavior of OpenSharedResource1 is similar to the behavior of the method; each call to OpenSharedResource1 to access a resource creates a new resource object. In other words, if you call OpenSharedResource1 twice and pass the same resource handle to hResource, you receive two resource objects with different references.To share a resource between two devicesCreate the resource as shared and specify that it uses NT handles, by setting the flag. Obtain the REFIID, or , of the interface to the resource by using the __uuidof() macro. For example, __uuidof() retrieves the of the interface to a 2D texture. Query the resource for the interface. Call the method to obtain the unique handle to the resource. + + HRESULT ID3D11Device1::OpenSharedResource1([In] void* hResource,[In] const GUID& returnedInterface,[Out] void** ppResource) + + + + Gives a device access to a shared resource that is referenced by name and that was created on a different device. You must have previously created the resource as shared and specified that it uses NT handles (that is, you set the flag). + + Type of the resource + Name of the resource to open for sharing. + The requested access rights to the resource. + An instance of T. + + The behavior of OpenSharedResourceByName is similar to the behavior of the method; each call to OpenSharedResourceByName to access a resource creates a new resource object. In other words, if you call OpenSharedResourceByName twice and pass the same resource name to lpName, you receive two resource objects with different references.To share a resource between two devicesCreate the resource as shared and specify that it uses NT handles, by setting the flag. Obtain the REFIID, or , of the interface to the resource by using the __uuidof() macro. For example, __uuidof() retrieves the of the interface to a 2D texture. Query the resource for the interface. Call the method to obtain the unique handle to the resource. In this call, you must pass a name for the resource if you want to subsequently call OpenSharedResourceByName to access the resource by name. + + HRESULT ID3D11Device1::OpenSharedResourceByName([In] const wchar_t* lpName,[In] unsigned int dwDesiredAccess,[In] const GUID& returnedInterface,[Out] void** ppResource) + + + + + + +

Gets an immediate context, which can play back command lists.

+
+ +

GetImmediateContext1 returns an object that represents an immediate context. You can use this immediate context to perform rendering that you want immediately submitted to a device. For most applications, an immediate context is the primary object that is used to draw your scene.

GetImmediateContext1 increments the reference count of the immediate context by one. So, call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ hh404589 + GetImmediateContext1 + GetImmediateContext1 +
+ + +

Gets an immediate context, which can play back command lists.

+
+

Upon completion of the method, the passed reference to an interface reference is initialized.

+ +

GetImmediateContext1 returns an object that represents an immediate context. You can use this immediate context to perform rendering that you want immediately submitted to a device. For most applications, an immediate context is the primary object that is used to draw your scene.

GetImmediateContext1 increments the reference count of the immediate context by one. So, call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ hh404589 + void ID3D11Device1::GetImmediateContext1([Out] ID3D11DeviceContext1** ppImmediateContext) + ID3D11Device1::GetImmediateContext1 +
+ + +

Creates a deferred context, which can record command lists.

+
+

Reserved for future use. Pass 0.

+

Upon completion of the method, the passed reference to an interface reference is initialized.

+

Returns if successful; otherwise, returns one of the following:

  • Returns if the graphics adapter has been physically removed from the computer or a driver upgrade for the graphics adapter has occurred. If this error occurs, you should destroy and re-create the device.
  • Returns if the CreateDeferredContext1 method cannot be called from the current context. For example, if the device was created with the D3D11_CREATE_DEVICE_SINGLETHREADED value, CreateDeferredContext1 returns .
  • Returns E_INVALIDARG if the ContextFlags parameter is invalid.
  • Returns E_OUTOFMEMORY if the application has exhausted available memory.
+ +

A deferred context is a thread-safe context that you can use to record graphics commands on a thread other than the main rendering thread. By using a deferred context, you can record graphics commands into a command list that is encapsulated by the interface. After you record all scene items, you can then submit them to the main render thread for final rendering. In this manner, you can perform rendering tasks concurrently across multiple threads and potentially improve performance in multi-core CPU scenarios.

You can create multiple deferred contexts.

Note?? If you use the D3D11_CREATE_DEVICE_SINGLETHREADED value to create the device that is represented by , the CreateDeferredContext1 method will fail, and you will not be able to create a deferred context.?

For more information about deferred contexts, see Immediate and Deferred Rendering.

Windows?Phone?8: This API is supported.

+
+ hh404580 + HRESULT ID3D11Device1::CreateDeferredContext1([In] unsigned int ContextFlags,[Out, Fast] ID3D11DeviceContext1** ppDeferredContext) + ID3D11Device1::CreateDeferredContext1 +
+ + +

Creates a blend-state object that encapsulates blend state for the output-merger stage and allows the configuration of logic operations.

+
+ No documentation. + No documentation. +

This method returns E_OUTOFMEMORY if there is insufficient memory to create the blend-state object. See Direct3D 11 Return Codes for other possible return values.

+ +

The logical operations (those that enable bitwise logical operations between pixel shader output and render target contents, refer to ) are only available on certain feature levels; call CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS set, to ensure support by checking the boolean field OutputMergerLogicOp of .

An app can create up to 4096 unique blend-state objects. For each object created, the runtime checks to see if a previous object has the same state. If such a previous object exists, the runtime will return a reference to previous instance instead of creating a duplicate object.

+
+ hh404577 + HRESULT ID3D11Device1::CreateBlendState1([In] const D3D11_BLEND_DESC1* pBlendStateDesc,[Out, Fast] ID3D11BlendState1** ppBlendState) + ID3D11Device1::CreateBlendState1 +
+ + +

Creates a rasterizer state object that informs the rasterizer stage how to behave and forces the sample count while UAV rendering or rasterizing.

+
+ No documentation. + No documentation. +

This method returns E_OUTOFMEMORY if there is insufficient memory to create the rasterizer state object. See Direct3D 11 Return Codes for other possible return values.

+ +

An app can create up to 4096 unique rasterizer state objects. For each object created, the runtime checks to see if a previous object has the same state. If such a previous object exists, the runtime will return a reference to previous instance instead of creating a duplicate object.

+
+ hh404586 + HRESULT ID3D11Device1::CreateRasterizerState1([In] const D3D11_RASTERIZER_DESC1* pRasterizerDesc,[Out, Fast] ID3D11RasterizerState1** ppRasterizerState) + ID3D11Device1::CreateRasterizerState1 +
+ + +

Creates a context state object that holds all Microsoft Direct3D state and some Direct3D behavior.

+
+

A combination of values that are combined by using a bitwise OR operation. The resulting value specifies how to create the context state object. The D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED flag is currently the only defined flag. If the original device was created with D3D11_CREATE_DEVICE_SINGLETHREADED, you must create all context state objects from that device with the D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED flag.

If you set the single-threaded flag for both the context state object and the device, you guarantee that you will call the whole set of context methods and device methods only from one thread. You therefore do not need to use critical sections to synchronize access to the device context, and the runtime can avoid working with those processor-intensive critical sections.

+

A reference to an array of values. The array can contain elements from the following list and determines the order of feature levels for which creation is attempted. Unlike D3D11CreateDevice, you can't set pFeatureLevels to null because there is no default feature level array.

{ D3D_FEATURE_LEVEL_11_1, D3D_FEATURE_LEVEL_11_0, D3D_FEATURE_LEVEL_10_1, D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_9_3, D3D_FEATURE_LEVEL_9_2, D3D_FEATURE_LEVEL_9_1,}; 
+

The number of elements in pFeatureLevels. Unlike D3D11CreateDevice, you must set FeatureLevels to greater than 0 because you can't set pFeatureLevels to null.

+

The SDK version. You must set this parameter to .

+

The globally unique identifier () for the emulated interface. This value specifies the behavior of the device when the context state object is active. Valid values are obtained by using the __uuidof operator on the ID3D10Device, ID3D10Device1, , and interfaces. See Remarks.

+

A reference to a variable that receives a value from the pFeatureLevels array. This is the first array value with which CreateDeviceContextState succeeded in creating the context state object. If the call to CreateDeviceContextState fails, the variable pointed to by pChosenFeatureLevel is set to zero.

+

The address of a reference to an object that represents the state of a Direct3D device.

+

This method returns one of the Direct3D 11 Return Codes.

+ +

The REFIID value of the emulated interface is a obtained by use of the __uuidof operator. For example, __uuidof() gets the of the interface to a Microsoft Direct3D?11 device.

Call the ID3D11DeviceContext1::SwapDeviceContextState method to activate the context state object. When the context state object is active, the device behaviors that are associated with both the context state object's feature level and its compatible interface are activated on the Direct3D device until the next call to SwapDeviceContextState.

When a context state object is active, the runtime disables certain methods on the device and context interfaces. For example, a context state object that is created with __uuidof() will cause the runtime to turn off most of the Microsoft Direct3D?10 device interfaces, and a context state object that is created with __uuidof(ID3D10Device1) or __uuidof(ID3D10Device) will cause the runtime to turn off most of the methods. This behavior ensures that a user of either emulated interface cannot set device state that the other emulated interface is unable to express. This restriction helps guarantee that the ID3D10Device1 emulated interface accurately reflects the full state of the pipeline and that the emulated interface will not operate contrary to its original interface definition.

For example, suppose the tessellation stage is made active through the interface when you create the device through D3D11CreateDevice or D3D11CreateDeviceAndSwapChain, instead of through the Direct3D?10 equivalents. Because the Direct3D?11 context is active, a Direct3D?10 interface is inactive when you first retrieve it via QueryInterface. This means that you cannot immediately pass a Direct3D?10 interface that you retrieved from a Direct3D?11 device to a function. You must first call SwapDeviceContextState to activate a Direct3D?10-compatible context state object.

The following table shows the methods that are active and inactive for each emulated interface.

Emulated interface Active device or immediate context interfaces Inactive device or immediate context interfaces

or

+

+

ID3D10Device

ID3D10Device1 or

ID3D10Device

ID3D10Device

ID3D10Device1

+

(As published by the immediate context. The Direct3D?10 or Microsoft Direct3D?10.1 emulated interface has no effect on deferred contexts.)

?

The following table shows the immediate context methods that the runtime disables when the indicated context state objects are active.

Methods of when __uuidof(ID3D10Device1) or __uuidof(ID3D10Device) is active Methods of ID3D10Device when __uuidof() is active

ClearDepthStencilView

ClearDepthStencilView

ClearRenderTargetView

ClearRenderTargetView

ClearState

ClearState

ClearUnorderedAccessViewUint

ClearUnorderedAccessViewFloat

CopyResource

CopyResource

CopyStructureCount

CopySubresourceRegion

CopySubresourceRegion

CSGetConstantBuffers

CSGetSamplers

CSGetShader

CSGetShaderResources

CSGetUnorderedAccessViews

CSSetConstantBuffers

CSSetSamplers

CSSetShader

CSSetShaderResources

CSSetUnorderedAccessViews

Dispatch

DispatchIndirect

CreateBlendState

Draw

Draw

DrawAuto

DrawAuto

DrawIndexed

DrawIndexed

DrawIndexedInstanced

DrawIndexedInstanced

DrawIndexedInstancedIndirect

DrawInstanced

DrawInstanced

DrawInstancedIndirect

DSGetConstantBuffers

DSGetSamplers

DSGetShader

DSGetShaderResources

DSSetConstantBuffers

DSSetSamplers

DSSetShader

DSSetShaderResources

ExecuteCommandList

FinishCommandList

Flush

Flush

GenerateMips

GenerateMips

GetPredication

GetPredication

GetResourceMinLOD

GetType

GetTextFilterSize

GSGetConstantBuffers

GSGetConstantBuffers

GSGetSamplers

GSGetSamplers

GSGetShader

GSGetShader

GSGetShaderResources

GSGetShaderResources

GSSetConstantBuffers

GSSetConstantBuffers

GSSetSamplers

GSSetSamplers

GSSetShader

GSSetShader

GSSetShaderResources

GSSetShaderResources

HSGetConstantBuffers

HSGetSamplers

HSGetShader

HSGetShaderResources

HSSetConstantBuffers

HSSetSamplers

HSSetShader

HSSetShaderResources

IAGetIndexBuffer

IAGetIndexBuffer

IAGetInputLayout

IAGetInputLayout

IAGetPrimitiveTopology

IAGetPrimitiveTopology

IAGetVertexBuffers

IAGetVertexBuffers

IASetIndexBuffer

IASetIndexBuffer

IASetInputLayout

IASetInputLayout

IASetPrimitiveTopology

IASetPrimitiveTopology

IASetVertexBuffers

IASetVertexBuffers

OMGetBlendState

OMGetBlendState

OMGetDepthStencilState

OMGetDepthStencilState

OMGetRenderTargets

OMGetRenderTargets

OMGetRenderTargetsAndUnorderedAccessViews

OMSetBlendState

OMSetBlendState

OMSetDepthStencilState

OMSetDepthStencilState

OMSetRenderTargets

OMSetRenderTargets

OMSetRenderTargetsAndUnorderedAccessViews

PSGetConstantBuffers

PSGetConstantBuffers

PSGetSamplers

PSGetSamplers

PSGetShader

PSGetShader

PSGetShaderResources

PSGetShaderResources

PSSetConstantBuffers

PSSetConstantBuffers

PSSetSamplers

PSSetSamplers

PSSetShader

PSSetShader

PSSetShaderResources

PSSetShaderResources

ResolveSubresource

ResolveSubresource

RSGetScissorRects

RSGetScissorRects

RSGetState

RSGetState

RSGetViewports

RSGetViewports

RSSetScissorRects

RSSetScissorRects

RSSetState

RSSetState

RSSetViewports

RSSetViewports

SetPredication

SetPredication

SetResourceMinLOD

SetTextFilterSize

SOGetTargets

SOGetTargets

SOSetTargets

SOSetTargets

UpdateSubresource

UpdateSubresource

VSGetConstantBuffers

VSGetConstantBuffers

VSGetSamplers

VSGetSamplers

VSGetShader

VSGetShader

VSGetShaderResources

VSGetShaderResources

VSSetConstantBuffers

VSSetConstantBuffers

VSSetSamplers

VSSetSamplers

VSSetShader

VSSetShader

VSSetShaderResources

VSSetShaderResources

?

The following table shows the immediate context methods that the runtime does not disable when the indicated context state objects are active.

Methods of when __uuidof(ID3D10Device1) or __uuidof(ID3D10Device) is active Methods of ID3D10Device when __uuidof() is active

Begin

End

GetCreationFlags

GetPrivateData

GetContextFlags

GetData

Map

Unmap

?

The following table shows the ID3D10Device interface methods that the runtime does not disable because they are not immediate context methods.

Methods of ID3D10Device

CheckCounter

CheckCounterInfo

Create*, like CreateQuery

GetDeviceRemovedReason

GetExceptionMode

OpenSharedResource

SetExceptionMode

SetPrivateData

SetPrivateDataInterface

?

Windows?Phone?8: This API is supported.

+
+ hh404583 + HRESULT ID3D11Device1::CreateDeviceContextState([In] unsigned int Flags,[In, Buffer] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[In] const GUID& EmulatedInterface,[Out, Optional] D3D_FEATURE_LEVEL* pChosenFeatureLevel,[Out, Fast] ID3DDeviceContextState** ppContextState) + ID3D11Device1::CreateDeviceContextState +
+ + +

Give a device access to a shared resource created on a different device.

+
+

A resource handle. See remarks.

+

The globally unique identifier () for the resource interface. See remarks.

+

Address of a reference to the resource we are gaining access to.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The REFIID, or , of the interface to the resource can be obtained by using the __uuidof() macro. For example, __uuidof() will get the of the interface to a buffer resource.

The unique handle of the resource is obtained differently depending on the type of device that originally created the resource.

To share a resource between two Direct3D 11 devices the resource must have been created with the D3D11_RESOURCE_MISC_SHARED flag, if it was created using the interface. If it was created using a DXGI device interface, then the resource is always shared.

The REFIID, or , of the interface to the resource can be obtained by using the __uuidof() macro. For example, __uuidof() will get the of the interface to a buffer resource.

When sharing a resource between two Direct3D 10/11 devices the unique handle of the resource can be obtained by querying the resource for the interface and then calling GetSharedHandle.

 * pOtherResource(null);
+            hr = pOtherDeviceResource->QueryInterface( __uuidof(), (void**)&pOtherResource );
+            HANDLE sharedHandle;
+            pOtherResource->GetSharedHandle(&sharedHandle); 

The only resources that can be shared are 2D non-mipmapped textures.

To share a resource between a Direct3D 9 device and a Direct3D 11 device the texture must have been created using the pSharedHandle argument of CreateTexture. The shared Direct3D 9 handle is then passed to OpenSharedResource in the hResource argument.

The following code illustrates the method calls involved.

 sharedHandle = null; // must be set to null to create, can use a valid handle here to open in D3D9 
+            pDevice9->CreateTexture(..., pTex2D_9, &sharedHandle); 
+            ... 
+            pDevice11->OpenSharedResource(sharedHandle, __uuidof(), (void**)(&tempResource11)); 
+            tempResource11->QueryInterface(__uuidof(), (void**)(&pTex2D_11)); 
+            tempResource11->Release(); 
+            // now use pTex2D_11 with pDevice11    

Textures being shared from D3D9 to D3D11 have the following restrictions.

  • Textures must be 2D
  • Only 1 mip level is allowed
  • Texture must have default usage
  • Texture must be write only
  • MSAA textures are not allowed
  • Bind flags must have SHADER_RESOURCE and RENDER_TARGET set
  • Only R10G10B10A2_UNORM, R16G16B16A16_FLOAT and R8G8B8A8_UNORM formats are allowed

If a shared texture is updated on one device ID3D11DeviceContext::Flush must be called on that device.

+
+ ff476531 + HRESULT ID3D11Device1::OpenSharedResource1([In] void* hResource,[In] const GUID& returnedInterface,[Out] void** ppResource) + ID3D11Device1::OpenSharedResource1 +
+ + +

Gives a device access to a shared resource that is referenced by name and that was created on a different device. You must have previously created the resource as shared and specified that it uses NT handles (that is, you set the D3D11_RESOURCE_MISC_SHARED_NTHANDLE flag).

+
+ No documentation. + No documentation. + No documentation. + No documentation. +

This method returns one of the Direct3D 11 return codes. This method also returns E_ACCESSDENIED if the permissions to access the resource aren't valid.

Platform Update for Windows?7:??On Windows?7 or Windows Server?2008?R2 with the Platform Update for Windows?7 installed, OpenSharedResourceByName fails with E_NOTIMPL because NTHANDLES are used. For more info about the Platform Update for Windows?7, see Platform Update for Windows 7.

+ +

The behavior of OpenSharedResourceByName is similar to the behavior of the ID3D11Device1::OpenSharedResource1 method; each call to OpenSharedResourceByName to access a resource creates a new resource object. In other words, if you call OpenSharedResourceByName twice and pass the same resource name to lpName, you receive two resource objects with different references.

To share a resource between two devices

  1. Create the resource as shared and specify that it uses NT handles, by setting the D3D11_RESOURCE_MISC_SHARED_NTHANDLE flag.
  2. Obtain the REFIID, or , of the interface to the resource by using the __uuidof() macro. For example, __uuidof() retrieves the of the interface to a 2D texture.
  3. Query the resource for the interface.
  4. Call the IDXGIResource1::CreateSharedHandle method to obtain the unique handle to the resource. In this IDXGIResource1::CreateSharedHandle call, you must pass a name for the resource if you want to subsequently call OpenSharedResourceByName to access the resource by name.
+
+ hh404595 + HRESULT ID3D11Device1::OpenSharedResourceByName([In] const wchar_t* lpName,[In] DWORD dwDesiredAccess,[In] const GUID& returnedInterface,[Out] void** ppResource) + ID3D11Device1::OpenSharedResourceByName +
+ + + + + +

Gets an immediate context, which can play back command lists.

+
+ +

The GetImmediateContext2 method returns an object that represents an immediate context, which is used to perform rendering that you want immediately submitted to a device. For most apps, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext2 method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ dn280496 + GetImmediateContext2 + GetImmediateContext2 +
+ + +

Gets an immediate context, which can play back command lists.

+
+ No documentation. + +

The GetImmediateContext2 method returns an object that represents an immediate context, which is used to perform rendering that you want immediately submitted to a device. For most apps, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext2 method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ dn280496 + void ID3D11Device2::GetImmediateContext2([Out] ID3D11DeviceContext2** ppImmediateContext) + ID3D11Device2::GetImmediateContext2 +
+ + +

Creates a deferred context, which can record command lists.

+
+ No documentation. + No documentation. +

Returns if successful; otherwise, returns one of the following:

  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred. If this error occurs, you should destroy and recreate the device.
  • Returns if the CreateDeferredContext2 method can't be called from the current context. For example, if the device was created with the D3D11_CREATE_DEVICE_SINGLETHREADED value, CreateDeferredContext2 returns .
  • Returns E_INVALIDARG if the ContextFlags parameter is invalid.
  • Returns E_OUTOFMEMORY if the app has exhausted available memory.
+ +

A deferred context is a thread-safe context that you can use to record graphics commands on a thread other than the main rendering thread. By using a deferred context, you can record graphics commands into a command list that is encapsulated by the interface. After you record all scene items, you can then submit them to the main render thread for final rendering. In this manner, you can perform rendering tasks concurrently across multiple threads and potentially improve performance in multi-core CPU scenarios.

You can create multiple deferred contexts.

Note?? If you use the D3D11_CREATE_DEVICE_SINGLETHREADED value to create the device, CreateDeferredContext2 fails with , and you can't create a deferred context.?

For more information about deferred contexts, see Immediate and Deferred Rendering.

+
+ dn280495 + HRESULT ID3D11Device2::CreateDeferredContext2([In] unsigned int ContextFlags,[Out, Fast] ID3D11DeviceContext2** ppDeferredContext) + ID3D11Device2::CreateDeferredContext2 +
+ + +

Gets info about how a tiled resource is broken into tiles.

+
+

A reference to the tiled resource to get info about.

+

A reference to a variable that receives the number of tiles needed to store the entire tiled resource.

+

A reference to a structure that GetResourceTiling fills with info about how the tiled resource's mipmaps are packed.

+

A reference to a structure that GetResourceTiling fills with info about the tile shape. This is info about how pixels fit in the tiles, independent of tiled resource's dimensions, not including packed mipmaps. If the entire tiled resource is packed, this parameter is meaningless because the tiled resource has no defined layout for packed mipmaps. In this situation, GetResourceTiling sets the members of to zeros.

+

A reference to a variable that contains the number of tiles in the subresource. On input, this is the number of subresources to query tilings for; on output, this is the number that was actually retrieved at pSubresourceTilingsForNonPackedMips (clamped to what's available).

+

The number of the first subresource tile to get. GetResourceTiling ignores this parameter if the number that pNumSubresourceTilings points to is 0.

+

A reference to a structure that GetResourceTiling fills with info about subresource tiles.

If subresource tiles are part of packed mipmaps, GetResourceTiling sets the members of to zeros, except the StartTileIndexInOverallResource member, which GetResourceTiling sets to D3D11_PACKED_TILE (0xffffffff). The D3D11_PACKED_TILE constant indicates that the whole structure is meaningless for this situation, and the info that the pPackedMipDesc parameter points to applies.

+ +

For more info about tiled resources, see Tiled resources.

+
+ dn280497 + void ID3D11Device2::GetResourceTiling([In] ID3D11Resource* pTiledResource,[Out, Optional] unsigned int* pNumTilesForEntireResource,[Out, Optional] D3D11_PACKED_MIP_DESC* pPackedMipDesc,[Out, Optional] D3D11_TILE_SHAPE* pStandardTileShapeForNonPackedMips,[InOut] unsigned int* pNumSubresourceTilings,[In] unsigned int FirstSubresourceTilingToGet,[Out, Buffer] D3D11_SUBRESOURCE_TILING* pSubresourceTilingsForNonPackedMips) + ID3D11Device2::GetResourceTiling +
+ + +

Get the number of quality levels available during multisampling.

+
+

The texture format during multisampling.

+

The number of samples during multisampling.

+

A combination of D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAGS values that are combined by using a bitwise OR operation. Currently, only D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE is supported.

+

A reference to a variable the receives the number of quality levels supported by the adapter. See Remarks.

+ +

When you multisample a texture, the number of quality levels available for an adapter is dependent on the texture format that you use and the number of samples that you request. The maximum number of quality levels is defined by in D3D11.h. If this method returns 0, the format and sample count combination is not supported for the installed adapter.

Furthermore, the definition of a quality level is up to each hardware vendor to define, however no facility is provided by Direct3D to help discover this information.

Note that FEATURE_LEVEL_10_1 devices are required to support 4x MSAA for all render targets except R32G32B32A32 and R32G32B32. FEATURE_LEVEL_11_0 devices are required to support 4x MSAA for all render target formats, and 8x MSAA for all render target formats except R32G32B32A32 formats.

+
+ dn280494 + HRESULT ID3D11Device2::CheckMultisampleQualityLevels1([In] DXGI_FORMAT Format,[In] unsigned int SampleCount,[In] unsigned int Flags,[Out] unsigned int* pNumQualityLevels) + ID3D11Device2::CheckMultisampleQualityLevels1 +
+ + + + + +

Gets an immediate context, which can play back command lists.

+
+ +

The GetImmediateContext3 method outputs an object that represents an immediate context, which is used to perform rendering that you want immediately submitted to a device. For most apps, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext3 method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ dn912872 + GetImmediateContext3 + GetImmediateContext3 +
+ + +

Creates a 2D texture.

+
+ No documentation. + No documentation. + No documentation. +

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

CreateTexture2D1 creates a 2D texture resource, which can contain a number of 2D subresources. The number of subresources is specified in the texture description. All textures in a resource must have the same format, size, and number of mipmap levels.

All resources are made up of one or more subresources. To load data into the texture, applications can supply the data initially as an array of structures pointed to by pInitialData, or they can use one of the D3DX texture functions such as D3DX11CreateTextureFromFile.

For a 32 x 32 texture with a full mipmap chain, the pInitialData array has the following 6 elements: +

  • pInitialData[0] = 32x32
  • pInitialData[1] = 16x16
  • pInitialData[2] = 8x8
  • pInitialData[3] = 4x4 +
  • pInitialData[4] = 2x2 +
  • pInitialData[5] = 1x1 +
+
+ dn899229 + HRESULT ID3D11Device3::CreateTexture2D1([In] const D3D11_TEXTURE2D_DESC1* pDesc1,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D1** ppTexture2D) + ID3D11Device3::CreateTexture2D1 +
+ + +

Creates a 3D texture.

+
+ No documentation. + No documentation. + No documentation. +

If the method succeeds, the return code is . See Direct3D 11 Return Codes for failing error codes.

+ +

CreateTexture3D1 creates a 3D texture resource, which can contain a number of 3D subresources. The number of textures is specified in the texture description. All textures in a resource must have the same format, size, and number of mipmap levels.

All resources are made up of one or more subresources. To load data into the texture, applications can supply the data initially as an array of structures pointed to by pInitialData, or they can use one of the D3DX texture functions such as D3DX11CreateTextureFromFile.

Each element of pInitialData provides all of the slices that are defined for a given miplevel. For example, for a 32 x 32 x 4 volume texture with a full mipmap chain, the array has the following 6 elements:

  • pInitialData[0] = 32x32 with 4 slices
  • pInitialData[1] = 16x16 with 2 slices
  • pInitialData[2] = 8x8 with 1 slice
  • pInitialData[3] = 4x4 + with 1 slice
  • pInitialData[4] = 2x2 + with 1 slice
  • pInitialData[5] = 1x1 + with 1 slice
+
+ dn899231 + HRESULT ID3D11Device3::CreateTexture3D1([In] const D3D11_TEXTURE3D_DESC1* pDesc1,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture3D1** ppTexture3D) + ID3D11Device3::CreateTexture3D1 +
+ + +

Creates a rasterizer state object that informs the rasterizer stage how to behave and forces the sample count while UAV rendering or rasterizing.

+
+ No documentation. + No documentation. +

This method returns E_OUTOFMEMORY if there is insufficient memory to create the rasterizer state object. See Direct3D 11 Return Codes for other possible return values.

+ dn899221 + HRESULT ID3D11Device3::CreateRasterizerState2([In] const D3D11_RASTERIZER_DESC2* pRasterizerDesc,[Out, Fast] ID3D11RasterizerState2** ppRasterizerState) + ID3D11Device3::CreateRasterizerState2 +
+ + +

Creates a shader-resource view for accessing data in a resource.

+
+

Pointer to the resource that will serve as input to a shader. This resource must have been created with the D3D11_BIND_SHADER_RESOURCE flag.

+

A reference to a structure that describes a shader-resource view. Set this parameter to null to create a view that accesses the entire resource (using the format the resource was created with).

+

A reference to a memory block that receives a reference to a interface for the created shader-resource view. Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the shader-resource view. See Direct3D 11 Return Codes for other possible return values.

+ dn899227 + HRESULT ID3D11Device3::CreateShaderResourceView1([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc1,[Out, Fast] ID3D11ShaderResourceView1** ppSRView1) + ID3D11Device3::CreateShaderResourceView1 +
+ + +

Creates a view for accessing an unordered access resource.

+
+ No documentation. + No documentation. + No documentation. +

This method returns E_OUTOFMEMORY if there is insufficient memory to create the unordered-access view. See Direct3D 11 Return Codes for other possible return values.

+ dn899232 + HRESULT ID3D11Device3::CreateUnorderedAccessView1([In] ID3D11Resource* pResource,[In, Optional] const D3D11_UNORDERED_ACCESS_VIEW_DESC1* pDesc1,[Out, Fast] ID3D11UnorderedAccessView1** ppUAView1) + ID3D11Device3::CreateUnorderedAccessView1 +
+ + +

Creates a render-target view for accessing resource data.

+
+

Pointer to a that represents a render target. This resource must have been created with the D3D11_BIND_RENDER_TARGET flag.

+

Pointer to a that represents a render-target view description. Set this parameter to null to create a view that accesses all of the subresources in mipmap level 0.

+

A reference to a memory block that receives a reference to a interface for the created render-target view. Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns one of the Direct3D 11 Return Codes.

+ +

A render-target view can be bound to the output-merger stage by calling ID3D11DeviceContext::OMSetRenderTargets.

+
+ dn899224 + HRESULT ID3D11Device3::CreateRenderTargetView1([In] ID3D11Resource* pResource,[In, Optional] const D3D11_RENDER_TARGET_VIEW_DESC1* pDesc1,[Out, Fast] ID3D11RenderTargetView1** ppRTView1) + ID3D11Device3::CreateRenderTargetView1 +
+ + +

Creates a query object for querying information from the graphics processing unit (GPU).

+
+

Pointer to a structure that represents a query description.

+

A reference to a memory block that receives a reference to a interface for the created query object. Set this parameter to null to validate the other input parameters (the method will return S_FALSE if the other input parameters pass validation).

+

This method returns E_OUTOFMEMORY if there is insufficient memory to create the query object. See Direct3D 11 Return Codes for other possible return values.

+ dn899220 + HRESULT ID3D11Device3::CreateQuery1([In] const D3D11_QUERY_DESC1* pQueryDesc1,[Out, Fast] ID3D11Query1** ppQuery1) + ID3D11Device3::CreateQuery1 +
+ + +

Gets an immediate context, which can play back command lists.

+
+ No documentation. + +

The GetImmediateContext3 method outputs an object that represents an immediate context, which is used to perform rendering that you want immediately submitted to a device. For most apps, an immediate context is the primary object that is used to draw your scene.

The GetImmediateContext3 method increments the reference count of the immediate context by one. Therefore, you must call Release on the returned interface reference when you are done with it to avoid a memory leak.

+
+ dn912872 + void ID3D11Device3::GetImmediateContext3([Out] ID3D11DeviceContext3** ppImmediateContext) + ID3D11Device3::GetImmediateContext3 +
+ + +

Creates a deferred context, which can record command lists.

+
+ No documentation. + No documentation. +

Returns if successful; otherwise, returns one of the following:

  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred. If this error occurs, you should destroy and recreate the device.
  • Returns if the CreateDeferredContext3 method can't be called from the current context. For example, if the device was created with the D3D11_CREATE_DEVICE_SINGLETHREADED value, CreateDeferredContext3 returns .
  • Returns E_INVALIDARG if the ContextFlags parameter is invalid.
  • Returns E_OUTOFMEMORY if the app has exhausted available memory.
+ dn912871 + HRESULT ID3D11Device3::CreateDeferredContext3([In] unsigned int ContextFlags,[Out, Fast] ID3D11DeviceContext3** ppDeferredContext) + ID3D11Device3::CreateDeferredContext3 +
+ + +

Copies data into a D3D11_USAGE_DEFAULT texture which was mapped using ID3D11DeviceContext3::Map while providing a null parameter.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

The provided resource must be a D3D11_USAGE_DEFAULT texture which was mapped for writing by a previous call to ID3D11DeviceContext3::Map while providing a null parameter.

This API is intended for calling at high frequency. Callers can reduce memory by making iterative calls that update progressive regions of the texture, while provide a small buffer during each call. It is most efficient to specify large enough regions, though, because this enables D3D to fill whole cache lines in the texture before returning.

For efficiency, ensure the bounds and alignment of the extents within the box are ( 64 / [bytes per pixel] ) pixels horizontally. Vertical bounds and alignment should be 2 rows, except when 1-byte-per-pixel formats are used, in which case 4 rows are recommended. Single depth slices per call are handled efficiently. It is recommended but not necessary to provide references and strides which are 128-byte aligned.

When writing to sub mipmap levels, it is recommended to use larger width and heights than described above. This is because small mipmap levels may actually be stored within a larger block of memory, with an opaque amount of offsetting which can interfere with alignment to cache lines.

+
+ dn912874 + void ID3D11Device3::WriteToSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + ID3D11Device3::WriteToSubresource +
+ + +

Copies data from a D3D11_USAGE_DEFAULT texture which was mapped using ID3D11DeviceContext3::Map while providing a null parameter.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

The provided resource must be a D3D11_USAGE_DEFAULT texture which was mapped for writing by a previous call to ID3D11DeviceContext3::Map while providing a null parameter.

This API is intended for calling at high frequency. Callers can reduce memory by making iterative calls that update progressive regions of the texture, while provide a small buffer during each call. It is most efficient to specify large enough regions, though, because this enables D3D to fill whole cache lines in the texture before returning.

For efficiency, ensure the bounds and alignment of the extents within the box are ( 64 / [Bytes per pixel] ) pixels horizontally. Vertical bounds and alignment should be 2 rows, except when 1-byte-per-pixel formats are used, in which case 4 rows are recommended. Single depth slices per call are handled efficiently. It is recommended but not necessary to provide references and strides which are 128-byte aligned.

When reading from sub mipmap levels, it is recommended to use larger width and heights than described above. This is because small mipmap levels may actually be stored within a larger block of memory, with an opaque amount of offseting which can interfere with alignment to cache lines.

+
+ dn912873 + void ID3D11Device3::ReadFromSubresource([In, Value] void* pDstData,[In] unsigned int DstRowPitch,[In] unsigned int DstDepthPitch,[In] ID3D11Resource* pSrcResource,[In] unsigned int SrcSubresource,[In, Optional] const D3D11_BOX* pSrcBox) + ID3D11Device3::ReadFromSubresource +
+ + + Opens a handle for a shared fence by using resourceHandle. + + The handle that was returned by a call to ID3D11Fence::CreateSharedHandle or ID3D12Device::CreateSharedHandle + Fence + + + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + HRESULT ID3D11Device5::OpenSharedFence([In] void* hFence,[In] const GUID& ReturnedInterface,[Out, Optional] void** ppFence) + ID3D11Device5::OpenSharedFence + + + +

The device interface represents a virtual adapter; it is used to create resources. adds new methods to those in .

Note??This interface, introduced in the Windows 10 Creators Update, is the latest version of the interface. Applications targetting Windows 10 Creators Update should use this interface instead of earlier versions.? +
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + mt492478 + HRESULT ID3D11Device5::CreateFence([In] unsigned longlong InitialValue,[In] D3D11_FENCE_FLAG Flags,[In] const GUID& ReturnedInterface,[Out, Fast] void** ppFence) + ID3D11Device5::CreateFence +
+ + + Gets or sets the debug-name for this object. + + + The debug name. + + + + + + + + + + +

Get a reference to the device that created this interface.

+
+ +

Any returned interfaces will have their reference count incremented by one, so be sure to call ::release() on the returned reference(s) before they are freed or else you will have a memory leak.

+
+ ff476381 + GetDevice + GetDevice +
+ + +

Get a reference to the device that created this interface.

+
+

Address of a reference to a device (see ).

+ +

Any returned interfaces will have their reference count incremented by one, so be sure to call ::release() on the returned reference(s) before they are freed or else you will have a memory leak.

+
+ ff476381 + void ID3D11DeviceChild::GetDevice([Out] ID3D11Device** ppDevice) + ID3D11DeviceChild::GetDevice +
+ + +

Get application-defined data from a device child.

+
+

Guid associated with the data.

+

A reference to a variable that on input contains the size, in bytes, of the buffer that pData points to, and on output contains the size, in bytes, of the amount of data that GetPrivateData retrieved.

+

A reference to a buffer that GetPrivateData fills with data from the device child if pDataSize points to a value that specifies a buffer large enough to hold the data.

+

This method returns one of the Direct3D 11 Return Codes.

+ +

The data stored in the device child is set by calling ID3D11DeviceChild::SetPrivateData.

Windows?Phone?8: This API is supported.

+
+ ff476382 + HRESULT ID3D11DeviceChild::GetPrivateData([In] const GUID& guid,[InOut] unsigned int* pDataSize,[Out, Buffer, Optional] void* pData) + ID3D11DeviceChild::GetPrivateData +
+ + +

Set application-defined data to a device child and associate that data with an application-defined guid.

+
+

Guid associated with the data.

+

Size of the data.

+

Pointer to the data to be stored with this device child. If pData is null, DataSize must also be 0, and any data previously associated with the specified guid will be destroyed.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The data stored in the device child with this method can be retrieved with ID3D11DeviceChild::GetPrivateData.

The debug layer reports memory leaks by outputting a list of object interface references along with their friendly names. The default friendly name is "<unnamed>". You can set the friendly name so that you can determine if the corresponding object interface reference caused the leak. To set the friendly name, use the SetPrivateData method and the that is in D3Dcommon.h. For example, to give pContext a friendly name of My name, use the following code:

 static const char c_szName[] = "My name";
+            hr = pContext->SetPrivateData( , sizeof( c_szName ) - 1, c_szName );
+            
+
+ ff476383 + HRESULT ID3D11DeviceChild::SetPrivateData([In] const GUID& guid,[In] unsigned int DataSize,[In, Buffer, Optional] const void* pData) + ID3D11DeviceChild::SetPrivateData +
+ + +

Associate an -derived interface with this device child and associate that interface with an application-defined guid.

+
+

Guid associated with the interface.

+

Pointer to an -derived interface to be associated with the device child.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

When this method is called ::addref() will be called on the -derived interface, and when the device child is detroyed ::release() will be called on the -derived interface.

+
+ ff476384 + HRESULT ID3D11DeviceChild::SetPrivateDataInterface([In] const GUID& guid,[In, Optional] const IUnknown* pData) + ID3D11DeviceChild::SetPrivateDataInterface +
+ + + Common Shader class. Provides a common set of methods for a Shader Stage. + TODO: check if usage of abstract is not introducing an unacceptable overhead... + + + Functions + + + + + Initializes a new instance of the class. + + The pointer. + + + + Gets the constant buffers used by the shader stage. + + Index into the device's zero-based array from which to begin retrieving constant buffers. + Number of buffers to retrieve. + An array of constant buffers. + + + + Gets the sampler states used by the shader stage. + + Index into the device's zero-based array from which to begin retrieving samplers. + Number of samplers to retrieve. + An array of sampler states. + + + + Gets the shader resources used by the shader stage. + + Index into the device's zero-based array from which to begin retrieving shader resources. + Number of resources to retrieve. + An array of shader resources. + + + + Sets a single constant buffer to be used by the shader stage. + + Index into the device's zero-based array to which to set the constant buffer. + constant buffer to set + + + + Sets an array of constant buffers to be used by the shader stage. + + Index into the device's zero-based array to which to set the array of constant buffers. + An array of constant buffer to set + + + + Sets an array of constant buffers to be used by the shader stage. + + Index into the device's zero-based array to which to set the array of constant buffers. + An array of constant buffer to set + + + + Sets a single sampler to be used by the shader stage. + + Index into the device's zero-based array to which to set the sampler. + sampler state to set + + + + Sets an array of samplers to be used by the shader stage. + + Index into the device's zero-based array to which to set the array of sampler states. + An array of sampler state to set + + + + Sets an array of samplers to be used by the shader stage. + + Index into the device's zero-based array to which to set the array of sampler states. + An array of sampler state to set + + + + Sets a single shader resource to be used by the shader stage. + + Index into the device's zero-based array to which to set the resource. + Resource view to attach + + + + Bind an array of shader resources to the shader stage. + + + If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see . The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + Array of {{shader resource view}} interfaces to set to the device. + + + + Bind an array of shader resources to the shader stage. + + + If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see . The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + Array of {{shader resource view}} interfaces to set to the device. + + + + Get the shader resources. + + + Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks. + + Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot). + Array of {{shader resource view}} interfaces to be returned by the device. + void PSGetShaderResources([In] UINT StartSlot,[In] UINT NumViews,[Out, Buffer] ID3D11ShaderResourceView** ppShaderResourceViews) + + + + Get an array of sampler states from the shader pipeline stage. + + + Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks. + + Index into a zero-based array to begin getting samplers from (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1). + Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot). + Array of sampler-state interface pointers (see ) to be returned by the device. + void PSGetSamplers([In] UINT StartSlot,[In] UINT NumSamplers,[Out, Buffer] ID3D11SamplerState** ppSamplers) + + + + Get the constant buffers used by the shader pipeline stage. + + + Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks. + + Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1). + Number of buffers to retrieve (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot). + Array of constant buffer interface pointers (see ) to be returned by the method. + void PSGetConstantBuffers([In] UINT StartSlot,[In] UINT NumBuffers,[Out, Buffer] ID3D11Buffer** ppConstantBuffers) + + + + Bind an array of shader resources to the shader stage. + + + If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see . The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot). + Array of {{shader resource view}} interfaces to set to the device. + void PSSetShaderResources([In] UINT StartSlot,[In] UINT NumViews,[In, Buffer] const ID3D11ShaderResourceView** ppShaderResourceViews) + + + + Bind an array of shader resources to the shader stage. + + + If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see . The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot). + Array of {{shader resource view}} interfaces to set to the device. + void PSSetShaderResources([In] UINT StartSlot,[In] UINT NumViews,[In, Buffer] const ID3D11ShaderResourceView** ppShaderResourceViews) + + + + Bind an array of shader resources to the shader stage. + + + If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see . The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1). + Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot). + Array of {{shader resource view}} interfaces to set to the device. + void PSSetShaderResources([In] UINT StartSlot,[In] UINT NumViews,[In, Buffer] const ID3D11ShaderResourceView** ppShaderResourceViews) + + + + Set an array of sampler states to the shader pipeline stage. + + + Any sampler may be set to NULL; this invokes the default state, which is defined to be the following.StateDefault ValueFilterD3D11_FILTER_MIN_MAG_MIP_LINEARAddressUD3D11_TEXTURE_ADDRESS_CLAMPAddressVD3D11_TEXTURE_ADDRESS_CLAMPAddressWD3D11_TEXTURE_ADDRESS_CLAMPMipLODBias0MaxAnisotropy1ComparisonFuncD3D11_COMPARISON_NEVERBorderColor[0]1.0fBorderColor[1]1.0fBorderColor[2]1.0fBorderColor[3]1.0fMinLOD-FLT_MAXMaxLODFLT_MAX The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting samplers to (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1). + Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot). + Pointer to an array of sampler-state interfaces (see ). See Remarks. + void PSSetSamplers([In] UINT StartSlot,[In] UINT NumSamplers,[In, Buffer] const ID3D11SamplerState** ppSamplers) + + + + Set an array of sampler states to the shader pipeline stage. + + + Any sampler may be set to NULL; this invokes the default state, which is defined to be the following.StateDefault ValueFilterD3D11_FILTER_MIN_MAG_MIP_LINEARAddressUD3D11_TEXTURE_ADDRESS_CLAMPAddressVD3D11_TEXTURE_ADDRESS_CLAMPAddressWD3D11_TEXTURE_ADDRESS_CLAMPMipLODBias0MaxAnisotropy1ComparisonFuncD3D11_COMPARISON_NEVERBorderColor[0]1.0fBorderColor[1]1.0fBorderColor[2]1.0fBorderColor[3]1.0fMinLOD-FLT_MAXMaxLODFLT_MAX The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting samplers to (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1). + Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot). + Pointer to an array of sampler-state interfaces (see ). See Remarks. + void PSSetSamplers([In] UINT StartSlot,[In] UINT NumSamplers,[In, Buffer] const ID3D11SamplerState** ppSamplers) + + + + Set the constant buffers used by the shader pipeline stage. + + + The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1). + Number of buffers to set (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot). + Array of constant buffers (see ) being given to the device. + void PSSetConstantBuffers([In] UINT StartSlot,[In] UINT NumBuffers,[In, Buffer] const ID3D11Buffer** ppConstantBuffers) + + + + Set the constant buffers used by the shader pipeline stage. + + + The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1). + Number of buffers to set (ranges from 0 to D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot). + Array of constant buffers (see ) being given to the device. + void PSSetConstantBuffers([In] UINT StartSlot,[In] UINT NumBuffers,[In, Buffer] const ID3D11Buffer** ppConstantBuffers) + + + Constant ConstantBufferApiSlotCount + D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT + + + Constant ConstantBufferComponents + D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS + + + Constant ConstantBufferComponentBitCount + D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT + + + Constant ConstantBufferHwSlotCount + D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT + + + Constant ConstantBufferPartialUpdateExtentsByteAlignment + D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT + + + Constant ConstantBufferRegisterComponents + D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS + + + Constant ConstantBufferRegisterCount + D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT + + + Constant ConstantBufferRegisterReadsPerInst + D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST + + + Constant ConstantBufferRegisterReadPorts + D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS + + + Constant FlowcontrolNestingLimit + D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT + + + Constant ImmediateConstantBufferRegisterComponents + D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS + + + Constant ImmediateConstantBufferRegisterCount + D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT + + + Constant ImmediateConstantBufferRegisterReadsPerInst + D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST + + + Constant ImmediateConstantBufferRegisterReadPorts + D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS + + + Constant ImmediateValueComponentBitCount + D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT + + + Constant InputResourceRegisterComponents + D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS + + + Constant InputResourceRegisterCount + D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT + + + Constant InputResourceRegisterReadsPerInst + D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST + + + Constant InputResourceRegisterReadPorts + D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS + + + Constant InputResourceSlotCount + D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT + + + Constant SamplerRegisterComponents + D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS + + + Constant SamplerRegisterCount + D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT + + + Constant SamplerRegisterReadsPerInst + D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST + + + Constant SamplerRegisterReadPorts + D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS + + + Constant SamplerSlotCount + D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT + + + Constant SubRoutineNestingLimit + D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT + + + Constant TempRegisterComponents + D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS + + + Constant TempRegisterComponentBitCount + D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT + + + Constant TempRegisterCount + D3D11_COMMONSHADER_TEMP_REGISTER_COUNT + + + Constant TempRegisterReadsPerInst + D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST + + + Constant TempRegisterReadPorts + D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS + + + Constant TextureCoordRangeReductionMaximum + D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX + + + Constant TextureCoordRangeReductionMinimum + D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN + + + Constant TextureElOffsetMaximumNegative + D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE + + + Constant TextureElOffsetMaximumPositive + D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE + + + + Common Shader class. Provides a common set of methods for a Shader Stage. + TODO: check if usage of abstract is not introducing an unacceptable overhead... + + Type of the shader + + + + Initializes a new instance of the class. + + The pointer. + + + + Gets the shader currently assigned to the device. + + The shader (null if no shader is assigned). + + + + Gets the shader currently assigned to the device. + + An array that will be used to contain any class instances currently active. + The shader (null if no shader is assigned). + + + + Assigns a compute shader to the device. + + The shader to assign to the device. Assign null to disable the compute shader. + + + + Assigns a compute shader to the device. + + The shader to assign to the device. Assign null to disable the compute shader. + An array of class-instance interfaces. Each interface used by a shader must have a corresponding class instance or the shader will get disabled. + + + + Assigns a compute shader to the device. + + The shader to assign to the device. Assign null to disable the compute shader. + An array of class-instance interfaces. Each interface used by a shader must have a corresponding class instance or the shader will get disabled. + + + + Gets an array of views for an unordered resource. + + + Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks. + + Index of the first element in the zero-based array to return (ranges from 0 to D3D11_PS_CS_UAV_REGISTER_COUNT - 1). + Number of views to get (ranges from 0 to D3D11_PS_CS_UAV_REGISTER_COUNT - StartSlot). + void CSGetUnorderedAccessViews([In] int StartSlot,[In] int NumUAVs,[Out, Buffer] ID3D11UnorderedAccessView** ppUnorderedAccessViews) + + + + Sets an array of views for an unordered resource. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an references to be set by the method. + void CSSetUnorderedAccessViews([In] int StartSlot,[In] int NumUAVs,[In, Buffer] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer] const int* pUAVInitialCounts) + + + + Sets an array of views for an unordered resource. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an references to be set by the method. + An Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. uAVInitialCount is only relevant for UAVs which have the flag, otherwise the argument is ignored. + void CSSetUnorderedAccessViews([In] int StartSlot,[In] int NumUAVs,[In, Buffer] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer] const int* pUAVInitialCounts) + + + + Sets an array of views for an unordered resource. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an array of references to be set by the method. + void CSSetUnorderedAccessViews([In] int StartSlot,[In] int NumUAVs,[In, Buffer] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer] const int* pUAVInitialCounts) + + + + Sets an array of views for an unordered resource. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an array of references to be set by the method. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. pUAVInitialCounts is only relevant for UAVs which have the flag, otherwise the argument is ignored. + void CSSetUnorderedAccessViews([In] int StartSlot,[In] int NumUAVs,[In, Buffer] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer] const int* pUAVInitialCounts) + + + Constant UnorderedAccessViewSlotCount + D3D11_PS_CS_UAV_REGISTER_COUNT + + + Constant DispatchMaximumThreadGroupsPerDimension + D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION + + + Constant ThreadGroupSharedMemoryRegisterCount + D3D11_CS_TGSM_REGISTER_COUNT + + + Constant ThreadGroupSharedMemoryRegisterReadsPerInst + D3D11_CS_TGSM_REGISTER_READS_PER_INST + + + Constant ThreadGroupSharedMemoryResourceRegisterComponents + D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS + + + Constant ThreadGroupSharedMemoryResourceRegisterReadPorts + D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS + + + Constant ThreadgroupidRegisterComponents + D3D11_CS_THREADGROUPID_REGISTER_COMPONENTS + + + Constant ThreadgroupidRegisterCount + D3D11_CS_THREADGROUPID_REGISTER_COUNT + + + Constant ThreadidingroupflattenedRegisterComponents + D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS + + + Constant ThreadidingroupflattenedRegisterCount + D3D11_CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT + + + Constant ThreadidingroupRegisterComponents + D3D11_CS_THREADIDINGROUP_REGISTER_COMPONENTS + + + Constant ThreadidingroupRegisterCount + D3D11_CS_THREADIDINGROUP_REGISTER_COUNT + + + Constant ThreadidRegisterComponents + D3D11_CS_THREADID_REGISTER_COMPONENTS + + + Constant ThreadidRegisterCount + D3D11_CS_THREADID_REGISTER_COUNT + + + Constant ThreadGroupMaximumThreadsPerGroup + D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP + + + Constant ThreadGroupMaximumX + D3D11_CS_THREAD_GROUP_MAX_X + + + Constant ThreadGroupMaximumY + D3D11_CS_THREAD_GROUP_MAX_Y + + + Constant ThreadGroupMaximumZ + D3D11_CS_THREAD_GROUP_MAX_Z + + + Constant ThreadGroupMinimumX + D3D11_CS_THREAD_GROUP_MIN_X + + + Constant ThreadGroupMinimumY + D3D11_CS_THREAD_GROUP_MIN_Y + + + Constant ThreadGroupMinimumZ + D3D11_CS_THREAD_GROUP_MIN_Z + + + Constant ThreadLocalTempRegisterPool + D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL + + + +

Bind an array of shader resources to the compute-shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources(ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a render target, then the method will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. +

+
+ ff476403 + void ID3D11DeviceContext::CSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::CSSetShaderResources +
+ + +

Sets an array of views for an unordered resource.

+
+

Index of the first element in the zero-based array to begin setting (ranges from 0 to D3D11_1_UAV_SLOT_COUNT - 1). D3D11_1_UAV_SLOT_COUNT is defined as 64.

+

Number of views to set (ranges from 0 to D3D11_1_UAV_SLOT_COUNT - StartSlot).

+

A reference to an array of references to be set by the method.

+

An array of append and consume buffer offsets. A value of -1 indicates to keep the current offset. Any other values set the hidden counter for that appendable and consumable UAV. pUAVInitialCounts is only relevant for UAVs that were created with either D3D11_BUFFER_UAV_FLAG_APPEND or D3D11_BUFFER_UAV_FLAG_COUNTER specified when the UAV was created; otherwise, the argument is ignored.

+ +

Windows?Phone?8: This API is supported.

+
+ ff476404 + void ID3D11DeviceContext::CSSetUnorderedAccessViews([In] unsigned int StartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::CSSetUnorderedAccessViews +
+ + +

Set a compute shader to the device.

+
+

Pointer to a compute shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476402 + void ID3D11DeviceContext::CSSetShader([In, Optional] ID3D11ComputeShader* pComputeShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::CSSetShader +
+ + +

Set an array of sampler states to the compute-shader stage.

+
+

Index into the device's zero-based array to begin setting samplers to (ranges from 0 to - 1).

+

Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ). See Remarks.

+ +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

//Default sampler state:
+             SamplerDesc;
+            SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
+            SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.MipLODBias = 0;
+            SamplerDesc.MaxAnisotropy = 1;
+            SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
+            SamplerDesc.BorderColor[0] = 1.0f;
+            SamplerDesc.BorderColor[1] = 1.0f;
+            SamplerDesc.BorderColor[2] = 1.0f;
+            SamplerDesc.BorderColor[3] = 1.0f;
+            SamplerDesc.MinLOD = -FLT_MAX;
+            SamplerDesc.MaxLOD = FLT_MAX; 

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476401 + void ID3D11DeviceContext::CSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::CSSetSamplers +
+ + +

Sets the constant buffers used by the compute-shader stage.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The Direct3D 11.1 runtime, which is available starting with Windows?8, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

If the application wants the shader to access other parts of the buffer, it must call the CSSetConstantBuffers1 method instead.

+
+ ff476400 + void ID3D11DeviceContext::CSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::CSSetConstantBuffers +
+ + +

Get the compute-shader resources.

+
+

Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to - 1).

+

The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476398 + void ID3D11DeviceContext::CSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::CSGetShaderResources +
+ + +

Gets an array of views for an unordered resource.

+
+

Index of the first element in the zero-based array to return (ranges from 0 to D3D11_1_UAV_SLOT_COUNT - 1).

+

Number of views to get (ranges from 0 to D3D11_1_UAV_SLOT_COUNT - StartSlot).

+

A reference to an array of interface references (see ) to get.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476399 + void ID3D11DeviceContext::CSGetUnorderedAccessViews([In] unsigned int StartSlot,[In] unsigned int NumUAVs,[Out, Buffer, Optional] ID3D11UnorderedAccessView** ppUnorderedAccessViews) + ID3D11DeviceContext::CSGetUnorderedAccessViews +
+ + +

Get the compute shader currently set on the device.

+
+

Address of a reference to a Compute shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476397 + void ID3D11DeviceContext::CSGetShader([Out, Optional] ID3D11ComputeShader** ppComputeShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::CSGetShader +
+ + +

Get an array of sampler state interfaces from the compute-shader stage.

+
+

Index into a zero-based array to begin getting samplers from (ranges from 0 to - 1).

+

Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ).

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476396 + void ID3D11DeviceContext::CSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::CSGetSamplers +
+ + +

Get the constant buffers used by the compute-shader stage.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references (see ) to be returned by the method.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476395 + void ID3D11DeviceContext::CSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::CSGetConstantBuffers +
+ + +

Set a compute shader to the device.

+
+

Pointer to a compute shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476402 + void ID3D11DeviceContext::CSSetShader([In, Optional] ID3D11ComputeShader* pComputeShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::CSSetShader +
+ + +

Set a compute shader to the device.

+
+

Pointer to a compute shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476402 + void ID3D11DeviceContext::CSSetShader([In, Optional] ID3D11ComputeShader* pComputeShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::CSSetShader +
+ + + Constructs a new deferred context . + + The device with which to associate the state object. + The newly created object. + + + + Create a command list and record graphics commands into it. + + A flag indicating whether the immediate context state is saved (prior) and restored (after) the execution of a command list. + The created command list containing the queued rendering commands. + + + + Determines whether asynchronous query data is available. + + The data. + + true if asynchronous query data is available; otherwise, false. + + HRESULT ID3D11DeviceContext::GetData([In] ID3D11Asynchronous* pAsync,[Out, Buffer, Optional] void* pData,[In] unsigned int DataSize,[In] D3D11_ASYNC_GETDATA_FLAG GetDataFlags) + + + + Determines whether asynchronous query data is available. + + The data. + Optional flags + + true if asynchronous query data is available; otherwise, false. + + HRESULT ID3D11DeviceContext::GetData([In] ID3D11Asynchronous* pAsync,[Out, Buffer, Optional] void* pData,[In] unsigned int DataSize,[In] D3D11_ASYNC_GETDATA_FLAG GetDataFlags) + + + + Gets data from the GPU asynchronously. + + The asynchronous data provider. + The data retrieved from the GPU. + + + + Gets data from the GPU asynchronously. + + The asynchronous data provider. + The data retrieved from the GPU. + + + + Gets data from the GPU asynchronously. + + + The asynchronous data provider. + The data retrieved from the GPU. + + True if result contains valid data, false otherwise. + + + + + Gets data from the GPU asynchronously. + + The asynchronous data provider. + Flags specifying how the command should operate. + The data retrieved from the GPU. + + + + Gets data from the GPU asynchronously. + + The asynchronous data provider. + Flags specifying how the command should operate. + The data retrieved from the GPU. + + + + Gets data from the GPU asynchronously. + + + The asynchronous data provider. + Flags specifying how the command should operate. + The data retrieved from the GPU. + + True if result contains valid data, false otherwise. + + + + + Copy the entire contents of the source resource to the destination resource using the GPU. + + + This method is unusual in that it causes the GPU to perform the copy operation (similar to a memcpy by the CPU). As a result, it has a few restrictions designed for improving performance. For instance, the source and destination resources: Must be different resources. Must be the same type. Must have identical dimensions (including width, height, depth, and size as appropriate). Will only be copied. CopyResource does not support any stretch, color key, blend, or format conversions. Must have compatible DXGI formats, which means the formats must be identical or at least from the same type group. For example, a DXGI_FORMAT_R32G32B32_FLOAT texture can be copied to an DXGI_FORMAT_R32G32B32_UINT texture since both of these formats are in the DXGI_FORMAT_R32G32B32_TYPELESS group. Might not be currently mapped. You cannot use an {{Immutable}} resource as a destination. You can use a {{depth-stencil}} resource as either a source or a destination. Resources created with multisampling capability (see ) can be used as source and destination only if both source and destination have identical multisampled count and quality. If source and destination differ in multisampled count and quality or if one is multisampled and the other is not multisampled the call to ID3D11DeviceContext::CopyResource fails. The method is an asynchronous call which may be added to the command-buffer queue. This attempts to remove pipeline stalls that may occur when copying data. An application that only needs to copy a portion of the data in a resource should use instead. + + A reference to the source resource (see ). + A reference to the destination resource (see ). + void ID3D11DeviceContext::CopyResource([In] ID3D11Resource* pDstResource,[In] ID3D11Resource* pSrcResource) + ff476392 + void ID3D11DeviceContext::CopyResource([In] ID3D11Resource* pDstResource,[In] ID3D11Resource* pSrcResource) + ID3D11DeviceContext::CopyResource + + + + Copy a region from a source resource to a destination resource. + + + The source box must be within the size of the source resource. The destination offsets, (x, y, and z) allow the source box to be offset when writing into the destination resource; however, the dimensions of the source box and the offsets must be within the size of the resource. If the resources are buffers, all coordinates are in bytes; if the resources are textures, all coordinates are in texels. {{D3D11CalcSubresource}} is a helper function for calculating subresource indexes. CopySubresourceRegion performs the copy on the GPU (similar to a memcpy by the CPU). As a consequence, the source and destination resources: Must be different subresources (although they can be from the same resource). Must be the same type. Must have compatible DXGI formats (identical or from the same type group). For example, a DXGI_FORMAT_R32G32B32_FLOAT texture can be copied to an DXGI_FORMAT_R32G32B32_UINT texture since both of these formats are in the DXGI_FORMAT_R32G32B32_TYPELESS group. May not be currently mapped. CopySubresourceRegion only supports copy; it does not support any stretch, color key, blend, or format conversions. An application that needs to copy an entire resource should use instead. CopySubresourceRegion is an asynchronous call which may be added to the command-buffer queue, this attempts to remove pipeline stalls that may occur when copying data. See performance considerations for more details. Note??If you use CopySubresourceRegion with a depth-stencil buffer or a multisampled resource, you must copy the whole subresource. In this situation, you must pass 0 to the DstX, DstY, and DstZ parameters and NULL to the pSrcBox parameter. In addition, source and destination resources, which are represented by the pSrcResource and pDstResource parameters, should have identical sample count values. Example The following code snippet copies a box (located at (120,100),(200,220)) from a source texture into a region (10,20),(90,140) in a destination texture. + D3D11_BOX sourceRegion; + sourceRegion.left = 120; + sourceRegion.right = 200; + sourceRegion.top = 100; + sourceRegion.bottom = 220; + sourceRegion.front = 0; + sourceRegion.back = 1; pd3dDeviceContext->CopySubresourceRegion( pDestTexture, 0, 10, 20, 0, pSourceTexture, 0, &sourceRegion ); + + Notice, that for a 2D texture, front and back are set to 0 and 1 respectively. + + A reference to the source resource (see ). + Source subresource index. + A reference to a 3D box (see ) that defines the source subresources that can be copied. If NULL, the entire source subresource is copied. The box must fit within the source resource. + A reference to the destination resource (see ). + Destination subresource index. + The x-coordinate of the upper left corner of the destination region. + The y-coordinate of the upper left corner of the destination region. For a 1D subresource, this must be zero. + The z-coordinate of the upper left corner of the destination region. For a 1D or 2D subresource, this must be zero. + ff476394 + void ID3D11DeviceContext::CopySubresourceRegion([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In] unsigned int DstX,[In] unsigned int DstY,[In] unsigned int DstZ,[In] ID3D11Resource* pSrcResource,[In] unsigned int SrcSubresource,[In, Optional] const D3D11_BOX* pSrcBox) + ID3D11DeviceContext::CopySubresourceRegion + + + + Copy a multisampled resource into a non-multisampled resource. + + + This API is most useful when re-using the resulting render target of one render pass as an input to a second render pass. The source and destination resources must be the same resource type and have the same dimensions. In addition, they must have compatible formats. There are three scenarios for this: ScenarioRequirements Source and destination are prestructured and typedBoth the source and destination must have identical formats and that format must be specified in the Format parameter. One resource is prestructured and typed and the other is prestructured and typelessThe typed resource must have a format that is compatible with the typeless resource (i.e. the typed resource is DXGI_FORMAT_R32_FLOAT and the typeless resource is DXGI_FORMAT_R32_TYPELESS). The format of the typed resource must be specified in the Format parameter. Source and destination are prestructured and typelessBoth the source and destination must have the same typeless format (i.e. both must have DXGI_FORMAT_R32_TYPELESS), and the Format parameter must specify a format that is compatible with the source and destination (i.e. if both are DXGI_FORMAT_R32_TYPELESS then DXGI_FORMAT_R32_FLOAT could be specified in the Format parameter). For example, given the DXGI_FORMAT_R16G16B16A16_TYPELESS format: The source (or dest) format could be DXGI_FORMAT_R16G16B16A16_UNORM The dest (or source) format could be DXGI_FORMAT_R16G16B16A16_FLOAT ? + + Source resource. Must be multisampled. + >The source subresource of the source resource. + Destination resource. Must be a created with the flag and be single-sampled. See . + A zero-based index, that identifies the destination subresource. Use {{D3D11CalcSubresource}} to calculate the index. + A that indicates how the multisampled resource will be resolved to a single-sampled resource. See remarks. + void ID3D11DeviceContext::ResolveSubresource([In] ID3D11Resource* pDstResource,[In] int DstSubresource,[In] ID3D11Resource* pSrcResource,[In] int SrcSubresource,[In] DXGI_FORMAT Format) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The mip slice. + The array slice. + The mode. + The flags. + The output stream containing the pointer. + + The locked + + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The mip slice. + The array slice. + The mode. + The flags. + The output stream containing the pointer. + + The locked + + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The mip slice. + The array slice. + The mode. + The flags. + The output stream containing the pointer. + + The locked + + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The mode. + The flags. + The output stream containing the pointer. + + The locked + + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The mip slice. + The array slice. + The mode. + The flags. + Size of the selected miplevel. + + The locked + + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + + Maps the data contained in a subresource to a memory pointer, and denies the GPU access to that subresource. + + The resource. + The subresource. + The mode. + The flags. + The output stream containing the pointer. + The locked + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + + + +

Gets a reference to the data contained in a subresource, and denies the GPU access to that subresource.

+
+

A reference to a interface.

+

Index number of the subresource.

+

Specifies the CPU's read and write permissions for a resource. For possible values, see .

+

Flag that specifies what the CPU should do when the GPU is busy. This flag is optional.

+

A reference to the mapped subresource (see ).

+ The mapped subresource (see ). If is used and the resource is still being used by the GPU, this method return an empty DataBox whose property returns true.

This method also throws an exception with the code if MapType allows any CPU read access and the video card has been removed.

For more information about these error codes, see DXGI_ERROR.

+ +

If you call Map on a deferred context, you can only pass , , or both to the MapType parameter. Other -typed values are not supported for a deferred context.

The Direct3D 11.1 runtime, which is available starting with Windows Developer Preview, can map shader resource views (SRVs) of dynamic buffers with . The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers.

+ If is used and the resource is still being used by the GPU, this method return an empty DataBox whose property returns true. +
+ ff476457 + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] D3D11_MAP_FLAG MapFlags,[Out] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + ID3D11DeviceContext::Map +
+ + + Copies data from the CPU to to a non-mappable subresource region. + + Type of the data to upload + A reference to the data to upload. + The destination resource. + The destination subresource. + The row pitch. + The depth pitch. + The region + + This method is implementing the workaround for deferred context. + + ff476486 + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + ID3D11DeviceContext::UpdateSubresource + + + + Copies data from the CPU to to a non-mappable subresource region. + + Type of the data to upload + A reference to the data to upload. + The destination resource. + The destination subresource. + The row pitch. + The depth pitch. + A region that defines the portion of the destination subresource to copy the resource data into. Coordinates are in bytes for buffers and in texels for textures. + ff476486 + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + ID3D11DeviceContext::UpdateSubresource + This method is implementing the workaround for deferred context. + + + + Copies data from the CPU to to a non-mappable subresource region. + + The source data. + The destination resource. + The destination subresource. + + This method is implementing the workaround for deferred context. + + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + + + Copies data from the CPU to to a non-mappable subresource region. + + The source data. + The destination resource. + The destination subresource. + The destination region within the resource. + + This method is implementing the workaround for deferred context. + + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + + + Copies data from the CPU to to a non-mappable subresource region. + + Type of the data to upload + A reference to the data to upload. + The destination resource. + The size in bytes per pixel/block element. + The destination subresource. + The row pitch. + The depth pitch. + if set to true the resource is a block/compressed resource + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + This method is implementing the workaround for deferred context. + + + + + Copies data from the CPU to to a non-mappable subresource region. + + Type of the data to upload + A reference to the data to upload. + The destination resource. + The size in bytes per pixel/block element. + The destination subresource. + The row pitch. + The depth pitch. + if set to true the resource is a block/compressed resource + + This method is implementing the workaround for deferred context. + + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + + + Copies data from the CPU to to a non-mappable subresource region. + + The source data. + The destination resource. + The size in bytes per pixel/block element. + The destination subresource. + if set to true the resource is a block/compressed resource + + This method is implementing the workaround for deferred context. + + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + + + Copies data from the CPU to to a non-mappable subresource region. + + The source data. + The destination resource. + The size in bytes per pixel/block element. + The destination subresource. + The destination region within the resource. + if set to true the resource is a block/compressed resource + + This method is implementing the workaround for deferred context. + + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + + + + Updates the subresource safe method. + + The DST resource ref. + The DST subresource. + The DST box ref. + The p SRC data. + The SRC row pitch. + The SRC depth pitch. + The size in bytes per pixel/block element. + if set to true the resource is a block/compressed resource + + + This method is implementing the workaround for deferred context. + + + + Update nested inner interfaces pointer + + + Inner interface giving access to VertexShaderStage methods. + + + Inner interface giving access to PixelShaderStage methods. + + + Inner interface giving access to InputAssemblerStage methods. + + + Inner interface giving access to GeometryShaderStage methods. + + + Inner interface giving access to OutputMergerStage methods. + + + Inner interface giving access to StreamOutputStage methods. + + + Inner interface giving access to RasterizerStage methods. + + + Inner interface giving access to HullShaderStage methods. + + + Inner interface giving access to DomainShaderStage methods. + + + Inner interface giving access to ComputeShaderStage methods. + + + +

Gets the type of device context.

+
+ ff476431 + GetType + GetType +
+ + +

Gets the initialization flags associated with the current deferred context.

+
+ +

The GetContextFlags method gets the flags that were supplied to the ContextFlags parameter of ID3D11Device::CreateDeferredContext; however, the context flag is reserved for future use.

+
+ ff476427 + GetContextFlags + GetContextFlags +
+ + +

Draw indexed, non-instanced primitives.

+
+

Number of indices to draw.

+

The location of the first index read by the GPU from the index buffer.

+

A value added to each index before reading a vertex from the vertex buffer.

+ +

A draw API submits work to the rendering pipeline.

If the sum of both indices is negative, the result of the function call is undefined.

+
+ ff476409 + void ID3D11DeviceContext::DrawIndexed([In] unsigned int IndexCount,[In] unsigned int StartIndexLocation,[In] int BaseVertexLocation) + ID3D11DeviceContext::DrawIndexed +
+ + +

Draw non-indexed, non-instanced primitives.

+
+

Number of vertices to draw.

+

Index of the first vertex, which is usually an offset in a vertex buffer.

+ +

Draw submits work to the rendering pipeline.

The vertex data for a draw call normally comes from a vertex buffer that is bound to the pipeline.

Even without any vertex buffer bound to the pipeline, you can generate your own vertex data in your vertex shader by using the SV_VertexID system-value semantic to determine the current vertex that the runtime is processing.

+
+ ff476407 + void ID3D11DeviceContext::Draw([In] unsigned int VertexCount,[In] unsigned int StartVertexLocation) + ID3D11DeviceContext::Draw +
+ + +

Gets a reference to the data contained in a subresource, and denies the GPU access to that subresource.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

This method returns one of the Direct3D 11 Return Codes.

This method also returns if MapFlags specifies D3D11_MAP_FLAG_DO_NOT_WAIT and the GPU is not yet finished with the resource.

This method also returns if MapType allows any CPU read access and the video card has been removed.

For more information about these error codes, see DXGI_ERROR.

+ +

If you call Map on a deferred context, you can only pass D3D11_MAP_WRITE_DISCARD, D3D11_MAP_WRITE_NO_OVERWRITE, or both to the MapType parameter. Other -typed values are not supported for a deferred context.

Note?? The Direct3D 11.1 runtime, which is available starting with Windows?8, enables mapping dynamic constant buffers and shader resource views (SRVs) of dynamic buffers with D3D11_MAP_WRITE_NO_OVERWRITE. The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers. To determine if a Direct3D device supports these features, call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS. CheckFeatureSupport fills members of a structure with the device's features. The relevant members here are MapNoOverwriteOnDynamicConstantBuffer and MapNoOverwriteOnDynamicBufferSRV.?

For info about how to use Map, see How to: Use dynamic resources.

+
+ ff476457 + HRESULT ID3D11DeviceContext::Map([In] ID3D11Resource* pResource,[In] unsigned int Subresource,[In] D3D11_MAP MapType,[In] unsigned int MapFlags,[Out, Optional] D3D11_MAPPED_SUBRESOURCE* pMappedResource) + ID3D11DeviceContext::Map +
+ + +

Invalidate the reference to a resource and reenable the GPU's access to that resource.

+
+

A reference to a interface.

+

A subresource to be unmapped.

+ +

For info about how to use Unmap, see How to: Use dynamic resources.

Windows?Phone?8: This API is supported.

+
+ ff476485 + void ID3D11DeviceContext::Unmap([In] ID3D11Resource* pResource,[In] unsigned int Subresource) + ID3D11DeviceContext::Unmap +
+ + +

Draw indexed, instanced primitives.

+
+

Number of indices read from the index buffer for each instance.

+

Number of instances to draw.

+

The location of the first index read by the GPU from the index buffer.

+

A value added to each index before reading a vertex from the vertex buffer.

+

A value added to each index before reading per-instance data from a vertex buffer.

+ +

A draw API submits work to the rendering pipeline.

Instancing may extend performance by reusing the same geometry to draw multiple objects in a scene. One example of instancing could be to draw the same object with different positions and colors. Instancing requires multiple vertex buffers: at least one for per-vertex data and a second buffer for per-instance data.

+
+ ff476410 + void ID3D11DeviceContext::DrawIndexedInstanced([In] unsigned int IndexCountPerInstance,[In] unsigned int InstanceCount,[In] unsigned int StartIndexLocation,[In] int BaseVertexLocation,[In] unsigned int StartInstanceLocation) + ID3D11DeviceContext::DrawIndexedInstanced +
+ + +

Draw non-indexed, instanced primitives.

+
+

Number of vertices to draw.

+

Number of instances to draw.

+

Index of the first vertex.

+

A value added to each index before reading per-instance data from a vertex buffer.

+ +

A draw API submits work to the rendering pipeline.

Instancing may extend performance by reusing the same geometry to draw multiple objects in a scene. One example of instancing could be to draw the same object with different positions and colors.

The vertex data for an instanced draw call normally comes from a vertex buffer that is bound to the pipeline. However, you could also provide the vertex data from a shader that has instanced data identified with a system-value semantic (SV_InstanceID).

+
+ ff476412 + void ID3D11DeviceContext::DrawInstanced([In] unsigned int VertexCountPerInstance,[In] unsigned int InstanceCount,[In] unsigned int StartVertexLocation,[In] unsigned int StartInstanceLocation) + ID3D11DeviceContext::DrawInstanced +
+ + +

Mark the beginning of a series of commands.

+
+

A reference to an interface.

+ +

Use ID3D11DeviceContext::End to mark the ending of the series of commands.

+
+ ff476386 + void ID3D11DeviceContext::Begin([In] ID3D11Asynchronous* pAsync) + ID3D11DeviceContext::Begin +
+ + +

Mark the end of a series of commands.

+
+

A reference to an interface.

+ +

Use ID3D11DeviceContext::Begin to mark the beginning of the series of commands.

+
+ ff476422 + void ID3D11DeviceContext::End([In] ID3D11Asynchronous* pAsync) + ID3D11DeviceContext::End +
+ + +

Get data from the graphics processing unit (GPU) asynchronously.

+
+

A reference to an interface for the object about which GetData retrieves data.

+

Address of memory that will receive the data. If null, GetData will be used only to check status. The type of data output depends on the type of asynchronous interface.

+

Size of the data to retrieve or 0. Must be 0 when pData is null.

+

Optional flags. Can be 0 or any combination of the flags enumerated by .

+

This method returns one of the Direct3D 11 Return Codes. A return value of indicates that the data at pData is available for the calling application to access. A return value of S_FALSE indicates that the data is not yet available. If the data is not yet available, the application must call GetData until the data is available.

+ +

Queries in a deferred context are limited to predicated drawing. That is, you cannot call ID3D11DeviceContext::GetData on a deferred context to get data about a query; you can only call GetData on the immediate context to get data about a query. For predicated drawing, the results of a predication-type query are used by the GPU and not returned to an application. For more information about predication and predicated drawing, see D3D11DeviceContext::SetPredication.

GetData retrieves the data that the runtime collected between calls to ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. Certain queries only require a call to ID3D11DeviceContext::End in which case the data returned by GetData is accurate up to the last call to ID3D11DeviceContext::End. For information about the queries that only require a call to ID3D11DeviceContext::End and about the type of data that GetData retrieves for each query, see .

If DataSize is 0, GetData is only used to check status.

An application gathers counter data by calling ID3D11DeviceContext::Begin, issuing some graphics commands, calling ID3D11DeviceContext::End, and then calling ID3D11DeviceContext::GetData to get data about what happened in between the Begin and End calls. For information about performance counter types, see .

+
+ ff476428 + HRESULT ID3D11DeviceContext::GetData([In] ID3D11Asynchronous* pAsync,[Out, Buffer, Optional] void* pData,[In] unsigned int DataSize,[In] unsigned int GetDataFlags) + ID3D11DeviceContext::GetData +
+ + +

Set a rendering predicate.

+
+

A reference to the interface that represents the rendering predicate. A null value indicates "no" predication; in this case, the value of PredicateValue is irrelevant but will be preserved for ID3D11DeviceContext::GetPredication.

+

If TRUE, rendering will be affected by when the predicate's conditions are met. If , rendering will be affected when the conditions are not met.

+ +

The predicate must be in the "issued" or "signaled" state to be used for predication. While the predicate is set for predication, calls to ID3D11DeviceContext::Begin and ID3D11DeviceContext::End are invalid.

Use this method to denote that subsequent rendering and resource manipulation commands are not actually performed if the resulting predicate data of the predicate is equal to the PredicateValue. However, some predicates are only hints, so they may not actually prevent operations from being performed.

The primary usefulness of predication is to allow an application to issue rendering and resource manipulation commands without taking the performance hit of spinning, waiting for ID3D11DeviceContext::GetData to return. So, predication can occur while ID3D11DeviceContext::GetData returns S_FALSE. Another way to think of it: an application can also use predication as a fallback, if it is possible that ID3D11DeviceContext::GetData returns S_FALSE. If ID3D11DeviceContext::GetData returns , the application can skip calling the rendering and resource manipulation commands manually with it's own application logic.

Rendering and resource manipulation commands for Direct3D?11 include these Draw, Dispatch, Copy, Update, Clear, Generate, and Resolve operations.

  • Draw
  • DrawAuto
  • DrawIndexed
  • DrawIndexedInstanced
  • DrawIndexedInstancedIndirect
  • DrawInstanced
  • DrawInstancedIndirect
  • Dispatch
  • DispatchIndirect
  • CopyResource
  • CopyStructureCount
  • CopySubresourceRegion
  • CopySubresourceRegion1
  • CopyTiles
  • CopyTileMappings
  • UpdateSubresource
  • UpdateSubresource1
  • UpdateTiles
  • UpdateTileMappings
  • ClearRenderTargetView
  • ClearUnorderedAccessViewFloat
  • ClearUnorderedAccessViewUint
  • ClearView
  • ClearDepthStencilView
  • GenerateMips
  • ResolveSubresource

You can set a rendering predicate on an immediate or a deferred context. For info about immediate and deferred contexts, see Immediate and Deferred Rendering.

+
+ ff476481 + void ID3D11DeviceContext::SetPredication([In, Optional] ID3D11Predicate* pPredicate,[In] BOOL PredicateValue) + ID3D11DeviceContext::SetPredication +
+ + +

Draw geometry of an unknown size.

+
+ +

A draw API submits work to the rendering pipeline. This API submits work of an unknown size that was processed by the input assembler, vertex shader, and stream-output stages; the work may or may not have gone through the geometry-shader stage.

After data has been streamed out to stream-output stage buffers, those buffers can be again bound to the Input Assembler stage at input slot 0 and DrawAuto will draw them without the application needing to know the amount of data that was written to the buffers. A measurement of the amount of data written to the SO stage buffers is maintained internally when the data is streamed out. This means that the CPU does not need to fetch the measurement before re-binding the data that was streamed as input data. Although this amount is tracked internally, it is still the responsibility of applications to use input layouts to describe the format of the data in the SO stage buffers so that the layouts are available when the buffers are again bound to the input assembler.

The following diagram shows the DrawAuto process.

Calling DrawAuto does not change the state of the streaming-output buffers that were bound again as inputs.

DrawAuto only works when drawing with one input buffer bound as an input to the IA stage at slot 0. Applications must create the SO buffer resource with both binding flags, D3D11_BIND_VERTEX_BUFFER and D3D11_BIND_STREAM_OUTPUT.

This API does not support indexing or instancing.

If an application needs to retrieve the size of the streaming-output buffer, it can query for statistics on streaming output by using D3D11_QUERY_SO_STATISTICS.

+
+ ff476408 + void ID3D11DeviceContext::DrawAuto() + ID3D11DeviceContext::DrawAuto +
+ + +

Draw indexed, instanced, GPU-generated primitives.

+
+

A reference to an , which is a buffer containing the GPU generated primitives.

+

Offset in pBufferForArgs to the start of the GPU generated primitives.

+ +

When an application creates a buffer that is associated with the interface that pBufferForArgs points to, the application must set the D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS flag in the MiscFlags member of the structure that describes the buffer. To create the buffer, the application calls the ID3D11Device::CreateBuffer method and in this call passes a reference to in the pDesc parameter.

Windows?Phone?8: This API is supported.

+
+ ff476411 + void ID3D11DeviceContext::DrawIndexedInstancedIndirect([In] ID3D11Buffer* pBufferForArgs,[In] unsigned int AlignedByteOffsetForArgs) + ID3D11DeviceContext::DrawIndexedInstancedIndirect +
+ + +

Draw instanced, GPU-generated primitives.

+
+

A reference to an , which is a buffer containing the GPU generated primitives.

+

Offset in pBufferForArgs to the start of the GPU generated primitives.

+ +

When an application creates a buffer that is associated with the interface that pBufferForArgs points to, the application must set the D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS flag in the MiscFlags member of the structure that describes the buffer. To create the buffer, the application calls the ID3D11Device::CreateBuffer method and in this call passes a reference to in the pDesc parameter.

+
+ ff476413 + void ID3D11DeviceContext::DrawInstancedIndirect([In] ID3D11Buffer* pBufferForArgs,[In] unsigned int AlignedByteOffsetForArgs) + ID3D11DeviceContext::DrawInstancedIndirect +
+ + +

Execute a command list from a thread group.

+
+

The number of groups dispatched in the x direction. ThreadGroupCountX must be less than or equal to (65535).

+

The number of groups dispatched in the y direction. ThreadGroupCountY must be less than or equal to (65535).

+

The number of groups dispatched in the z direction. ThreadGroupCountZ must be less than or equal to (65535). In feature level 10 the value for ThreadGroupCountZ must be 1.

+ +

You call the Dispatch method to execute commands in a compute shader. A compute shader can be run on many threads in parallel, within a thread group. Index a particular thread, within a thread group using a 3D vector given by (x,y,z).

In the following illustration, assume a thread group with 50 threads where the size of the group is given by (5,5,2). A single thread is identified from a thread group with 50 threads in it, using the vector (4,1,1).

The following illustration shows the relationship between the parameters passed to ID3D11DeviceContext::Dispatch, Dispatch(5,3,2), the values specified in the numthreads attribute, numthreads(10,8,3), and values that will passed to the compute shader for the thread-related system values + (SV_GroupIndex,SV_DispatchThreadID,SV_GroupThreadID,SV_GroupID).

+
+ ff476405 + void ID3D11DeviceContext::Dispatch([In] unsigned int ThreadGroupCountX,[In] unsigned int ThreadGroupCountY,[In] unsigned int ThreadGroupCountZ) + ID3D11DeviceContext::Dispatch +
+ + +

Execute a command list over one or more thread groups.

+
+

A reference to an , which must be loaded with data that matches the argument list for ID3D11DeviceContext::Dispatch.

+

A byte-aligned offset between the start of the buffer and the arguments.

+ +

You call the DispatchIndirect method to execute commands in a compute shader.

When an application creates a buffer that is associated with the interface that pBufferForArgs points to, the application must set the D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS flag in the MiscFlags member of the structure that describes the buffer. To create the buffer, the application calls the ID3D11Device::CreateBuffer method and in this call passes a reference to in the pDesc parameter.

+
+ ff476406 + void ID3D11DeviceContext::DispatchIndirect([In] ID3D11Buffer* pBufferForArgs,[In] unsigned int AlignedByteOffsetForArgs) + ID3D11DeviceContext::DispatchIndirect +
+ + +

Copy a region from a source resource to a destination resource.

+
+

A reference to the destination resource (see ).

+

Destination subresource index.

+

The x-coordinate of the upper left corner of the destination region.

+

The y-coordinate of the upper left corner of the destination region. For a 1D subresource, this must be zero.

+

The z-coordinate of the upper left corner of the destination region. For a 1D or 2D subresource, this must be zero.

+

A reference to the source resource (see ).

+

Source subresource index.

+

A reference to a 3D box (see ) that defines the source subresource that can be copied. If null, the entire source subresource is copied. The box must fit within the source resource.

An empty box results in a no-op. A box is empty if the top value is greater than or equal to the bottom value, or the left value is greater than or equal to the right value, or the front value is greater than or equal to the back value. When the box is empty, CopySubresourceRegion doesn't perform a copy operation.

+ +

The source box must be within the size of the source resource. The destination offsets, (x, y, and z), allow the source box to be offset when writing into the destination resource; however, the dimensions of the source box and the offsets must be within the size of the resource. If you try and copy outside the destination resource or specify a source box that is larger than the source resource, the behavior of CopySubresourceRegion is undefined. If you created a device that supports the debug layer, the debug output reports an error on this invalid CopySubresourceRegion call. Invalid parameters to CopySubresourceRegion cause undefined behavior and might result in incorrect rendering, clipping, no copy, or even the removal of the rendering device.

If the resources are buffers, all coordinates are in bytes; if the resources are textures, all coordinates are in texels. D3D11CalcSubresource is a helper function for calculating subresource indexes.

CopySubresourceRegion performs the copy on the GPU (similar to a memcpy by the CPU). As a consequence, the source and destination resources:

  • Must be different subresources (although they can be from the same resource).
  • Must be the same type.
  • Must have compatible DXGI formats (identical or from the same type group). For example, a DXGI_FORMAT_R32G32B32_FLOAT texture can be copied to an DXGI_FORMAT_R32G32B32_UINT texture since both of these formats are in the DXGI_FORMAT_R32G32B32_TYPELESS group. CopySubresourceRegion can copy between a few format types. For more info, see Format Conversion using Direct3D 10.1.
  • May not be currently mapped.

CopySubresourceRegion only supports copy; it does not support any stretch, color key, or blend. CopySubresourceRegion can reinterpret the resource data between a few format types. For more info, see Format Conversion using Direct3D 10.1.

If your app needs to copy an entire resource, we recommend to use ID3D11DeviceContext::CopyResource instead.

CopySubresourceRegion is an asynchronous call, which may be added to the command-buffer queue, this attempts to remove pipeline stalls that may occur when copying data. For more information about pipeline stalls, see performance considerations.

Note??Applies only to feature level 9_x hardware If you use ID3D11DeviceContext::UpdateSubresource or CopySubresourceRegion to copy from a staging resource to a default resource, you can corrupt the destination contents. This occurs if you pass a null source box and if the source resource has different dimensions from those of the destination resource or if you use destination offsets, (x, y, and z). In this situation, always pass a source box that is the full size of the source resource.?Note??Applies only to feature level 9_x hardware You can't use CopySubresourceRegion to copy mipmapped volume textures.?Note??Applies only to feature levels 9_x Subresources created with the D3D11_BIND_DEPTH_STENCIL flag can only be used as a source for CopySubresourceRegion.?Note??If you use CopySubresourceRegion with a depth-stencil buffer or a multisampled resource, you must copy the whole subresource. In this situation, you must pass 0 to the DstX, DstY, and DstZ parameters and null to the pSrcBox parameter. In addition, source and destination resources, which are represented by the pSrcResource and pDstResource parameters, should have identical sample count values.? +
+ ff476394 + void ID3D11DeviceContext::CopySubresourceRegion([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In] unsigned int DstX,[In] unsigned int DstY,[In] unsigned int DstZ,[In] ID3D11Resource* pSrcResource,[In] unsigned int SrcSubresource,[In, Optional] const D3D11_BOX* pSrcBox) + ID3D11DeviceContext::CopySubresourceRegion +
+ + +

Copy the entire contents of the source resource to the destination resource using the GPU.

+
+

A reference to the interface that represents the destination resource.

+

A reference to the interface that represents the source resource.

+ +

This method is unusual in that it causes the GPU to perform the copy operation (similar to a memcpy by the CPU). As a result, it has a few restrictions designed for improving performance. For instance, the source and destination resources:

  • Must be different resources.
  • Must be the same type.
  • Must have identical dimensions (including width, height, depth, and size as appropriate).
  • Must have compatible DXGI formats, which means the formats must be identical or at least from the same type group. For example, a DXGI_FORMAT_R32G32B32_FLOAT texture can be copied to an DXGI_FORMAT_R32G32B32_UINT texture since both of these formats are in the DXGI_FORMAT_R32G32B32_TYPELESS group. CopyResource can copy between a few format types. For more info, see Format Conversion using Direct3D 10.1.
  • Can't be currently mapped.

CopyResource only supports copy; it doesn't support any stretch, color key, or blend. CopyResource can reinterpret the resource data between a few format types. For more info, see Format Conversion using Direct3D 10.1.

You can't use an Immutable resource as a destination. You can use a depth-stencil resource as either a source or a destination provided that the feature level is D3D_FEATURE_LEVEL_10_1 or greater. For feature levels 9_x, resources created with the D3D11_BIND_DEPTH_STENCIL flag can only be used as a source for CopyResource. Resources created with multisampling capability (see ) can be used as source and destination only if both source and destination have identical multisampled count and quality. If source and destination differ in multisampled count and quality or if one is multisampled and the other is not multisampled, the call to ID3D11DeviceContext::CopyResource fails. Use ID3D11DeviceContext::ResolveSubresource to resolve a multisampled resource to a resource that is not multisampled.

The method is an asynchronous call, which may be added to the command-buffer queue. This attempts to remove pipeline stalls that may occur when copying data. For more info, see performance considerations.

We recommend to use ID3D11DeviceContext::CopySubresourceRegion instead if you only need to copy a portion of the data in a resource.

+
+ ff476392 + void ID3D11DeviceContext::CopyResource([In] ID3D11Resource* pDstResource,[In] ID3D11Resource* pSrcResource) + ID3D11DeviceContext::CopyResource +
+ + +

The CPU copies data from memory to a subresource created in non-mappable memory.

+
+

A reference to the destination resource (see ).

+

A zero-based index, that identifies the destination subresource. See D3D11CalcSubresource for more details.

+

A reference to a box that defines the portion of the destination subresource to copy the resource data into. Coordinates are in bytes for buffers and in texels for textures. If null, the data is written to the destination subresource with no offset. The dimensions of the source must fit the destination (see ).

An empty box results in a no-op. A box is empty if the top value is greater than or equal to the bottom value, or the left value is greater than or equal to the right value, or the front value is greater than or equal to the back value. When the box is empty, UpdateSubresource doesn't perform an update operation.

+

A reference to the source data in memory.

+

The size of one row of the source data.

+

The size of one depth slice of source data.

+ +

For a shader-constant buffer; set pDstBox to null. It is not possible to use this method to partially update a shader-constant buffer.

A resource cannot be used as a destination if:

  • the resource is created with immutable or dynamic usage.
  • the resource is created as a depth-stencil resource.
  • the resource is created with multisampling capability (see ).

When UpdateSubresource returns, the application is free to change or even free the data pointed to by pSrcData because the method has already copied/snapped away the original contents.

The performance of UpdateSubresource depends on whether or not there is contention for the destination resource. For example, contention for a vertex buffer resource occurs when the application executes a Draw call and later calls UpdateSubresource on the same vertex buffer before the Draw call is actually executed by the GPU.

  • When there is contention for the resource, UpdateSubresource will perform 2 copies of the source data. First, the data is copied by the CPU to a temporary storage space accessible by the command buffer. This copy happens before the method returns. A second copy is then performed by the GPU to copy the source data into non-mappable memory. This second copy happens asynchronously because it is executed by GPU when the command buffer is flushed.
  • When there is no resource contention, the behavior of UpdateSubresource is dependent on which is faster (from the CPU's perspective): copying the data to the command buffer and then having a second copy execute when the command buffer is flushed, or having the CPU copy the data to the final resource location. This is dependent on the architecture of the underlying system.
Note??Applies only to feature level 9_x hardware If you use UpdateSubresource or ID3D11DeviceContext::CopySubresourceRegion to copy from a staging resource to a default resource, you can corrupt the destination contents. This occurs if you pass a null source box and if the source resource has different dimensions from those of the destination resource or if you use destination offsets, (x, y, and z). In this situation, always pass a source box that is the full size of the source resource.?

To better understand the source row pitch and source depth pitch parameters, the following illustration shows a 3D volume texture.

Each block in this visual represents an element of data, and the size of each element is dependent on the resource's format. For example, if the resource format is DXGI_FORMAT_R32G32B32A32_FLOAT, the size of each element would be 128 bits, or 16 bytes. This 3D volume texture has a width of two, a height of three, and a depth of four.

To calculate the source row pitch and source depth pitch for a given resource, use the following formulas:

  • Source Row Pitch = [size of one element in bytes] * [number of elements in one row]
  • Source Depth Pitch = [Source Row Pitch] * [number of rows (height)]

In the case of this example 3D volume texture where the size of each element is 16 bytes, the formulas are as follows:

  • Source Row Pitch = 16 * 2 = 32
  • Source Depth Pitch = 16 * 2 * 3 = 96

The following illustration shows the resource as it is laid out in memory.

For example, the following code snippet shows how to specify a destination region in a 2D texture. Assume the destination texture is 512x512 and the operation will copy the data pointed to by pData to [(120,100)..(200,220)] in the destination texture. Also assume that rowPitch has been initialized with the proper value (as explained above). front and back are set to 0 and 1 respectively, because by having front equal to back, the box is technically empty.

  destRegion;
+            destRegion.left = 120;
+            destRegion.right = 200;
+            destRegion.top = 100;
+            destRegion.bottom = 220;
+            destRegion.front = 0;
+            destRegion.back = 1; pd3dDeviceContext->UpdateSubresource( pDestTexture, 0, &destRegion, pData, rowPitch, 0 );
+            

The 1D case is similar. The following snippet shows how to specify a destination region in a 1D texture. Use the same assumptions as above, except that the texture is 512 in length.

  destRegion;
+            destRegion.left = 120;
+            destRegion.right = 200;
+            destRegion.top = 0;
+            destRegion.bottom = 1;
+            destRegion.front = 0;
+            destRegion.back = 1; pd3dDeviceContext->UpdateSubresource( pDestTexture, 0, &destRegion, pData, rowPitch, 0 );
+            

For info about various resource types and how UpdateSubresource might work with each resource type, see Introduction to a Resource in Direct3D 11.

+
+ ff476486 + void ID3D11DeviceContext::UpdateSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch) + ID3D11DeviceContext::UpdateSubresource +
+ + +

Copies data from a buffer holding variable length data.

+
+

Pointer to . This can be any buffer resource that other copy commands, such as ID3D11DeviceContext::CopyResource or ID3D11DeviceContext::CopySubresourceRegion, are able to write to.

+

Offset from the start of pDstBuffer to write 32-bit UINT structure (vertex) count from pSrcView.

+

Pointer to an of a Structured Buffer resource created with either D3D11_BUFFER_UAV_FLAG_APPEND or D3D11_BUFFER_UAV_FLAG_COUNTER specified when the UAV was created. These types of resources have hidden counters tracking "how many" records have been written.

+ ff476393 + void ID3D11DeviceContext::CopyStructureCount([In] ID3D11Buffer* pDstBuffer,[In] unsigned int DstAlignedByteOffset,[In] ID3D11UnorderedAccessView* pSrcView) + ID3D11DeviceContext::CopyStructureCount +
+ + +

Set all the elements in a render target to one value.

+
+

Pointer to the render target.

+

A 4-component array that represents the color to fill the render target with.

+ +

Applications that wish to clear a render target to a specific integer value bit pattern should render a screen-aligned quad instead of using this method. The reason for this is because this method accepts as input a floating point value, which may not have the same bit pattern as the original integer.

Differences between Direct3D 9 and Direct3D 11/10:

Unlike Direct3D 9, the full extent of the resource view is always cleared. Viewport and scissor settings are not applied.

?

When using D3D_FEATURE_LEVEL_9_x, ClearRenderTargetView only clears the first array slice in the render target view. This can impact (for example) cube map rendering scenarios. Applications should create a render target view for each face or array slice, then clear each view individually.

+
+ ff476388 + void ID3D11DeviceContext::ClearRenderTargetView([In] ID3D11RenderTargetView* pRenderTargetView,[In] const SHARPDX_COLOR4* ColorRGBA) + ID3D11DeviceContext::ClearRenderTargetView +
+ + +

Clears an unordered access resource with bit-precise values.

+
+ No documentation. + No documentation. + +

This API copies the lower ni bits from each array element i to the corresponding channel, where ni is the number of bits in the ith channel of the resource format (for example, R8G8B8_FLOAT has 8 bits for the first 3 channels). This works on any UAV with no format conversion. For a raw or structured buffer view, only the first array element value is used.

+
+ ff476391 + void ID3D11DeviceContext::ClearUnorderedAccessViewUint([In] ID3D11UnorderedAccessView* pUnorderedAccessView,[In] const SHARPDX_INT4* Values) + ID3D11DeviceContext::ClearUnorderedAccessViewUint +
+ + +

Clears an unordered access resource with a float value.

+
+ No documentation. + No documentation. + +

This API works on FLOAT, UNORM, and SNORM unordered access views (UAVs), with format conversion from FLOAT to *NORM where appropriate. On other UAVs, the operation is invalid and the call will not reach the driver.

+
+ ff476390 + void ID3D11DeviceContext::ClearUnorderedAccessViewFloat([In] ID3D11UnorderedAccessView* pUnorderedAccessView,[In] const SHARPDX_VECTOR4* Values) + ID3D11DeviceContext::ClearUnorderedAccessViewFloat +
+ + +

Clears the depth-stencil resource.

+
+

Pointer to the depth stencil to be cleared.

+

Identify the type of data to clear (see ).

+

Clear the depth buffer with this value. This value will be clamped between 0 and 1.

+

Clear the stencil buffer with this value.

+ +

Differences between Direct3D 9 and Direct3D 11/10:

Unlike Direct3D 9, the full extent of the resource view is always cleared. Viewport and scissor settings are not applied.

?

+
+ ff476387 + void ID3D11DeviceContext::ClearDepthStencilView([In] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int ClearFlags,[In] float Depth,[In] unsigned char Stencil) + ID3D11DeviceContext::ClearDepthStencilView +
+ + +

Generates mipmaps for the given shader resource.

+
+

A reference to an interface that represents the shader resource.

+ +

You can call GenerateMips on any shader-resource view to generate the lower mipmap levels for the shader resource. GenerateMips uses the largest mipmap level of the view to recursively generate the lower levels of the mip and stops with the smallest level that is specified by the view. If the base resource wasn't created with D3D11_BIND_RENDER_TARGET, D3D11_BIND_SHADER_RESOURCE, and D3D11_RESOURCE_MISC_GENERATE_MIPS, the call to GenerateMips has no effect.

Feature levels 9.1, 9.2, and 9.3 can't support automatic generation of mipmaps for 3D (volume) textures.

Video adapters that support feature level 9.1 and higher support generating mipmaps if you use any of these formats:

 DXGI_FORMAT_R8G8B8A8_UNORM
+            DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
+            DXGI_FORMAT_B5G6R5_UNORM
+            DXGI_FORMAT_B8G8R8A8_UNORM
+            DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
+            DXGI_FORMAT_B8G8R8X8_UNORM
+            DXGI_FORMAT_B8G8R8X8_UNORM_SRGB
+            

Video adapters that support feature level 9.2 and higher support generating mipmaps if you use any of these formats in addition to any of the formats for feature level 9.1:

 DXGI_FORMAT_R16G16B16A16_FLOAT
+            DXGI_FORMAT_R16G16B16A16_UNORM
+            DXGI_FORMAT_R16G16_FLOAT
+            DXGI_FORMAT_R16G16_UNORM
+            DXGI_FORMAT_R32_FLOAT
+            

Video adapters that support feature level 9.3 and higher support generating mipmaps if you use any of these formats in addition to any of the formats for feature levels 9.1 and 9.2:

 DXGI_FORMAT_R32G32B32A32_FLOAT
+            DXGI_FORMAT_B4G4R4A4 (optional)
+            

Video adapters that support feature level 10 and higher support generating mipmaps if you use any of these formats in addition to any of the formats for feature levels 9.1, 9.2, and 9.3:

 DXGI_FORMAT_R32G32B32_FLOAT (optional)
+            DXGI_FORMAT_R16G16B16A16_SNORM
+            DXGI_FORMAT_R32G32_FLOAT
+            DXGI_FORMAT_R10G10B10A2_UNORM
+            DXGI_FORMAT_R11G11B10_FLOAT
+            DXGI_FORMAT_R8G8B8A8_SNORM
+            DXGI_FORMAT_R16G16_SNORM
+            DXGI_FORMAT_R8G8_UNORM
+            DXGI_FORMAT_R8G8_SNORM
+            DXGI_FORMAT_R16_FLOAT
+            DXGI_FORMAT_R16_UNORM
+            DXGI_FORMAT_R16_SNORM
+            DXGI_FORMAT_R8_UNORM
+            DXGI_FORMAT_R8_SNORM
+            DXGI_FORMAT_A8_UNORM
+            DXGI_FORMAT_B5G5R5A1_UNORM (optional)
+            

For all other unsupported formats, GenerateMips will silently fail.

+
+ ff476426 + void ID3D11DeviceContext::GenerateMips([In] ID3D11ShaderResourceView* pShaderResourceView) + ID3D11DeviceContext::GenerateMips +
+ + +

Sets the minimum level-of-detail (LOD) for a resource.

+
+

A reference to an that represents the resource.

+

The level-of-detail, which ranges between 0 and the maximum number of mipmap levels of the resource. For example, the maximum number of mipmap levels of a 1D texture is specified in the MipLevels member of the structure.

+ +

To use a resource with SetResourceMinLOD, you must set the D3D11_RESOURCE_MISC_RESOURCE_CLAMP flag when you create that resource.

For Direct3D 10 and Direct3D 10.1, when sampling from a texture resource in a shader, the sampler can define a minimum LOD clamp to force sampling from less detailed mip levels. For Direct3D 11, this functionality is extended from the sampler to the entire resource. Therefore, the application can specify the highest-resolution mip level of a resource that is available for access. This restricts the set of mip levels that are required to be resident in GPU memory, thereby saving memory.

The set of mip levels resident per-resource in GPU memory can be specified by the user.

Minimum LOD affects all of the resident mip levels. Therefore, only the resident mip levels can be updated and read from.

All methods that access texture resources must adhere to minimum LOD clamps.

Empty-set accesses are handled as out-of-bounds cases.

+
+ ff476482 + void ID3D11DeviceContext::SetResourceMinLOD([In] ID3D11Resource* pResource,[In] float MinLOD) + ID3D11DeviceContext::SetResourceMinLOD +
+ + +

Gets the minimum level-of-detail (LOD).

+
+

A reference to an which represents the resource.

+

Returns the minimum LOD.

+ ff476430 + float ID3D11DeviceContext::GetResourceMinLOD([In] ID3D11Resource* pResource) + ID3D11DeviceContext::GetResourceMinLOD +
+ + +

Copy a multisampled resource into a non-multisampled resource.

+
+

Destination resource. Must be a created with the D3D11_USAGE_DEFAULT flag and be single-sampled. See .

+

A zero-based index, that identifies the destination subresource. Use D3D11CalcSubresource to calculate the index.

+

Source resource. Must be multisampled.

+

The source subresource of the source resource.

+

A that indicates how the multisampled resource will be resolved to a single-sampled resource. See remarks.

+ +

This API is most useful when re-using the resulting rendertarget of one render pass as an input to a second render pass.

The source and destination resources must be the same resource type and have the same dimensions. In addition, they must have compatible formats. There are three scenarios for this:

ScenarioRequirements
Source and destination are prestructured and typedBoth the source and destination must have identical formats and that format must be specified in the Format parameter.
One resource is prestructured and typed and the other is prestructured and typelessThe typed resource must have a format that is compatible with the typeless resource (i.e. the typed resource is DXGI_FORMAT_R32_FLOAT and the typeless resource is DXGI_FORMAT_R32_TYPELESS). The format of the typed resource must be specified in the Format parameter.
Source and destination are prestructured and typelessBoth the source and desintation must have the same typeless format (i.e. both must have DXGI_FORMAT_R32_TYPELESS), and the Format parameter must specify a format that is compatible with the source and destination (i.e. if both are DXGI_FORMAT_R32_TYPELESS then DXGI_FORMAT_R32_FLOAT could be specified in the Format parameter).

For example, given the DXGI_FORMAT_R16G16B16A16_TYPELESS format:

  • The source (or dest) format could be DXGI_FORMAT_R16G16B16A16_UNORM
  • The dest (or source) format could be DXGI_FORMAT_R16G16B16A16_FLOAT

?

+
+ ff476474 + void ID3D11DeviceContext::ResolveSubresource([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In] ID3D11Resource* pSrcResource,[In] unsigned int SrcSubresource,[In] DXGI_FORMAT Format) + ID3D11DeviceContext::ResolveSubresource +
+ + +

Queues commands from a command list onto a device.

+
+

A reference to an interface that encapsulates a command list.

+

A Boolean flag that determines whether the target context state is saved prior to and restored after the execution of a command list. Use TRUE to indicate that the runtime needs to save and restore the state. Use to indicate that no state shall be saved or restored, which causes the target context to return to its default state after the command list executes. Applications should typically use unless they will restore the state to be nearly equivalent to the state that the runtime would restore if TRUE were passed. When applications use , they can avoid unnecessary and inefficient state transitions.

+ +

Use this method to play back a command list that was recorded by a deferred context on any thread.

A call to ExecuteCommandList of a command list from a deferred context onto the immediate context is required for the recorded commands to be executed on the graphics processing unit (GPU). A call to ExecuteCommandList of a command list from a deferred context onto another deferred context can be used to merge recorded lists. But to run the commands from the merged deferred command list on the GPU, you need to execute them on the immediate context.

This method performs some runtime validation related to queries. Queries that are begun in a device context cannot be manipulated indirectly by executing a command list (that is, Begin or End was invoked against the same query by the deferred context which generated the command list). If such a condition occurs, the ExecuteCommandList method does not execute the command list. However, the state of the device context is still maintained, as would be expected (ID3D11DeviceContext::ClearState is performed, unless the application indicates to preserve the device context state).

Windows?Phone?8: This API is supported.

+
+ ff476423 + void ID3D11DeviceContext::ExecuteCommandList([In] ID3D11CommandList* pCommandList,[In] BOOL RestoreContextState) + ID3D11DeviceContext::ExecuteCommandList +
+ + +

Get the rendering predicate state.

+
+

Address of a boolean to fill with the predicate comparison value. upon device creation.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476429 + void ID3D11DeviceContext::GetPredication([Out, Optional] ID3D11Predicate** ppPredicate,[Out, Optional] BOOL* pPredicateValue) + ID3D11DeviceContext::GetPredication +
+ + +

Restore all default settings.

+
+ +

This method resets any device context to the default settings. This sets all input/output resource slots, shaders, input layouts, predications, scissor rectangles, depth-stencil state, rasterizer state, blend state, sampler state, and viewports to null. The primitive topology is set to UNDEFINED.

For a scenario where you would like to clear a list of commands recorded so far, call ID3D11DeviceContext::FinishCommandList and throw away the resulting .

+
+ ff476389 + void ID3D11DeviceContext::ClearState() + ID3D11DeviceContext::ClearState +
+ + +

Sends queued-up commands in the command buffer to the graphics processing unit (GPU).

+
+ +

Most applications don't need to call this method. If an application calls this method when not necessary, it incurs a performance penalty. Each call to Flush incurs a significant amount of overhead.

When Microsoft Direct3D state-setting, present, or draw commands are called by an application, those commands are queued into an internal command buffer. Flush sends those commands to the GPU for processing. Typically, the Direct3D runtime sends these commands to the GPU automatically whenever the runtime determines that they need to be sent, such as when the command buffer is full or when an application maps a resource. Flush sends the commands manually.

We recommend that you use Flush when the CPU waits for an arbitrary amount of time (such as when you call the Sleep function).

Because Flush operates asynchronously, it can return either before or after the GPU finishes executing the queued graphics commands. However, the graphics commands eventually always complete. You can call the ID3D11Device::CreateQuery method with the D3D11_QUERY_EVENT value to create an event query; you can then use that event query in a call to the ID3D11DeviceContext::GetData method to determine when the GPU is finished processing the graphics commands. +

Microsoft Direct3D?11 defers the destruction of objects. Therefore, an application can't rely upon objects immediately being destroyed. By calling Flush, you destroy any objects whose destruction was deferred. If an application requires synchronous destruction of an object, we recommend that the application release all its references, call ID3D11DeviceContext::ClearState, and then call Flush.

+
+ ff476425 + void ID3D11DeviceContext::Flush() + ID3D11DeviceContext::Flush +
+ + +

Gets the type of device context.

+
+

A member of that indicates the type of device context.

+ ff476431 + D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext::GetType() + ID3D11DeviceContext::GetType +
+ + +

Gets the initialization flags associated with the current deferred context.

+
+ No documentation. + +

The GetContextFlags method gets the flags that were supplied to the ContextFlags parameter of ID3D11Device::CreateDeferredContext; however, the context flag is reserved for future use.

+
+ ff476427 + unsigned int ID3D11DeviceContext::GetContextFlags() + ID3D11DeviceContext::GetContextFlags +
+ + +

Create a command list and record graphics commands into it.

+
+

A Boolean flag that determines whether the runtime saves deferred context state before it executes FinishCommandList and restores it afterwards. Use TRUE to indicate that the runtime needs to save and restore the state. Use to indicate that the runtime will not save or restore any state. In this case, the deferred context will return to its default state after the call to FinishCommandList completes. For information about default state, see ID3D11DeviceContext::ClearState. Typically, use unless you restore the state to be nearly equivalent to the state that the runtime would restore if you passed TRUE. When you use , you can avoid unnecessary and inefficient state transitions.

Note?? This parameter does not affect the command list that the current call to FinishCommandList returns. However, this parameter affects the command list of the next call to FinishCommandList on the same deferred context. ?
+

Upon completion of the method, the passed reference to an interface reference is initialized with the recorded command list information. The resulting object is immutable and can only be used with ID3D11DeviceContext::ExecuteCommandList.

+

Returns if successful; otherwise, returns one of the following:

  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred. If this error occurs, you should destroy and recreate the device.
  • Returns if FinishCommandList cannot be called from the current context. See remarks.
  • Returns E_OUTOFMEMORY if the application has exhausted available memory.
+ +

Create a command list from a deferred context and record commands into it by calling FinishCommandList. Play back a command list with an immediate context by calling ID3D11DeviceContext::ExecuteCommandList.

Immediate context state is cleared before and after a command list is executed. A command list has no concept of inheritance. Each call to FinishCommandList will record only the state set since any previous call to FinishCommandList.

For example, the state of a device context is its render state or pipeline state. To retrieve device context state, an application can call ID3D11DeviceContext::GetData or ID3D11DeviceContext::GetPredication.

For more information about how to use FinishCommandList, see How to: Record a Command List.

Windows?Phone?8: This API is supported.

+
+ ff476424 + HRESULT ID3D11DeviceContext::FinishCommandList([In] BOOL RestoreDeferredContextState,[Out, Optional] ID3D11CommandList** ppCommandList) + ID3D11DeviceContext::FinishCommandList +
+ + +

Bind a single vertex buffer to the input-assembler stage.

+
+

The first input slot for binding. The first vertex buffer is explicitly bound to the start slot; this causes each additional vertex buffer in the array to be implicitly bound to each subsequent input slot. The maximum of 16 or 32 input slots (ranges from 0 to - 1) are available; the maximum number of input slots depends on the feature level.

+

A . The vertex buffer must have been created with the flag.

/// +

For information about creating vertex buffers, see Create a Vertex Buffer.

Calling this method using a buffer that is currently bound for writing (i.e. bound to the stream output pipeline stage) will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476456 + void ID3D11DeviceContext::IASetVertexBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer] const void* ppVertexBuffers,[In, Buffer] const void* pStrides,[In, Buffer] const void* pOffsets) + ID3D11DeviceContext::IASetVertexBuffers +
+ + +

Bind an array of vertex buffers to the input-assembler stage.

+
+

The first input slot for binding. The first vertex buffer is explicitly bound to the start slot; this causes each additional vertex buffer in the array to be implicitly bound to each subsequent input slot. The maximum of 16 or 32 input slots (ranges from 0 to - 1) are available; the maximum number of input slots depends on the feature level.

+

A reference to an array of . The vertex buffers must have been created with the flag.

/// +

For information about creating vertex buffers, see Create a Vertex Buffer.

Calling this method using a buffer that is currently bound for writing (i.e. bound to the stream output pipeline stage) will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476456 + void ID3D11DeviceContext::IASetVertexBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer] const void* ppVertexBuffers,[In, Buffer] const void* pStrides,[In, Buffer] const void* pOffsets) + ID3D11DeviceContext::IASetVertexBuffers +
+ + +

Bind an array of vertex buffers to the input-assembler stage.

+
+

The first input slot for binding. The first vertex buffer is explicitly bound to the start slot; this causes each additional vertex buffer in the array to be implicitly bound to each subsequent input slot. The maximum of 16 or 32 input slots (ranges from 0 to - 1) are available; the maximum number of input slots depends on the feature level.

+

A reference to an array of vertex buffers (see ). The vertex buffers must have been created with the flag.

+

Pointer to an array of stride values; one stride value for each buffer in the vertex-buffer array. Each stride is the size (in bytes) of the elements that are to be used from that vertex buffer.

+

Pointer to an array of offset values; one offset value for each buffer in the vertex-buffer array. Each offset is the number of bytes between the first element of a vertex buffer and the first element that will be used.

+ +

For information about creating vertex buffers, see Create a Vertex Buffer.

Calling this method using a buffer that is currently bound for writing (i.e. bound to the stream output pipeline stage) will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476456 + void ID3D11DeviceContext::IASetVertexBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer] const void* ppVertexBuffers,[In, Buffer] const void* pStrides,[In, Buffer] const void* pOffsets) + ID3D11DeviceContext::IASetVertexBuffers +
+ + Constant DefaultIndexBufferOffsetInBytes + D3D11_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES + + + Constant DefaultPrimitiveTopology + D3D11_IA_DEFAULT_PRIMITIVE_TOPOLOGY + + + Constant DefaultVertexBufferOffsetInBytes + D3D11_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES + + + Constant IndexInputResourceSlotCount + D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT + + + Constant InstanceIdBitCount + D3D11_IA_INSTANCE_ID_BIT_COUNT + + + Constant IntegerArithmeticBitCount + D3D11_IA_INTEGER_ARITHMETIC_BIT_COUNT + + + Constant PatchMaximumControlPointCount + D3D11_IA_PATCH_MAX_CONTROL_POINT_COUNT + + + Constant PrimitiveIdBitCount + D3D11_IA_PRIMITIVE_ID_BIT_COUNT + + + Constant VertexIdBitCount + D3D11_IA_VERTEX_ID_BIT_COUNT + + + Constant VertexInputResourceSlotCount + D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT + + + Constant VertexInputStructureElementsComponents + D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS + + + Constant VertexInputStructureElementCount + D3D11_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT + + + +

Get or sets a reference to the input-layout object that is bound to the input-assembler stage.

+
+ +

For information about creating an input-layout object, see Creating the Input-Layout Object.

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476450 + IAGetInputLayout / IASetInputLayout + IAGetInputLayout +
+ + +

Get or sets information about the primitive type, and data order that describes input data for the input assembler stage.

+
+ ff476451 + IAGetPrimitiveTopology / IASetPrimitiveTopology + IAGetPrimitiveTopology +
+ + +

Bind an input-layout object to the input-assembler stage.

+
+

A reference to the input-layout object (see ), which describes the input buffers that will be read by the IA stage.

+ +

Input-layout objects describe how vertex buffer data is streamed into the IA pipeline stage. To create an input-layout object, call ID3D11Device::CreateInputLayout.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476454 + void ID3D11DeviceContext::IASetInputLayout([In, Optional] ID3D11InputLayout* pInputLayout) + ID3D11DeviceContext::IASetInputLayout +
+ + +

Bind an array of vertex buffers to the input-assembler stage.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

For info about creating vertex buffers, see How to: Create a Vertex Buffer.

Calling this method using a buffer that is currently bound for writing (that is, bound to the stream output pipeline stage) will effectively bind null instead because a buffer can't be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

Windows?Phone?8: This API is supported.

+
+ ff476456 + void ID3D11DeviceContext::IASetVertexBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer* ppVertexBuffers,[In, Buffer, Optional] const unsigned int* pStrides,[In, Buffer, Optional] const unsigned int* pOffsets) + ID3D11DeviceContext::IASetVertexBuffers +
+ + +

Bind an index buffer to the input-assembler stage.

+
+

A reference to an object, that contains indices. The index buffer must have been created with the D3D11_BIND_INDEX_BUFFER flag.

+

A that specifies the format of the data in the index buffer. The only formats allowed for index buffer data are 16-bit (DXGI_FORMAT_R16_UINT) and 32-bit (DXGI_FORMAT_R32_UINT) integers.

+

Offset (in bytes) from the start of the index buffer to the first index to use.

+ +

For information about creating index buffers, see How to: Create an Index Buffer.

Calling this method using a buffer that is currently bound for writing (i.e. bound to the stream output pipeline stage) will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

Windows?Phone?8: This API is supported.

+
+ ff476453 + void ID3D11DeviceContext::IASetIndexBuffer([In, Optional] ID3D11Buffer* pIndexBuffer,[In] DXGI_FORMAT Format,[In] unsigned int Offset) + ID3D11DeviceContext::IASetIndexBuffer +
+ + +

Bind information about the primitive type, and data order that describes input data for the input assembler stage.

+
+

The type of primitive and ordering of the primitive data (see D3D11_PRIMITIVE_TOPOLOGY).

+ +

Windows?Phone?8: This API is supported.

+
+ ff476455 + void ID3D11DeviceContext::IASetPrimitiveTopology([In] D3D_PRIMITIVE_TOPOLOGY Topology) + ID3D11DeviceContext::IASetPrimitiveTopology +
+ + +

Get a reference to the input-layout object that is bound to the input-assembler stage.

+
+

A reference to the input-layout object (see ), which describes the input buffers that will be read by the IA stage.

+ +

For information about creating an input-layout object, see Creating the Input-Layout Object.

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476450 + void ID3D11DeviceContext::IAGetInputLayout([Out, Optional] ID3D11InputLayout** ppInputLayout) + ID3D11DeviceContext::IAGetInputLayout +
+ + +

Get the vertex buffers bound to the input-assembler stage.

+
+

The input slot of the first vertex buffer to get. The first vertex buffer is explicitly bound to the start slot; this causes each additional vertex buffer in the array to be implicitly bound to each subsequent input slot. The maximum of 16 or 32 input slots (ranges from 0 to - 1) are available; the maximum number of input slots depends on the feature level.

+

The number of vertex buffers to get starting at the offset. The number of buffers (plus the starting slot) cannot exceed the total number of IA-stage input slots.

+

A reference to an array of vertex buffers returned by the method (see ).

+

Pointer to an array of stride values returned by the method; one stride value for each buffer in the vertex-buffer array. Each stride value is the size (in bytes) of the elements that are to be used from that vertex buffer.

+

Pointer to an array of offset values returned by the method; one offset value for each buffer in the vertex-buffer array. Each offset is the number of bytes between the first element of a vertex buffer and the first element that will be used.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476452 + void ID3D11DeviceContext::IAGetVertexBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppVertexBuffers,[Out, Buffer, Optional] unsigned int* pStrides,[Out, Buffer, Optional] unsigned int* pOffsets) + ID3D11DeviceContext::IAGetVertexBuffers +
+ + +

Get a reference to the index buffer that is bound to the input-assembler stage.

+
+

A reference to an index buffer returned by the method (see ).

+

Specifies format of the data in the index buffer (see ). These formats provide the size and type of the data in the buffer. The only formats allowed for index buffer data are 16-bit (DXGI_FORMAT_R16_UINT) and 32-bit (DXGI_FORMAT_R32_UINT) integers.

+

Offset (in bytes) from the start of the index buffer, to the first index to use.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476449 + void ID3D11DeviceContext::IAGetIndexBuffer([Out, Optional] ID3D11Buffer** pIndexBuffer,[Out, Optional] DXGI_FORMAT* Format,[Out, Optional] unsigned int* Offset) + ID3D11DeviceContext::IAGetIndexBuffer +
+ + +

Get information about the primitive type, and data order that describes input data for the input assembler stage.

+
+

A reference to the type of primitive, and ordering of the primitive data (see D3D11_PRIMITIVE_TOPOLOGY).

+ ff476451 + void ID3D11DeviceContext::IAGetPrimitiveTopology([Out] D3D_PRIMITIVE_TOPOLOGY* pTopology) + ID3D11DeviceContext::IAGetPrimitiveTopology +
+ + + Get references to the render targets that are available to the {{output-merger stage}}. + + + Any returned interfaces will have their reference count incremented by one. Applications should call {{IUnknown::Release}} on the returned interfaces when they are no longer needed to avoid memory leaks. + + a depth-stencil view (see ) to be filled with the depth-stencil information from the device. + void OMGetRenderTargets([In] int NumViews,[Out, Buffer, Optional] ID3D10RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D10DepthStencilView** ppDepthStencilView) + + + + Get references to the render targets that are available to the {{output-merger stage}}. + + + Any returned interfaces will have their reference count incremented by one. Applications should call {{IUnknown::Release}} on the returned interfaces when they are no longer needed to avoid memory leaks. + + Number of render targets to retrieve. + an array of render targets views (see ) to be filled with the render targets from the device. + void OMGetRenderTargets([In] int NumViews,[Out, Buffer, Optional] ID3D10RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D10DepthStencilView** ppDepthStencilView) + + + + Get references to the render targets and the depth-stencil buffer that are available to the {{output-merger stage}}. + + + Any returned interfaces will have their reference count incremented by one. Applications should call {{IUnknown::Release}} on the returned interfaces when they are no longer needed to avoid memory leaks. + + Number of render targets to retrieve. + Pointer to a depth-stencil view (see ) to be filled with the depth-stencil information from the device. + an array of render targets views (see ) to be filled with the render targets from the device. + void OMGetRenderTargets([In] int NumViews,[Out, Buffer, Optional] ID3D10RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D10DepthStencilView** ppDepthStencilView) + + + + Get the {{blend state}} of the output-merger stage. + + + The reference count of the returned interface will be incremented by one when the blend state is retrieved. Applications must release returned reference(s) when they are no longer needed, or else there will be a memory leak. + + Array of blend factors, one for each RGBA component. + Pointer to a {{sample mask}}. + a reference to a blend-state interface (see ). + void OMGetBlendState([Out, Optional] ID3D10BlendState** ppBlendState,[Out, Optional] float BlendFactor[4],[Out, Optional] int* pSampleMask) + + + + Gets the {{depth-stencil}} state of the output-merger stage. + + + Any returned interfaces will have their reference count incremented by one. Applications should call {{IUnknown::Release}} on the returned interfaces when they are no longer needed to avoid memory leaks. + + Pointer to the stencil reference value used in the {{depth-stencil}} test. + a reference to a depth-stencil state interface (see ) to be filled with information from the device. + void OMGetDepthStencilState([Out, Optional] ID3D10DepthStencilState** ppDepthStencilState,[Out, Optional] int* pStencilRef) + + + + Gets an array of views for an unordered resource. + + + Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks. + + Index of the first element in the zero-based array to return (ranges from 0 to D3D11_PS_CS_UAV_REGISTER_COUNT - 1). + Number of views to get (ranges from 0 to D3D11_PS_CS_UAV_REGISTER_COUNT - StartSlot). + void OMGetRenderTargetsAndUnorderedAccessViews([In] int NumRTVs,[Out, Buffer, Optional] ID3D11RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D11DepthStencilView** ppDepthStencilView,[In] int UAVStartSlot,[In] int NumUAVs,[Out, Buffer, Optional] ID3D11UnorderedAccessView** ppUnorderedAccessViews) + + + + Unbinds all depth-stencil buffer and render targets from the output-merger stage. + + ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets + + + +

Bind one or more render targets atomically and the depth-stencil buffer to the output-merger stage.

+
+ A set of render target views to bind. + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a single render target to the output-merger stage. + + A view of the render target to bind. + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a depth-stencil buffer and a set of render targets to the output-merger stage. + + A view of the depth-stencil buffer to bind. + A set of render target views to bind. + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a depth-stencil buffer and a set of render targets to the output-merger stage. + + A view of the depth-stencil buffer to bind. + The render target count. + A set of render target views to bind. + ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ + + Binds a depth-stencil buffer and a single render target to the output-merger stage. + + A view of the depth-stencil buffer to bind. + A view of the render target to bind. + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a depth-stencil buffer and a set of render targets to the output-merger stage. + + A view of the depth-stencil buffer to bind. + A set of render target views to bind. + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a set of render targets to the output-merger stage and clear the depth stencil view. + + A set of render target views to bind. + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT. It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, then all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const void** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + + Binds a set of unordered access views and a single render target to the output-merger stage. + + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A view of the render target to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a set of unordered access views and a set of render targets to the output-merger stage. + + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A set of render target views to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a depth-stencil buffer, a set of unordered access views, and a single render target to the output-merger stage. + + A view of the depth-stencil buffer to bind. + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A view of the render target to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a depth-stencil buffer, a set of unordered access views, and a set of render targets to the output-merger stage. + + A view of the depth-stencil buffer to bind. + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A set of render target views to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a set of unordered access views and a single render target to the output-merger stage. + + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A view of the render target to bind. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a set of unordered access views and a set of render targets to the output-merger stage. + + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A set of render target views to bind. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a depth-stencil buffer, a set of unordered access views, and a single render target to the output-merger stage. + + A view of the depth-stencil buffer to bind. + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A view of the render target to bind. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a depth-stencil buffer, a set of unordered access views, and a set of render targets to the output-merger stage. + + A view of the depth-stencil buffer to bind. + Index into a zero-based array to begin setting unordered access views. + A set of unordered access views to bind. + A set of render target views to bind. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + + + + Binds a depth stencil view and a render target view to the output-merger stage keeping existing unordered access views bindings. + + A view of the depth-stencil buffer to bind. + A view to a render target to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a render target view to the output-merger stage keeping existing unordered access views bindings. + + A view to a render target to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Binds a depth stencil view and a render target view to the output-merger stage keeping existing unordered access views bindings. + + A view of the depth-stencil buffer to bind. + A set of render target views to bind. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Sets an array of views for an unordered resource keeping existing render targets bindings. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an references to be set by the method. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Sets an array of views for an unordered resource keeping existing render targets bindings. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an references to be set by the method. + An Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. uAVInitialCount is only relevant for UAVs which have the flag, otherwise the argument is ignored. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Sets an array of views for an unordered resource keeping existing render targets bindings. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an array of references to be set by the method. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + + Sets an array of views for an unordered resource keeping existing render targets bindings. + + + + Index of the first element in the zero-based array to begin setting. + A reference to an array of references to be set by the method. + An array of Append/Consume buffer offsets. A value of -1 indicates the current offset should be kept. Any other values set the hidden counter for that Appendable/Consumable UAV. pUAVInitialCounts is only relevant for UAVs which have the flag, otherwise the argument is ignored. + ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews + + + +

Binds resources to the output-merger stage.

+
+

Number of render-target views (ppRenderTargetViews) and depth-stencil view (ppDepthStencilView) to bind. If you set NumViews to D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL (0xffffffff), this method does not modify the currently bound render-target views (RTVs) and also does not modify depth-stencil view (DSV).

+

Pointer to an array of s, which represent render-target views. Specify null to set none.

+

Pointer to a , which represents a depth-stencil view. Specify null to set none.

+

Index into a zero-based array to begin setting unordered-access views (ranges from 0 to - 1).

For the Direct3D 11.1 runtime, which is available starting with Windows Developer Preview, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - 1. D3D11_1_UAV_SLOT_COUNT is defined as 64.

For pixel shaders, UAVStartSlot should be equal to the number of render-target views being bound.

+

Number of unordered-access views (UAVs) in ppUnorderedAccessView. If you set NumUAVs to D3D11_KEEP_UNORDERED_ACCESS_VIEWS (0xffffffff), this method does not modify the currently bound unordered-access views.

For the Direct3D 11.1 runtime, which is available starting with Windows Developer Preview, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - UAVStartSlot.

+

Pointer to an array of s, which represent unordered-access views.

+

An array of append and consume buffer offsets. A value of -1 indicates to keep the current offset. Any other values set the hidden counter for that appendable and consumable UAV. pUAVInitialCounts is relevant only for UAVs that were created with either or specified when the UAV was created; otherwise, the argument is ignored.

+ +

For pixel shaders, the render targets and unordered-access views share the same resource slots when being written out. This means that UAVs must be given an offset so that they are placed in the slots after the render target views that are being bound.

Note??RTVs, DSV, and UAVs cannot be set independently; they all need to be set at the same time.

Two RTVs conflict if they share a subresource (and therefore share the same resource).

Two UAVs conflict if they share a subresource (and therefore share the same resource).

An RTV conflicts with a UAV if they share a subresource or share a bind point.

OMSetRenderTargetsAndUnorderedAccessViews operates properly in the following situations:

  1. NumViews != D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL and NumUAVs != D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumViews <= 8
    • UAVStartSlot >= NumViews
    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in the set of all ppRenderTargetViews and ppUnorderedAccessView.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews performs the following tasks:

    • Unbinds all currently bound conflicting resources (stream-output target resources (SOTargets), compute shader (CS) UAVs, shader-resource views (SRVs)).
    • Binds ppRenderTargetViews, ppDepthStencilView, and ppUnorderedAccessView.
  2. NumViews == D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only UAVs.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in ppUnorderedAccessView.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All RTVs in slots >= UAVStartSlot
    • All RTVs that conflict with any UAVs in ppUnorderedAccessView
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppUnorderedAccessView

    OMSetRenderTargetsAndUnorderedAccessViews binds ppUnorderedAccessView.

    OMSetRenderTargetsAndUnorderedAccessViews ignores ppDepthStencilView, and the current depth-stencil view remains bound.

  3. NumUAVs == D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only RTVs and DSV.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumViews <= 8
    • There must be no conflicts in ppRenderTargetViews.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All UAVs in slots < NumViews
    • All UAVs that conflict with any RTVs in ppRenderTargetViews
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppRenderTargetViews

    OMSetRenderTargetsAndUnorderedAccessViews binds ppRenderTargetViews and ppDepthStencilView.

    OMSetRenderTargetsAndUnorderedAccessViews ignores UAVStartSlot.

+
+ ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews +
+ + +

Binds resources to the output-merger stage.

+
+

Number of render-target views (ppRenderTargetViews) and depth-stencil view (ppDepthStencilView) to bind. If you set NumViews to D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL (0xffffffff), this method does not modify the currently bound render-target views (RTVs) and also does not modify depth-stencil view (DSV).

+

Pointer to an array of s, which represent render-target views. Specify null to set none.

+

Pointer to a , which represents a depth-stencil view. Specify null to set none.

+

Index into a zero-based array to begin setting unordered-access views (ranges from 0 to - 1).

For the Direct3D 11.1 runtime, which is available starting with Windows Developer Preview, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - 1. D3D11_1_UAV_SLOT_COUNT is defined as 64.

For pixel shaders, UAVStartSlot should be equal to the number of render-target views being bound.

+

Number of unordered-access views (UAVs) in ppUnorderedAccessView. If you set NumUAVs to D3D11_KEEP_UNORDERED_ACCESS_VIEWS (0xffffffff), this method does not modify the currently bound unordered-access views.

For the Direct3D 11.1 runtime, which is available starting with Windows Developer Preview, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - UAVStartSlot.

+

Pointer to an array of s, which represent unordered-access views.

+

An array of append and consume buffer offsets. A value of -1 indicates to keep the current offset. Any other values set the hidden counter for that appendable and consumable UAV. pUAVInitialCounts is relevant only for UAVs that were created with either or specified when the UAV was created; otherwise, the argument is ignored.

+ +

For pixel shaders, the render targets and unordered-access views share the same resource slots when being written out. This means that UAVs must be given an offset so that they are placed in the slots after the render target views that are being bound.

Note??RTVs, DSV, and UAVs cannot be set independently; they all need to be set at the same time.

Two RTVs conflict if they share a subresource (and therefore share the same resource).

Two UAVs conflict if they share a subresource (and therefore share the same resource).

An RTV conflicts with a UAV if they share a subresource or share a bind point.

OMSetRenderTargetsAndUnorderedAccessViews operates properly in the following situations:

  1. NumViews != D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL and NumUAVs != D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumViews <= 8
    • UAVStartSlot >= NumViews
    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in the set of all ppRenderTargetViews and ppUnorderedAccessView.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews performs the following tasks:

    • Unbinds all currently bound conflicting resources (stream-output target resources (SOTargets), compute shader (CS) UAVs, shader-resource views (SRVs)).
    • Binds ppRenderTargetViews, ppDepthStencilView, and ppUnorderedAccessView.
  2. NumViews == D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only UAVs.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in ppUnorderedAccessView.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All RTVs in slots >= UAVStartSlot
    • All RTVs that conflict with any UAVs in ppUnorderedAccessView
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppUnorderedAccessView

    OMSetRenderTargetsAndUnorderedAccessViews binds ppUnorderedAccessView.

    OMSetRenderTargetsAndUnorderedAccessViews ignores ppDepthStencilView, and the current depth-stencil view remains bound.

  3. NumUAVs == D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only RTVs and DSV.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumViews <= 8
    • There must be no conflicts in ppRenderTargetViews.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All UAVs in slots < NumViews
    • All UAVs that conflict with any RTVs in ppRenderTargetViews
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppRenderTargetViews

    OMSetRenderTargetsAndUnorderedAccessViews binds ppRenderTargetViews and ppDepthStencilView.

    OMSetRenderTargetsAndUnorderedAccessViews ignores UAVStartSlot.

+
+ ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews +
+ + + Set the blend state of the output-merger stage. + + Pointer to a blend-state interface (see ). Passing in null implies a default blend state. See remarks for further details. + Array of blend factors, one for each RGBA component. This requires a blend state object that specifies the option. + 32-bit sample coverage. The default value is 0xffffffff. See remarks. + + Blend state is used by the output-merger stage to determine how to blend together two pixel values. The two values are commonly the current pixel value and the pixel value already in the output render target. Use the blend operation to control where the two pixel values come from and how they are mathematically combined.To create a blend-state interface, call .Passing in null for the blend-state interface indicates to the runtime to set a default blending state. The following table indicates the default blending parameters.StateDefault Value AlphaToCoverageEnableFALSE BlendEnableFALSE[8] SrcBlendD3D11_BLEND_ONE DstBlendD3D11_BLEND_ZERO BlendOpD3D11_BLEND_OP_ADD SrcBlendAlphaD3D11_BLEND_ONE DstBlendAlphaD3D11_BLEND_ZERO BlendOpAlphaD3D11_BLEND_OP_ADD RenderTargetWriteMask[8][8]?A sample mask determines which samples get updated in all the active render targets. The mapping of bits in a sample mask to samples in a multisample render target is the responsibility of an individual application. A sample mask is always applied; it is independent of whether multisampling is enabled, and does not depend on whether an application uses multisample render targets.The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. + + void ID3D11DeviceContext::OMSetBlendState([In, Optional] ID3D11BlendState* pBlendState,[In, Optional] const SHARPDX_COLOR4* BlendFactor,[In] unsigned int SampleMask) + + + + Gets or sets the blend factor. + + The blend factor. + + + + Gets or sets the blend sample mask. + + The blend sample mask. + + + + Gets or sets the state of the blend. + + The state of the blend. + + + + Gets or sets the depth stencil reference. + + The depth stencil reference. + + + + Gets or sets the state of the depth stencil. + + The state of the depth stencil. + + + Constant SimultaneousRenderTargetCount + D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT + + + +

Bind one or more render targets atomically and the depth-stencil buffer to the output-merger stage.

+
+ No documentation. + No documentation. + No documentation. + +

The maximum number of active render targets a device can have active at any given time is set by a #define in D3D11.h called . It is invalid to try to set the same subresource to multiple render target slots. Any render targets not defined by this call are set to null.

If any subresources are also currently bound for reading in a different stage or writing (perhaps in a different part of the pipeline), those bind points will be set to null, in order to prevent the same subresource from being read and written simultaneously in a single rendering operation.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

If the render-target views were created from an array resource type, all of the render-target views must have the same array size. This restriction also applies to the depth-stencil view, its array size must match that of the render-target views being bound.

The pixel shader must be able to simultaneously render to at least eight separate render targets. All of these render targets must access the same type of resource: Buffer, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, or TextureCube. All render targets must have the same size in all dimensions (width and height, and depth for 3D or array size for *Array types). If render targets use multisample anti-aliasing, all bound render targets and depth buffer must be the same form of multisample resource (that is, the sample counts must be the same). Each render target can have a different data format. These render target formats are not required to have identical bit-per-element counts.

Any combination of the eight slots for render targets can have a render target set or not set.

The same resource view cannot be bound to multiple render target slots simultaneously. However, you can set multiple non-overlapping resource views of a single resource as simultaneous multiple render targets.

+
+ ff476464 + void ID3D11DeviceContext::OMSetRenderTargets([In] unsigned int NumViews,[In] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView) + ID3D11DeviceContext::OMSetRenderTargets +
+ + +

Binds resources to the output-merger stage.

+
+

Number of render targets to bind (ranges between 0 and ). If this parameter is nonzero, the number of entries in the array to which ppRenderTargetViews points must equal the number in this parameter. If you set NumRTVs to D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL (0xffffffff), this method does not modify the currently bound render-target views (RTVs) and also does not modify depth-stencil view (DSV).

+

Pointer to an array of s that represent the render targets to bind to the device. If this parameter is null and NumRTVs is 0, no render targets are bound.

+

Pointer to a that represents the depth-stencil view to bind to the device. If this parameter is null, the depth-stencil state is not bound.

+

Index into a zero-based array to begin setting unordered-access views (ranges from 0 to - 1).

For the Direct3D 11.1 runtime, which is available starting with Windows?8, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - 1. D3D11_1_UAV_SLOT_COUNT is defined as 64.

For pixel shaders, UAVStartSlot should be equal to the number of render-target views being bound.

+

Number of unordered-access views (UAVs) in ppUnorderedAccessViews. If you set NumUAVs to D3D11_KEEP_UNORDERED_ACCESS_VIEWS (0xffffffff), this method does not modify the currently bound unordered-access views.

For the Direct3D 11.1 runtime, which is available starting with Windows?8, this value can range from 0 to D3D11_1_UAV_SLOT_COUNT - UAVStartSlot.

+

Pointer to an array of s that represent the unordered-access views to bind to the device. If this parameter is null and NumUAVs is 0, no unordered-access views are bound.

+

An array of append and consume buffer offsets. A value of -1 indicates to keep the current offset. Any other values set the hidden counter for that appendable and consumable UAV. pUAVInitialCounts is relevant only for UAVs that were created with either D3D11_BUFFER_UAV_FLAG_APPEND or D3D11_BUFFER_UAV_FLAG_COUNTER specified when the UAV was created; otherwise, the argument is ignored.

+ +

For pixel shaders, the render targets and unordered-access views share the same resource slots when being written out. This means that UAVs must be given an offset so that they are placed in the slots after the render target views that are being bound.

Note??RTVs, DSV, and UAVs cannot be set independently; they all need to be set at the same time.?

Two RTVs conflict if they share a subresource (and therefore share the same resource).

Two UAVs conflict if they share a subresource (and therefore share the same resource).

An RTV conflicts with a UAV if they share a subresource or share a bind point.

OMSetRenderTargetsAndUnorderedAccessViews operates properly in the following situations:

  1. NumRTVs != D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL and NumUAVs != D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumRTVs <= 8
    • UAVStartSlot >= NumRTVs
    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in the set of all ppRenderTargetViews and ppUnorderedAccessViews.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews performs the following tasks:

    • Unbinds all currently bound conflicting resources (stream-output target resources (SOTargets), compute shader (CS) UAVs, shader-resource views (SRVs)).
    • Binds ppRenderTargetViews, ppDepthStencilView, and ppUnorderedAccessViews.
  2. NumRTVs == D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only UAVs.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • UAVStartSlot + NumUAVs <= 8
    • There must be no conflicts in ppUnorderedAccessViews.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All RTVs in slots >= UAVStartSlot
    • All RTVs that conflict with any UAVs in ppUnorderedAccessViews
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppUnorderedAccessViews

    OMSetRenderTargetsAndUnorderedAccessViews binds ppUnorderedAccessViews.

    OMSetRenderTargetsAndUnorderedAccessViews ignores ppDepthStencilView, and the current depth-stencil view remains bound.

  3. NumUAVs == D3D11_KEEP_UNORDERED_ACCESS_VIEWS

    In this situation, OMSetRenderTargetsAndUnorderedAccessViews binds only RTVs and DSV.

    The following conditions must be true for OMSetRenderTargetsAndUnorderedAccessViews to succeed and for the runtime to pass the bind information to the driver:

    • NumRTVs <= 8
    • There must be no conflicts in ppRenderTargetViews.
    • ppDepthStencilView must match the render-target views. For more information about resource views, see Introduction to a Resource in Direct3D 11.

    OMSetRenderTargetsAndUnorderedAccessViews unbinds the following items:

    • All UAVs in slots < NumRTVs
    • All UAVs that conflict with any RTVs in ppRenderTargetViews
    • All currently bound resources (SOTargets, CS UAVs, SRVs) that conflict with ppRenderTargetViews

    OMSetRenderTargetsAndUnorderedAccessViews binds ppRenderTargetViews and ppDepthStencilView.

    OMSetRenderTargetsAndUnorderedAccessViews ignores UAVStartSlot.

Windows?Phone?8: This API is supported.

+
+ ff476465 + void ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[In, Buffer, Optional] const ID3D11RenderTargetView** ppRenderTargetViews,[In, Optional] ID3D11DepthStencilView* pDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[In, Buffer, Optional] const ID3D11UnorderedAccessView** ppUnorderedAccessViews,[In, Buffer, Optional] const unsigned int* pUAVInitialCounts) + ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews +
+ + +

Set the blend state of the output-merger stage.

+
+

Pointer to a blend-state interface (see ). Pass null for a default blend state. For more info about default blend state, see Remarks.

+

Array of blend factors, one for each RGBA component. The blend factors modulate values for the pixel shader, render target, or both. If you created the blend-state object with D3D11_BLEND_BLEND_FACTOR or D3D11_BLEND_INV_BLEND_FACTOR, the blending stage uses the non-null array of blend factors. If you didn't create the blend-state object with D3D11_BLEND_BLEND_FACTOR or D3D11_BLEND_INV_BLEND_FACTOR, the blending stage does not use the non-null array of blend factors; the runtime stores the blend factors, and you can later call ID3D11DeviceContext::OMGetBlendState to retrieve the blend factors. If you pass null, the runtime uses or stores a blend factor equal to { 1, 1, 1, 1 }.

+

32-bit sample coverage. The default value is 0xffffffff. See remarks.

+ +

Blend state is used by the output-merger stage to determine how to blend together two RGB pixel values and two alpha values. The two RGB pixel values and two alpha values are the RGB pixel value and alpha value that the pixel shader outputs and the RGB pixel value and alpha value already in the output render target. The blend option controls the data source that the blending stage uses to modulate values for the pixel shader, render target, or both. The blend operation controls how the blending stage mathematically combines these modulated values.

To create a blend-state interface, call ID3D11Device::CreateBlendState.

Passing in null for the blend-state interface indicates to the runtime to set a default blending state. The following table indicates the default blending parameters.

StateDefault Value
AlphaToCoverageEnable
IndependentBlendEnable
RenderTarget[0].BlendEnable
RenderTarget[0].SrcBlendD3D11_BLEND_ONE
RenderTarget[0].DestBlendD3D11_BLEND_ZERO
RenderTarget[0].BlendOpD3D11_BLEND_OP_ADD
RenderTarget[0].SrcBlendAlphaD3D11_BLEND_ONE
RenderTarget[0].DestBlendAlphaD3D11_BLEND_ZERO
RenderTarget[0].BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTarget[0].RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

A sample mask determines which samples get updated in all the active render targets. The mapping of bits in a sample mask to samples in a multisample render target is the responsibility of an individual application. A sample mask is always applied; it is independent of whether multisampling is enabled, and does not depend on whether an application uses multisample render targets.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476462 + void ID3D11DeviceContext::OMSetBlendState([In, Optional] ID3D11BlendState* pBlendState,[In, Optional] const SHARPDX_COLOR4* BlendFactor,[In] unsigned int SampleMask) + ID3D11DeviceContext::OMSetBlendState +
+ + +

Sets the depth-stencil state of the output-merger stage.

+
+

Pointer to a depth-stencil state interface (see ) to bind to the device. Set this to null to use the default state listed in .

+

Reference value to perform against when doing a depth-stencil test. See remarks.

+ +

To create a depth-stencil state interface, call ID3D11Device::CreateDepthStencilState.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476463 + void ID3D11DeviceContext::OMSetDepthStencilState([In, Optional] ID3D11DepthStencilState* pDepthStencilState,[In] unsigned int StencilRef) + ID3D11DeviceContext::OMSetDepthStencilState +
+ + +

Get references to the resources bound to the output-merger stage.

+
+

Number of render targets to retrieve.

+

Pointer to an array of s which represent render target views. Specify null for this parameter when retrieval of a render target is not needed.

+

Pointer to a , which represents a depth-stencil view. Specify null for this parameter when retrieval of the depth-stencil view is not needed.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476460 + void ID3D11DeviceContext::OMGetRenderTargets([In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D11DepthStencilView** ppDepthStencilView) + ID3D11DeviceContext::OMGetRenderTargets +
+ + +

Get references to the resources bound to the output-merger stage.

+
+

The number of render-target views to retrieve.

+

Pointer to an array of s, which represent render-target views. Specify null for this parameter when retrieval of render-target views is not required.

+

Pointer to a , which represents a depth-stencil view. Specify null for this parameter when retrieval of the depth-stencil view is not required.

+

Index into a zero-based array to begin retrieving unordered-access views (ranges from 0 to - 1). For pixel shaders UAVStartSlot should be equal to the number of render-target views that are bound.

+

Number of unordered-access views to return in ppUnorderedAccessViews. This number ranges from 0 to - UAVStartSlot.

+

Pointer to an array of s, which represent unordered-access views that are retrieved. Specify null for this parameter when retrieval of unordered-access views is not required.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

Windows?Phone?8: This API is supported.

+
+ ff476461 + void ID3D11DeviceContext::OMGetRenderTargetsAndUnorderedAccessViews([In] unsigned int NumRTVs,[Out, Buffer, Optional] ID3D11RenderTargetView** ppRenderTargetViews,[Out, Optional] ID3D11DepthStencilView** ppDepthStencilView,[In] unsigned int UAVStartSlot,[In] unsigned int NumUAVs,[Out, Buffer, Optional] ID3D11UnorderedAccessView** ppUnorderedAccessViews) + ID3D11DeviceContext::OMGetRenderTargetsAndUnorderedAccessViews +
+ + +

Set the blend state of the output-merger stage.

+
+

Pointer to a blend-state interface (see ). Pass null for a default blend state. For more info about default blend state, see Remarks.

+

Array of blend factors, one for each RGBA component. The blend factors modulate values for the pixel shader, render target, or both. If you created the blend-state object with D3D11_BLEND_BLEND_FACTOR or D3D11_BLEND_INV_BLEND_FACTOR, the blending stage uses the non-null array of blend factors. If you didn't create the blend-state object with D3D11_BLEND_BLEND_FACTOR or D3D11_BLEND_INV_BLEND_FACTOR, the blending stage does not use the non-null array of blend factors; the runtime stores the blend factors, and you can later call ID3D11DeviceContext::OMGetBlendState to retrieve the blend factors. If you pass null, the runtime uses or stores a blend factor equal to { 1, 1, 1, 1 }.

+

32-bit sample coverage. The default value is 0xffffffff. See remarks.

+ +

Blend state is used by the output-merger stage to determine how to blend together two RGB pixel values and two alpha values. The two RGB pixel values and two alpha values are the RGB pixel value and alpha value that the pixel shader outputs and the RGB pixel value and alpha value already in the output render target. The blend option controls the data source that the blending stage uses to modulate values for the pixel shader, render target, or both. The blend operation controls how the blending stage mathematically combines these modulated values.

To create a blend-state interface, call ID3D11Device::CreateBlendState.

Passing in null for the blend-state interface indicates to the runtime to set a default blending state. The following table indicates the default blending parameters.

StateDefault Value
AlphaToCoverageEnable
IndependentBlendEnable
RenderTarget[0].BlendEnable
RenderTarget[0].SrcBlendD3D11_BLEND_ONE
RenderTarget[0].DestBlendD3D11_BLEND_ZERO
RenderTarget[0].BlendOpD3D11_BLEND_OP_ADD
RenderTarget[0].SrcBlendAlphaD3D11_BLEND_ONE
RenderTarget[0].DestBlendAlphaD3D11_BLEND_ZERO
RenderTarget[0].BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTarget[0].RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

A sample mask determines which samples get updated in all the active render targets. The mapping of bits in a sample mask to samples in a multisample render target is the responsibility of an individual application. A sample mask is always applied; it is independent of whether multisampling is enabled, and does not depend on whether an application uses multisample render targets.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476462 + void ID3D11DeviceContext::OMGetBlendState([Out, Optional] ID3D11BlendState** ppBlendState,[Out, Optional] SHARPDX_COLOR4* BlendFactor,[Out, Optional] unsigned int* pSampleMask) + ID3D11DeviceContext::OMGetBlendState +
+ + +

Gets the depth-stencil state of the output-merger stage.

+
+

Address of a reference to a depth-stencil state interface (see ) to be filled with information from the device.

+

Pointer to the stencil reference value used in the depth-stencil test.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

Windows?Phone?8: This API is supported.

+
+ ff476459 + void ID3D11DeviceContext::OMGetDepthStencilState([Out, Optional] ID3D11DepthStencilState** ppDepthStencilState,[Out, Optional] unsigned int* pStencilRef) + ID3D11DeviceContext::OMGetDepthStencilState +
+ + + Get the array of {{viewports}} bound to the {{rasterizer stage}} + + An array of viewports (see ). + void RSGetViewports([InOut] int* NumViewports,[Out, Buffer, Optional] D3D10_VIEWPORT* pViewports) + ff476477 + void ID3D11DeviceContext::RSGetViewports([InOut] unsigned int* pNumViewports,[Out, Buffer, Optional] D3D11_VIEWPORT* pViewports) + ID3D11DeviceContext::RSGetViewports + + + + Get the array of {{viewports}} bound to the {{rasterizer stage}} + + An array of viewports (see ). + void RSGetViewports([InOut] int* NumViewports,[Out, Buffer, Optional] D3D10_VIEWPORT* pViewports) + ff476477 + void ID3D11DeviceContext::RSGetViewports([InOut] unsigned int* pNumViewports,[Out, Buffer, Optional] D3D11_VIEWPORT* pViewports) + ID3D11DeviceContext::RSGetViewports + + + + Get the array of {{scissor rectangles}} bound to the {{rasterizer stage}}. + + An array of scissor rectangles (see ). + void RSGetScissorRects([InOut] int* NumRects,[Out, Buffer, Optional] D3D10_RECT* pRects) + ff476475 + void ID3D11DeviceContext::RSGetScissorRects([InOut] unsigned int* pNumRects,[Out, Buffer, Optional] RECT* pRects) + ID3D11DeviceContext::RSGetScissorRects + + + + Get the array of {{scissor rectangles}} bound to the {{rasterizer stage}}. + + An array of scissor rectangles (see ). + void RSGetScissorRects([InOut] int* NumRects,[Out, Buffer, Optional] D3D10_RECT* pRects) + ff476475 + void ID3D11DeviceContext::RSGetScissorRects([InOut] unsigned int* pNumRects,[Out, Buffer, Optional] RECT* pRects) + ID3D11DeviceContext::RSGetScissorRects + + + + Binds a single scissor rectangle to the rasterizer stage. + + The left. + The top. + The right. + The bottom. + +

All scissor rects must be set atomically as one operation. Any scissor rects not defined by the call are disabled.

The scissor rectangles will only be used if ScissorEnable is set to true in the rasterizer state (see ).

Which scissor rectangle to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader (see shader semantic syntax). If a geometry shader does not make use of the SV_ViewportArrayIndex semantic then Direct3D will use the first scissor rectangle in the array.

Each scissor rectangle in the array corresponds to a viewport in an array of viewports (see ).

+
+ ff476478 + void ID3D11DeviceContext::RSSetScissorRects([In] unsigned int NumRects,[In, Buffer, Optional] const void* pRects) + ID3D11DeviceContext::RSSetScissorRects +
+ + + Binds a set of scissor rectangles to the rasterizer stage. + + The set of scissor rectangles to bind. + +

All scissor rects must be set atomically as one operation. Any scissor rects not defined by the call are disabled.

The scissor rectangles will only be used if ScissorEnable is set to true in the rasterizer state (see ).

Which scissor rectangle to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader (see shader semantic syntax). If a geometry shader does not make use of the SV_ViewportArrayIndex semantic then Direct3D will use the first scissor rectangle in the array.

Each scissor rectangle in the array corresponds to a viewport in an array of viewports (see ).

+
+ ff476478 + void ID3D11DeviceContext::RSSetScissorRects([In] unsigned int NumRects,[In, Buffer, Optional] const void* pRects) + ID3D11DeviceContext::RSSetScissorRects +
+ + + Binds a single viewport to the rasterizer stage. + + The x coordinate of the viewport. + The y coordinate of the viewport. + The width. + The height. + The min Z. + The max Z. + +

All viewports must be set atomically as one operation. Any viewports not defined by the call are disabled.

Which viewport to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader; if a geometry shader does not specify the semantic, Direct3D will use the first viewport in the array.

+
+ ff476480 + void ID3D11DeviceContext::RSSetViewports([In] unsigned int NumViewports,[In, Buffer, Optional] const void* pViewports) + ID3D11DeviceContext::RSSetViewports +
+ + + Binds a single viewport to the rasterizer stage. + + The viewport. + +

All viewports must be set atomically as one operation. Any viewports not defined by the call are disabled.

Which viewport to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader; if a geometry shader does not specify the semantic, Direct3D will use the first viewport in the array.

+
+ ff476480 + void ID3D11DeviceContext::RSSetViewports([In] unsigned int NumViewports,[In, Buffer, Optional] const void* pViewports) + ID3D11DeviceContext::RSSetViewports +
+ + + Binds a set of viewports to the rasterizer stage. + + The set of viewports to bind. + The number of viewport to set. + ff476480 + void ID3D11DeviceContext::RSSetViewports([In] unsigned int NumViewports,[In, Buffer, Optional] const void* pViewports) + ID3D11DeviceContext::RSSetViewports +

All viewports must be set atomically as one operation. Any viewports not defined by the call are disabled.

Which viewport to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader; if a geometry shader does not specify the semantic, Direct3D will use the first viewport in the array.

+
+ + + Binds a set of viewports to the rasterizer stage. + + The set of viewports to bind. + The number of viewport to set. + ff476480 + void ID3D11DeviceContext::RSSetViewports([In] unsigned int NumViewports,[In, Buffer, Optional] const void* pViewports) + ID3D11DeviceContext::RSSetViewports +

All viewports must be set atomically as one operation. Any viewports not defined by the call are disabled.

Which viewport to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader; if a geometry shader does not specify the semantic, Direct3D will use the first viewport in the array.

+
+ + +

Gets or sets a reference to the data contained in a subresource, and denies the GPU access to that subresource.

+
+ +

If you call Map on a deferred context, you can only pass D3D11_MAP_WRITE_DISCARD, D3D11_MAP_WRITE_NO_OVERWRITE, or both to the MapType parameter. Other -typed values are not supported for a deferred context.

Note?? The Direct3D 11.1 runtime, which is available starting with Windows?8, enables mapping dynamic constant buffers and shader resource views (SRVs) of dynamic buffers with D3D11_MAP_WRITE_NO_OVERWRITE. The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers. To determine if a Direct3D device supports these features, call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS. CheckFeatureSupport fills members of a structure with the device's features. The relevant members here are MapNoOverwriteOnDynamicConstantBuffer and MapNoOverwriteOnDynamicBufferSRV.?

For info about how to use Map, see How to: Use dynamic resources.

+
+ ff476457 + RSGetState / RSSetState + RSGetState +
+ + +

Set the rasterizer state for the rasterizer stage of the pipeline.

+
+ No documentation. + +

To create a rasterizer state interface, call ID3D11Device::CreateRasterizerState.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476479 + void ID3D11DeviceContext::RSSetState([In, Optional] ID3D11RasterizerState* pRasterizerState) + ID3D11DeviceContext::RSSetState +
+ + +

Bind an array of viewports to the rasterizer stage of the pipeline.

+
+

Number of viewports to bind.

+

An array of structures to bind to the device. See the structure page for details about how the viewport size is dependent on the device feature level which has changed between Direct3D 11 and Direct3D 10.

+ +

All viewports must be set atomically as one operation. Any viewports not defined by the call are disabled.

Which viewport to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader; if a geometry shader does not specify the semantic, Direct3D will use the first viewport in the array.

Note??Even though you specify float values to the members of the structure for the pViewports array in a call to ID3D11DeviceContext::RSSetViewports for feature levels 9_x, RSSetViewports uses DWORDs internally. Because of this behavior, when you use a negative top left corner for the viewport, the call to RSSetViewports for feature levels 9_x fails. This failure occurs because RSSetViewports for 9_x casts the floating point values into unsigned integers without validation, which results in integer overflow.? +
+ ff476480 + void ID3D11DeviceContext::RSSetViewports([In] unsigned int NumViewports,[In, Buffer, Optional] const D3D11_VIEWPORT* pViewports) + ID3D11DeviceContext::RSSetViewports +
+ + +

Bind an array of scissor rectangles to the rasterizer stage.

+
+

Number of scissor rectangles to bind.

+

An array of scissor rectangles (see D3D11_RECT).

+ +

All scissor rects must be set atomically as one operation. Any scissor rects not defined by the call are disabled.

The scissor rectangles will only be used if ScissorEnable is set to true in the rasterizer state (see ).

Which scissor rectangle to use is determined by the SV_ViewportArrayIndex semantic output by a geometry shader (see shader semantic syntax). If a geometry shader does not make use of the SV_ViewportArrayIndex semantic then Direct3D will use the first scissor rectangle in the array.

Each scissor rectangle in the array corresponds to a viewport in an array of viewports (see ID3D11DeviceContext::RSSetViewports).

Windows?Phone?8: This API is supported.

+
+ ff476478 + void ID3D11DeviceContext::RSSetScissorRects([In] unsigned int NumRects,[In, Buffer, Optional] const RECT* pRects) + ID3D11DeviceContext::RSSetScissorRects +
+ + +

Gets a reference to the data contained in a subresource, and denies the GPU access to that subresource.

+
+ No documentation. + +

If you call Map on a deferred context, you can only pass D3D11_MAP_WRITE_DISCARD, D3D11_MAP_WRITE_NO_OVERWRITE, or both to the MapType parameter. Other -typed values are not supported for a deferred context.

Note?? The Direct3D 11.1 runtime, which is available starting with Windows?8, enables mapping dynamic constant buffers and shader resource views (SRVs) of dynamic buffers with D3D11_MAP_WRITE_NO_OVERWRITE. The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers. To determine if a Direct3D device supports these features, call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS. CheckFeatureSupport fills members of a structure with the device's features. The relevant members here are MapNoOverwriteOnDynamicConstantBuffer and MapNoOverwriteOnDynamicBufferSRV.?

For info about how to use Map, see How to: Use dynamic resources.

+
+ ff476457 + void ID3D11DeviceContext::RSGetState([Out, Optional] ID3D11RasterizerState** ppRasterizerState) + ID3D11DeviceContext::RSGetState +
+ + +

Gets the array of viewports bound to the rasterizer stage.

+
+

A reference to a variable that, on input, specifies the number of viewports (ranges from 0 to D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) in the pViewports array; on output, the variable contains the actual number of viewports that are bound to the rasterizer stage. If pViewports is null, RSGetViewports fills the variable with the number of viewports currently bound.

Note?? In some versions of the Windows SDK, a debug device will raise an exception if the input value in the variable to which pNumViewports points is greater than D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE even if pViewports is null. The regular runtime ignores the value in the variable to which pNumViewports points when pViewports is null. This behavior of a debug device might be corrected in a future release of the Windows SDK. ?
+

An array of structures for the viewports that are bound to the rasterizer stage. If the number of viewports (in the variable to which pNumViewports points) is greater than the actual number of viewports currently bound, unused elements of the array contain 0. For info about how the viewport size depends on the device feature level, which has changed between Direct3D 11 and Direct3D 10, see .

+ +

Windows?Phone?8: This API is supported.

+
+ ff476477 + void ID3D11DeviceContext::RSGetViewports([InOut] unsigned int* pNumViewports,[Out, Buffer, Optional] D3D11_VIEWPORT* pViewports) + ID3D11DeviceContext::RSGetViewports +
+ + +

Get the array of scissor rectangles bound to the rasterizer stage.

+
+

The number of scissor rectangles (ranges between 0 and D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE) bound; set pRects to null to use pNumRects to see how many rectangles would be returned.

+

An array of scissor rectangles (see D3D11_RECT). If NumRects is greater than the number of scissor rects currently bound, then unused members of the array will contain 0.

+ ff476475 + void ID3D11DeviceContext::RSGetScissorRects([InOut] unsigned int* pNumRects,[Out, Buffer, Optional] RECT* pRects) + ID3D11DeviceContext::RSGetScissorRects +
+ + +

Set the target output buffers for the stream-output stage of the pipeline.

+
+

The number of buffer to bind to the device. A maximum of four output buffers can be set. If less than four are defined by the call, the remaining buffer slots are set to null. See Remarks.

+

The array of output buffers (see ) to bind to the device. The buffers must have been created with the flag.

+

Array of offsets to the output buffers from ppSOTargets, one offset for each buffer. The offset values must be in bytes.

+ +

An offset of -1 will cause the stream output buffer to be appended, continuing after the last location written to the buffer in a previous stream output pass.

Calling this method using a buffer that is currently bound for writing will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476484 + void ID3D11DeviceContext::SOSetTargets([In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppSOTargets,[In, Buffer, Optional] const unsigned int* pOffsets) + ID3D11DeviceContext::SOSetTargets +
+ + + Sets the stream output targets bound to the StreamOutput stage. + + The buffer to bind on the first stream output slot. + An offset of -1 will cause the stream output buffer to be appended, continuing after the last location written to the buffer in a previous stream output pass. + ff476484 + void ID3D11DeviceContext::SOSetTargets([In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppSOTargets,[In, Buffer, Optional] const unsigned int* pOffsets) + ID3D11DeviceContext::SOSetTargets + + + + Set the target output {{buffers}} for the {{StreamOutput}} stage, which enables/disables the pipeline to stream-out data. + + + Call ID3D10Device::SOSetTargets (before any draw calls) to stream data out; call SOSetTargets with NULL to stop streaming data out. For an example, see Exercise 01 from the GDC 2007 workshop, which sets the stream output render targets before calling draw methods in the RenderInstanceToStream function. An offset of -1 will cause the stream output buffer to be appended, continuing after the last location written to the buffer in a previous stream output pass. Calling this method using a buffer that is currently bound for writing will effectively bind NULL instead because a buffer cannot be bound as both an input and an output at the same time. The {{DeviceDebug Layer}} will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime. The method will not hold a reference to the interfaces passed in. For that reason, applications should be careful not to release an interface currently in use by the device. + + an array of output buffers (see ) to bind to the device. The buffers must have been created with the flag. + void SOSetTargets([In] int NumBuffers,[In, Buffer, Optional] const ID3D10Buffer** ppSOTargets,[In, Buffer, Optional] const int* pOffsets) + ff476484 + void ID3D11DeviceContext::SOSetTargets([In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppSOTargets,[In, Buffer, Optional] const unsigned int* pOffsets) + ID3D11DeviceContext::SOSetTargets + + + + Get the target output {{buffers}} for the {{StreamOutput}} stage of the pipeline. + + + Any returned interfaces will have their reference count incremented by one. Applications should call {{IUnknown::Release}} on the returned interfaces when they are no longer needed to avoid memory leaks. + + Number of buffers to get. A maximum of four output buffers can be retrieved. + an array of output buffers (see ) to bind to the device. + void SOGetTargets([In] int NumBuffers,[Out, Buffer, Optional] ID3D10Buffer** ppSOTargets,[Out, Buffer, Optional] int* pOffsets) + + + +

Set the target output buffers for the stream-output stage of the pipeline.

+
+

The number of buffer to bind to the device. A maximum of four output buffers can be set. If less than four are defined by the call, the remaining buffer slots are set to null. See Remarks.

+

The array of output buffers (see ) to bind to the device. The buffers must have been created with the D3D11_BIND_STREAM_OUTPUT flag.

+

Array of offsets to the output buffers from ppSOTargets, one offset for each buffer. The offset values must be in bytes.

+ +

An offset of -1 will cause the stream output buffer to be appended, continuing after the last location written to the buffer in a previous stream output pass.

Calling this method using a buffer that is currently bound for writing will effectively bind null instead because a buffer cannot be bound as both an input and an output at the same time.

The debug layer will generate a warning whenever a resource is prevented from being bound simultaneously as an input and an output, but this will not prevent invalid data from being used by the runtime.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

Windows?Phone?8: This API is supported.

+
+ ff476484 + void ID3D11DeviceContext::SOSetTargets([In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppSOTargets,[In, Buffer, Optional] const unsigned int* pOffsets) + ID3D11DeviceContext::SOSetTargets +
+ + +

Get the target output buffers for the stream-output stage of the pipeline.

+
+

Number of buffers to get.

+

An array of output buffers (see ) to be retrieved from the device.

+ +

A maximum of four output buffers can be retrieved.

The offsets to the output buffers pointed to in the returned ppSOTargets array may be assumed to be -1 (append), as defined for use in ID3D11DeviceContext::SOSetTargets.

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

Windows?Phone?8: This API is supported.

+
+ ff476483 + void ID3D11DeviceContext::SOGetTargets([In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppSOTargets) + ID3D11DeviceContext::SOGetTargets +
+ + + Initializes a new deferred context instance of class. + + + + + + Partially clears a view using an array of rectangles + + View to clear + Clear color + Rectangle areas + + + +

Copies a region from a source resource to a destination resource.

+
+

A reference to the destination resource.

+

Destination subresource index.

+

The x-coordinate of the upper-left corner of the destination region.

+

The y-coordinate of the upper-left corner of the destination region. For a 1D subresource, this must be zero.

+

The z-coordinate of the upper-left corner of the destination region. For a 1D or 2D subresource, this must be zero.

+

A reference to the source resource.

+

Source subresource index.

+

A reference to a 3D box that defines the region of the source subresource that CopySubresourceRegion1 can copy. If null, CopySubresourceRegion1 copies the entire source subresource. The box must fit within the source resource.

An empty box results in a no-op. A box is empty if the top value is greater than or equal to the bottom value, or the left value is greater than or equal to the right value, or the front value is greater than or equal to the back value. When the box is empty, CopySubresourceRegion1 doesn't perform a copy operation.

+

A -typed value that specifies how to perform the copy operation. If you specify zero for no copy option, CopySubresourceRegion1 behaves like ID3D11DeviceContext::CopySubresourceRegion. For existing display drivers that can't process these flags, the runtime doesn't use them.

+ +

If the display driver supports overlapping, the source and destination subresources can be identical, and the source and destination regions can overlap each other. For existing display drivers that don?t support overlapping, the runtime drops calls with identical source and destination subresources, regardless of whether the regions overlap. To determine whether the display driver supports overlapping, check the CopyWithOverlap member of . This overlapping support enables additional scroll functionality in a call to IDXGISwapChain::Present.

Note??Applies only to feature level 9_x hardware If you use ID3D11DeviceContext1::UpdateSubresource1 or CopySubresourceRegion1 to copy from a staging resource to a default resource, you can corrupt the destination contents. This occurs if you pass a null source box and if the source resource has different dimensions from those of the destination resource or if you use destination offsets, (x, y, and z). In this situation, always pass a source box that is the full size of the source resource.? +
+ hh404604 + void ID3D11DeviceContext1::CopySubresourceRegion1([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In] unsigned int DstX,[In] unsigned int DstY,[In] unsigned int DstZ,[In] ID3D11Resource* pSrcResource,[In] unsigned int SrcSubresource,[In, Optional] const D3D11_BOX* pSrcBox,[In] unsigned int CopyFlags) + ID3D11DeviceContext1::CopySubresourceRegion1 +
+ + +

The CPU copies data from memory to a subresource created in non-mappable memory.

+
+

A reference to the destination resource.

+

A zero-based index that identifies the destination subresource. See D3D11CalcSubresource for more details.

+

A reference to a box that defines the portion of the destination subresource to copy the resource data into. Coordinates are in bytes for buffers and in texels for textures. If null, UpdateSubresource1 writes the data to the destination subresource with no offset. The dimensions of the source must fit the destination.

An empty box results in a no-op. A box is empty if the top value is greater than or equal to the bottom value, or the left value is greater than or equal to the right value, or the front value is greater than or equal to the back value. When the box is empty, UpdateSubresource1 doesn't perform an update operation.

+

A reference to the source data in memory.

+

The size of one row of the source data.

+

The size of one depth slice of source data.

+

A -typed value that specifies how to perform the update operation. If you specify zero for no update option, UpdateSubresource1 behaves like ID3D11DeviceContext::UpdateSubresource. For existing display drivers that can't process these flags, the runtime doesn't use them.

+ +

If you call UpdateSubresource1 to update a constant buffer, pass any region, and the driver has not been implemented to Windows?8, the runtime drops the call (except feature level 9.1, 9.2, and 9.3 where the runtime emulates support). The runtime also drops the call if you update a constant buffer with a partial region whose extent is not aligned to 16-byte granularity (16 bytes being a full constant). When the runtime drops the call, the runtime doesn't call the corresponding device driver interface (DDI).

When you record a call to UpdateSubresource with an offset pDstBox in a software command list, the offset in pDstBox is incorrectly applied to pSrcData when you play back the command list. The new-for-Windows?8UpdateSubresource1 fixes this issue. In a call to UpdateSubresource1, pDstBox does not affect pSrcData.

For info about various resource types and how UpdateSubresource1 might work with each resource type, see Introduction to a Resource in Direct3D 11.

Note??Applies only to feature level 9_x hardware If you use UpdateSubresource1 or ID3D11DeviceContext1::CopySubresourceRegion1 to copy from a staging resource to a default resource, you can corrupt the destination contents. This occurs if you pass a null source box and if the source resource has different dimensions from those of the destination resource or if you use destination offsets, (x, y, and z). In this situation, always pass a source box that is the full size of the source resource.? +
+ hh446790 + void ID3D11DeviceContext1::UpdateSubresource1([In] ID3D11Resource* pDstResource,[In] unsigned int DstSubresource,[In, Optional] const D3D11_BOX* pDstBox,[In] const void* pSrcData,[In] unsigned int SrcRowPitch,[In] unsigned int SrcDepthPitch,[In] unsigned int CopyFlags) + ID3D11DeviceContext1::UpdateSubresource1 +
+ + +

Discards a resource from the device context.

+
+

A reference to the interface for the resource to discard. The resource must have been created with usage D3D11_USAGE_DEFAULT or D3D11_USAGE_DYNAMIC, otherwise the runtime drops the call to DiscardResource; if the debug layer is enabled, the runtime returns an error message.

+ +

DiscardResource informs the graphics processing unit (GPU) that the existing content in the resource that pResource points to is no longer needed.

+
+ hh404613 + void ID3D11DeviceContext1::DiscardResource([In] ID3D11Resource* pResource) + ID3D11DeviceContext1::DiscardResource +
+ + +

Discards a resource view from the device context.

+
+

A reference to the interface for the resource view to discard. The resource that underlies the view must have been created with usage D3D11_USAGE_DEFAULT or D3D11_USAGE_DYNAMIC, otherwise the runtime drops the call to DiscardView; if the debug layer is enabled, the runtime returns an error message.

+ +

DiscardView informs the graphics processing unit (GPU) that the existing content in the resource view that pResourceView points to is no longer needed. The view can be an SRV, RTV, UAV, or DSV. DiscardView is a variation on the DiscardResource method. DiscardView allows you to discard a subset of a resource that is in a view (such as a single miplevel). More importantly, DiscardView provides a convenience because often views are what are being bound and unbound at the pipeline. Some pipeline bindings do not have views, such as stream output. In that situation, DiscardResource can do the job for any resource.

+
+ hh404616 + void ID3D11DeviceContext1::DiscardView([In] ID3D11View* pResourceView) + ID3D11DeviceContext1::DiscardView +
+ + +

Sets the constant buffers that the vertex shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to VSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to VSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the VSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh446795 + void ID3D11DeviceContext1::VSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::VSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the hull-shader stage of the pipeline uses.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

The runtime drops the call to HSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to HSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If the pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the HSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404642 + void ID3D11DeviceContext1::HSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::HSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the domain-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to DSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to DSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the DSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404632 + void ID3D11DeviceContext1::DSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::DSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the geometry shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to GSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to GSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the GSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404638 + void ID3D11DeviceContext1::GSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::GSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the pixel shader pipeline stage uses, and enables the shader to access other parts of the buffer.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

To enable the shader to access other parts of the buffer, call PSSetConstantBuffers1 instead of PSSetConstantBuffers. PSSetConstantBuffers1 has additional parameters pFirstConstant and pNumConstants.

The runtime drops the call to PSSetConstantBuffers1 if the numbers of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders. The maximum constant buffer size that is supported by shaders holds 4096 constants, where each constant has four 32-bit components.

The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the following window (range):

[value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]

That is, the window is the range is from (value in an element of pFirstConstant) to (value in an element of pFirstConstant + value in an element of pNumConstants).

The runtime also drops the call to PSSetConstantBuffers1 on existing drivers that do not support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the PSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404649 + void ID3D11DeviceContext1::PSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::PSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the compute-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to CSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to CSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the CSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404610 + void ID3D11DeviceContext1::CSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::CSSetConstantBuffers1 +
+ + +

Gets the constant buffers that the vertex shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references to be returned by the method.

+

A reference to an array that receives the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 2 indicates that the start of the associated constant buffer is 32 bytes into the constant buffer. The runtime sets pFirstConstant to null if the buffers do not have offsets.

+

A reference to an array that receives the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. The runtime sets pNumConstants to null if it doesn't specify the numbers of constants in each buffer.

+ +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh446793 + void ID3D11DeviceContext1::VSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::VSGetConstantBuffers1 +
+ + +

Gets the constant buffers that the hull-shader stage uses.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh404641 + void ID3D11DeviceContext1::HSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::HSGetConstantBuffers1 +
+ + +

Gets the constant buffers that the domain-shader stage uses.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references to be returned by the method.

+

A reference to an array that receives the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 2 indicates that the start of the associated constant buffer is 32 bytes into the constant buffer. The runtime sets pFirstConstant to null if the buffers do not have offsets.

+

A reference to an array that receives the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. The runtime sets pNumConstants to null if it doesn't specify the numbers of constants in each buffer.

+ +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh404630 + void ID3D11DeviceContext1::DSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::DSGetConstantBuffers1 +
+ + +

Gets the constant buffers that the geometry shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references to be returned by the method.

+

A reference to an array that receives the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 2 indicates that the start of the associated constant buffer is 32 bytes into the constant buffer. The runtime sets pFirstConstant to null if the buffers do not have offsets.

+

A reference to an array that receives the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. The runtime sets pNumConstants to null if it doesn't specify the numbers of constants in each buffer.

+ +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh404635 + void ID3D11DeviceContext1::GSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::GSGetConstantBuffers1 +
+ + +

Gets the constant buffers that the pixel shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references to be returned by the method.

+

A reference to an array that receives the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 2 indicates that the start of the associated constant buffer is 32 bytes into the constant buffer. The runtime sets pFirstConstant to null if the buffers do not have offsets.

+

A reference to an array that receives the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. The runtime sets pNumConstants to null if it doesn't specify the numbers of constants in each buffer.

+ +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh404645 + void ID3D11DeviceContext1::PSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::PSGetConstantBuffers1 +
+ + +

Gets the constant buffers that the compute-shader stage uses.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references to be returned by the method.

+

A reference to an array that receives the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 2 indicates that the start of the associated constant buffer is 32 bytes into the constant buffer. The runtime sets pFirstConstant to null if the buffers do not have offsets.

+

A reference to an array that receives the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. The runtime sets pNumConstants to null if it doesn't specify the numbers of constants in each buffer.

+ +

If no buffer is bound at a slot, pFirstConstant and pNumConstants are null for that slot.

+
+ hh404607 + void ID3D11DeviceContext1::CSGetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers,[Out, Buffer, Optional] unsigned int* pFirstConstant,[Out, Buffer, Optional] unsigned int* pNumConstants) + ID3D11DeviceContext1::CSGetConstantBuffers1 +
+ + +

Activates the given context state object and changes the current device behavior to Direct3D?11, Direct3D?10.1, or Direct3D?10.

+
+

A reference to the interface for the context state object that was previously created through the ID3D11Device1::CreateDeviceContextState method. If SwapDeviceContextState is called with pState set to null, the call has no effect.

+

A reference to a variable that receives a reference to the interface for the previously-activated context state object.

+ +

SwapDeviceContextState changes device behavior. This device behavior depends on the emulated interface that you passed to the EmulatedInterface parameter of the ID3D11Device1::CreateDeviceContextState method when you created the context state object.

SwapDeviceContextState is not supported on a deferred context.

SwapDeviceContextState disables the incompatible device interfaces ID3D10Device, ID3D10Device1, , and . When a context state object is active, the runtime disables certain methods on the device and context interfaces. A context state object that is created with __uuidof() or __uuidof() turns off most of the Direct3D?10 device interfaces. A context state object that is created with __uuidof(ID3D10Device1) or __uuidof(ID3D10Device) turns off most of the methods. + For more information about this behavior, see ID3D11Device1::CreateDeviceContextState.

SwapDeviceContextState activates the context state object specified by pState. This means that the device behaviors that are associated with the context state object's feature level and compatible interface are activated on the Direct3D device until the next call to SwapDeviceContextState. In addition, any state that was saved when this context state object was last active is now reactivated, so that the previous state is replaced.

SwapDeviceContextState sets ppPreviousState to the most recently activated context state object. The object allows the caller to save and then later restore the previous device state. This behavior is useful in a plug-in architecture such as Direct2D that shares a Direct3D device with its plug-ins. A Direct2D interface can use context state objects to save and restore the application's state.

If the caller did not previously call the ID3D11Device1::CreateDeviceContextState method to create a previous context state object, SwapDeviceContextState sets ppPreviousState to the default context state object. In either case, usage of SwapDeviceContextState is the same.

The feature level that is specified by the application, and that is chosen by the context state object from the acceptable list that the application supplies to ID3D11Device1::CreateDeviceContextState, controls the feature level of the immediate context whenever the context state object is active. Because the Direct3D?11 device is free-threaded, the device methods cannot query the current immediate context feature level. Instead, the device runs at a feature level that is the maximum of all previously created context state objects' feature levels. This means that the device's feature level can increase dynamically.

The feature level of the context state object controls the functionality available from the immediate context. However, to maintain the free-threaded contract of the Direct3D?11 device methods?the resource-creation methods in particular?the upper-bound feature level of all created context state objects controls the set of resources that the device creates.

Because the context state object interface is published by the immediate context, the interface requires the same threading model as the immediate context. Specifically, SwapDeviceContextState is single-threaded with respect to the other immediate context methods and with respect to the equivalent methods of ID3D10Device.

Crucially, because only one of the Direct3D?10 or Direct3D?11 ref-count behaviors can be available at a time, one of the Direct3D?10 and Direct3D?11 interfaces must break its ref-count contract. To avoid this situation, the activation of a context state object turns off the incompatible version interface. Also, if you call a method of an incompatible version interface, the call silently fails if the method has return type void, returns an value of E_INVALIDARG, or sets any out parameter to null.

When you switch from Direct3D?11 mode to either Direct3D?10 mode or Direct3D?10.1 mode, the binding behavior of the device changes. Specifically, the final release of a resource induces unbind in Direct3D?10 mode or Direct3D?10.1 mode. During final release an application releases all of the resource's references, including indirect references such as the linkage from view to resource, and the linkage from context state object to any of the context state object's bound resources. Any bound resource to which the application has no reference is unbound and destroyed, in order to maintain the Direct3D?10 behavior.

SwapDeviceContextState does not affect any state that sets.

Command lists that are generated by deferred contexts do not hold a reference to context state objects and are not affected by future updates to context state objects.

No asynchronous objects are affected by SwapDeviceContextState. For example, if a query is active before a call to SwapDeviceContextState, it is still active after the call.

+
+ hh446787 + void ID3D11DeviceContext1::SwapDeviceContextState([In] ID3DDeviceContextState* pState,[Out, Optional] ID3DDeviceContextState** ppPreviousState) + ID3D11DeviceContext1::SwapDeviceContextState +
+ + +

Sets all the elements in a resource view to one value.

+
+

A reference to the interface that represents the resource view to clear.

+

A 4-component array that represents the color to use to clear the resource view.

+

An array of D3D11_RECT structures for the rectangles in the resource view to clear. If null, ClearView clears the entire surface.

+

Number of rectangles in the array that the pRect parameter specifies.

+ +

ClearView works only on render-target views (RTVs), depth/stencil views (DSVs) on depth-only resources (resources with no stencil component), unordered-access views (UAVs), or any video view of a Texture2D surface. The runtime drops invalid calls. Empty rectangles in the pRect array are a no-op. A rectangle is empty if the top value equals the bottom value or the left value equals the right value.

ClearView doesn?t support 3D textures.

ClearView applies the same color value to all array slices in a view; all rectangles in the pRect array correspond to each array slice. The pRect array of rectangles is a set of areas to clear on a single surface. If the view is an array, ClearView clears all the rectangles on each array slice individually.

When you apply rectangles to buffers, set the top value to 0 and the bottom value to 1 and set the left value and right value to describe the extent within the buffer. When the top value equals the bottom value or the left value equals the right value, the rectangle is empty and a no-op is achieved.

The driver converts and clamps color values to the destination format as appropriate per Direct3D conversion rules. For example, if the format of the view is DXGI_FORMAT_R8G8B8A8_UNORM, the driver clamps inputs to 0.0f to 1.0f (+INF -> 1.0f (0XFF)/NaN -> 0.0f).

If the format is integer, such as DXGI_FORMAT_R8G8B8A8_UINT, the runtime interprets inputs as integral floats. Therefore, 235.0f maps to 235 (rounds to zero, out of range/INF values clamp to target range, and NaN to 0).

Here are the color mappings:

  • Color[0]: R (or Y for video)
  • Color[1]: G (or U/Cb for video)
  • Color[2]: B (or V/Cr for video)
  • Color[3]: A

For video views with YUV or YCbBr formats, ClearView doesn't convert color values. In situations where the format name doesn?t indicate _UNORM, _UINT, and so on, ClearView assumes _UINT. Therefore, 235.0f maps to 235 (rounds to zero, out of range/INF values clamp to target range, and NaN to 0).

+
+ hh404601 + void ID3D11DeviceContext1::ClearView([In] ID3D11View* pView,[In] const SHARPDX_COLOR4* Color,[In, Buffer, Optional] const RECT* pRect,[In] unsigned int NumRects) + ID3D11DeviceContext1::ClearView +
+ + +

Discards the specified elements in a resource view from the device context.

+
+

A reference to the interface for the resource view to discard. The resource that underlies the view must have been created with usage D3D11_USAGE_DEFAULT or D3D11_USAGE_DYNAMIC, otherwise the runtime drops the call to DiscardView1; if the debug layer is enabled, the runtime returns an error message.

+

An array of D3D11_RECT structures for the rectangles in the resource view to discard. If null, DiscardView1 discards the entire view and behaves the same as DiscardView.

+

Number of rectangles in the array that the pRects parameter specifies.

+ +

DiscardView1 informs the graphics processing unit (GPU) that the existing content in the specified elements in the resource view that pResourceView points to is no longer needed. The view can be an SRV, RTV, UAV, or DSV. DiscardView1 is a variation on the DiscardResource method. DiscardView1 allows you to discard elements of a subset of a resource that is in a view (such as elements of a single miplevel). More importantly, DiscardView1 provides a convenience because often views are what are being bound and unbound at the pipeline. Some pipeline bindings do not have views, such as stream output. In that situation, DiscardResource can do the job for any resource.

+
+ jj247573 + void ID3D11DeviceContext1::DiscardView1([In] ID3D11View* pResourceView,[In, Buffer, Optional] const RECT* pRects,[In] unsigned int NumRects) + ID3D11DeviceContext1::DiscardView1 +
+ + +

Sets the constant buffers that the vertex shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to VSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to VSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the VSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh446795 + void ID3D11DeviceContext1::VSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::VSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the vertex shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to VSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to VSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the VSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh446795 + void ID3D11DeviceContext1::VSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::VSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the hull-shader stage of the pipeline uses.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

The runtime drops the call to HSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to HSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If the pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the HSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404642 + void ID3D11DeviceContext1::HSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::HSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the hull-shader stage of the pipeline uses.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + +

The runtime drops the call to HSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to HSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If the pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the HSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404642 + void ID3D11DeviceContext1::HSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::HSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the domain-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to DSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to DSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the DSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404632 + void ID3D11DeviceContext1::DSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::DSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the domain-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to DSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to DSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the DSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404632 + void ID3D11DeviceContext1::DSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::DSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the geometry shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to GSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to GSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the GSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404638 + void ID3D11DeviceContext1::GSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::GSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the geometry shader pipeline stage uses.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to GSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to GSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the GSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404638 + void ID3D11DeviceContext1::GSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::GSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the pixel shader pipeline stage uses, and enables the shader to access other parts of the buffer.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

To enable the shader to access other parts of the buffer, call PSSetConstantBuffers1 instead of PSSetConstantBuffers. PSSetConstantBuffers1 has additional parameters pFirstConstant and pNumConstants.

The runtime drops the call to PSSetConstantBuffers1 if the numbers of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders. The maximum constant buffer size that is supported by shaders holds 4096 constants, where each constant has four 32-bit components.

The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the following window (range):

[value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]

That is, the window is the range is from (value in an element of pFirstConstant) to (value in an element of pFirstConstant + value in an element of pNumConstants).

The runtime also drops the call to PSSetConstantBuffers1 on existing drivers that do not support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the PSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404649 + void ID3D11DeviceContext1::PSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::PSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the pixel shader pipeline stage uses, and enables the shader to access other parts of the buffer.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

To enable the shader to access other parts of the buffer, call PSSetConstantBuffers1 instead of PSSetConstantBuffers. PSSetConstantBuffers1 has additional parameters pFirstConstant and pNumConstants.

The runtime drops the call to PSSetConstantBuffers1 if the numbers of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders. The maximum constant buffer size that is supported by shaders holds 4096 constants, where each constant has four 32-bit components.

The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the following window (range):

[value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]

That is, the window is the range is from (value in an element of pFirstConstant) to (value in an element of pFirstConstant + value in an element of pNumConstants).

The runtime also drops the call to PSSetConstantBuffers1 on existing drivers that do not support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the PSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404649 + void ID3D11DeviceContext1::PSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::PSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the compute-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to CSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to CSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the CSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404610 + void ID3D11DeviceContext1::CSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::CSSetConstantBuffers1 +
+ + +

Sets the constant buffers that the compute-shader stage uses.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+

An array that holds the offsets into the buffers that ppConstantBuffers specifies. Each offset specifies where, from the shader's point of view, each constant buffer starts. Each offset is measured in shader constants, which are 16 bytes (4*32-bit components). Therefore, an offset of 16 indicates that the start of the associated constant buffer is 256 bytes into the constant buffer. Each offset must be a multiple of 16 constants.

+

An array that holds the numbers of constants in the buffers that ppConstantBuffers specifies. Each number specifies the number of constants that are contained in the constant buffer that the shader uses. Each number of constants starts from its respective offset that is specified in the pFirstConstant array. Each number of constants must be a multiple of 16 constants, in the range [0..4096].

+ +

The runtime drops the call to CSSetConstantBuffers1 if the number of constants to which pNumConstants points is larger than the maximum constant buffer size that is supported by shaders (4096 constants). The values in the elements of the pFirstConstant and pFirstConstant + pNumConstants arrays can exceed the length of each buffer; from the shader's point of view, the constant buffer is the intersection of the actual memory allocation for the buffer and the window [value in an element of pFirstConstant, value in an element of pFirstConstant + value in an element of pNumConstants]. The runtime also drops the call to CSSetConstantBuffers1 on existing drivers that don't support this offsetting.

The runtime will emulate this feature for feature level 9.1, 9.2, and 9.3; therefore, this feature is supported for feature level 9.1, 9.2, and 9.3. This feature is always available on new drivers for feature level 10 and higher.

From the shader?s point of view, element [0] in the constant buffers array is the constant at pFirstConstant.

Out of bounds access to the constant buffers from the shader to the range that is defined by pFirstConstant and pNumConstants returns 0.

If pFirstConstant and pNumConstants arrays are null, you get the same result as if you were binding the entire buffer into view. You get this same result if you call the CSSetConstantBuffers method. If the buffer is larger than the maximum constant buffer size that is supported by shaders (4096 elements), the shader can access only the first 4096 constants.

If either pFirstConstant or pNumConstants is null, the other parameter must also be null.

+
+ hh404610 + void ID3D11DeviceContext1::CSSetConstantBuffers1([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers,[In, Buffer, Optional] const unsigned int* pFirstConstant,[In, Buffer, Optional] const unsigned int* pNumConstants) + ID3D11DeviceContext1::CSSetConstantBuffers1 +
+ + + Initializes a new deferred context instance of class. + + + + + +

Allows apps to determine when either a capture or profiling request is enabled.

+
+ +

Returns TRUE if the capture tool is present and capturing or the app is being profiled such that SetMarkerInt or BeginEventInt will be logged to ETW. Otherwise, it returns . Apps can use this to turn off self-throttling mechanisms in order to accurately capture what is currently being seen as app output. Apps can also avoid generating event markers and the associated overhead it may entail when there is no benefit to do so.

If apps detect that capture is being performed, they can prevent the Direct3D debugging tools, such as Microsoft Visual Studio?2013, from capturing them. The purpose of the D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY flag prior to Windows?8.1 was to allow the Direct3D runtime to prevent debugging tools from capturing apps.

+
+ dn280504 + IsAnnotationEnabled + IsAnnotationEnabled +
+ + +

Updates mappings of tile locations in tiled resources to memory locations in a tile pool.

+
+

A reference to the tiled resource.

+

The number of tiled resource regions.

+

An array of structures that describe the starting coordinates of the tiled resource regions. The NumTiledResourceRegions parameter specifies the number of structures in the array.

+

An array of structures that describe the sizes of the tiled resource regions. The NumTiledResourceRegions parameter specifies the number of structures in the array.

+

A reference to the tile pool.

+

The number of tile-pool ranges.

+

An array of values that describe each tile-pool range. The NumRanges parameter specifies the number of values in the array.

+

An array of offsets into the tile pool. These are 0-based tile offsets, counting in tiles (not bytes).

+

An array of tiles.

An array of values that specify the number of tiles in each tile-pool range. The NumRanges parameter specifies the number of values in the array.

+

A combination of D3D11_TILE_MAPPING_FLAGS values that are combined by using a bitwise OR operation.

+

Returns if successful; otherwise, returns one of the following:

  • Returns E_INVALIDARG if various conditions such as invalid flags result in the call being dropped.

    The debug layer will emit an error.

  • Returns E_OUTOFMEMORY if the call results in the driver having to allocate space for new page table mappings but running out of memory.

    If out of memory occurs when this is called in a commandlist and the commandlist is being executed, the device will be removed. Apps can avoid this situation by only doing update calls that change existing mappings from tiled resources within commandlists (so drivers will not have to allocate page table memory, only change the mapping).

  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred.
+ +

In a single call to UpdateTileMappings, you can map one or more ranges of resource tiles to one or more ranges of tile-pool tiles.

You can organize the parameters of UpdateTileMappings in these ways to perform an update:

  • Tiled resource whose mappings are updated. This is a resource that was created with the D3D11_RESOURCE_MISC_TILED flag. Mappings start off all null when a resource is initially created.
  • Set of tile regions on the tiled resource whose mappings are updated. You can make one UpdateTileMappings call to update many mappings or multiple calls with a bit more API call overhead as well if that is more convenient. NumTiledResourceRegions specifies how many regions there are, pTiledResourceRegionStartCoordinates and pTiledResourceRegionSizes are each arrays that identify the start location and extend of each region. If NumTiledResourceRegions is 1, for convenience either or both of the arrays that describe the regions can be null. null for pTiledResourceRegionStartCoordinates means the start coordinate is all 0s, and null for pTiledResourceRegionSizes identifies a default region that is the full set of tiles for the entire tiled resource, including all mipmaps, array slices, or both.

    If pTiledResourceRegionStartCoordinates isn't null and pTiledResourceRegionSizes is null, the region size defaults to 1 tile for all regions. This makes it easy to define mappings for a set of individual tiles each at disparate locations by providing an array of locations in pTiledResourceRegionStartCoordinates without having to send an array of pTiledResourceRegionSizes all set to 1.

    The updates are applied from first region to last; so, if regions overlap in a single call, the updates later in the list overwrite the areas that overlap with previous updates.

  • Tile pool that provides memory where tile mappings can go. A tiled resource can point to a single tile pool at a time. If a new tile pool is specified (for the first time or different from the last time a tile pool was specified), all existing tile mappings for the tiled resource are cleared and the new set of mappings in the current UpdateTileMappings call are applied for the new tile pool. If no tile pool is specified (null) or the same tile pool as a previous UpdateTileMappings call is provided, the UpdateTileMappings call just adds the new mappings to existing ones (overwriting on overlap). If UpdateTileMappings only defines null mappings, you don't need to specify a tile pool because it is irrelevant. But if you specify a tile pool anyway, it takes the same behavior as previously described when providing a tile pool.
  • Set of tile ranges where mappings are going. Each given tile range can specify one of a few types of ranges: a range of tiles in a tile pool (default), a count of tiles in the tiled resource to map to a single tile in a tile pool (sharing the tile), a count of tile mappings in the tiled resource to skip and leave as they are, or a count of tiles in the tile pool to map to null.

    NumRanges specifies the number of tile ranges, where the total tiles identified across all ranges must match the total number of tiles in the tile regions from the previously described tiled resource. Mappings are defined by iterating through the tiles in the tile regions in sequential order - x then y then z order for box regions - while walking through the set of tile ranges in sequential order. The breakdown of tile regions doesn't have to line up with the breakdown of tile ranges, but the total number of tiles on both sides must be equal so that each tiled resource tile specified has a mapping specified.

    pRangeFlags, pTilePoolStartOffsets, and pRangeTileCounts are all arrays, of size NumRanges, that describe the tile ranges. If pRangeFlags is null, all ranges are sequential tiles in the tile pool; otherwise, for each range i, pRangeFlags[i] identifies how the mappings in that range of tiles work:

    • If pRangeFlags[i] is 0, that range defines sequential tiles in the tile pool, with the number of tiles being pRangeTileCounts[i] and the starting location pTilePoolStartOffsets[i]. If NumRanges is 1, pRangeTileCounts can be null and defaults to the total number of tiles specified by all the tile regions.
    • If pRangeFlags[i] is D3D11_TILE_RANGE_REUSE_SINGLE_TILE, pTilePoolStartOffsets[i] identifies the single tile in the tile pool to map to, and pRangeTileCounts[i] specifies how many tiles from the tile regions to map to that tile pool location. If NumRanges is 1, pRangeTileCounts can be null and defaults to the total number of tiles specified by all the tile regions.
    • If pRangeFlags[i] is D3D11_TILE_RANGE_NULL, pRangeTileCounts[i] specifies how many tiles from the tile regions to map to null. If NumRanges is 1, pRangeTileCounts can be null and defaults to the total number of tiles specified by all the tile regions. pTilePoolStartOffsets[i] is ignored for null mappings.
    • If pRangeFlags[i] is D3D11_TILE_RANGE_SKIP, pRangeTileCounts[i] specifies how many tiles from the tile regions to skip over and leave existing mappings unchanged for. This can be useful if a tile region conveniently bounds an area of tile mappings to update except with some exceptions that need to be left the same as whatever they were mapped to before. pTilePoolStartOffsets[i] is ignored for SKIP mappings.
  • Flags parameter for overall options. D3D11_TILE_MAPPING_NO_OVERWRITE means the caller promises that previously submitted commands to the device that may still be executing do not reference any of the tile region being updated. This allows the device to avoid having to flush previously submitted work in order to do the tile mapping update. If the app violates this promise by updating tile mappings for locations in tiled resources still being referenced by outstanding commands, undefined rendering behavior results, which includes the potential for significant slowdowns on some architectures. This is like the "no overwrite" concept that exists elsewhere in the Direct3D API, except applied to tile mapping data structure itself, which in hardware is a page table. The absence of this flag requires that tile mapping updates specified by this UpdateTileMappings call must be completed before any subsequent Direct3D command can proceed.

If tile mappings have changed on a tiled resource that the app will render via RenderTargetView or DepthStencilView, the app must clear, by using the fixed function Clear APIs, the tiles that have changed within the area being rendered (mapped or not). If an app doesn't clear in these situations, the app receives undefined values when it reads from the tiled resource. +

Note??In Direct3D 11.2, hardware can now support ClearView on depth-only formats. For more info, see .?

If an app needs to preserve existing memory contents of areas in a tiled resource where mappings have changed, the app can first save the contents where tile mappings have changed, by copying them to a temporary surface, for example using CopyTiles, issuing the required Clear, and then copying the contents back. +

Suppose a tile is mapped into multiple tiled resources at the same time and tile contents are manipulated by any means (render, copy, and so on) via one of the tiled resources. Then, if the same tile is to be rendered via any other tiled resource, the tile must be cleared first as previously described. +

For more info about tiled resources, see Tiled resources.

Here are some examples of common UpdateTileMappings cases:

+
+ dn280508 + HRESULT ID3D11DeviceContext2::UpdateTileMappings([In] ID3D11Resource* pTiledResource,[In] unsigned int NumTiledResourceRegions,[In, Buffer, Optional] const D3D11_TILED_RESOURCE_COORDINATE* pTiledResourceRegionStartCoordinates,[In, Buffer, Optional] const D3D11_TILE_REGION_SIZE* pTiledResourceRegionSizes,[In, Optional] ID3D11Buffer* pTilePool,[In] unsigned int NumRanges,[In, Buffer, Optional] const unsigned int* pRangeFlags,[In, Buffer, Optional] const unsigned int* pTilePoolStartOffsets,[In, Buffer, Optional] const unsigned int* pRangeTileCounts,[In] unsigned int Flags) + ID3D11DeviceContext2::UpdateTileMappings +
+ + +

Copies mappings from a source tiled resource to a destination tiled resource.

+
+

A reference to the destination tiled resource.

+

A reference to a structure that describes the starting coordinates of the destination tiled resource.

+

A reference to the source tiled resource.

+

A reference to a structure that describes the starting coordinates of the source tiled resource.

+

A reference to a structure that describes the size of the tiled region.

+

A combination of D3D11_TILE_MAPPING_FLAGS values that are combined by using a bitwise OR operation. The only valid value is D3D11_TILE_MAPPING_NO_OVERWRITE, which indicates that previously submitted commands to the device that may still be executing do not reference any of the tile region being updated. The device can then avoid having to flush previously submitted work to perform the tile mapping update. If the app violates this promise by updating tile mappings for locations in tiled resources that are still being referenced by outstanding commands, undefined rendering behavior results, including the potential for significant slowdowns on some architectures. This is like the "no overwrite" concept that exists elsewhere in the Direct3D API, except applied to the tile mapping data structure itself (which in hardware is a page table). The absence of the D3D11_TILE_MAPPING_NO_OVERWRITE value requires that tile mapping updates that CopyTileMappings specifies must be completed before any subsequent Direct3D command can proceed.

+

Returns if successful; otherwise, returns one of the following:

  • Returns E_INVALIDARG if various conditions such as invalid flags or passing in non Tiled Resources result in the call being dropped.

    The dest and the source regions must each entirely fit in their resource or behavior is undefined (debug layer will emit an error).

  • Returns E_OUTOFMEMORY if the call results in the driver having to allocate space for new page table mappings but running out of memory.

    If out of memory occurs when this is called in a commandlist and the commandlist is being executed, the device will be removed. Applications can avoid this situation by only doing update calls that change existing mappings from Tiled Resources within commandlists (so drivers will not have to allocate page table memory, only change the mapping).

+ +

CopyTileMappings helps with tasks such as shifting mappings around within and across tiled resources, for example, scrolling tiles. The source and destination regions can overlap; the result of the copy in this situation is as if the source was saved to a temp location and then from there written to the destination.

For more info about tiled resources, see Tiled resources.

+
+ dn280500 + HRESULT ID3D11DeviceContext2::CopyTileMappings([In] ID3D11Resource* pDestTiledResource,[In] const D3D11_TILED_RESOURCE_COORDINATE* pDestRegionStartCoordinate,[In] ID3D11Resource* pSourceTiledResource,[In] const D3D11_TILED_RESOURCE_COORDINATE* pSourceRegionStartCoordinate,[In] const D3D11_TILE_REGION_SIZE* pTileRegionSize,[In] unsigned int Flags) + ID3D11DeviceContext2::CopyTileMappings +
+ + +

Copies tiles from buffer to tiled resource or vice versa.

+
+

A reference to a tiled resource.

+

A reference to a structure that describes the starting coordinates of the tiled resource.

+

A reference to a structure that describes the size of the tiled region.

+

A reference to an that represents a default, dynamic, or staging buffer.

+

The offset in bytes into the buffer at pBuffer to start the operation.

+

A combination of -typed values that are combined by using a bitwise OR operation and that identifies how to copy tiles.

+ +

CopyTiles drops write operations to unmapped areas and handles read operations from unmapped areas (except on Tier_1 tiled resources, where reading and writing unmapped areas is invalid).

If a copy operation involves writing to the same memory location multiple times because multiple locations in the destination resource are mapped to the same tile memory, the resulting write operations to multi-mapped tiles are non-deterministic and non-repeatable; that is, accesses to the tile memory happen in whatever order the hardware happens to execute the copy operation.

The tiles involved in the copy operation can't include tiles that contain packed mipmaps or results of the copy operation are undefined. To transfer data to and from mipmaps that the hardware packs into one tile, you must use the standard (that is, non-tile specific) copy and update APIs (like ID3D11DeviceContext1::CopySubresourceRegion1 and ID3D11DeviceContext1::UpdateSubresource1) or ID3D11DeviceContext::GenerateMips for the whole mipmap chain.

The memory layout of the tiles in the non-tiled buffer resource side of the copy operation is linear in memory within 64 KB tiles, which the hardware and driver swizzle and deswizzle per tile as appropriate when they transfer to and from a tiled resource. For multisample antialiasing (MSAA) surfaces, the hardware and driver traverse each pixel's samples in sample-index order before they move to the next pixel. For tiles that are partially filled on the right side (for a surface that has a width not a multiple of tile width in pixels), the pitch and stride to move down a row is the full size in bytes of the number pixels that would fit across the tile if the tile was full. So, there can be a gap between each row of pixels in memory. Mipmaps that are smaller than a tile are not packed together in the linear layout, which might seem to be a waste of memory space, but as mentioned you can't use CopyTiles or ID3D11DeviceContext2::UpdateTiles to copy to mipmaps that the hardware packs together. You can just use generic copy and update APIs (like ID3D11DeviceContext1::CopySubresourceRegion1 and ID3D11DeviceContext1::UpdateSubresource1) to copy small mipmaps individually. Although in the case of a generic copy API (like ID3D11DeviceContext1::CopySubresourceRegion1), the linear memory must be the same dimension as the tiled resource; ID3D11DeviceContext1::CopySubresourceRegion1 can't copy from a buffer resource to a Texture2D for instance.

For more info about tiled resources, see Tiled resources.

+
+ dn280501 + void ID3D11DeviceContext2::CopyTiles([In] ID3D11Resource* pTiledResource,[In] const D3D11_TILED_RESOURCE_COORDINATE* pTileRegionStartCoordinate,[In] const D3D11_TILE_REGION_SIZE* pTileRegionSize,[In] ID3D11Buffer* pBuffer,[In] unsigned longlong BufferStartOffsetInBytes,[In] unsigned int Flags) + ID3D11DeviceContext2::CopyTiles +
+ + +

Updates tiles by copying from app memory to the tiled resource.

+
+

A reference to a tiled resource to update.

+

A reference to a structure that describes the starting coordinates of the tiled resource.

+

A reference to a structure that describes the size of the tiled region.

+

A reference to memory that contains the source tile data that UpdateTiles uses to update the tiled resource.

+

A combination of -typed values that are combined by using a bitwise OR operation. The only valid value is D3D11_TILE_COPY_NO_OVERWRITE. The other values aren't meaningful here, thoughby definition the D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE value is basically what UpdateTiles does, but sources from app memory.

+ +

UpdateTiles drops write operations to unmapped areas (except on Tier_1 tiled resources, where writing to unmapped areas is invalid).

If a copy operation involves writing to the same memory location multiple times because multiple locations in the destination resource are mapped to the same tile memory, the resulting write operations to multi-mapped tiles are non-deterministic and non-repeatable; that is, accesses to the tile memory happen in whatever order the hardware happens to execute the copy operation.

The tiles involved in the copy operation can't include tiles that contain packed mipmaps or results of the copy operation are undefined. To transfer data to and from mipmaps that the hardware packs into one tile, you must use the standard (that is, non-tile specific) copy and update APIs (like ID3D11DeviceContext1::CopySubresourceRegion1 and ID3D11DeviceContext1::UpdateSubresource1) or ID3D11DeviceContext::GenerateMips for the whole mipmap chain.

The memory layout of the data on the source side of the copy operation is linear in memory within 64 KB tiles, which the hardware and driver swizzle and deswizzle per tile as appropriate when they transfer to and from a tiled resource. For multisample antialiasing (MSAA) surfaces, the hardware and driver traverse each pixel's samples in sample-index order before they move to the next pixel. For tiles that are partially filled on the right side (for a surface that has a width not a multiple of tile width in pixels), the pitch and stride to move down a row is the full size in bytes of the number pixels that would fit across the tile if the tile was full. So, there can be a gap between each row of pixels in memory. Mipmaps that are smaller than a tile are not packed together in the linear layout, which might seem to be a waste of memory space, but as mentioned you can't use ID3D11DeviceContext2::CopyTiles or UpdateTiles to copy to mipmaps that the hardware packs together. You can just use generic copy and update APIs (like ID3D11DeviceContext1::CopySubresourceRegion1 and ID3D11DeviceContext1::UpdateSubresource1) to copy small mipmaps individually. Although in the case of a generic copy API (like ID3D11DeviceContext1::CopySubresourceRegion1), the linear memory must be the same dimension as the tiled resource; ID3D11DeviceContext1::CopySubresourceRegion1 can't copy from a buffer resource to a Texture2D for instance.

For more info about tiled resources, see Tiled resources.

+
+ dn280509 + void ID3D11DeviceContext2::UpdateTiles([In] ID3D11Resource* pDestTiledResource,[In] const D3D11_TILED_RESOURCE_COORDINATE* pDestTileRegionStartCoordinate,[In] const D3D11_TILE_REGION_SIZE* pDestTileRegionSize,[In] const void* pSourceTileData,[In] unsigned int Flags) + ID3D11DeviceContext2::UpdateTiles +
+ + +

Resizes a tile pool.

+
+

A reference to an for the tile pool to resize.

+

The new size in bytes of the tile pool. The size must be a multiple of 64 KB or 0.

+

Returns if successful; otherwise, returns one of the following:

  • Returns E_INVALIDARG if the new tile pool size isn't a multiple of 64 KB or 0.
  • Returns E_OUTOFMEMORY if the call results in the driver having to allocate space for new page table mappings but running out of memory.
  • Returns if the video card has been physically removed from the system, or a driver upgrade for the video card has occurred.

For E_INVALIDARG or E_OUTOFMEMORY, the existing tile pool remains unchanged, which includes existing mappings.

+ +

ResizeTilePool increases or decreases the size of the tile pool depending on whether the app needs more or less working set for the tiled resources that are mapped into it. An app can allocate additional tile pools for new tiled resources, but if any single tiled resource needs more space than initially available in its tile pool, the app can increase the size of the resource's tile pool. A tiled resource can't have mappings into multiple tile pools simultaneously.

When you increase the size of a tile pool, additional tiles are added to the end of the tile pool via one or more new allocations by the driver; your app can't detect the breakdown into the new allocations. Existing memory in the tile pool is left untouched, and existing tiled resource mappings into that memory remain intact.

When you decrease the size of a tile pool, tiles are removed from the end (this is allowed even below the initial allocation size, down to 0). This means that new mappings can't be made past the new size. But, existing mappings past the end of the new size remain intact and useable. The memory is kept active as long as mappings to any part of the allocations that are being used for the tile pool memory remains. If after decreasing, some memory has been kept active because tile mappings are pointing to it and the tile pool is increased again (by any amount), the existing memory is reused first before any additional allocations occur to service the size of the increase.

To be able to save memory, an app has to not only decrease a tile pool but also remove and remap existing mappings past the end of the new smaller tile pool size.

The act of decreasing (and removing mappings) doesn't necessarily produce immediate memory savings. Freeing of memory depends on how granular the driver's underlying allocations for the tile pool are. When a decrease in the size of a tile pool happens to be enough to make a driver allocation unused, the driver can free the allocation. If a tile pool was increased and if you then decrease to previous sizes (and remove and remap tile mappings correspondingly), you will most likely yield memory savings. But, this scenario isn't guaranteed in the case that the sizes don't exactly align with the underlying allocation sizes chosen by the driver.

For more info about tiled resources, see Tiled resources.

+
+ dn280505 + HRESULT ID3D11DeviceContext2::ResizeTilePool([In] ID3D11Buffer* pTilePool,[In] unsigned longlong NewSizeInBytes) + ID3D11DeviceContext2::ResizeTilePool +
+ + +

Specifies a data access ordering constraint between multiple tiled resources. For more info about this constraint, see Remarks.

+
+

A reference to an or for a resource that was created with the D3D11_RESOURCE_MISC_TILED flag. Access operations on this object must complete before the access operations on the object that pTiledResourceOrViewAccessAfterBarrier specifies.

+

A reference to an or for a resource that was created with the D3D11_RESOURCE_MISC_TILED flag. Access operations on this object must begin after the access operations on the object that pTiledResourceOrViewAccessBeforeBarrier specifies.

+ +

Apps can use tiled resources to reuse tiles in different resources. But, a device and driver might not be able to determine whether some memory in a tile pool that was just rendered to is now being used for reading. +

For example, an app can render to some tiles in a tile pool with one tiled resource but then read from the same tiles by using a different tiled resource. These tiled-resource operations are different from using one resource and then just switching from writing with to reading with . The runtime already tracks and handles these one resource operations using and . +

When an app transitions from accessing (reading or writing) some location in a tile pool with one resource to accessing the same memory (read or write) via another tiled resource (with mappings to the same memory), the app must call TiledResourceBarrier after the first use of the resource and before the second. The parameters are the pTiledResourceOrViewAccessBeforeBarrier for accesses before the barrier (via rendering, copying), and the pTiledResourceOrViewAccessAfterBarrier for accesses after the barrier by using the same tile pool memory. If the resources are identical, the app doesn't need to call TiledResourceBarrier because this kind of hazard is already tracked and handled. +

The barrier call informs the driver that operations issued to the resource before the call must complete before any accesses that occur after the call via a different tiled resource that shares the same memory. +

Either or both of the parameters (before or after the barrier) can be null. null before the barrier means all tiled resource accesses before the barrier must complete before the resource specified after the barrier can be referenced by the graphics processing unit (GPU). null after the barrier means that any tiled resources accessed after the barrier can only be executed by the GPU after accesses to the tiled resources before the barrier are finished. Both null means all previous tiled resource accesses are complete before any subsequent tiled resource access can proceed. +

An app can pass a view reference, a resource, or null for each parameter. Views are allowed not only for convenience but also to allow the app to scope the barrier effect to a relevant portion of a resource. +

For more info about tiled resources, see Tiled resources.

+
+ dn280507 + void ID3D11DeviceContext2::TiledResourceBarrier([In, Optional] ID3D11DeviceChild* pTiledResourceOrViewAccessBeforeBarrier,[In, Optional] ID3D11DeviceChild* pTiledResourceOrViewAccessAfterBarrier) + ID3D11DeviceContext2::TiledResourceBarrier +
+ + +

Allows apps to determine when either a capture or profiling request is enabled.

+
+

Returns TRUE if capture or profiling is enabled and otherwise.

+ +

Returns TRUE if the capture tool is present and capturing or the app is being profiled such that SetMarkerInt or BeginEventInt will be logged to ETW. Otherwise, it returns . Apps can use this to turn off self-throttling mechanisms in order to accurately capture what is currently being seen as app output. Apps can also avoid generating event markers and the associated overhead it may entail when there is no benefit to do so.

If apps detect that capture is being performed, they can prevent the Direct3D debugging tools, such as Microsoft Visual Studio?2013, from capturing them. The purpose of the D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY flag prior to Windows?8.1 was to allow the Direct3D runtime to prevent debugging tools from capturing apps.

+
+ dn280504 + BOOL ID3D11DeviceContext2::IsAnnotationEnabled() + ID3D11DeviceContext2::IsAnnotationEnabled +
+ + +

Allows applications to annotate graphics commands.

+
+

An optional string that will be logged to ETW when ETW logging is active. If ?#d? appears in the string, it will be replaced by the value of the Data parameter similar to the way printf works.

+

A signed data value that will be logged to ETW when ETW logging is active.

+ +

SetMarkerInt allows applications to annotate graphics commands, in order to provide more context to what the GPU is executing. When ETW logging or a support tool is enabled, an additional marker is correlated between the CPU and GPU timelines. The pLabel and Data value are logged to ETW. When the appropriate ETW logging is not enabled, this method does nothing.

+
+ dn280506 + void ID3D11DeviceContext2::SetMarkerInt([In] const wchar_t* pLabel,[In] int Data) + ID3D11DeviceContext2::SetMarkerInt +
+ + +

Allows applications to annotate the beginning of a range of graphics commands.

+
+

An optional string that will be logged to ETW when ETW logging is active. If ?#d? appears in the string, it will be replaced by the value of the Data parameter similar to the way printf works.

+

A signed data value that will be logged to ETW when ETW logging is active.

+ +

BeginEventInt allows applications to annotate the beginning of a range of graphics commands, in order to provide more context to what the GPU is executing. When ETW logging (or a supported tool) is enabled, an additional marker is correlated between the CPU and GPU timelines. The pLabel and Data value are logged to ETW. When the appropriate ETW logging is not enabled, this method does nothing.

+
+ dn280499 + void ID3D11DeviceContext2::BeginEventInt([In] const wchar_t* pLabel,[In] int Data) + ID3D11DeviceContext2::BeginEventInt +
+ + +

Allows applications to annotate the end of a range of graphics commands.

+
+ +

EndEvent allows applications to annotate the end of a range of graphics commands, in order to provide more context to what the GPU is executing. When the appropriate ETW logging is not enabled, this method does nothing. When ETW logging is enabled, an additional marker is correlated between the CPU and GPU timelines.

+
+ dn280502 + void ID3D11DeviceContext2::EndEvent() + ID3D11DeviceContext2::EndEvent +
+ + + Initializes a new deferred context instance of class. + + + + + +

Gets or sets whether hardware protection is enabled.

+
+ mt158224 + GetHardwareProtectionState / SetHardwareProtectionState + GetHardwareProtectionState +
+ + +

Sends queued-up commands in the command buffer to the graphics processing unit (GPU), with a specified context type and an optional event handle to create an event query.

+
+

A that specifies the context in which a query occurs, such as a 3D command queue, 3D compute queue, 3D copy queue, video, or image.

+

An optional event handle. When specified, this method creates an event query.

Flush1 operates asynchronously, therefore it can return either before or after the GPU finishes executing the queued graphics commands, which will eventually complete. To create an event query, you can call ID3D11Device::CreateQuery with the value D3D11_QUERY_EVENT value. To determine when the GPU is finished processing the graphics commands, you can then use that event query in a call to ID3D11DeviceContext::GetData.

+ +

Flush1 has parameters. For more information, see ID3D11DeviceContext::Flush, which doesn't have parameters.

+
+ dn912876 + void ID3D11DeviceContext3::Flush1([In] D3D11_CONTEXT_TYPE ContextType,[In, Optional] void* hEvent) + ID3D11DeviceContext3::Flush1 +
+ + +

Sets the hardware protection state.

+
+

Specifies whether to enable hardware protection.

+ mt158225 + void ID3D11DeviceContext3::SetHardwareProtectionState([In] BOOL HwProtectionEnable) + ID3D11DeviceContext3::SetHardwareProtectionState +
+ + +

Gets whether hardware protection is enabled.

+
+

After this method returns, points to a that indicates whether hardware protection is enabled.

+ mt158224 + void ID3D11DeviceContext3::GetHardwareProtectionState([Out] BOOL* pHwProtectionEnable) + ID3D11DeviceContext3::GetHardwareProtectionState +
+ + + Initializes a new instance of the class. + + The device. + + + + Gets or sets the feature flags that indicates which debug features are on or off. + + The feature flags. + + + +

Get or sets the number of milliseconds to sleep after IDXGISwapChain::Present is called.

+
+ +

Value is set with ID3D11Debug::SetPresentPerRenderOpDelay.

+
+ ff476368 + GetPresentPerRenderOpDelay / SetPresentPerRenderOpDelay + GetPresentPerRenderOpDelay +
+ + +

Get or sets the swap chain that the runtime will use for automatically calling IDXGISwapChain::Present.

+
+ +

The swap chain retrieved by this method will only be used if D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP is set in the feature mask.

+
+ ff476369 + GetSwapChain / SetSwapChain + GetSwapChain +
+ + +

Set a bit field of flags that will turn debug features on and off.

+
+

A combination of feature-mask flags that are combined by using a bitwise OR operation. If a flag is present, that feature will be set to on, otherwise the feature will be set to off. For descriptions of the feature-mask flags, see Remarks.

+

This method returns one of the Direct3D 11 Return Codes.

+ + Note??If you call this API in a Session 0 process, it returns .?

Setting one of the following feature-mask flags will cause a rendering-operation method (listed below) to do some extra task when called.

D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP (0x2)Application will wait for the GPU to finish processing the rendering operation before continuing.
D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP (0x1)Runtime will additionally call ID3D11DeviceContext::Flush.
D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP (0x4)Runtime will call IDXGISwapChain::Present. Presentation of render buffers will occur according to the settings established by prior calls to ID3D11Debug::SetSwapChain and ID3D11Debug::SetPresentPerRenderOpDelay.

?

These feature-mask flags apply to the following rendering-operation methods:

  • ID3D11DeviceContext::Draw
  • ID3D11DeviceContext::DrawIndexed
  • ID3D11DeviceContext::DrawInstanced
  • ID3D11DeviceContext::DrawIndexedInstanced
  • ID3D11DeviceContext::DrawAuto
  • ID3D11DeviceContext::ClearRenderTargetView
  • ID3D11DeviceContext::ClearDepthStencilView
  • ID3D11DeviceContext::CopySubresourceRegion
  • ID3D11DeviceContext::CopyResource
  • ID3D11DeviceContext::UpdateSubresource
  • ID3D11DeviceContext::GenerateMips
  • ID3D11DeviceContext::ResolveSubresource

By setting one of the following feature-mask flags, you can control the behavior of the IDXGIDevice2::OfferResources and IDXGIDevice2::ReclaimResources methods to aid in testing and debugging.

Note??These flags are supported by the Direct3D 11.1 runtime, which is available starting with Windows?8.?
D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE (0x8)When you call IDXGIDevice2::OfferResources to offer resources while this flag is enabled, their content is always discarded. Use this flag to test code paths that regenerate resource content on reclaim. You cannot use this flag in combination with D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE.
D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE (0x10)When you call IDXGIDevice2::OfferResources to offer resources while this flag is enabled, their content is never discarded. Use this flag to test code paths that do not need to regenerate resource content on reclaim. You cannot use this flag in combination with D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE.

?

The behavior of the IDXGIDevice2::OfferResources and IDXGIDevice2::ReclaimResources methods depends on system-wide memory pressure. Therefore, the scenario where content is lost and must be regenerated is uncommon for most applications. The preceding new options in the Direct3D debug layer let you simulate that scenario consistently and test code paths.

The following flag is supported by the Direct3D 11.1 runtime.

D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS (0x40)Disables the following default debugging behavior.

?

When the debug layer is enabled, it performs certain actions to reveal application problems. By setting the D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS feature-mask flag, you can enable the debug layer without getting the following default debugging behavior:

  • If an application calls ID3D11DeviceContext1::DiscardView, the runtime fills in the resource with a random color.
  • If an application calls IDXGISwapChain1::Present1 with partial presentation parameters, the runtime ignores the partial presentation information.

The following flag is supported by the Direct3D 11.2 runtime.

D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION (0x80)Disables the following default debugging behavior.

?

By default (that is, without D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION set), the debug layer validates the proper usage of all tile mappings for tiled resources for bound resources for every operation performed on the device context (for example, draw, copy, and so on). Depending on the size of the tiled resources used (if any), this validation can be processor intensive and slow. Apps might want to initially run with tiled resource tile mapping validation on; then, when they determine that the calling pattern is safe, they can disable the validation by setting D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION.

If D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION is set when a tiled resource is created, the debug layer never performs the tracking of tile mapping for that resource for its entire lifetime. Alternatively, if D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION is set for any given device context method call (like draw or copy calls) involving tiled resources, the debug layer skips all tile mapping validation for the call.

+
+ ff476371 + HRESULT ID3D11Debug::SetFeatureMask([In] unsigned int Mask) + ID3D11Debug::SetFeatureMask +
+ + +

Get a bitfield of flags that indicates which debug features are on or off.

+
+

Mask of feature-mask flags bitwise ORed together. If a flag is present, then that feature will be set to on, otherwise the feature will be set to off. See ID3D11Debug::SetFeatureMask for a list of possible feature-mask flags.

+ ff476367 + unsigned int ID3D11Debug::GetFeatureMask() + ID3D11Debug::GetFeatureMask +
+ + +

Set the number of milliseconds to sleep after IDXGISwapChain::Present is called.

+
+ No documentation. +

This method returns one of the following Direct3D 11 Return Codes.

+ + Note??If you call this API in a Session 0 process, it returns .?

The application will only sleep if D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP is a set in the feature mask. If that flag is not set the number of milliseconds is set but ignored and the application does not sleep. 10ms is used as a default value if this method is never called.

+
+ ff476372 + HRESULT ID3D11Debug::SetPresentPerRenderOpDelay([In] unsigned int Milliseconds) + ID3D11Debug::SetPresentPerRenderOpDelay +
+ + +

Get the number of milliseconds to sleep after IDXGISwapChain::Present is called.

+
+

Number of milliseconds to sleep after Present is called.

+ +

Value is set with ID3D11Debug::SetPresentPerRenderOpDelay.

+
+ ff476368 + unsigned int ID3D11Debug::GetPresentPerRenderOpDelay() + ID3D11Debug::GetPresentPerRenderOpDelay +
+ + +

Sets a swap chain that the runtime will use for automatically calling IDXGISwapChain::Present.

+
+ No documentation. +

This method returns one of the following Direct3D 11 Return Codes.

+ + Note??If you call this API in a Session 0 process, it returns .?

The swap chain set by this method will only be used if D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP is set in the feature mask.

+
+ ff476373 + HRESULT ID3D11Debug::SetSwapChain([In, Optional] IDXGISwapChain* pSwapChain) + ID3D11Debug::SetSwapChain +
+ + +

Get the swap chain that the runtime will use for automatically calling IDXGISwapChain::Present.

+
+ No documentation. +

This method returns one of the following Direct3D 11 Return Codes.

+ +

The swap chain retrieved by this method will only be used if D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP is set in the feature mask.

+
+ ff476369 + HRESULT ID3D11Debug::GetSwapChain([Out] IDXGISwapChain** ppSwapChain) + ID3D11Debug::GetSwapChain +
+ + +

Check to see if the draw pipeline state is valid.

+
+

A reference to the , that represents a device context.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

Use validate prior to calling a draw method (for example, ID3D11DeviceContext::Draw); validation requires the debug layer.

+
+ ff476374 + HRESULT ID3D11Debug::ValidateContext([In] ID3D11DeviceContext* pContext) + ID3D11Debug::ValidateContext +
+ + +

Report information about a device object's lifetime.

+
+

A value from the enumeration.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

ReportLiveDeviceObjects uses the value in Flags to determine the amount of information to report about a device object's lifetime.

+
+ ff476370 + HRESULT ID3D11Debug::ReportLiveDeviceObjects([In] D3D11_RLDO_FLAGS Flags) + ID3D11Debug::ReportLiveDeviceObjects +
+ + +

Verifies whether the dispatch pipeline state is valid.

+
+

A reference to the that represents a device context.

+

This method returns one of the return codes described in the topic Direct3D 11 Return Codes.

+ +

Use this method before you call a dispatch method (for example, ID3D11DeviceContext::Dispatch). Validation requires the debug layer.

+
+ ff728740 + HRESULT ID3D11Debug::ValidateContextForDispatch([In] ID3D11DeviceContext* pContext) + ID3D11Debug::ValidateContextForDispatch +
+ + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + + Constructs a new + + The device with which to associate the state object. + The initial value for the fence. + A combination of FenceFlags values that are combined by using a bitwise OR operation. The resulting value specifies options for the fence. + The newly created object. + + + + No documentation. + + GetCompletedValue + GetCompletedValue + + + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + HRESULT ID3D11Fence::CreateSharedHandle([In, Optional] const SECURITY_ATTRIBUTES* pAttributes,[In] DWORD dwAccess,[In, Optional] const wchar_t* lpName,[Out] void** pHandle) + ID3D11Fence::CreateSharedHandle + + + + No documentation. + + No documentation. + unsigned longlong ID3D11Fence::GetCompletedValue() + ID3D11Fence::GetCompletedValue + + + + No documentation. + + No documentation. + No documentation. + No documentation. + HRESULT ID3D11Fence::SetEventOnCompletion([In] unsigned longlong Value,[In] void* hEvent) + ID3D11Fence::SetEventOnCompletion + + + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + An array of instances describing the layout of the output buffers. + An array of buffer strides; each stride is the size of an element for that buffer. + The index number of the stream to be sent to the rasterizer stage. Set to NoRasterizedStream if no stream is to be rasterized. + A dynamic class linkage interface. + + + Constant StreamOutputNoRasterizedStream + D3D11_SO_NO_RASTERIZED_STREAM + + + Constant StreamOutputStreamCount + D3D11_SO_STREAM_COUNT + + + Constant StreamOutputOutputComponentCount + D3D11_SO_OUTPUT_COMPONENT_COUNT + + + Constant StreamOutputBufferSlotCount + D3D11_SO_BUFFER_SLOT_COUNT + + + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + +

Get a message from the message queue.

+
+

Index into message queue after an optional retrieval filter has been applied. This can be between 0 and the number of messages in the message queue that pass through the retrieval filter (which can be obtained with ). 0 is the message at the front of the message queue.

+ Returned message (see ) + ff476549 + HRESULT ID3D11InfoQueue::GetMessageW([In] unsigned longlong MessageIndex,[In] void* pMessage,[InOut] SIZE_T* pMessageByteLength) + ID3D11InfoQueue::GetMessageW +
+ + +

Get the storage filter at the top of the storage-filter stack.

+
+ The storage filter at the top of the storage-filter stack. + ff476560 + HRESULT ID3D11InfoQueue::GetStorageFilter([In] void* pFilter,[InOut] SIZE_T* pFilterByteLength) + ID3D11InfoQueue::GetStorageFilter +
+ + +

Get the retrieval filter at the top of the retrieval-filter stack.

+
+ The retrieval filter at the top of the retrieval-filter stack. + ff476558 + HRESULT ID3D11InfoQueue::GetRetrievalFilter([In] void* pFilter,[InOut] SIZE_T* pFilterByteLength) + ID3D11InfoQueue::GetRetrievalFilter +
+ + +

Get or sets the maximum number of messages that can be added to the message queue.

+
+ +

When the number of messages in the message queue has reached the maximum limit, new messages coming in will push old messages out.

+
+ ff476550 + GetMessageCountLimit / SetMessageCountLimit + GetMessageCountLimit +
+ + +

Get the number of messages that were allowed to pass through a storage filter.

+
+ ff476552 + GetNumMessagesAllowedByStorageFilter + GetNumMessagesAllowedByStorageFilter +
+ + +

Get the number of messages that were denied passage through a storage filter.

+
+ ff476553 + GetNumMessagesDeniedByStorageFilter + GetNumMessagesDeniedByStorageFilter +
+ + +

Get the number of messages currently stored in the message queue.

+
+ ff476556 + GetNumStoredMessages + GetNumStoredMessages +
+ + +

Get the number of messages that are able to pass through a retrieval filter.

+
+ ff476557 + GetNumStoredMessagesAllowedByRetrievalFilter + GetNumStoredMessagesAllowedByRetrievalFilter +
+ + +

Get the number of messages that were discarded due to the message count limit.

+
+ +

Get and set the message count limit with ID3D11InfoQueue::GetMessageCountLimit and ID3D11InfoQueue::SetMessageCountLimit, respectively.

+
+ ff476554 + GetNumMessagesDiscardedByMessageCountLimit + GetNumMessagesDiscardedByMessageCountLimit +
+ + +

Get the size of the storage-filter stack in bytes.

+
+ ff476561 + GetStorageFilterStackSize + GetStorageFilterStackSize +
+ + +

Get the size of the retrieval-filter stack in bytes.

+
+ ff476559 + GetRetrievalFilterStackSize + GetRetrievalFilterStackSize +
+ + +

Get or sets a boolean that turns the debug output on or off.

+
+ ff476551 + GetMuteDebugOutput / SetMuteDebugOutput + GetMuteDebugOutput +
+ + +

Set the maximum number of messages that can be added to the message queue.

+
+

Maximum number of messages that can be added to the message queue. -1 means no limit.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

When the number of messages in the message queue has reached the maximum limit, new messages coming in will push old messages out.

+
+ ff476573 + HRESULT ID3D11InfoQueue::SetMessageCountLimit([In] unsigned longlong MessageCountLimit) + ID3D11InfoQueue::SetMessageCountLimit +
+ + +

Clear all messages from the message queue.

+
+ ff476545 + void ID3D11InfoQueue::ClearStoredMessages() + ID3D11InfoQueue::ClearStoredMessages +
+ + +

Get a message from the message queue.

+
+

Index into message queue after an optional retrieval filter has been applied. This can be between 0 and the number of messages in the message queue that pass through the retrieval filter (which can be obtained with ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter). 0 is the message at the front of the message queue.

+

Returned message (see ).

+

Size of pMessage in bytes, including the size of the message string that the pMessage points to.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

This method does not remove any messages from the message queue.

This method gets messages from the message queue after an optional retrieval filter has been applied.

Applications should call this method twice to retrieve a message - first to obtain the size of the message and second to get the message. Here is a typical example:

 // Get the size of the message
+             messageLength = 0;
+             hr = pInfoQueue->GetMessage(0, null, &messageLength); // Allocate space and get the message
+             * pMessage = (*)malloc(messageLength);
+            hr = pInfoQueue->GetMessage(0, pMessage, &messageLength);
+            

For an overview see Information Queue Overview.

+
+ ff476549 + HRESULT ID3D11InfoQueue::GetMessageW([In] unsigned longlong MessageIndex,[In] D3D11_MESSAGE* pMessage,[InOut] SIZE_T* pMessageByteLength) + ID3D11InfoQueue::GetMessageW +
+ + +

Get the number of messages that were allowed to pass through a storage filter.

+
+

Number of messages allowed by a storage filter.

+ ff476552 + unsigned longlong ID3D11InfoQueue::GetNumMessagesAllowedByStorageFilter() + ID3D11InfoQueue::GetNumMessagesAllowedByStorageFilter +
+ + +

Get the number of messages that were denied passage through a storage filter.

+
+

Number of messages denied by a storage filter.

+ ff476553 + unsigned longlong ID3D11InfoQueue::GetNumMessagesDeniedByStorageFilter() + ID3D11InfoQueue::GetNumMessagesDeniedByStorageFilter +
+ + +

Get the number of messages currently stored in the message queue.

+
+

Number of messages currently stored in the message queue.

+ ff476556 + unsigned longlong ID3D11InfoQueue::GetNumStoredMessages() + ID3D11InfoQueue::GetNumStoredMessages +
+ + +

Get the number of messages that are able to pass through a retrieval filter.

+
+

Number of messages allowed by a retrieval filter.

+ ff476557 + unsigned longlong ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter() + ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter +
+ + +

Get the number of messages that were discarded due to the message count limit.

+
+

Number of messages discarded.

+ +

Get and set the message count limit with ID3D11InfoQueue::GetMessageCountLimit and ID3D11InfoQueue::SetMessageCountLimit, respectively.

+
+ ff476554 + unsigned longlong ID3D11InfoQueue::GetNumMessagesDiscardedByMessageCountLimit() + ID3D11InfoQueue::GetNumMessagesDiscardedByMessageCountLimit +
+ + +

Get the maximum number of messages that can be added to the message queue.

+
+

Maximum number of messages that can be added to the queue. -1 means no limit.

+ +

When the number of messages in the message queue has reached the maximum limit, new messages coming in will push old messages out.

+
+ ff476550 + unsigned longlong ID3D11InfoQueue::GetMessageCountLimit() + ID3D11InfoQueue::GetMessageCountLimit +
+ + +

Add storage filters to the top of the storage-filter stack.

+
+

Array of storage filters (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476542 + HRESULT ID3D11InfoQueue::AddStorageFilterEntries([In] D3D11_INFO_QUEUE_FILTER* pFilter) + ID3D11InfoQueue::AddStorageFilterEntries +
+ + +

Get the storage filter at the top of the storage-filter stack.

+
+

Storage filter at the top of the storage-filter stack.

+

Size of the storage filter in bytes. If pFilter is null, the size of the storage filter will be output to this parameter.

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476560 + HRESULT ID3D11InfoQueue::GetStorageFilter([In] D3D11_INFO_QUEUE_FILTER* pFilter,[InOut] SIZE_T* pFilterByteLength) + ID3D11InfoQueue::GetStorageFilter +
+ + +

Remove a storage filter from the top of the storage-filter stack.

+
+ ff476544 + void ID3D11InfoQueue::ClearStorageFilter() + ID3D11InfoQueue::ClearStorageFilter +
+ + +

Push an empty storage filter onto the storage-filter stack.

+
+

This method returns one of the following Direct3D 11 Return Codes.

+ +

An empty storage filter allows all messages to pass through.

+
+ ff476567 + HRESULT ID3D11InfoQueue::PushEmptyStorageFilter() + ID3D11InfoQueue::PushEmptyStorageFilter +
+ + +

Push a copy of storage filter currently on the top of the storage-filter stack onto the storage-filter stack.

+
+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476565 + HRESULT ID3D11InfoQueue::PushCopyOfStorageFilter() + ID3D11InfoQueue::PushCopyOfStorageFilter +
+ + +

Push a storage filter onto the storage-filter stack.

+
+

Pointer to a storage filter (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476569 + HRESULT ID3D11InfoQueue::PushStorageFilter([In] D3D11_INFO_QUEUE_FILTER* pFilter) + ID3D11InfoQueue::PushStorageFilter +
+ + +

Pop a storage filter from the top of the storage-filter stack.

+
+ ff476563 + void ID3D11InfoQueue::PopStorageFilter() + ID3D11InfoQueue::PopStorageFilter +
+ + +

Get the size of the storage-filter stack in bytes.

+
+

Size of the storage-filter stack in bytes.

+ ff476561 + unsigned int ID3D11InfoQueue::GetStorageFilterStackSize() + ID3D11InfoQueue::GetStorageFilterStackSize +
+ + +

Add storage filters to the top of the retrieval-filter stack.

+
+

Array of retrieval filters (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

The following code example shows how to use ID3D11InfoQueue::AddRetrievalFilterEntries:

  cats[] = { ..., ..., ... };
+             sevs[] = { ..., ..., ... };
+            UINT ids[] = { ..., ..., ... };  filter;
+            memset( &filter, 0, sizeof(filter) ); // To set the type of messages to allow, 
+            // set filter.AllowList as follows:
+            filter.AllowList.NumCategories = sizeof(cats / sizeof()); 
+            filter.AllowList.pCategoryList = cats;
+            filter.AllowList.NumSeverities = sizeof(sevs / sizeof()); 
+            filter.AllowList.pSeverityList = sevs;
+            filter.AllowList.NumIDs = sizeof(ids) / sizeof(UINT);
+            filter.AllowList.pIDList = ids; // To set the type of messages to deny, set filter.DenyList 
+            // similarly to the preceding filter.AllowList. // The following single call sets all of the preceding information.
+            hr = infoQueue->AddRetrievalFilterEntries( &filter );
+            
+
+ ff476541 + HRESULT ID3D11InfoQueue::AddRetrievalFilterEntries([In] D3D11_INFO_QUEUE_FILTER* pFilter) + ID3D11InfoQueue::AddRetrievalFilterEntries +
+ + +

Get the retrieval filter at the top of the retrieval-filter stack.

+
+

Retrieval filter at the top of the retrieval-filter stack.

+

Size of the retrieval filter in bytes. If pFilter is null, the size of the retrieval filter will be output to this parameter.

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476558 + HRESULT ID3D11InfoQueue::GetRetrievalFilter([In] D3D11_INFO_QUEUE_FILTER* pFilter,[InOut] SIZE_T* pFilterByteLength) + ID3D11InfoQueue::GetRetrievalFilter +
+ + +

Remove a retrieval filter from the top of the retrieval-filter stack.

+
+ ff476543 + void ID3D11InfoQueue::ClearRetrievalFilter() + ID3D11InfoQueue::ClearRetrievalFilter +
+ + +

Push an empty retrieval filter onto the retrieval-filter stack.

+
+

This method returns one of the following Direct3D 11 Return Codes.

+ +

An empty retrieval filter allows all messages to pass through.

+
+ ff476566 + HRESULT ID3D11InfoQueue::PushEmptyRetrievalFilter() + ID3D11InfoQueue::PushEmptyRetrievalFilter +
+ + +

Push a copy of retrieval filter currently on the top of the retrieval-filter stack onto the retrieval-filter stack.

+
+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476564 + HRESULT ID3D11InfoQueue::PushCopyOfRetrievalFilter() + ID3D11InfoQueue::PushCopyOfRetrievalFilter +
+ + +

Push a retrieval filter onto the retrieval-filter stack.

+
+

Pointer to a retrieval filter (see ).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476568 + HRESULT ID3D11InfoQueue::PushRetrievalFilter([In] D3D11_INFO_QUEUE_FILTER* pFilter) + ID3D11InfoQueue::PushRetrievalFilter +
+ + +

Pop a retrieval filter from the top of the retrieval-filter stack.

+
+ ff476562 + void ID3D11InfoQueue::PopRetrievalFilter() + ID3D11InfoQueue::PopRetrievalFilter +
+ + +

Get the size of the retrieval-filter stack in bytes.

+
+

Size of the retrieval-filter stack in bytes.

+ ff476559 + unsigned int ID3D11InfoQueue::GetRetrievalFilterStackSize() + ID3D11InfoQueue::GetRetrievalFilterStackSize +
+ + +

Add a debug message to the message queue and send that message to debug output.

+
+

Category of a message (see ).

+

Severity of a message (see ).

+

Unique identifier of a message (see ).

+

User-defined message.

+

This method returns one of the following Direct3D 11 Return Codes.

+ +

This method is used by the runtime's internal mechanisms to add debug messages to the message queue and send them to debug output. For applications to add their own custom messages to the message queue and send them to debug output, call ID3D11InfoQueue::AddApplicationMessage.

+
+ ff476540 + HRESULT ID3D11InfoQueue::AddMessage([In] D3D11_MESSAGE_CATEGORY Category,[In] D3D11_MESSAGE_SEVERITY Severity,[In] D3D11_MESSAGE_ID ID,[In] const char* pDescription) + ID3D11InfoQueue::AddMessage +
+ + +

Add a user-defined message to the message queue and send that message to debug output.

+
+

Severity of a message (see ).

+

Message string.

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476539 + HRESULT ID3D11InfoQueue::AddApplicationMessage([In] D3D11_MESSAGE_SEVERITY Severity,[In] const char* pDescription) + ID3D11InfoQueue::AddApplicationMessage +
+ + +

Set a message category to break on when a message with that category passes through the storage filter.

+
+

Message category to break on (see ).

+

Turns this breaking condition on or off (true for on, false for off).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476570 + HRESULT ID3D11InfoQueue::SetBreakOnCategory([In] D3D11_MESSAGE_CATEGORY Category,[In] BOOL bEnable) + ID3D11InfoQueue::SetBreakOnCategory +
+ + +

Set a message severity level to break on when a message with that severity level passes through the storage filter.

+
+

A , which represents a message severity level to break on.

+

Turns this breaking condition on or off (true for on, false for off).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476572 + HRESULT ID3D11InfoQueue::SetBreakOnSeverity([In] D3D11_MESSAGE_SEVERITY Severity,[In] BOOL bEnable) + ID3D11InfoQueue::SetBreakOnSeverity +
+ + +

Set a message identifier to break on when a message with that identifier passes through the storage filter.

+
+

Message identifier to break on (see ).

+

Turns this breaking condition on or off (true for on, false for off).

+

This method returns one of the following Direct3D 11 Return Codes.

+ ff476571 + HRESULT ID3D11InfoQueue::SetBreakOnID([In] D3D11_MESSAGE_ID ID,[In] BOOL bEnable) + ID3D11InfoQueue::SetBreakOnID +
+ + +

Get a message category to break on when a message with that category passes through the storage filter.

+
+

Message category to break on (see ).

+

Whether this breaking condition is turned on or off (true for on, false for off).

+ ff476546 + BOOL ID3D11InfoQueue::GetBreakOnCategory([In] D3D11_MESSAGE_CATEGORY Category) + ID3D11InfoQueue::GetBreakOnCategory +
+ + +

Get a message severity level to break on when a message with that severity level passes through the storage filter.

+
+

Message severity level to break on (see ).

+

Whether this breaking condition is turned on or off (true for on, false for off).

+ ff476548 + BOOL ID3D11InfoQueue::GetBreakOnSeverity([In] D3D11_MESSAGE_SEVERITY Severity) + ID3D11InfoQueue::GetBreakOnSeverity +
+ + +

Get a message identifier to break on when a message with that identifier passes through the storage filter.

+
+

Message identifier to break on (see ).

+

Whether this breaking condition is turned on or off (true for on, false for off).

+ ff476547 + BOOL ID3D11InfoQueue::GetBreakOnID([In] D3D11_MESSAGE_ID ID) + ID3D11InfoQueue::GetBreakOnID +
+ + +

Set a boolean that turns the debug output on or off.

+
+

Disable/Enable the debug output (TRUE to disable or mute the output, to enable the output).

+ +

This will stop messages that pass the storage filter from being printed out in the debug output, however those messages will still be added to the message queue.

+
+ ff476574 + void ID3D11InfoQueue::SetMuteDebugOutput([In] BOOL bMute) + ID3D11InfoQueue::SetMuteDebugOutput +
+ + +

Get a boolean that turns the debug output on or off.

+
+

Whether the debug output is on or off (true for on, false for off).

+ ff476551 + BOOL ID3D11InfoQueue::GetMuteDebugOutput() + ID3D11InfoQueue::GetMuteDebugOutput +
+ + +

Allow or deny certain types of messages to pass through a filter.

+
+ ff476178 + D3D11_INFO_QUEUE_FILTER_DESC + D3D11_INFO_QUEUE_FILTER_DESC +
+ + + Gets or sets the categories. + + + The categories. + + + + + Gets or sets the severities. + + + The severities. + + + + + Gets or sets the ids. + + + The ids. + + + + +

Number of message categories to allow or deny.

+
+ ff476178 + NumCategories + NumCategories +
+ + +

Array of message categories to allow or deny. Array must have at least NumCategories members (see ).

+
+ ff476178 + pCategoryList + pCategoryList +
+ + +

Number of message severity levels to allow or deny.

+
+ ff476178 + NumSeverities + NumSeverities +
+ + +

Array of message severity levels to allow or deny. Array must have at least NumSeverities members (see ).

+
+ ff476178 + pSeverityList + pSeverityList +
+ + +

Number of message IDs to allow or deny.

+
+ ff476178 + NumIDs + NumIDs +
+ + +

Array of message IDs to allow or deny. Array must have at least NumIDs members (see ).

+
+ ff476178 + pIDList + pIDList +
+ + +

A description of a single element for the input-assembler stage.

+
+ +

An input-layout object contains an array of structures, each structure defines one element being read from an input slot. Create an input-layout object by calling ID3D11Device::CreateInputLayout. For an example, see the "Create the Input-Layout Object" subtopic under the Getting Started with the Input-Assembler Stage topic.

+
+ ff476180 + D3D11_INPUT_ELEMENT_DESC + D3D11_INPUT_ELEMENT_DESC +
+ + + Returns a value that can be used for the offset parameter of an InputElement to indicate that the element + should be aligned directly after the previous element, including any packing if neccessary. + + A value used to align input elements. + D3D11_APPEND_ALIGNED_ELEMENT + + + + Initializes a new instance of the struct. + + The HLSL semantic associated with this element in a shader input-signature. + The semantic index for the element. A semantic index modifies a semantic, with an integer index number. A semantic index is only needed in a case where there is more than one element with the same semantic. For example, a 4x4 matrix would have four components each with the semantic name matrix, however each of the four component would have different semantic indices (0, 1, 2, and 3). + The data type of the element data. + Offset (in bytes) between each element. Use AppendAligned for convenience to define the current element directly after the previous one, including any packing if necessary. + An integer value that identifies the input-assembler. Valid values are between 0 and 15. + Identifies the input data class for a single input slot. + The number of instances to draw using the same per-instance data before advancing in the buffer by one element. This value must be 0 for an element that contains per-vertex data. + + + + Initializes a new instance of the struct. + + The HLSL semantic associated with this element in a shader input-signature. + The semantic index for the element. A semantic index modifies a semantic, with an integer index number. A semantic index is only needed in a case where there is more than one element with the same semantic. For example, a 4x4 matrix would have four components each with the semantic name matrix, however each of the four component would have different semantic indices (0, 1, 2, and 3). + The data type of the element data. + Offset (in bytes) between each element. Use AppendAligned for convenience to define the current element directly after the previous one, including any packing if necessary. + An integer value that identifies the input-assembler. Valid values are between 0 and 15. + + + + Initializes a new instance of the struct. + + The HLSL semantic associated with this element in a shader input-signature. + The semantic index for the element. A semantic index modifies a semantic, with an integer index number. A semantic index is only needed in a case where there is more than one element with the same semantic. For example, a 4x4 matrix would have four components each with the semantic name matrix, however each of the four component would have different semantic indices (0, 1, 2, and 3). + The data type of the element data. + An integer value that identifies the input-assembler. Valid values are between 0 and 15. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + + + + + + + Implements the operator ==. + + The left. + The right. + + The result of the operator. + + + + + Implements the operator !=. + + The left. + The right. + + The result of the operator. + + + + +

The HLSL semantic associated with this element in a shader input-signature.

+
+ ff476180 + SemanticName + SemanticName +
+ + +

The semantic index for the element. A semantic index modifies a semantic, with an integer index number. A semantic index is only needed in a case where there is more than one element with the same semantic. For example, a 4x4 matrix would have four components each with the semantic name

matrix

, however each of the four component would have different semantic indices (0, 1, 2, and 3).

+
+ ff476180 + SemanticIndex + SemanticIndex +
+ + +

The data type of the element data. See .

+
+ ff476180 + Format + Format +
+ + +

An integer value that identifies the input-assembler (see input slot). Valid values are between 0 and 15, defined in D3D11.h.

+
+ ff476180 + InputSlot + InputSlot +
+ + +

Optional. Offset (in bytes) between each element. Use D3D11_APPEND_ALIGNED_ELEMENT for convenience to define the current element directly after the previous one, including any packing if necessary.

+
+ ff476180 + AlignedByteOffset + AlignedByteOffset +
+ + +

Identifies the input data class for a single input slot (see ).

+
+ ff476180 + InputSlotClass + InputSlotClass +
+ + +

The number of instances to draw using the same per-instance data before advancing in the buffer by one element. This value must be 0 for an element that contains per-vertex data (the slot class is set to D3D11_INPUT_PER_VERTEX_DATA).

+
+ ff476180 + InstanceDataStepRate + InstanceDataStepRate +
+ + + Initializes a new instance of the object to describe the + input-buffer data for the input-assembler stage. + + ID3D11Device::CreateInputLayout + The device used to create the layout. + An array of input elements describing the layout of the input data. + The compiled shader used to validate the input elements. + + + +

A debug message in the Information Queue.

+
+ +

This structure is returned from ID3D11InfoQueue::GetMessage as part of the Information Queue feature (see Interface).

+
+ ff476184 + D3D11_MESSAGE + D3D11_MESSAGE +
+ + + + + +

The category of the message. See .

+
+ ff476184 + Category + Category +
+ + +

The severity of the message. See .

+
+ ff476184 + Severity + Severity +
+ + +

The ID of the message. See .

+
+ ff476184 + ID + ID +
+ + +

The message string.

+
+ ff476184 + pDescription + pDescription +
+ + +

The length of pDescription in bytes.

+
+ ff476184 + DescriptionByteLength + DescriptionByteLength +
+ + + Internal class used to initialize this assembly. + + + + + Initializes this assembly. + + + This method is called when the assembly is loaded. + + + + + The namespace provides a managed Direct3D11 API. + + ff476080 + Direct3D11 + Direct3D11 + + + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The query description. + The newly created object. + + + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The query description. + The newly created object. + + + +

Get a query description.

+
+ ff476579 + GetDesc + GetDesc +
+ + +

Get a query description.

+
+

Pointer to a query description (see ).

+ ff476579 + void ID3D11Query::GetDesc([Out] D3D11_QUERY_DESC* pDesc) + ID3D11Query::GetDesc +
+ + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The query description. + The newly created object. + + + +

Gets a query description.

+
+ dn899237 + GetDesc1 + GetDesc1 +
+ + +

Gets a query description.

+
+

A reference to a structure that receives a description of the query.

+ dn899237 + void ID3D11Query1::GetDesc1([Out] D3D11_QUERY_DESC1* pDesc1) + ID3D11Query1::GetDesc1 +
+ + +

Create a rasterizer state object that tells the rasterizer stage how to behave.

+
+ The device with which to associate the state object. + A rasterizer state description + +

4096 unique rasterizer state objects can be created on a device at a time.

If an application attempts to create a rasterizer-state interface with the same state as an existing interface, the same interface will be returned and the total number of unique rasterizer state objects will stay the same.

+
+ ff476516 + HRESULT ID3D11Device::CreateRasterizerState([In] const D3D11_RASTERIZER_DESC* pRasterizerDesc,[Out, Fast] ID3D11RasterizerState** ppRasterizerState) + ID3D11Device::CreateRasterizerState +
+ + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+ +

You use the description for rasterizer state in a call to the ID3D11Device::CreateRasterizerState method to create the rasterizer-state object.

+
+ ff476581 + GetDesc + GetDesc +
+ + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+

A reference to a structure that receives a description of the rasterizer state.

+ +

You use the description for rasterizer state in a call to the ID3D11Device::CreateRasterizerState method to create the rasterizer-state object.

+
+ ff476581 + void ID3D11RasterizerState::GetDesc([Out] D3D11_RASTERIZER_DESC* pDesc) + ID3D11RasterizerState::GetDesc +
+ + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + + + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+ +

You use the description for rasterizer state in a call to the ID3D11Device1::CreateRasterizerState1 method to create the rasterizer-state object.

+
+ hh446830 + GetDesc1 + GetDesc1 +
+ + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+

A reference to a structure that receives a description of the rasterizer state. This rasterizer state can specify forced sample count.

+ +

You use the description for rasterizer state in a call to the ID3D11Device1::CreateRasterizerState1 method to create the rasterizer-state object.

+
+ hh446830 + void ID3D11RasterizerState1::GetDesc1([Out] D3D11_RASTERIZER_DESC1* pDesc) + ID3D11RasterizerState1::GetDesc1 +
+ + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + + + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+ +

You use the description for rasterizer state in a call to the ID3D11Device3::CreateRasterizerState2 method to create the rasterizer-state object.

+
+ dn899239 + GetDesc2 + GetDesc2 +
+ + +

Gets the description for rasterizer state that you used to create the rasterizer-state object.

+
+

A reference to a structure that receives a description of the rasterizer state. This rasterizer state can specify forced sample count and conservative rasterization mode.

+ +

You use the description for rasterizer state in a call to the ID3D11Device3::CreateRasterizerState2 method to create the rasterizer-state object.

+
+ dn899239 + void ID3D11RasterizerState2::GetDesc2([Out] D3D11_RASTERIZER_DESC2* pDesc) + ID3D11RasterizerState2::GetDesc2 +
+ + +

Describes rasterizer state.

+
+ +

Rasterizer state defines the behavior of the rasterizer stage. To create a rasterizer-state object, call ID3D11Device::CreateRasterizerState. To set rasterizer state, call ID3D11DeviceContext::RSSetState.

If you do not specify some rasterizer state, the Direct3D runtime uses the following default values for rasterizer state.

StateDefault Value
FillModeSolid
CullModeBack
FrontCounterClockwise
DepthBias0
SlopeScaledDepthBias0.0f
DepthBiasClamp0.0f
DepthClipEnableTRUE
ScissorEnable
MultisampleEnable
AntialiasedLineEnable

?

Note??For feature levels 9.1, 9.2, 9.3, and 10.0, if you set MultisampleEnable to , the runtime renders all points, lines, and triangles without anti-aliasing even for render targets with a sample count greater than 1. For feature levels 10.1 and higher, the setting of MultisampleEnable has no effect on points and triangles with regard to MSAA and impacts only the selection of the line-rendering algorithm as shown in this table:?

Line-rendering algorithmMultisampleEnableAntialiasedLineEnable
Aliased
Alpha antialiasedTRUE
QuadrilateralTRUE
QuadrilateralTRUETRUE

?

The settings of the MultisampleEnable and AntialiasedLineEnable members apply only to multisample antialiasing (MSAA) render targets (that is, render targets with sample counts greater than 1). Because of the differences in feature-level behavior and as long as you aren?t performing any line drawing or don?t mind that lines render as quadrilaterals, we recommend that you always set MultisampleEnable to TRUE whenever you render on MSAA render targets.

+
+ ff476198 + D3D11_RASTERIZER_DESC + D3D11_RASTERIZER_DESC +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + +

Determines the fill mode to use when rendering (see ).

+
+ ff476198 + FillMode + FillMode +
+ + +

Indicates triangles facing the specified direction are not drawn (see ).

+
+ ff476198 + CullMode + CullMode +
+ + +

Determines if a triangle is front- or back-facing. If this parameter is TRUE, a triangle will be considered front-facing if its vertices are counter-clockwise on the render target and considered back-facing if they are clockwise. If this parameter is , the opposite is true.

+
+ ff476198 + FrontCounterClockwise + FrontCounterClockwise +
+ + +

Depth value added to a given pixel. For info about depth bias, see Depth Bias.

+
+ ff476198 + DepthBias + DepthBias +
+ + +

Maximum depth bias of a pixel. For info about depth bias, see Depth Bias.

+
+ ff476198 + DepthBiasClamp + DepthBiasClamp +
+ + +

Scalar on a given pixel's slope. For info about depth bias, see Depth Bias.

+
+ ff476198 + SlopeScaledDepthBias + SlopeScaledDepthBias +
+ + +

Enable clipping based on distance.

The hardware always performs x and y clipping of rasterized coordinates. When DepthClipEnable is set to the default?TRUE, the hardware also clips the z value (that is, the hardware performs the last step of the following algorithm). +

0 < w + -w <= x <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + -w <= y <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + 0 <= z <= w +

When you set DepthClipEnable to , the hardware skips the z clipping (that is, the last step in the preceding algorithm). However, the hardware still performs the "0 < w" clipping. When z clipping is disabled, improper depth ordering at the pixel level might result. However, when z clipping is disabled, stencil shadow implementations are simplified. In other words, you can avoid complex special-case handling for geometry that goes beyond the back clipping plane. +

+
+ ff476198 + DepthClipEnable + DepthClipEnable +
+ + +

Enable scissor-rectangle culling. All pixels outside an active scissor rectangle are culled.

+
+ ff476198 + ScissorEnable + ScissorEnable +
+ + +

Specifies whether to use the quadrilateral or alpha line anti-aliasing algorithm on multisample antialiasing (MSAA) render targets. Set to TRUE to use the quadrilateral line anti-aliasing algorithm and to to use the alpha line anti-aliasing algorithm. For more info about this member, see Remarks.

+
+ ff476198 + MultisampleEnable + MultisampleEnable +
+ + +

Specifies whether to enable line antialiasing; only applies if doing line drawing and MultisampleEnable is . For more info about this member, see Remarks.

+
+ ff476198 + AntialiasedLineEnable + AntialiasedLineEnable +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes rasterizer state.

+
+ +

Rasterizer state defines the behavior of the rasterizer stage. To create a rasterizer-state object, call ID3D11Device1::CreateRasterizerState1. To set rasterizer state, call ID3D11DeviceContext::RSSetState.

If you do not specify some rasterizer state, the Direct3D runtime uses the following default values for rasterizer state.

StateDefault Value
FillModeSolid
CullModeBack
FrontCounterClockwise
DepthBias0
SlopeScaledDepthBias0.0f
DepthBiasClamp0.0f
DepthClipEnableTRUE
ScissorEnable
MultisampleEnable
AntialiasedLineEnable
ForcedSampleCount0

?

Note??For feature levels 9.1, 9.2, 9.3, and 10.0, if you set MultisampleEnable to , the runtime renders all points, lines, and triangles without anti-aliasing even for render targets with a sample count greater than 1. For feature levels 10.1 and higher, the setting of MultisampleEnable has no effect on points and triangles with regard to MSAA and impacts only the selection of the line-rendering algorithm as shown in this table:?

Line-rendering algorithmMultisampleEnableAntialiasedLineEnable
Aliased
Alpha antialiasedTRUE
QuadrilateralTRUE
QuadrilateralTRUETRUE

?

The settings of the MultisampleEnable and AntialiasedLineEnable members apply only to multisample antialiasing (MSAA) render targets (that is, render targets with sample counts greater than 1). Because of the differences in feature-level behavior and as long as you aren?t performing any line drawing or don?t mind that lines render as quadrilaterals, we recommend that you always set MultisampleEnable to TRUE whenever you render on MSAA render targets.

+
+ hh404489 + D3D11_RASTERIZER_DESC1 + D3D11_RASTERIZER_DESC1 +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + +

Determines the fill mode to use when rendering.

+
+ hh404489 + FillMode + FillMode +
+ + +

Indicates that triangles facing the specified direction are not drawn.

+
+ hh404489 + CullMode + CullMode +
+ + +

Specifies whether a triangle is front- or back-facing. If TRUE, a triangle will be considered front-facing if its vertices are counter-clockwise on the render target and considered back-facing if they are clockwise. If , the opposite is true.

+
+ hh404489 + FrontCounterClockwise + FrontCounterClockwise +
+ + +

Depth value added to a given pixel. For info about depth bias, see Depth Bias.

+
+ hh404489 + DepthBias + DepthBias +
+ + +

Maximum depth bias of a pixel. For info about depth bias, see Depth Bias.

+
+ hh404489 + DepthBiasClamp + DepthBiasClamp +
+ + +

Scalar on a given pixel's slope. For info about depth bias, see Depth Bias.

+
+ hh404489 + SlopeScaledDepthBias + SlopeScaledDepthBias +
+ + +

Specifies whether to enable clipping based on distance.

The hardware always performs x and y clipping of rasterized coordinates. When DepthClipEnable is set to the default?TRUE, the hardware also clips the z value (that is, the hardware performs the last step of the following algorithm). +

0 < w + -w <= x <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + -w <= y <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + 0 <= z <= w +

When you set DepthClipEnable to , the hardware skips the z clipping (that is, the last step in the preceding algorithm). However, the hardware still performs the "0 < w" clipping. When z clipping is disabled, improper depth ordering at the pixel level might result. However, when z clipping is disabled, stencil shadow implementations are simplified. In other words, you can avoid complex special-case handling for geometry that goes beyond the back clipping plane. +

+
+ hh404489 + DepthClipEnable + DepthClipEnable +
+ + +

Specifies whether to enable scissor-rectangle culling. All pixels outside an active scissor rectangle are culled.

+
+ hh404489 + ScissorEnable + ScissorEnable +
+ + +

Specifies whether to use the quadrilateral or alpha line anti-aliasing algorithm on multisample antialiasing (MSAA) render targets. Set to TRUE to use the quadrilateral line anti-aliasing algorithm and to to use the alpha line anti-aliasing algorithm. For more info about this member, see Remarks.

+
+ hh404489 + MultisampleEnable + MultisampleEnable +
+ + +

Specifies whether to enable line antialiasing; only applies if doing line drawing and MultisampleEnable is . For more info about this member, see Remarks.

+
+ hh404489 + AntialiasedLineEnable + AntialiasedLineEnable +
+ + +

The sample count that is forced while UAV rendering or rasterizing. Valid values are 0, 1, 2, 4, 8, and optionally 16. 0 indicates that the sample count is not forced.

Note??

If you want to render with ForcedSampleCount set to 1 or greater, you must follow these guidelines:

  • Don't bind depth-stencil views.
  • Disable depth testing.
  • Ensure the shader doesn't output depth.
  • If you have any render-target views bound (D3D11_BIND_RENDER_TARGET) and ForcedSampleCount is greater than 1, ensure that every render target has only a single sample.
  • Don't operate the shader at sample frequency. Therefore, ID3D11ShaderReflection::IsSampleFrequencyShader returns .
Otherwise, rendering behavior is undefined. For info about how to configure depth-stencil, see Configuring Depth-Stencil Functionality. ?
+
+ hh404489 + ForcedSampleCount + ForcedSampleCount +
+ + +

Describes the blend state for a render target.

+
+ +

You specify an array of structures in the RenderTarget member of the structure to describe the blend states for render targets; you can bind up to eight render targets to the output-merger stage at one time.

For info about how blending is done, see the output-merger stage.

Here are the default values for blend state.

StateDefault Value
BlendEnable
SrcBlendD3D11_BLEND_ONE
DestBlendD3D11_BLEND_ZERO
BlendOpD3D11_BLEND_OP_ADD
SrcBlendAlphaD3D11_BLEND_ONE
DestBlendAlphaD3D11_BLEND_ZERO
BlendOpAlphaD3D11_BLEND_OP_ADD
RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

+
+ ff476200 + D3D11_RENDER_TARGET_BLEND_DESC + D3D11_RENDER_TARGET_BLEND_DESC +
+ + + Initializes a new instance of the struct. + + The is blend enabled. + The source blend. + The destination blend. + The blend operation. + The source alpha blend. + The destination alpha blend. + The alpha blend operation. + The render target write mask. + + + +

Enable (or disable) blending.

+
+ ff476200 + BlendEnable + BlendEnable +
+ + +

This blend option specifies the operation to perform on the RGB value that the pixel shader outputs. The BlendOp member defines how to combine the SrcBlend and DestBlend operations.

+
+ ff476200 + SrcBlend + SrcBlend +
+ + +

This blend option specifies the operation to perform on the current RGB value in the render target. The BlendOp member defines how to combine the SrcBlend and DestBlend operations.

+
+ ff476200 + DestBlend + DestBlend +
+ + +

This blend operation defines how to combine the SrcBlend and DestBlend operations.

+
+ ff476200 + BlendOp + BlendOp +
+ + +

This blend option specifies the operation to perform on the alpha value that the pixel shader outputs. Blend options that end in _COLOR are not allowed. The BlendOpAlpha member defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ ff476200 + SrcBlendAlpha + SrcBlendAlpha +
+ + +

This blend option specifies the operation to perform on the current alpha value in the render target. Blend options that end in _COLOR are not allowed. The BlendOpAlpha member defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ ff476200 + DestBlendAlpha + DestBlendAlpha +
+ + +

This blend operation defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ ff476200 + BlendOpAlpha + BlendOpAlpha +
+ + +

A write mask.

+
+ ff476200 + RenderTargetWriteMask + RenderTargetWriteMask +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the RenderTarget flag. + ID3D11Device::CreateRenderTargetView + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the RenderTarget flag. + A structure describing the to be created. + ID3D11Device::CreateRenderTargetView + + + +

Get the properties of a render target view.

+
+ ff476583 + GetDesc + GetDesc +
+ + +

Get the properties of a render target view.

+
+

Pointer to the description of a render target view (see ).

+ ff476583 + void ID3D11RenderTargetView::GetDesc([Out] D3D11_RENDER_TARGET_VIEW_DESC* pDesc) + ID3D11RenderTargetView::GetDesc +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the RenderTarget flag. + ID3D11Device3::CreateRenderTargetView1 + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the RenderTarget flag. + A structure describing the to be created. + ID3D11Device3::CreateRenderTargetView1 + + + +

Gets the properties of a render-target view.

+
+ dn899241 + GetDesc1 + GetDesc1 +
+ + +

Gets the properties of a render-target view.

+
+

A reference to a structure that receives the description of the render-target view.

+ dn899241 + void ID3D11RenderTargetView1::GetDesc1([Out] D3D11_RENDER_TARGET_VIEW_DESC1* pDesc1) + ID3D11RenderTargetView1::GetDesc1 +
+ + + Gets a swap chain back buffer. + + The type of the buffer. + The swap chain to get the buffer from. + The index of the desired buffer. + The buffer interface, or null on failure. + + + + Calculates the sub resource index from a miplevel. + + A zero-based index for the mipmap level to address; 0 indicates the first, most detailed mipmap level. + The zero-based index for the array level to address; always use 0 for volume (3D) textures. + Number of mipmap levels in the resource. + + The index which equals MipSlice + (ArraySlice * MipLevels). + + D3D11CalcSubresource + + + + Calculates the resulting size at a single level for an original size. + + The mip level to get the size. + Size of the base. + + Size of the mipLevel + + + + + Calculates the sub resource index for a particular mipSlice and arraySlice. + + The mip slice. + The array slice. + The size of slice. This values is resource dependent. Texture1D -> mipSize of the Width. Texture2D -> mipSize of the Height. Texture3D -> mipsize of the Depth + The resulting miplevel calulated for this instance with this mipSlice and arraySlice. + + + Constant MaximumMipLevels + D3D11_REQ_MIP_LEVELS + + + Constant ResourceSizeInMegabytes + D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM + + + Constant MaximumTexture1DArraySize + D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION + + + Constant MaximumTexture2DArraySize + D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION + + + Constant MaximumTexture1DSize + D3D11_REQ_TEXTURE1D_U_DIMENSION + + + Constant MaximumTexture2DSize + D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION + + + Constant MaximumTexture3DSize + D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION + + + Constant MaximumTextureCubeSize + D3D11_REQ_TEXTURECUBE_DIMENSION + + + +

Get the type of the resource.

+
+ +

Windows?Phone?8: This API is supported.

+
+ ff476586 + GetType + GetType +
+ + +

Get or sets the eviction priority of a resource.

+
+ ff476585 + GetEvictionPriority / SetEvictionPriority + GetEvictionPriority +
+ + +

Get the type of the resource.

+
+

Pointer to the resource type (see ).

+ +

Windows?Phone?8: This API is supported.

+
+ ff476586 + void ID3D11Resource::GetType([Out] D3D11_RESOURCE_DIMENSION* pResourceDimension) + ID3D11Resource::GetType +
+ + +

Set the eviction priority of a resource.

+
+

Eviction priority for the resource, which is one of the following values:

  • DXGI_RESOURCE_PRIORITY_MINIMUM
  • DXGI_RESOURCE_PRIORITY_LOW
  • DXGI_RESOURCE_PRIORITY_NORMAL
  • DXGI_RESOURCE_PRIORITY_HIGH
  • DXGI_RESOURCE_PRIORITY_MAXIMUM
+ +

Resource priorities determine which resource to evict from video memory when the system has run out of video memory. The resource will not be lost; it will be removed from video memory and placed into system memory, or possibly placed onto the hard drive. The resource will be loaded back into video memory when it is required.

A resource that is set to the maximum priority, DXGI_RESOURCE_PRIORITY_MAXIMUM, is only evicted if there is no other way of resolving the incoming memory request. The Windows Display Driver Model (WDDM) tries to split an incoming memory request to its minimum size and evict lower-priority resources before evicting a resource with maximum priority.

Changing the priorities of resources should be done carefully. The wrong eviction priorities could be a detriment to performance rather than an improvement.

+
+ ff476587 + void ID3D11Resource::SetEvictionPriority([In] unsigned int EvictionPriority) + ID3D11Resource::SetEvictionPriority +
+ + +

Get the eviction priority of a resource.

+
+

One of the following values, which specifies the eviction priority for the resource:

  • DXGI_RESOURCE_PRIORITY_MINIMUM
  • DXGI_RESOURCE_PRIORITY_LOW
  • DXGI_RESOURCE_PRIORITY_NORMAL
  • DXGI_RESOURCE_PRIORITY_HIGH
  • DXGI_RESOURCE_PRIORITY_MAXIMUM
+ ff476585 + unsigned int ID3D11Resource::GetEvictionPriority() + ID3D11Resource::GetEvictionPriority +
+ + +

Defines a 3D box.

+
+ +

The following diagram shows a 3D box, where the origin is the left, front, top corner.

The values for right, bottom, and back are each one pixel past the end of the pixels that are included in the box region. That is, the values for left, top, and front are included in the box region while the values for right, bottom, and back are excluded from the box region. For example, for a box that is one pixel wide, (right - left) == 1; the box region includes the left pixel but not the right pixel.

Coordinates of a box are in bytes for buffers and in texels for textures.

+
+ ff476089 + D3D11_BOX + D3D11_BOX +
+ + + Initialize a new instance of struct. + + Left coordinates (inclusive) + Top coordinates (inclusive) + Front coordinates (inclusive) + Right coordinates (exclusive) + Bottom coordinates (exclusive) + Back coordinates (exclusive) + +
    +
  • For a Width of 1 pixels, (right - left) = 1. If left = 0, right = Width.
  • +
  • For a Height of 1 pixels, (bottom - top) = 1. If top = 0, bottom = Height.
  • +
  • For a Depth of 1 pixels, (back - front) = 1. If front = 0, back = Depth.
  • +
+
+
+ + +

The x position of the left hand side of the box.

+
+ ff476089 + left + left +
+ + +

The y position of the top of the box.

+
+ ff476089 + top + top +
+ + +

The z position of the front of the box.

+
+ ff476089 + front + front +
+ + +

The x position of the right hand side of the box.

+
+ ff476089 + right + right +
+ + +

The y position of the bottom of the box.

+
+ ff476089 + bottom + bottom +
+ + +

The z position of the back of the box.

+
+ ff476089 + back + back +
+ + +

Get the resource that is accessed through this view.

+
+ +

This function increments the reference count of the resource by one, so it is necessary to call Release on the returned reference when the application is done with it. Destroying (or losing) the returned reference before Release is called will result in a memory leak.

+
+ ff476643 + GetResource + GetResource + void ID3D11View::GetResource([Out] ID3D11Resource** ppResource) +
+ + +

Get the resource that is accessed through this view.

+
+ +

This function increments the reference count of the resource by one, so it is necessary to call Dispose on the returned reference when the application is done with it. Destroying (or losing) the returned reference before Release is called will result in a memory leak.

+
+ ff476643 + GetResource + GetResource + void ID3D11View::GetResource([Out] ID3D11Resource** ppResource) +
+ + +

Get the resource that is accessed through this view.

+
+

Address of a reference to the resource that is accessed through this view. (See .)

+ +

This function increments the reference count of the resource by one, so it is necessary to call Release on the returned reference when the application is done with it. Destroying (or losing) the returned reference before Release is called will result in a memory leak.

+
+ ff476643 + void ID3D11View::GetResource([Out] ID3D11Resource** ppResource) + ID3D11View::GetResource +
+ + + Constructs a new based on the specified description. + + The device with which to associate the state object. + The state description. + The newly created object. + ff476518 + HRESULT ID3D11Device::CreateSamplerState([In] const D3D11_SAMPLER_DESC* pSamplerDesc,[Out, Fast] ID3D11SamplerState** ppSamplerState) + ID3D11Device::CreateSamplerState + + + +

Gets the description for sampler state that you used to create the sampler-state object.

+
+ +

You use the description for sampler state in a call to the ID3D11Device::CreateSamplerState method to create the sampler-state object.

+
+ ff476589 + GetDesc + GetDesc +
+ + +

Gets the description for sampler state that you used to create the sampler-state object.

+
+

A reference to a structure that receives a description of the sampler state.

+ +

You use the description for sampler state in a call to the ID3D11Device::CreateSamplerState method to create the sampler-state object.

+
+ ff476589 + void ID3D11SamplerState::GetDesc([Out] D3D11_SAMPLER_DESC* pDesc) + ID3D11SamplerState::GetDesc +
+ + +

Describes a sampler state.

+
+ +

These are the default values for sampler state.

StateDefault Value
FilterD3D11_FILTER_MIN_MAG_MIP_LINEAR
AddressUD3D11_TEXTURE_ADDRESS_CLAMP
AddressVD3D11_TEXTURE_ADDRESS_CLAMP
AddressWD3D11_TEXTURE_ADDRESS_CLAMP
MinLOD-3.402823466e+38F (-FLT_MAX)
MaxLOD3.402823466e+38F (FLT_MAX)
MipMapLODBias0.0f
MaxAnisotropy1
ComparisonFuncD3D11_COMPARISON_NEVER
BorderColorfloat4(1.0f,1.0f,1.0f,1.0f)
TextureN/A

?

+
+ ff476207 + D3D11_SAMPLER_DESC + D3D11_SAMPLER_DESC +
+ + + Returns default values for . + + + See MSDN documentation for default values. + + + + +

Filtering method to use when sampling a texture (see ).

+
+ ff476207 + Filter + Filter +
+ + +

Method to use for resolving a u texture coordinate that is outside the 0 to 1 range (see ).

+
+ ff476207 + AddressU + AddressU +
+ + +

Method to use for resolving a v texture coordinate that is outside the 0 to 1 range.

+
+ ff476207 + AddressV + AddressV +
+ + +

Method to use for resolving a w texture coordinate that is outside the 0 to 1 range.

+
+ ff476207 + AddressW + AddressW +
+ + +

Offset from the calculated mipmap level. For example, if Direct3D calculates that a texture should be sampled at mipmap level 3 and MipLODBias is 2, then the texture will be sampled at mipmap level 5.

+
+ ff476207 + MipLODBias + MipLODBias +
+ + +

Clamping value used if D3D11_FILTER_ANISOTROPIC or D3D11_FILTER_COMPARISON_ANISOTROPIC is specified in Filter. Valid values are between 1 and 16.

+
+ ff476207 + MaxAnisotropy + MaxAnisotropy +
+ + +

A function that compares sampled data against existing sampled data. The function options are listed in .

+
+ ff476207 + ComparisonFunc + ComparisonFunc +
+ + +

Border color to use if D3D11_TEXTURE_ADDRESS_BORDER is specified for AddressU, AddressV, or AddressW. Range must be between 0.0 and 1.0 inclusive.

+
+ ff476207 + BorderColor + BorderColor +
+ + +

Lower end of the mipmap range to clamp access to, where 0 is the largest and most detailed mipmap level and any level higher than that is less detailed.

+
+ ff476207 + MinLOD + MinLOD +
+ + +

Upper end of the mipmap range to clamp access to, where 0 is the largest and most detailed mipmap level and any level higher than that is less detailed. This value must be greater than or equal to MinLOD. To have no upper limit on LOD set this to a large value such as D3D11_FLOAT32_MAX.

+
+ ff476207 + MaxLOD + MaxLOD +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the ShaderResource flag. + ff476519 + HRESULT ID3D11Device::CreateShaderResourceView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc,[Out, Fast] ID3D11ShaderResourceView** ppSRView) + ID3D11Device::CreateShaderResourceView + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the ShaderResource flag. + A structure describing the to be created. + ff476519 + HRESULT ID3D11Device::CreateShaderResourceView([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc,[Out, Fast] ID3D11ShaderResourceView** ppSRView) + ID3D11Device::CreateShaderResourceView + + + +

Get the shader resource view's description.

+
+ ff476629 + GetDesc + GetDesc +
+ + +

Get the shader resource view's description.

+
+

A reference to a structure to be filled with data about the shader resource view.

+ ff476629 + void ID3D11ShaderResourceView::GetDesc([Out] D3D11_SHADER_RESOURCE_VIEW_DESC* pDesc) + ID3D11ShaderResourceView::GetDesc +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the ShaderResource flag. + ff476519 + HRESULT ID3D11Device3::CreateShaderResourceView1([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc,[Out, Fast] ID3D11ShaderResourceView1** ppSRView) + ID3D11Device3::CreateShaderResourceView1 + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the ShaderResource flag. + A structure describing the to be created. + ff476519 + HRESULT ID3D11Device3::CreateShaderResourceView1([In] ID3D11Resource* pResource,[In, Optional] const D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc,[Out, Fast] ID3D11ShaderResourceView1** ppSRView) + ID3D11Device3::CreateShaderResourceView1 + + + +

Gets the shader-resource view's description.

+
+ dn899243 + GetDesc1 + GetDesc1 +
+ + +

Gets the shader-resource view's description.

+
+

A reference to a structure that receives the description of the shader-resource view.

+ dn899243 + void ID3D11ShaderResourceView1::GetDesc1([Out] D3D11_SHADER_RESOURCE_VIEW_DESC1* pDesc1) + ID3D11ShaderResourceView1::GetDesc1 +
+ + + Properties defining the way a buffer is bound to the pipeline as a target for stream output operations. + + + + + Gets or sets the buffer being bound. + + + + + Gets or sets the offset from the start of the buffer of the first vertex to use (in bytes). + + + + + Initializes a new instance of the struct. + + The buffer being bound. + The offset to the first vertex (in bytes). + + + +

Description of a vertex element in a vertex buffer in an output slot.

+
+ ff476216 + D3D11_SO_DECLARATION_ENTRY + D3D11_SO_DECLARATION_ENTRY +
+ + + Initializes a new instance of the struct. + + Zero-based, stream number + Name of the semantic. + Index of the semantic. + The start component. + The component count. + The output slot. + + + +

Zero-based, stream number.

+
+ ff476216 + Stream + Stream +
+ + +

Type of output element; possible values include: "POSITION", "NORMAL", or "TEXCOORD0". Note that if SemanticName is null then ComponentCount can be greater than 4 and the described entry will be a gap in the stream out where no data will be written.

+
+ ff476216 + SemanticName + SemanticName +
+ + +

Output element's zero-based index. Should be used if, for example, you have more than one texture coordinate stored in each vertex.

+
+ ff476216 + SemanticIndex + SemanticIndex +
+ + +

Which component of the entry to begin writing out to. Valid values are 0 to 3. For example, if you only wish to output to the y and z components of a position, then StartComponent should be 1 and ComponentCount should be 2.

+
+ ff476216 + StartComponent + StartComponent +
+ + +

The number of components of the entry to write out to. Valid values are 1 to 4. For example, if you only wish to output to the y and z components of a position, then StartComponent should be 1 and ComponentCount should be 2. Note that if SemanticName is null then ComponentCount can be greater than 4 and the described entry will be a gap in the stream out where no data will be written.

+
+ ff476216 + ComponentCount + ComponentCount +
+ + +

The associated stream output buffer that is bound to the pipeline (see ID3D11DeviceContext::SOSetTargets). The valid range for OutputSlot is 0 to 3.

+
+ ff476216 + OutputSlot + OutputSlot +
+ + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + ff476520 + HRESULT ID3D11Device::CreateTexture1D([In] const D3D11_TEXTURE1D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture1D** ppTexture1D) + ID3D11Device::CreateTexture1D + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476520 + HRESULT ID3D11Device::CreateTexture1D([In] const D3D11_TEXTURE1D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture1D** ppTexture1D) + ID3D11Device::CreateTexture1D + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476520 + HRESULT ID3D11Device::CreateTexture1D([In] const D3D11_TEXTURE1D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture1D** ppTexture1D) + ID3D11Device::CreateTexture1D + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476520 + HRESULT ID3D11Device::CreateTexture1D([In] const D3D11_TEXTURE1D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture1D** ppTexture1D) + ID3D11Device::CreateTexture1D + + + + + + +

Get the properties of the texture resource.

+
+ ff476634 + GetDesc + GetDesc +
+ + +

Get the properties of the texture resource.

+
+

Pointer to a resource description (see ).

+ ff476634 + void ID3D11Texture1D::GetDesc([Out] D3D11_TEXTURE1D_DESC* pDesc) + ID3D11Texture1D::GetDesc +
+ + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + ff476521 + HRESULT ID3D11Device::CreateTexture2D([In] const D3D11_TEXTURE2D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D** ppTexture2D) + ID3D11Device::CreateTexture2D + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476521 + HRESULT ID3D11Device::CreateTexture2D([In] const D3D11_TEXTURE2D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D** ppTexture2D) + ID3D11Device::CreateTexture2D + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476521 + HRESULT ID3D11Device::CreateTexture2D([In] const D3D11_TEXTURE2D_DESC* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D** ppTexture2D) + ID3D11Device::CreateTexture2D + + + + + + +

Get the properties of the texture resource.

+
+ ff476636 + GetDesc + GetDesc +
+ + +

Get the properties of the texture resource.

+
+

Pointer to a resource description (see ).

+ ff476636 + void ID3D11Texture2D::GetDesc([Out] D3D11_TEXTURE2D_DESC* pDesc) + ID3D11Texture2D::GetDesc +
+ + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + ff476521 + HRESULT ID3D11Device3::CreateTexture2D1([In] const D3D11_TEXTURE2D_DESC1* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D1** ppTexture2D) + ID3D11Device3::CreateTexture2D1 + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476521 + HRESULT ID3D11Device3::CreateTexture2D1([In] const D3D11_TEXTURE2D_DESC1* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D1** ppTexture2D) + ID3D11Device3::CreateTexture2D1 + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + ff476521 + HRESULT ID3D11Device3::CreateTexture2D1([In] const D3D11_TEXTURE2D_DESC1* pDesc,[In, Buffer, Optional] const D3D11_SUBRESOURCE_DATA* pInitialData,[Out, Fast] ID3D11Texture2D** ppTexture2D) + ID3D11Device3::CreateTexture2D1 + + + + + + +

Gets the properties of the texture resource.

+
+ dn899245 + GetDesc1 + GetDesc1 +
+ + +

Gets the properties of the texture resource.

+
+

A reference to a structure that receives the description of the 2D texture.

+ dn899245 + void ID3D11Texture2D1::GetDesc1([Out] D3D11_TEXTURE2D_DESC1* pDesc) + ID3D11Texture2D1::GetDesc1 +
+ + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + + + + + + +

Get the properties of the texture resource.

+
+ ff476638 + GetDesc + GetDesc +
+ + +

Get the properties of the texture resource.

+
+

Pointer to a resource description (see ).

+ ff476638 + void ID3D11Texture3D::GetDesc([Out] D3D11_TEXTURE3D_DESC* pDesc) + ID3D11Texture3D::GetDesc +
+ + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + + + + Initializes a new instance of the class. + + The device with which to associate the texture. + The description of the texture. + An array of initial texture data for each subresource. + + + + + + +

Gets the properties of the texture resource.

+
+ dn899247 + GetDesc1 + GetDesc1 +
+ + +

Gets the properties of the texture resource.

+
+

A reference to a structure that receives the description of the 3D texture.

+ dn899247 + void ID3D11Texture3D1::GetDesc1([Out] D3D11_TEXTURE3D_DESC1* pDesc) + ID3D11Texture3D1::GetDesc1 +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the UnorderedAccess flag. + ID3D11Device::CreateUnorderedAccessView + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the UnorderedAccess flag. + A structure describing the to be created. + ID3D11Device::CreateUnorderedAccessView + + + +

Get a description of the resource.

+
+ ff476640 + GetDesc + GetDesc +
+ + +

Get a description of the resource.

+
+

Pointer to a resource description (see .)

+ ff476640 + void ID3D11UnorderedAccessView::GetDesc([Out] D3D11_UNORDERED_ACCESS_VIEW_DESC* pDesc) + ID3D11UnorderedAccessView::GetDesc +
+ + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the UnorderedAccess flag. + ID3D11Device3::CreateUnorderedAccessView1 + + + + Creates a for accessing resource data. + + The device to use when creating this . + The resource that represents the render-target surface. This surface must have been created with the UnorderedAccess flag. + A structure describing the to be created. + ID3D11Device3::CreateUnorderedAccessView1 + + + +

Gets a description of the resource.

+
+ dn899249 + GetDesc1 + GetDesc1 +
+ + +

Gets a description of the resource.

+
+

A reference to a structure that receives the description of the unordered-access resource.

+ dn899249 + void ID3D11UnorderedAccessView1::GetDesc1([Out] D3D11_UNORDERED_ACCESS_VIEW_DESC1* pDesc1) + ID3D11UnorderedAccessView1::GetDesc1 +
+ + + Properties defining the way a buffer (containing vertex data) is bound + to the pipeline for rendering. + + + + + Gets or sets the buffer being bound. + + + + + Gets or sets the stride between vertex elements in the buffer (in bytes). + + + + + Gets or sets the offset from the start of the buffer of the first vertex to use (in bytes). + + + + + Initializes a new instance of the struct. + + The buffer being bound. + The stride between vertex element (in bytes). + The offset to the first vertex (in bytes). + + + + Initializes a new instance of the class. + + The device used to create the shader. + The compiled shader bytecode. + A dynamic class linkage interface. + + + +

[This documentation is preliminary and is subject to change.]

Applies to: desktop apps | Metro style apps

Gets a reference to a DirectX Video Acceleration (DXVA) decoder buffer.

+
+ +

The graphics driver allocates the buffers that are used for DXVA decoding. This method locks the Microsoft Direct3D surface that contains the buffer. When you are done using the buffer, call to unlock the surface.

+
+ + hh447711 + ID3D11VideoContext + ID3D11VideoContext +
+ + +

[This documentation is preliminary and is subject to change.]

Applies to: desktop apps | Metro style apps

Gets a reference to a DirectX Video Acceleration (DXVA) decoder buffer.

+
+

A reference to the interface. To get this reference, call .

+

The type of buffer to retrieve, specified as a member of the enumeration.

+ An to the memory buffer. + +

The graphics driver allocates the buffers that are used for DXVA decoding. This method locks the Microsoft Direct3D surface that contains the buffer. When you are done using the buffer, call to unlock the surface.

+
+ + hh447711 + HRESULT ID3D11VideoContext::GetDecoderBuffer([In] ID3D11VideoDecoder* pDecoder,[In] D3D11_VIDEO_DECODER_BUFFER_TYPE Type,[Out] unsigned int* pBufferSize,[Out] void** ppBuffer) + ID3D11VideoContext::GetDecoderBuffer +
+ + +

Gets a reference to a decoder buffer.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoDecoder.

+

The type of buffer to retrieve, specified as a member of the enumeration.

+

Receives the size of the buffer, in bytes.

+

Receives a reference to the start of the memory buffer.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The graphics driver allocates the buffers that are used for decoding. This method locks the Microsoft Direct3D surface that contains the buffer. When you are done using the buffer, call ID3D11VideoContext::ReleaseDecoderBuffer to unlock the surface.

+
+ hh447711 + HRESULT ID3D11VideoContext::GetDecoderBuffer([In] ID3D11VideoDecoder* pDecoder,[In] D3D11_VIDEO_DECODER_BUFFER_TYPE Type,[Out] unsigned int* pBufferSize,[Out] void** ppBuffer) + ID3D11VideoContext::GetDecoderBuffer +
+ + +

Releases a buffer that was obtained by calling the ID3D11VideoContext::GetDecoderBuffer method.

+
+ No documentation. + No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447716 + HRESULT ID3D11VideoContext::ReleaseDecoderBuffer([In] ID3D11VideoDecoder* pDecoder,[In] D3D11_VIDEO_DECODER_BUFFER_TYPE Type) + ID3D11VideoContext::ReleaseDecoderBuffer +
+ + +

Starts a decoding operation to decode a video frame.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoDecoder.

+

A reference to the interface. This interface describes the resource that will receive the decoded frame. To get this reference, call ID3D11VideoDevice::CreateVideoDecoderOutputView.

+

The size of the content key that is specified in pContentKey. If pContentKey is null, set ContentKeySize to zero.

+

An optional reference to a content key that was used to encrypt the frame data. If no content key was used, set this parameter to null. If the caller provides a content key, the caller must use the session key to encrypt the content key.

+

If this method succeeds, it returns . Otherwise, it returns an error code. D3DERR_WASSTILLDRAWING or E_PENDING is returned if the harware is busy, in which case the decoder should try to make the call again.

+ +

After this method is called, call ID3D11VideoContext::SubmitDecoderBuffers to perform decoding operations. When all decoding operations have been executed, call ID3D11VideoContext::DecoderEndFrame.

Each call to DecoderBeginFrame must have a matching call to DecoderEndFrame. In most cases you cannot nest DecoderBeginFrame calls, but some codecs, such as like VC-1, can have nested DecoderBeginFrame calls for special operations like post processing.

The following encryption scenarios are supported through the content key:

  • The decoder can choose to not encrypt every frame, for example it may only encrypt the I frames and not encrypt the P/B frames. In these scenario, the decoder will specify pContentKey = null and ContentKeySize = 0 for those frames that it does not encrypt.
  • The decoder can choose to encrypt the compressed buffers using the session key. In this scenario, the decoder will specify a content key containing all zeros.
  • The decoder can choose to encrypt the compressed buffers using a separate content key. In this scenario, the decoder will ECB encrypt the content key using the session key and pass the encrypted content key.
+
+ hh447705 + HRESULT ID3D11VideoContext::DecoderBeginFrame([In] ID3D11VideoDecoder* pDecoder,[In] ID3D11VideoDecoderOutputView* pView,[In] unsigned int ContentKeySize,[In, Buffer, Optional] const void* pContentKey) + ID3D11VideoContext::DecoderBeginFrame +
+ + +

Signals the end of a decoding operation.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoDecoder.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447706 + HRESULT ID3D11VideoContext::DecoderEndFrame([In] ID3D11VideoDecoder* pDecoder) + ID3D11VideoContext::DecoderEndFrame +
+ + +

Submits one or more buffers for decoding.

+
+

A reference to the interface. To get this reference, call the ID3D11VideoDevice::CreateVideoDecoder method.

+

The number of buffers submitted for decoding.

+

A reference to an array of structures. The NumBuffers parameter specifies the number of elements in the array. Each element in the array describes a compressed buffer for decoding.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This function does not honor a D3D11 predicate that may have been set.

If the application uses D3D11 quries, this function may not be accounted for with D3D11_QUERY_EVENT and D3D11_QUERY_TIMESTAMP when using feature levels lower than 11. D3D11_QUERY_PIPELINE_STATISTICS will not include this function for any feature level.

When using feature levels 9_x, all partially encrypted buffers must use the same EncryptedBlockInfo, and partial encryption cannot be turned off on a per frame basis.

+
+ hh447718 + HRESULT ID3D11VideoContext::SubmitDecoderBuffers([In] ID3D11VideoDecoder* pDecoder,[In] unsigned int NumBuffers,[In, Buffer] const D3D11_VIDEO_DECODER_BUFFER_DESC* pBufferDesc) + ID3D11VideoContext::SubmitDecoderBuffers +
+ + +

Performs an extended function for decoding. This method enables extensions to the basic decoder functionality.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoDecoder.

+

A reference to a structure that contains data for the function.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447707 + HRESULT ID3D11VideoContext::DecoderExtension([In] ID3D11VideoDecoder* pDecoder,[In] const D3D11_VIDEO_DECODER_EXTENSION* pExtensionData) + ID3D11VideoContext::DecoderExtension +
+ + +

Sets the target rectangle for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Specifies whether to apply the target rectangle.

+

A reference to a structure that specifies the target rectangle. If Enable is , this parameter is ignored.

+ +

The target rectangle is the area within the destination surface where the output will be drawn. The target rectangle is given in pixel coordinates, relative to the destination surface.

If this method is never called, or if the Enable parameter is , the video processor writes to the entire destination surface.

+
+ hh447752 + void ID3D11VideoContext::VideoProcessorSetOutputTargetRect([In] ID3D11VideoProcessor* pVideoProcessor,[In] BOOL Enable,[In, Optional] const RECT* pRect) + ID3D11VideoContext::VideoProcessorSetOutputTargetRect +
+ + +

Sets the background color for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

If TRUE, the color is specified as a YCbCr value. Otherwise, the color is specified as an RGB value.

+

A reference to a structure that specifies the background color.

+ +

The video processor uses the background color to fill areas of the target rectangle that do not contain a video image. Areas outside the target rectangle are not affected.

+
+ hh447747 + void ID3D11VideoContext::VideoProcessorSetOutputBackgroundColor([In] ID3D11VideoProcessor* pVideoProcessor,[In] BOOL YCbCr,[In] const D3D11_VIDEO_COLOR* pColor) + ID3D11VideoContext::VideoProcessorSetOutputBackgroundColor +
+ + +

Sets the output color space for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

A reference to a structure that specifies the color space.

+ hh447748 + void ID3D11VideoContext::VideoProcessorSetOutputColorSpace([In] ID3D11VideoProcessor* pVideoProcessor,[In] const D3D11_VIDEO_PROCESSOR_COLOR_SPACE* pColorSpace) + ID3D11VideoContext::VideoProcessorSetOutputColorSpace +
+ + +

Sets the alpha fill mode for data that the video processor writes to the render target.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The alpha fill mode, specified as a value.

+

The zero-based index of an input stream. This parameter is used if AlphaFillMode is D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM. Otherwise, the parameter is ignored.

+ +

To find out which fill modes the device supports, call the ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps method. If the driver reports the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL capability, the driver supports all of the fill modes. Otherwise, the AlphaFillMode parameter must be D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE.

The default fill mode is D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE.

+
+ hh447746 + void ID3D11VideoContext::VideoProcessorSetOutputAlphaFillMode([In] ID3D11VideoProcessor* pVideoProcessor,[In] D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE AlphaFillMode,[In] unsigned int StreamIndex) + ID3D11VideoContext::VideoProcessorSetOutputAlphaFillMode +
+ + +

Sets the amount of downsampling to perform on the output.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

If TRUE, downsampling is enabled. Otherwise, downsampling is disabled and the Size member is ignored.

+

The sampling size.

+ +

Downsampling is sometimes used to reduce the quality of premium content when other forms of content protection are not available. By default, downsampling is disabled.

If the Enable parameter is TRUE, the driver downsamples the composed image to the specified size, and then scales it back to the size of the target rectangle.

The width and height of Size must be greater than zero. If the size is larger than the target rectangle, downsampling does not occur.

To use this feature, the driver must support downsampling, indicated by the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION capability flag. To query for this capability, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps.

+
+ hh447749 + void ID3D11VideoContext::VideoProcessorSetOutputConstriction([In] ID3D11VideoProcessor* pVideoProcessor,[In] BOOL Enable,[In] SIZE Size) + ID3D11VideoContext::VideoProcessorSetOutputConstriction +
+ + +

Specifies whether the video processor produces stereo video frames.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

If TRUE, stereo output is enabled. Otherwise, the video processor produces mono video frames.

+ +

By default, the video processor produces mono video frames.

To use this feature, the driver must support stereo video, indicated by the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO capability flag. To query for this capability, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps.

+
+ hh447751 + void ID3D11VideoContext::VideoProcessorSetOutputStereoMode([In] ID3D11VideoProcessor* pVideoProcessor,[In] BOOL Enable) + ID3D11VideoContext::VideoProcessorSetOutputStereoMode +
+ + +

Sets a driver-specific video processing state.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

A reference to a that identifies the operation. The meaning of this is defined by the graphics driver.

+

The size of the pData buffer, in bytes.

+

A reference to a buffer that contains private state data. The method passes this buffer directly to the driver without validation. It is the responsibility of the driver to validate the data.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447750 + HRESULT ID3D11VideoContext::VideoProcessorSetOutputExtension([In] ID3D11VideoProcessor* pVideoProcessor,[In] const GUID* pExtensionGuid,[In] unsigned int DataSize,[In] void* pData) + ID3D11VideoContext::VideoProcessorSetOutputExtension +
+ + +

Gets the current target rectangle for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Receives the value TRUE if the target rectangle was explicitly set using the ID3D11VideoContext::VideoProcessorSetOutputTargetRect method. Receives the value if the target rectangle was disabled or was never set.

+

If Enabled receives the value TRUE, this parameter receives the target rectangle. Otherwise, this parameter is ignored.

+ hh447726 + void ID3D11VideoContext::VideoProcessorGetOutputTargetRect([In] ID3D11VideoProcessor* pVideoProcessor,[Out] BOOL* Enabled,[Out] RECT* pRect) + ID3D11VideoContext::VideoProcessorGetOutputTargetRect +
+ + +

Gets the current background color for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Receives the value TRUE if the background color is a YCbCr color, or if the background color is an RGB color.

+

A reference to a structure. The method fills in the structure with the background color.

+ hh447721 + void ID3D11VideoContext::VideoProcessorGetOutputBackgroundColor([In] ID3D11VideoProcessor* pVideoProcessor,[Out] BOOL* pYCbCr,[Out] D3D11_VIDEO_COLOR* pColor) + ID3D11VideoContext::VideoProcessorGetOutputBackgroundColor +
+ + +

Gets the current output color space for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

A reference to a structure. The method fills in the structure with the output color space.

+ hh447722 + void ID3D11VideoContext::VideoProcessorGetOutputColorSpace([In] ID3D11VideoProcessor* pVideoProcessor,[Out] D3D11_VIDEO_PROCESSOR_COLOR_SPACE* pColorSpace) + ID3D11VideoContext::VideoProcessorGetOutputColorSpace +
+ + +

Gets the current alpha fill mode for the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Receives the alpha fill mode, as a value.

+

If the alpha fill mode is D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM, this parameter receives the zero-based index of an input stream. The input stream provides the alpha values for the alpha fill.

+ hh447720 + void ID3D11VideoContext::VideoProcessorGetOutputAlphaFillMode([In] ID3D11VideoProcessor* pVideoProcessor,[Out] D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE* pAlphaFillMode,[Out] unsigned int* pStreamIndex) + ID3D11VideoContext::VideoProcessorGetOutputAlphaFillMode +
+ + +

Gets the current level of downsampling that is performed by the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Receives the value TRUE if downsampling was explicitly enabled using the ID3D11VideoContext::VideoProcessorSetOutputConstriction method. Receives the value if the downsampling was disabled or was never set.

+

If Enabled receives the value TRUE, this parameter receives the downsampling size. Otherwise, this parameter is ignored.

+ hh447723 + void ID3D11VideoContext::VideoProcessorGetOutputConstriction([In] ID3D11VideoProcessor* pVideoProcessor,[Out] BOOL* pEnabled,[Out] SIZE* pSize) + ID3D11VideoContext::VideoProcessorGetOutputConstriction +
+ + +

Queries whether the video processor produces stereo video frames.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

Receives the value TRUE if stereo output is enabled, or otherwise.

+ hh447725 + void ID3D11VideoContext::VideoProcessorGetOutputStereoMode([In] ID3D11VideoProcessor* pVideoProcessor,[Out] BOOL* pEnabled) + ID3D11VideoContext::VideoProcessorGetOutputStereoMode +
+ + +

Gets private state data from the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

A reference to a that identifies the state. The meaning of this is defined by the graphics driver.

+

The size of the pData buffer, in bytes.

+

A reference to a buffer that receives the private state data.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447724 + HRESULT ID3D11VideoContext::VideoProcessorGetOutputExtension([In] ID3D11VideoProcessor* pVideoProcessor,[In] const GUID* pExtensionGuid,[In] unsigned int DataSize,[Out, Buffer] void* pData) + ID3D11VideoContext::VideoProcessorGetOutputExtension +
+ + +

Specifies whether an input stream on the video processor contains interlaced or progressive frames.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

A value that specifies the interlacing.

+ hh447759 + void ID3D11VideoContext::VideoProcessorSetStreamFrameFormat([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] D3D11_VIDEO_FRAME_FORMAT FrameFormat) + ID3D11VideoContext::VideoProcessorSetStreamFrameFormat +
+ + +

Sets the color space for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

A reference to a structure that specifies the color space.

+ hh447755 + void ID3D11VideoContext::VideoProcessorSetStreamColorSpace([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] const D3D11_VIDEO_PROCESSOR_COLOR_SPACE* pColorSpace) + ID3D11VideoContext::VideoProcessorSetStreamColorSpace +
+ + +

Sets the rate at which the video processor produces output frames for an input stream.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

The output rate, specified as a value.

+

Specifies how the driver performs frame-rate conversion, if required.

ValueMeaning
TRUE

Repeat frames.

Interpolate frames.

?

+

A reference to a structure. If OutputRate is D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM, this parameter specifies the exact output rate. Otherwise, this parameter is ignored and can be null.

+ +

The standard output rates are normal frame-rate (D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL) and half frame-rate (D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF). In addition, the driver might support custom rates for rate conversion or inverse telecine. To get the list of custom rates, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCustomRate.

Depending on the output rate, the driver might need to convert the frame rate. If so, the value of RepeatFrame controls whether the driver creates interpolated frames or simply repeats input frames.

+
+ hh447761 + void ID3D11VideoContext::VideoProcessorSetStreamOutputRate([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] D3D11_VIDEO_PROCESSOR_OUTPUT_RATE OutputRate,[In] BOOL RepeatFrame,[In, Optional] const DXGI_RATIONAL* pCustomRate) + ID3D11VideoContext::VideoProcessorSetStreamOutputRate +
+ + +

Sets the source rectangle for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether to apply the source rectangle.

+

A reference to a structure that specifies the source rectangle. If Enable is , this parameter is ignored.

+ +

The source rectangle is the portion of the input surface that is blitted to the destination surface. The source rectangle is given in pixel coordinates, relative to the input surface.

If this method is never called, or if the Enable parameter is , the video processor reads from the entire input surface.

+
+ hh447764 + void ID3D11VideoContext::VideoProcessorSetStreamSourceRect([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In, Optional] const RECT* pRect) + ID3D11VideoContext::VideoProcessorSetStreamSourceRect +
+ + +

Sets the destination rectangle for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether to apply the destination rectangle.

+

A reference to a structure that specifies the destination rectangle. If Enable is , this parameter is ignored.

+ +

The destination rectangle is the portion of the output surface that receives the blit for this stream. The destination rectangle is given in pixel coordinates, relative to the output surface.

The default destination rectangle is an empty rectangle (0, 0, 0, 0). If this method is never called, or if the Enable parameter is , no data is written from this stream.

+
+ hh447756 + void ID3D11VideoContext::VideoProcessorSetStreamDestRect([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In, Optional] const RECT* pRect) + ID3D11VideoContext::VideoProcessorSetStreamDestRect +
+ + +

Sets the planar alpha for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether alpha blending is enabled.

+

The planar alpha value. The value can range from 0.0 (transparent) to 1.0 (opaque). If Enable is , this parameter is ignored.

+ +

To use this feature, the driver must support stereo video, indicated by the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALHPA_STREAM capability flag. To query for this capability, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps.

Alpha blending is disabled by default.

For each pixel, the destination color value is computed as follows:

Cd = Cs * (As * Ap * Ae) + Cd * (1.0 - As * Ap * Ae)

where:

  • Cd = The color value of the destination pixel
  • Cs = The color value of the source pixel
  • As = The per-pixel source alpha
  • Ap = The planar alpha value
  • Ae = The palette-entry alpha value, or 1.0 (see Note)
Note??Palette-entry alpha values apply only to palettized color formats, and only when the device supports the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE capability. Otherwise, this factor equals 1.0.?

The destination alpha value is computed according to the alpha fill mode. For more information, see ID3D11VideoContext::VideoProcessorSetOutputAlphaFillMode.

+
+ hh447753 + void ID3D11VideoContext::VideoProcessorSetStreamAlpha([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In] float Alpha) + ID3D11VideoContext::VideoProcessorSetStreamAlpha +
+ + +

Sets the color-palette entries for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

The number of elements in the pEntries array.

+

A reference to an array of palette entries. For RGB streams, the palette entries use the DXGI_FORMAT_B8G8R8A8 representation. For YCbCr streams, the palette entries use the DXGI_FORMAT_AYUV representation. The caller allocates the array.

+ +

This method applies only to input streams that have a palettized color format. Palettized formats with 4 bits per pixel (bpp) use the first 16 entries in the list. Formats with 8 bpp use the first 256 entries.

If a pixel has a palette index greater than the number of entries, the device treats the pixel as white with opaque alpha. For full-range RGB, this value is (255, 255, 255, 255); for YCbCr the value is (255, 235, 128, 128).

If the driver does not report the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE capability flag, every palette entry must have an alpha value of 0xFF (opaque). To query for this capability, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps.

+
+ hh447762 + void ID3D11VideoContext::VideoProcessorSetStreamPalette([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] unsigned int Count,[In, Buffer, Optional] const unsigned int* pEntries) + ID3D11VideoContext::VideoProcessorSetStreamPalette +
+ + +

Sets the pixel aspect ratio for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether the pSourceAspectRatio and pDestinationAspectRatio parameters contain valid values. Otherwise, the pixel aspect ratios are unspecified.

+

A reference to a structure that contains the pixel aspect ratio of the source rectangle. If Enable is , this parameter can be null.

+

A reference to a structure that contains the pixel aspect ratio of the destination rectangle. If Enable is , this parameter can be null.

+ +

This function can only be called if the driver reports the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO capability. If this capability is not set, this function will have no effect.

Pixel aspect ratios of the form 0/n and n/0 are not valid.

The default pixel aspect ratio is 1:1 (square pixels).

+
+ hh447763 + void ID3D11VideoContext::VideoProcessorSetStreamPixelAspectRatio([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In, Optional] const DXGI_RATIONAL* pSourceAspectRatio,[In, Optional] const DXGI_RATIONAL* pDestinationAspectRatio) + ID3D11VideoContext::VideoProcessorSetStreamPixelAspectRatio +
+ + +

Sets the luma key for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether luma keying is enabled.

+

The lower bound for the luma key. The valid range is [0?1]. If Enable is , this parameter is ignored.

+

The upper bound for the luma key. The valid range is [0?1]. If Enable is , this parameter is ignored.

+ +

To use this feature, the driver must support luma keying, indicated by the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY capability flag. To query for this capability, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps. In addition, if the input format is RGB, the device must support the D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY capability.

The values of Lower and Upper give the lower and upper bounds of the luma key, using a nominal range of [0...1]. Given a format with n bits per channel, these values are converted to luma values as follows:

val = f * ((1 < < n)-1)

Any pixel whose luma value falls within the upper and lower bounds (inclusive) is treated as transparent.

For example, if the pixel format uses 8-bit luma, the upper bound is calculated as follows:

BYTE Y = BYTE(max(min(1.0, Upper), 0.0) * 255.0)

Note that the value is clamped to the range [0...1] before multiplying by 255.

+
+ hh447760 + void ID3D11VideoContext::VideoProcessorSetStreamLumaKey([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In] float Lower,[In] float Upper) + ID3D11VideoContext::VideoProcessorSetStreamLumaKey +
+ + +

Enables or disables stereo 3D video for an input stream on the video processor. In addition, this method specifies the layout of the video frames in memory.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies whether stereo 3D is enabled for this stream. If the value is , the remaining parameters of this method are ignored.

+

Specifies the layout of the two stereo views in memory, as a value.

+

If TRUE, frame 0 contains the left view. Otherwise, frame 0 contains the right view.

This parameter is ignored for the following stereo formats:

  • D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO
  • D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET
+

If TRUE, frame 0 contains the base view. Otherwise, frame 1 contains the base view.

This parameter is ignored for the following stereo formats:

  • D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO
  • D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET
  • When D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE is used and the application wants to convert the stereo data to mono, it can either:
    • Specify the base view as a mono input.
    • Specify both resources and allow the driver to do the conversion from the base view. In this case, .hInputSurface is considered frame 0 and .hInputSurfaceRight is considered frame 1.
+

A flag from the enumeration, specifying whether one of the views is flipped.

+

For D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET format, this parameter specifies how to generate the left and right views:

  • If MonoOffset is positive, the right view is shifted to the right by that many pixels, and the left view is shifted to the left by the same amount.
  • If MonoOffset is negative, the right view is shifted to the left by that many pixels, and the left view is shifted to right by the same amount.

If Format is not D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET, this parameter must be zero.

+ hh447765 + void ID3D11VideoContext::VideoProcessorSetStreamStereoFormat([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In] D3D11_VIDEO_PROCESSOR_STEREO_FORMAT Format,[In] BOOL LeftViewFrame0,[In] BOOL BaseViewFrame0,[In] D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE FlipMode,[In] int MonoOffset) + ID3D11VideoContext::VideoProcessorSetStreamStereoFormat +
+ + +

Enables or disables automatic processing features on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

If TRUE, automatic processing features are enabled. If , the driver disables any extra video processing that it might be performing.

+ +

By default, the driver might perform certain processing tasks automatically during the video processor blit. This method enables the application to disable these extra video processing features. For example, if you provide your own pixel shader for the video processor, you might want to disable the driver's automatic processing.

+
+ hh447754 + void ID3D11VideoContext::VideoProcessorSetStreamAutoProcessingMode([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable) + ID3D11VideoContext::VideoProcessorSetStreamAutoProcessingMode +
+ + +

Enables or disables an image filter for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

The filter, specified as a value.

To query which filters the driver supports, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps.

+

Specifies whether to enable the filter.

+

The filter level. If Enable is , this parameter is ignored.

To find the valid range of levels for a specified filter, call ID3D11VideoProcessorEnumerator::GetVideoProcessorFilterRange.

+ hh447758 + void ID3D11VideoContext::VideoProcessorSetStreamFilter([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] D3D11_VIDEO_PROCESSOR_FILTER Filter,[In] BOOL Enable,[In] int Level) + ID3D11VideoContext::VideoProcessorSetStreamFilter +
+ + +

Sets a driver-specific state on a video processing stream.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

A reference to a that identifies the operation. The meaning of this is defined by the graphics driver.

+

The size of the pData buffer, in bytes.

+

A reference to a buffer that contains private state data. The method passes this buffer directly to the driver without validation. It is the responsibility of the driver to validate the data.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447757 + HRESULT ID3D11VideoContext::VideoProcessorSetStreamExtension([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] const GUID* pExtensionGuid,[In] unsigned int DataSize,[In] void* pData) + ID3D11VideoContext::VideoProcessorSetStreamExtension +
+ + +

Gets the format of an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives a value that specifies whether the stream contains interlaced or progressive frames.

+ hh447739 + void ID3D11VideoContext::VideoProcessorGetStreamFrameFormat([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] D3D11_VIDEO_FRAME_FORMAT* pFrameFormat) + ID3D11VideoContext::VideoProcessorGetStreamFrameFormat +
+ + +

Gets the color space for an input stream of the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives a value that specifies the color space.

+ hh447731 + void ID3D11VideoContext::VideoProcessorGetStreamColorSpace([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] D3D11_VIDEO_PROCESSOR_COLOR_SPACE* pColorSpace) + ID3D11VideoContext::VideoProcessorGetStreamColorSpace +
+ + +

Gets the rate at which the video processor produces output frames for an input stream.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives a value that specifies the output rate.

+

Receives a Boolean value that specifies how the driver performs frame-rate conversion, if required.

ValueMeaning
TRUE

Repeat frames.

Interpolate frames.

?

+

A reference to a structure. If the output rate is D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM, the method fills in this structure with the exact output rate. Otherwise, this parameter is ignored.

+ hh447741 + void ID3D11VideoContext::VideoProcessorGetStreamOutputRate([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] D3D11_VIDEO_PROCESSOR_OUTPUT_RATE* pOutputRate,[Out] BOOL* pRepeatFrame,[Out] DXGI_RATIONAL* pCustomRate) + ID3D11VideoContext::VideoProcessorGetStreamOutputRate +
+ + +

Gets the source rectangle for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if the source rectangle is enabled, or otherwise.

+

A reference to a structure that receives the source rectangle.

+ hh447744 + void ID3D11VideoContext::VideoProcessorGetStreamSourceRect([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled,[Out] RECT* pRect) + ID3D11VideoContext::VideoProcessorGetStreamSourceRect +
+ + +

Gets the destination rectangle for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if the destination rectangle is enabled, or otherwise.

+

A reference to a structure that receives the destination rectangle.

+ hh447733 + void ID3D11VideoContext::VideoProcessorGetStreamDestRect([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled,[Out] RECT* pRect) + ID3D11VideoContext::VideoProcessorGetStreamDestRect +
+ + +

Gets the planar alpha for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if planar alpha is enabled, or otherwise.

+

Receives the planar alpha value. The value can range from 0.0 (transparent) to 1.0 (opaque).

+ hh447727 + void ID3D11VideoContext::VideoProcessorGetStreamAlpha([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled,[Out] float* pAlpha) + ID3D11VideoContext::VideoProcessorGetStreamAlpha +
+ + +

Gets the color-palette entries for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

The number of entries in the pEntries array.

+

A reference to a UINT array allocated by the caller. The method fills the array with the palette entries. For RGB streams, the palette entries use the DXGI_FORMAT_B8G8R8A8 representation. For YCbCr streams, the palette entries use the DXGI_FORMAT_AYUV representation.

+ +

This method applies only to input streams that have a palettized color format. Palettized formats with 4 bits per pixel (bpp) use 16 palette entries. Formats with 8 bpp use 256 entries.

+
+ hh447742 + void ID3D11VideoContext::VideoProcessorGetStreamPalette([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] unsigned int Count,[Out, Buffer] unsigned int* pEntries) + ID3D11VideoContext::VideoProcessorGetStreamPalette +
+ + +

Gets the pixel aspect ratio for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if the pixel aspect ratio is specified. Otherwise, receives the value .

+

A reference to a structure. If *pEnabled is TRUE, this parameter receives the pixel aspect ratio of the source rectangle.

+

A reference to a structure. If *pEnabled is TRUE, this parameter receives the pixel aspect ratio of the destination rectangle.

+ +

When the method returns, if *pEnabled is TRUE, the pSourceAspectRatio and pDestinationAspectRatio parameters contain the pixel aspect ratios. Otherwise, the default pixel aspect ratio is 1:1 (square pixels).

+
+ hh447743 + void ID3D11VideoContext::VideoProcessorGetStreamPixelAspectRatio([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled,[Out] DXGI_RATIONAL* pSourceAspectRatio,[Out] DXGI_RATIONAL* pDestinationAspectRatio) + ID3D11VideoContext::VideoProcessorGetStreamPixelAspectRatio +
+ + +

Gets the luma key for an input stream of the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if luma keying is enabled, or otherwise.

+

Receives the lower bound for the luma key. The valid range is [0?1].

+

Receives the upper bound for the luma key. The valid range is [0?1].

+ hh447740 + void ID3D11VideoContext::VideoProcessorGetStreamLumaKey([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled,[Out] float* pLower,[Out] float* pUpper) + ID3D11VideoContext::VideoProcessorGetStreamLumaKey +
+ + +

Gets the stereo 3D format for an input stream on the video processor

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if stereo 3D is enabled for this stream, or otherwise. If the value is , ignore the remaining parameters.

+

Receives a value that specifies the layout of the two stereo views in memory.

+

Receives a Boolean value.

ValueMeaning
TRUE

Frame 0 contains the left view.

Frame 0 contains the right view.

?

+

Receives a Boolean value.

ValueMeaning
TRUE

Frame 0 contains the base view.

Frame 1 contains the base view.

?

+

Receives a value. This value specifies whether one of the views is flipped.

+

Receives the pixel offset used for D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET format. This parameter is ignored for other stereo formats.

+ hh447745 + void ID3D11VideoContext::VideoProcessorGetStreamStereoFormat([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnable,[Out] D3D11_VIDEO_PROCESSOR_STEREO_FORMAT* pFormat,[Out] BOOL* pLeftViewFrame0,[Out] BOOL* pBaseViewFrame0,[Out] D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE* pFlipMode,[Out] int* MonoOffset) + ID3D11VideoContext::VideoProcessorGetStreamStereoFormat +
+ + +

Queries whether automatic processing features of the video processor are enabled.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Receives the value TRUE if automatic processing features are enabled, or otherwise.

+ +

Automatic processing refers to additional image processing that drivers might have performed on the image data prior to the application receiving the data.

+
+ hh447729 + void ID3D11VideoContext::VideoProcessorGetStreamAutoProcessingMode([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnabled) + ID3D11VideoContext::VideoProcessorGetStreamAutoProcessingMode +
+ + +

Gets the image filter settings for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

The filter to query, specified as a value.

+

Receives the value TRUE if the image filter is enabled, or otherwise.

+

Receives the filter level.

+ hh447737 + void ID3D11VideoContext::VideoProcessorGetStreamFilter([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] D3D11_VIDEO_PROCESSOR_FILTER Filter,[Out] BOOL* pEnabled,[Out] int* pLevel) + ID3D11VideoContext::VideoProcessorGetStreamFilter +
+ + +

Gets a driver-specific state for a video processing stream.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

A reference to a that identifies the state. The meaning of this is defined by the graphics driver.

+

The size of the pData buffer, in bytes.

+

A reference to a buffer that receives the private state data.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447735 + HRESULT ID3D11VideoContext::VideoProcessorGetStreamExtension([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] const GUID* pExtensionGuid,[In] unsigned int DataSize,[Out, Buffer] void* pData) + ID3D11VideoContext::VideoProcessorGetStreamExtension +
+ + +

Performs a video processing operation on one or more input samples and writes the result to a Direct3D surface.

+
+

A reference to the interface. To get this reference, call the ID3D11VideoDevice::CreateVideoProcessor method.

+

A reference to the interface for the output surface. The output of the video processing operation will be written to this surface.

+

The frame number of the output video frame, indexed from zero.

+

The number of input streams to process.

+

A reference to an array of structures that contain information about the input streams. The caller allocates the array and fills in each structure. The number of elements in the array is given in the StreamCount parameter.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The maximum value of StreamCount is given in the MaxStreamStates member of the structure. The maximum number of streams that can be enabled at one time is given in the MaxInputStreams member of that structure.

If the output stereo mode is TRUE:

  • The output view must contain a texture array of two elements.
  • At least one stereo stream must be specified.
  • If multiple input streams are enabled, it is possible that one or more of the input streams may contain mono data.

Otherwise:

  • The output view must contain a single element.
  • The stereo format cannot be D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO .

This function does not honor a D3D11 predicate that may have been set.

If the application uses D3D11 quries, this function may not be accounted for with D3D11_QUERY_EVENT and D3D11_QUERY_TIMESTAMP when using feature levels lower than 11. D3D11_QUERY_PIPELINE_STATISTICS will not include this function for any feature level.

+
+ hh447719 + HRESULT ID3D11VideoContext::VideoProcessorBlt([In] ID3D11VideoProcessor* pVideoProcessor,[In] ID3D11VideoProcessorOutputView* pView,[In] unsigned int OutputFrame,[In] unsigned int StreamCount,[In, Buffer] const D3D11_VIDEO_PROCESSOR_STREAM* pStreams) + ID3D11VideoContext::VideoProcessorBlt +
+ + +

Establishes the session key for a cryptographic session.

+
+

A reference to the interface of the cryptographic session.

+

The size of the pData byte array, in bytes.

+

A reference to a byte array that contains the encrypted session key.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The key exchange mechanism depends on the type of cryptographic session.

For RSA Encryption Scheme - Optimal Asymmetric Encryption Padding (RSAES-OAEP), the software decoder generates the secret key, encrypts the secret key by using the public key with RSAES-OAEP, and places the cipher text in the pData parameter. The actual size of the buffer for RSAES-OAEP is 256 bytes.

+
+ hh447714 + HRESULT ID3D11VideoContext::NegotiateCryptoSessionKeyExchange([In] ID3D11CryptoSession* pCryptoSession,[In] unsigned int DataSize,[Out, Buffer] void* pData) + ID3D11VideoContext::NegotiateCryptoSessionKeyExchange +
+ + +

Reads encrypted data from a protected surface.

+
+

A reference to the interface of the cryptographic session.

+

A reference to the interface of the protected surface.

+

A reference to the interface of the surface that receives the encrypted data.

+

The size of the pIV buffer, in bytes.

+

A reference to a buffer that receives the initialization vector (IV). The caller allocates this buffer, but the driver generates the IV.

For 128-bit AES-CTR encryption, pIV points to a structure. When the driver generates the first IV, it initializes the structure to a random number. For each subsequent IV, the driver simply increments the IV member of the structure, ensuring that the value always increases. The application can validate that the same IV is never used more than once with the same key pair.

+ +

Not all drivers support this method. To query the driver capabilities, call ID3D11VideoDevice::GetContentProtectionCaps and check for the D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK flag in the Caps member of the structure.

Some drivers might require a separate key to decrypt the data that is read back. To check for this requirement, call GetContentProtectionCaps and check for the D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY flag. If this flag is present, call ID3D11VideoContext::GetEncryptionBltKey to get the decryption key.

This method has the following limitations:

  • Reading back sub-rectangles is not supported.
  • Reading back partially encrypted surfaces is not supported.
  • The protected surface must be either an off-screen plain surface or a render target.
  • The destination surface must be a D3D11_USAGE_STAGING resource.
  • The protected surface cannot be multisampled.
  • Stretching and colorspace conversion are not supported.

This function does not honor a D3D11 predicate that may have been set.

If the application uses D3D11 quries, this function may not be accounted for with D3D11_QUERY_EVENT and D3D11_QUERY_TIMESTAMP when using feature levels lower than 11. D3D11_QUERY_PIPELINE_STATISTICS will not include this function for any feature level.

+
+ hh447709 + void ID3D11VideoContext::EncryptionBlt([In] ID3D11CryptoSession* pCryptoSession,[In] ID3D11Texture2D* pSrcSurface,[In] ID3D11Texture2D* pDstSurface,[In] unsigned int IVSize,[InOut, Buffer, Optional] void* pIV) + ID3D11VideoContext::EncryptionBlt +
+ + +

Writes encrypted data to a protected surface.

+
+

A reference to the interface.

+

A reference to the surface that contains the source data.

+

A reference to the protected surface where the encrypted data is written.

+

A reference to a structure, or null.

If the driver supports partially encrypted buffers, pEncryptedBlockInfo indicates which portions of the buffer are encrypted. If the entire surface is encrypted, set this parameter to null.

To check whether the driver supports partially encrypted buffers, call ID3D11VideoDevice::GetContentProtectionCaps and check for the D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION capabilities flag. If the driver does not support partially encrypted buffers, set this parameter to null.

+

The size of the encrypted content key, in bytes.

+

A reference to a buffer that contains a content encryption key, or null. To query whether the driver supports the use of content keys, call ID3D11VideoDevice::GetContentProtectionCaps and check for the D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY capabilities flag.

If the driver supports content keys, use the content key to encrypt the surface. Encrypt the content key using the session key, and place the resulting cipher text in pContentKey. If the driver does not support content keys, use the session key to encrypt the surface and set pContentKey to null.

+

The size of the pIV buffer, in bytes.

+

A reference to a buffer that contains the initialization vector (IV).

For 128-bit AES-CTR encryption, pIV points to a structure. The caller allocates the structure and generates the IV. When you generate the first IV, initialize the structure to a random number. For each subsequent IV, simply increment the IV member of the structure, ensuring that the value always increases. This procedure enables the driver to validate that the same IV is never used more than once with the same key pair.

For other encryption types, a different structure might be used, or the encryption might not use an IV.

+ +

Not all hardware or drivers support this functionality for all cryptographic types. This function can only be called when the D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT cap is reported.

This method does not support writing to sub-rectangles of the surface.

If the hardware and driver support a content key:

  • The data is encrypted by the caller using the content key.
  • The content key is encrypted by the caller using the session key.
  • The encrypted content key is passed to the driver.

Otherwise, the data is encrypted by the caller using the session key and null is passed as the content key.

If the driver and hardware support partially encrypted buffers, pEncryptedBlockInfo indicates which portions of the buffer are encrypted and which is not. If the entire buffer is encrypted, pEncryptedBlockinfo should be null.

The allows the application to indicate which bytes in the buffer are encrypted. This is specified in bytes, so the application must ensure that the encrypted blocks match the GPU?s crypto block alignment.

This function does not honor a D3D11 predicate that may have been set.

If the application uses D3D11 quries, this function may not be accounted for with D3D11_QUERY_EVENT and D3D11_QUERY_TIMESTAMP when using feature levels lower than 11. D3D11_QUERY_PIPELINE_STATISTICS will not include this function for any feature level.

+
+ hh447708 + void ID3D11VideoContext::DecryptionBlt([In] ID3D11CryptoSession* pCryptoSession,[In] ID3D11Texture2D* pSrcSurface,[In] ID3D11Texture2D* pDstSurface,[In, Optional] D3D11_ENCRYPTED_BLOCK_INFO* pEncryptedBlockInfo,[In] unsigned int ContentKeySize,[In, Buffer, Optional] const void* pContentKey,[In] unsigned int IVSize,[InOut, Buffer, Optional] void* pIV) + ID3D11VideoContext::DecryptionBlt +
+ + +

Gets a random number that can be used to refresh the session key.

+
+

A reference to the interface.

+

The size of the pRandomNumber array, in bytes. The size should match the size of the session key.

+

A reference to a byte array that receives a random number.

+ +

To generate a new session key, perform a bitwise XOR between the previous session key and the random number. The new session key does not take affect until the application calls ID3D11VideoContext::FinishSessionKeyRefresh.

To query whether the driver supports this method, call ID3D11VideoDevice::GetContentProtectionCaps and check for the D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY capabilities flag.

+
+ hh447717 + void ID3D11VideoContext::StartSessionKeyRefresh([In] ID3D11CryptoSession* pCryptoSession,[In] unsigned int RandomNumberSize,[Out, Buffer] void* pRandomNumber) + ID3D11VideoContext::StartSessionKeyRefresh +
+ + +

Switches to a new session key.

+
+

A reference to the interface.

+ +

This function can only be called when the D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY cap is reported.

Before calling this method, call ID3D11VideoContext::StartSessionKeyRefresh. The StartSessionKeyRefresh method gets a random number from the driver, which is used to create a new session key. The new session key does not become active until the application calls FinishSessionKeyRefresh. After the application calls FinishSessionKeyRefresh, all protected surfaces are encrypted using the new session key.

+
+ hh447710 + void ID3D11VideoContext::FinishSessionKeyRefresh([In] ID3D11CryptoSession* pCryptoSession) + ID3D11VideoContext::FinishSessionKeyRefresh +
+ + +

Gets the cryptographic key to decrypt the data returned by the ID3D11VideoContext::EncryptionBlt method.

+
+ No documentation. + No documentation. + No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This method applies only when the driver requires a separate content key for the EncryptionBlt method. For more information, see the Remarks for EncryptionBlt.

Each time this method is called, the driver generates a new key.

The KeySize should match the size of the session key.

The read back key is encrypted by the driver/hardware using the session key.

+
+ hh447712 + HRESULT ID3D11VideoContext::GetEncryptionBltKey([In] ID3D11CryptoSession* pCryptoSession,[In] unsigned int KeySize,[Out, Buffer] void* pReadbackKey) + ID3D11VideoContext::GetEncryptionBltKey +
+ + +

Establishes a session key for an authenticated channel.

+
+

A reference to the interface. This method will fail if the channel type is D3D11_AUTHENTICATED_CHANNEL_D3D11, because the Direct3D11 channel does not support authentication.

+

The size of the data in the pData array, in bytes.

+

A reference to a byte array that contains the encrypted session key. The buffer must contain 256 bytes of data, encrypted using RSA Encryption Scheme - Optimal Asymmetric Encryption Padding (RSAES-OAEP).

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This method will fail if the channel type is D3D11_AUTHENTICATED_CHANNEL_D3D11, because the Direct3D11 channel does not support authentication.

+
+ hh447713 + HRESULT ID3D11VideoContext::NegotiateAuthenticatedChannelKeyExchange([In] ID3D11AuthenticatedChannel* pChannel,[In] unsigned int DataSize,[Out, Buffer] void* pData) + ID3D11VideoContext::NegotiateAuthenticatedChannelKeyExchange +
+ + +

Sends a query to an authenticated channel.

+
+

A reference to the interface.

+

The size of the pInput array, in bytes.

+

A reference to a byte array that contains input data for the query. This array always starts with a structure. The QueryType member of the structure specifies the query and defines the meaning of the rest of the array.

+

The size of the pOutput array, in bytes.

+

A reference to a byte array that receives the result of the query. This array always starts with a structure. The meaning of the rest of the array depends on the query.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447715 + HRESULT ID3D11VideoContext::QueryAuthenticatedChannel([In] ID3D11AuthenticatedChannel* pChannel,[In] unsigned int InputSize,[In, Buffer] const void* pInput,[In] unsigned int OutputSize,[Out, Buffer] void* pOutput) + ID3D11VideoContext::QueryAuthenticatedChannel +
+ + +

Sends a configuration command to an authenticated channel.

+
+

A reference to the interface.

+

The size of the pInput array, in bytes.

+

A reference to a byte array that contains input data for the command. This buffer always starts with a structure. The ConfigureType member of the structure specifies the command and defines the meaning of the rest of the buffer.

+

A reference to a structure that receives the response to the command.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447704 + HRESULT ID3D11VideoContext::ConfigureAuthenticatedChannel([In] ID3D11AuthenticatedChannel* pChannel,[In] unsigned int InputSize,[In, Buffer] const void* pInput,[Out] D3D11_AUTHENTICATED_CONFIGURE_OUTPUT* pOutput) + ID3D11VideoContext::ConfigureAuthenticatedChannel +
+ + +

Sets the stream rotation for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies if the stream is to be rotated in a clockwise orientation.

+

Specifies the rotation of the stream.

+ +

This is an optional state and the application should only use it if D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION is reported in .FeatureCaps.

The stream source rectangle will be specified in the pre-rotation coordinates (typically landscape) and the stream destination rectangle will be specified in the post-rotation coordinates (typically portrait). The application must update the stream destination rectangle correctly when using a rotation value other than 0? and 180?.

+
+ jj160517 + void ID3D11VideoContext::VideoProcessorSetStreamRotation([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In] D3D11_VIDEO_PROCESSOR_ROTATION Rotation) + ID3D11VideoContext::VideoProcessorSetStreamRotation +
+ + +

Gets the stream rotation for an input stream on the video processor.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessor.

+

The zero-based index of the input stream. To get the maximum number of streams, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the MaxStreamStates structure member.

+

Specifies if the stream is rotated.

+

Specifies the rotation of the stream in a clockwise orientation.

+ jj160516 + void ID3D11VideoContext::VideoProcessorGetStreamRotation([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnable,[Out] D3D11_VIDEO_PROCESSOR_ROTATION* pRotation) + ID3D11VideoContext::VideoProcessorGetStreamRotation +
+ + + No documentation. + + ff476084 + D3D11_ASYNC_GETDATA_DONOTFLUSH + D3D11_ASYNC_GETDATA_DONOTFLUSH + + + + None + + None + None + + + +

Specifies the type of Microsoft Direct3D authenticated channel.

+
+ hh447599 + D3D11_AUTHENTICATED_CHANNEL_TYPE + D3D11_AUTHENTICATED_CHANNEL_TYPE +
+ + +

Direct3D?11 channel. This channel provides communication with the Direct3D runtime.

+
+ hh447599 + D3D11_AUTHENTICATED_CHANNEL_D3D11 + D3D11_AUTHENTICATED_CHANNEL_D3D11 +
+ + +

Software driver channel. This channel provides communication with a driver that implements content protection mechanisms in software.

+
+ hh447599 + D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE + D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE +
+ + +

Hardware driver channel. This channel provides communication with a driver that implements content protection mechanisms in the GPU hardware.

+
+ hh447599 + D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE + D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE +
+ + +

Specifies the type of process that is identified in the structure.

+
+ hh447606 + D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE + D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE +
+ + + No documentation. + + hh447606 + D3D11_PROCESSIDTYPE_UNKNOWN + D3D11_PROCESSIDTYPE_UNKNOWN + + + + No documentation. + + hh447606 + D3D11_PROCESSIDTYPE_DWM + D3D11_PROCESSIDTYPE_DWM + + + + No documentation. + + hh447606 + D3D11_PROCESSIDTYPE_HANDLE + D3D11_PROCESSIDTYPE_HANDLE + + + +

Bind a buffer as a vertex buffer to the input-assembler stage.

+
+ ff476085 + D3D11_BIND_VERTEX_BUFFER + D3D11_BIND_VERTEX_BUFFER +
+ + +

Bind a buffer as an index buffer to the input-assembler stage.

+
+ ff476085 + D3D11_BIND_INDEX_BUFFER + D3D11_BIND_INDEX_BUFFER +
+ + +

Bind a buffer as a constant buffer to a shader stage; this flag may NOT be combined with any other bind flag.

+
+ ff476085 + D3D11_BIND_CONSTANT_BUFFER + D3D11_BIND_CONSTANT_BUFFER +
+ + +

Bind a buffer or texture to a shader stage; this flag cannot be used with the D3D11_MAP_WRITE_NO_OVERWRITE flag.

Note??The Direct3D 11.1 runtime, which is available starting with Windows?8, enables mapping dynamic constant buffers and shader resource views (SRVs) of dynamic buffers with D3D11_MAP_WRITE_NO_OVERWRITE. The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers. To determine if a Direct3D device supports these features, call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS. CheckFeatureSupport fills members of a structure with the device's features. The relevant members here are MapNoOverwriteOnDynamicConstantBuffer and MapNoOverwriteOnDynamicBufferSRV. ?
+
+ ff476085 + D3D11_BIND_SHADER_RESOURCE + D3D11_BIND_SHADER_RESOURCE +
+ + +

Bind an output buffer for the stream-output stage.

+
+ ff476085 + D3D11_BIND_STREAM_OUTPUT + D3D11_BIND_STREAM_OUTPUT +
+ + +

Bind a texture as a render target for the output-merger stage.

+
+ ff476085 + D3D11_BIND_RENDER_TARGET + D3D11_BIND_RENDER_TARGET +
+ + +

Bind a texture as a depth-stencil target for the output-merger stage.

+
+ ff476085 + D3D11_BIND_DEPTH_STENCIL + D3D11_BIND_DEPTH_STENCIL +
+ + +

Bind an unordered access resource.

+
+ ff476085 + D3D11_BIND_UNORDERED_ACCESS + D3D11_BIND_UNORDERED_ACCESS +
+ + +

Set this flag to indicate that a 2D texture is used to receive output from the decoder API. The common way to create resources for a decoder output is by calling the ID3D11Device::CreateTexture2D method to create an array of 2D textures. However, you cannot use texture arrays that are created with this flag in calls to ID3D11Device::CreateShaderResourceView.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476085 + D3D11_BIND_DECODER + D3D11_BIND_DECODER +
+ + +

Set this flag to indicate that a 2D texture is used to receive input from the video encoder API. The common way to create resources for a video encoder is by calling the ID3D11Device::CreateTexture2D method to create an array of 2D textures. However, you cannot use texture arrays that are created with this flag in calls to ID3D11Device::CreateShaderResourceView.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476085 + D3D11_BIND_VIDEO_ENCODER + D3D11_BIND_VIDEO_ENCODER +
+ + + None + + None + None + + + +

RGB or alpha blending operation.

+
+ +

The runtime implements RGB blending and alpha blending separately. Therefore, blend state requires separate blend operations for RGB data and alpha data. These blend operations are specified in a blend description. The two sources ?source 1 and source 2? are shown in the blending block diagram.

Blend state is used by the output-merger stage to determine how to blend together two RGB pixel values and two alpha values. The two RGB pixel values and two alpha values are the RGB pixel value and alpha value that the pixel shader outputs and the RGB pixel value and alpha value already in the output render target. The blend option controls the data source that the blending stage uses to modulate values for the pixel shader, render target, or both. The blend operation controls how the blending stage mathematically combines these modulated values.

+
+ ff476088 + D3D11_BLEND_OP + D3D11_BLEND_OP +
+ + +

Add source 1 and source 2.

+
+ ff476088 + D3D11_BLEND_OP_ADD + D3D11_BLEND_OP_ADD +
+ + +

Subtract source 1 from source 2.

+
+ ff476088 + D3D11_BLEND_OP_SUBTRACT + D3D11_BLEND_OP_SUBTRACT +
+ + +

Subtract source 2 from source 1.

+
+ ff476088 + D3D11_BLEND_OP_REV_SUBTRACT + D3D11_BLEND_OP_REV_SUBTRACT +
+ + +

Find the minimum of source 1 and source 2.

+
+ ff476088 + D3D11_BLEND_OP_MIN + D3D11_BLEND_OP_MIN +
+ + +

Find the maximum of source 1 and source 2.

+
+ ff476088 + D3D11_BLEND_OP_MAX + D3D11_BLEND_OP_MAX +
+ + +

Blend factors, which modulate values for the pixel shader and render target.

+
+ +

Blend operations are specified in a blend description.

+
+ ff476086 + D3D11_BLEND + D3D11_BLEND +
+ + +

The blend factor is (0, 0, 0, 0). No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_ZERO + D3D11_BLEND_ZERO +
+ + +

The blend factor is (1, 1, 1, 1). No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_ONE + D3D11_BLEND_ONE +
+ + +

The blend factor is (R?, G?, B?, A?), that is color data (RGB) from a pixel shader. No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_SRC_COLOR + D3D11_BLEND_SRC_COLOR +
+ + +

The blend factor is (1 - R?, 1 - G?, 1 - B?, 1 - A?), that is color data (RGB) from a pixel shader. The pre-blend operation inverts the data, generating 1 - RGB.

+
+ ff476086 + D3D11_BLEND_INV_SRC_COLOR + D3D11_BLEND_INV_SRC_COLOR +
+ + +

The blend factor is (A?, A?, A?, A?), that is alpha data (A) from a pixel shader. No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_SRC_ALPHA + D3D11_BLEND_SRC_ALPHA +
+ + +

The blend factor is ( 1 - A?, 1 - A?, 1 - A?, 1 - A?), that is alpha data (A) from a pixel shader. The pre-blend operation inverts the data, generating 1 - A.

+
+ ff476086 + D3D11_BLEND_INV_SRC_ALPHA + D3D11_BLEND_INV_SRC_ALPHA +
+ + +

The blend factor is (Ad Ad Ad Ad), that is alpha data from a render target. No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_DEST_ALPHA + D3D11_BLEND_DEST_ALPHA +
+ + +

The blend factor is (1 - Ad 1 - Ad 1 - Ad 1 - Ad), that is alpha data from a render target. The pre-blend operation inverts the data, generating 1 - A.

+
+ ff476086 + D3D11_BLEND_INV_DEST_ALPHA + D3D11_BLEND_INV_DEST_ALPHA +
+ + +

The blend factor is (Rd, Gd, Bd, Ad), that is color data from a render target. No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_DEST_COLOR + D3D11_BLEND_DEST_COLOR +
+ + +

The blend factor is (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad), that is color data from a render target. The pre-blend operation inverts the data, generating 1 - RGB.

+
+ ff476086 + D3D11_BLEND_INV_DEST_COLOR + D3D11_BLEND_INV_DEST_COLOR +
+ + +

The blend factor is (f, f, f, 1); where f = min(A?, 1 - Ad). The pre-blend operation clamps the data to 1 or less. +

+
+ ff476086 + D3D11_BLEND_SRC_ALPHA_SAT + D3D11_BLEND_SRC_ALPHA_SAT +
+ + +

The blend factor is the blend factor set with ID3D11DeviceContext::OMSetBlendState. No pre-blend operation.

+
+ ff476086 + D3D11_BLEND_BLEND_FACTOR + D3D11_BLEND_BLEND_FACTOR +
+ + +

The blend factor is the blend factor set with ID3D11DeviceContext::OMSetBlendState. The pre-blend operation inverts the blend factor, generating 1 - blend_factor.

+
+ ff476086 + D3D11_BLEND_INV_BLEND_FACTOR + D3D11_BLEND_INV_BLEND_FACTOR +
+ + +

The blend factor is data sources both as color data output by a pixel shader. There is no pre-blend operation. This blend factor supports dual-source color blending.

+
+ ff476086 + D3D11_BLEND_SRC1_COLOR + D3D11_BLEND_SRC1_COLOR +
+ + +

The blend factor is data sources both as color data output by a pixel shader. The pre-blend operation inverts the data, generating 1 - RGB. This blend factor supports dual-source color blending.

+
+ ff476086 + D3D11_BLEND_INV_SRC1_COLOR + D3D11_BLEND_INV_SRC1_COLOR +
+ + +

The blend factor is data sources as alpha data output by a pixel shader. There is no pre-blend operation. This blend factor supports dual-source color blending.

+
+ ff476086 + D3D11_BLEND_SRC1_ALPHA + D3D11_BLEND_SRC1_ALPHA +
+ + +

The blend factor is data sources as alpha data output by a pixel shader. The pre-blend operation inverts the data, generating 1 - A. This blend factor supports dual-source color blending.

+
+ ff476086 + D3D11_BLEND_INV_SRC1_ALPHA + D3D11_BLEND_INV_SRC1_ALPHA +
+ + +

Specifies the type of I/O bus that is used by the graphics adapter.

+
+ hh447628 + D3D11_BUS_TYPE + D3D11_BUS_TYPE +
+ + +

Indicates a type of bus other than the types listed here. +

+
+ hh447628 + D3D11_BUS_TYPE_OTHER + D3D11_BUS_TYPE_OTHER +
+ + +

PCI bus. +

+
+ hh447628 + D3D11_BUS_TYPE_PCI + D3D11_BUS_TYPE_PCI +
+ + +

PCI-X bus. +

+
+ hh447628 + D3D11_BUS_TYPE_PCIX + D3D11_BUS_TYPE_PCIX +
+ + +

PCI Express bus. +

+
+ hh447628 + D3D11_BUS_TYPE_PCIEXPRESS + D3D11_BUS_TYPE_PCIEXPRESS +
+ + +

Accelerated Graphics Port (AGP) bus. +

+
+ hh447628 + D3D11_BUS_TYPE_AGP + D3D11_BUS_TYPE_AGP +
+ + +

The implementation for the graphics adapter is in a motherboard chipset's north bridge. This flag implies that data never goes over an expansion bus (such as PCI or AGP) when it is transferred from main memory to the graphics adapter.

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET + D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET +
+ + +

Indicates that the graphics adapter is connected to a motherboard chipset's north bridge by tracks on the motherboard, and all of the graphics adapter's chips are soldered to the motherboard. This flag implies that data never goes over an expansion bus (such as PCI or AGP) when it is transferred from main memory to the graphics adapter.

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP +
+ + +

The graphics adapter is connected to a motherboard chipset's north bridge by tracks on the motherboard, and all of the graphics adapter's chips are connected through sockets to the motherboard. +

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET +
+ + +

The graphics adapter is connected to the motherboard through a daughterboard connector. +

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR +
+ + +

The graphics adapter is connected to the motherboard through a daughterboard connector, and the graphics adapter is inside an enclosure that is not user accessible. +

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE +
+ + +

One of the D3D11_BUS_IMPL_MODIFIER_Xxx flags is set. +

+
+ hh447628 + D3D11_BUS_IMPL_MODIFIER_NON_STANDARD + D3D11_BUS_IMPL_MODIFIER_NON_STANDARD +
+ + +

Indicates to check the multisample quality levels of a tiled resource.

+
+ dn280374 + D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE + D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE +
+ + + None + + None + None + + + +

Allow data to be stored in the red component.

+
+ ff476100 + D3D11_COLOR_WRITE_ENABLE_RED + D3D11_COLOR_WRITE_ENABLE_RED +
+ + +

Allow data to be stored in the green component.

+
+ ff476100 + D3D11_COLOR_WRITE_ENABLE_GREEN + D3D11_COLOR_WRITE_ENABLE_GREEN +
+ + +

Allow data to be stored in the blue component.

+
+ ff476100 + D3D11_COLOR_WRITE_ENABLE_BLUE + D3D11_COLOR_WRITE_ENABLE_BLUE +
+ + +

Allow data to be stored in the alpha component.

+
+ ff476100 + D3D11_COLOR_WRITE_ENABLE_ALPHA + D3D11_COLOR_WRITE_ENABLE_ALPHA +
+ + +

Allow data to be stored in all components.

+
+ ff476100 + D3D11_COLOR_WRITE_ENABLE_ALL + D3D11_COLOR_WRITE_ENABLE_ALL +
+ + +

Comparison options.

+
+ +

A comparison option determines whether how the runtime compares source (new) data against destination (existing) data before storing the new data. The comparison option is declared in a description before an object is created. The API allows you to set a comparison option for a depth-stencil buffer (see ), depth-stencil operations (see ), or sampler state (see ).

+
+ ff476101 + D3D11_COMPARISON_FUNC + D3D11_COMPARISON_FUNC +
+ + +

Never pass the comparison.

+
+ ff476101 + D3D11_COMPARISON_NEVER + D3D11_COMPARISON_NEVER +
+ + +

If the source data is less than the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_LESS + D3D11_COMPARISON_LESS +
+ + +

If the source data is equal to the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_EQUAL + D3D11_COMPARISON_EQUAL +
+ + +

If the source data is less than or equal to the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_LESS_EQUAL + D3D11_COMPARISON_LESS_EQUAL +
+ + +

If the source data is greater than the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_GREATER + D3D11_COMPARISON_GREATER +
+ + +

If the source data is not equal to the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_NOT_EQUAL + D3D11_COMPARISON_NOT_EQUAL +
+ + +

If the source data is greater than or equal to the destination data, the comparison passes.

+
+ ff476101 + D3D11_COMPARISON_GREATER_EQUAL + D3D11_COMPARISON_GREATER_EQUAL +
+ + +

Always pass the comparison.

+
+ ff476101 + D3D11_COMPARISON_ALWAYS + D3D11_COMPARISON_ALWAYS +
+ + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX + D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD + D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE + D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP + D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_TILED + D3D11_FORMAT_SUPPORT2_TILED + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_SHAREABLE + D3D11_FORMAT_SUPPORT2_SHAREABLE + + + + No documentation. + + ff476135 + D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY + D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY + + + + None + + None + None + + + +

Identifies whether conservative rasterization is on or off.

+
+ dn859360 + D3D11_CONSERVATIVE_RASTERIZATION_MODE + D3D11_CONSERVATIVE_RASTERIZATION_MODE +
+ + +

Conservative rasterization is off.

+
+ dn859360 + D3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF + D3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF +
+ + +

Conservative rasterization is on.

+
+ dn859360 + D3D11_CONSERVATIVE_RASTERIZATION_MODE_ON + D3D11_CONSERVATIVE_RASTERIZATION_MODE_ON +
+ + +

Specifies if the hardware and driver support conservative rasterization and at what tier level.

+
+ dn859364 + D3D11_CONSERVATIVE_RASTERIZATION_TIER + D3D11_CONSERVATIVE_RASTERIZATION_TIER +
+ + +

Conservative rasterization isn't supported.

+
+ dn859364 + D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED + D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED +
+ + +

Tier_1 conservative rasterization is supported.

+
+ dn859364 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_1 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_1 +
+ + +

Tier_2 conservative rasterization is supported.

+
+ dn859364 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_2 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_2 +
+ + +

Tier_3 conservative rasterization is supported.

+
+ dn859364 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_3 + D3D11_CONSERVATIVE_RASTERIZATION_TIER_3 +
+ + +

Contains flags that describe content-protection capabilities.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS + D3D11_CONTENT_PROTECTION_CAPS +
+ + +

The content protection is implemented in software by the driver.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE + D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE +
+ + +

The content protection is implemented in hardware by the GPU. +

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE +
+ + +

Content protection is always applied to a protected surface, regardless of whether the application explicitly enables protection.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON + D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON +
+ + +

The driver can use partially encrypted buffers. If this capability is not present, the entire buffer must be either encrypted or clear.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION + D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION +
+ + +

The driver can encrypt data using a separate content key that is encrypted using the session key.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY + D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY +
+ + +

The driver can refresh the session key without renegotiating the key.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY + D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY +
+ + +

The driver can read back encrypted data from a protected surface. For more information, see ID3D11VideoContext::EncryptionBlt.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK +
+ + +

The driver requires a separate key to read encrypted data from a protected surface.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY +
+ + +

If the encryption type is D3DCRYPTOTYPE_AES128_CTR, the application must use a sequential count in the structure.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV + D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV +
+ + +

The driver supports encrypted slice data, but does not support any other encrypted data in the compressed buffer. The caller should not encrypt any data within the buffer other than the slice data.

Note??The driver should only report this flag for the specific profiles that have this limitation. ?
+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY +
+ + +

The driver can copy encrypted data from one resource to another, decrypting the data as part of the process.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT + D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT +
+ + +

The hardware supports the protection of specific resources. This means that:

  • The contents of a protected allocation can never be read by the CPU.
  • The hardware can ensure a protected resource cannot be copied to an unprotected resource.

Note??This enumeration value is supported starting with Windows?10.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED +
+ + +

Physical pages of a protected resource can be evicted and potentially paged to disk in low memory conditions without losing the contents of the resource when paged back in.

Note??This enumeration value is supported starting with Windows?10.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE +
+ + +

The hardware supports an automatic teardown mechanism that could trigger hardware keys or protected content to become lost in some conditions. The application can register to be notified when these events occur.

Note??This enumeration value is supported starting with Windows?10.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN +
+ + +

The secure environment is tightly coupled with the GPU and an should be used for communication between the user mode DRM component and the secure execution environment.

Note??This enumeration value is supported starting with Windows?10.

+
+ hh447629 + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION +
+ + +

Specifies the context in which a query occurs.

+
+ +

This enum is used by the following:

  • structure
  • A CD3D11_QUERY_DESC1 constructor.
  • ID3D11DeviceContext3::Flush1 method
+
+ dn859366 + D3D11_CONTEXT_TYPE + D3D11_CONTEXT_TYPE +
+ + +

The query can occur in all contexts.

+
+ dn859366 + D3D11_CONTEXT_TYPE_ALL + D3D11_CONTEXT_TYPE_ALL +
+ + +

The query occurs in the context of a 3D command queue.

+
+ dn859366 + D3D11_CONTEXT_TYPE_3D + D3D11_CONTEXT_TYPE_3D +
+ + +

The query occurs in the context of a 3D compute queue.

+
+ dn859366 + D3D11_CONTEXT_TYPE_COMPUTE + D3D11_CONTEXT_TYPE_COMPUTE +
+ + +

The query occurs in the context of a 3D copy queue.

+
+ dn859366 + D3D11_CONTEXT_TYPE_COPY + D3D11_CONTEXT_TYPE_COPY +
+ + +

The query occurs in the context of video.

+
+ dn859366 + D3D11_CONTEXT_TYPE_VIDEO + D3D11_CONTEXT_TYPE_VIDEO +
+ + +

The existing contents of the resource cannot be overwritten.

+
+ hh404451 + D3D11_COPY_NO_OVERWRITE + D3D11_COPY_NO_OVERWRITE +
+ + +

The existing contents of the resource are undefined and can be discarded.

+
+ hh404451 + D3D11_COPY_DISCARD + D3D11_COPY_DISCARD +
+ + + None + + None + None + + + +

Options for performance counters.

+
+ +

Independent hardware vendors may define their own set of performance counters for their devices, by giving the enumeration value a number that is greater than the value for D3D11_COUNTER_DEVICE_DEPENDENT_0.

This enumeration is used by and .

+
+ ff476102 + D3D11_COUNTER + D3D11_COUNTER +
+ + +

Define a performance counter that is dependent on the hardware device.

+
+ ff476102 + D3D11_COUNTER_DEVICE_DEPENDENT_0 + D3D11_COUNTER_DEVICE_DEPENDENT_0 +
+ + +

Data type of a performance counter.

+
+ +

These flags are an output parameter in ID3D11Device::CheckCounter.

+
+ ff476105 + D3D11_COUNTER_TYPE + D3D11_COUNTER_TYPE +
+ + +

32-bit floating point.

+
+ ff476105 + D3D11_COUNTER_TYPE_FLOAT32 + D3D11_COUNTER_TYPE_FLOAT32 +
+ + +

16-bit unsigned integer.

+
+ ff476105 + D3D11_COUNTER_TYPE_UINT16 + D3D11_COUNTER_TYPE_UINT16 +
+ + +

32-bit unsigned integer.

+
+ ff476105 + D3D11_COUNTER_TYPE_UINT32 + D3D11_COUNTER_TYPE_UINT32 +
+ + +

64-bit unsigned integer.

+
+ ff476105 + D3D11_COUNTER_TYPE_UINT64 + D3D11_COUNTER_TYPE_UINT64 +
+ + +

The resource is to be mappable so that the CPU can change its contents. Resources created with this flag cannot be set as outputs of the pipeline and must be created with either dynamic or staging usage (see ).

+
+ ff476106 + D3D11_CPU_ACCESS_WRITE + D3D11_CPU_ACCESS_WRITE +
+ + +

The resource is to be mappable so that the CPU can read its contents. Resources created with this flag cannot be set as either inputs or outputs to the pipeline and must be created with staging usage (see ).

+
+ ff476106 + D3D11_CPU_ACCESS_READ + D3D11_CPU_ACCESS_READ +
+ + + None + + None + None + + + + No documentation. + + hh404432 + D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED + D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED + + + + None + + None + None + + + +

Represents the status of an interface.

+
+ dn894114 + D3D11_CRYPTO_SESSION_STATUS + D3D11_CRYPTO_SESSION_STATUS +
+ + + No documentation. + + dn894114 + D3D11_CRYPTO_SESSION_STATUS_OK + D3D11_CRYPTO_SESSION_STATUS_OK + + + + No documentation. + + dn894114 + D3D11_CRYPTO_SESSION_STATUS_KEY_LOST + D3D11_CRYPTO_SESSION_STATUS_KEY_LOST + + + + No documentation. + + dn894114 + D3D11_CRYPTO_SESSION_STATUS_KEY_AND_CONTENT_LOST + D3D11_CRYPTO_SESSION_STATUS_KEY_AND_CONTENT_LOST + + + +

Indicates triangles facing a particular direction are not drawn.

+
+ +

This enumeration is part of a rasterizer-state object description (see ).

+
+ ff476108 + D3D11_CULL_MODE + D3D11_CULL_MODE +
+ + +

Always draw all triangles.

+
+ ff476108 + D3D11_CULL_NONE + D3D11_CULL_NONE +
+ + +

Do not draw triangles that are front-facing.

+
+ ff476108 + D3D11_CULL_FRONT + D3D11_CULL_FRONT +
+ + +

Do not draw triangles that are back-facing.

+
+ ff476108 + D3D11_CULL_BACK + D3D11_CULL_BACK +
+ + + No documentation. + + D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP + D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP + + + + No documentation. + + D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP + D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP + + + + No documentation. + + D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP + D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP + + + + No documentation. + + D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE + D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE + + + + No documentation. + + D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE + D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE + + + + No documentation. + + D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS + D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS + + + + No documentation. + + D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION + D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION + + + +

Clear the depth buffer, using fast clear if possible, then place the resource in a compressed state.

+
+ ff476099 + D3D11_CLEAR_DEPTH + D3D11_CLEAR_DEPTH +
+ + +

Clear the stencil buffer, using fast clear if possible, then place the resource in a compressed state.

+
+ ff476099 + D3D11_CLEAR_STENCIL + D3D11_CLEAR_STENCIL +
+ + +

Specifies how to access a resource used in a depth-stencil view.

+
+ +

This enumeration is used in to create a depth-stencil view.

+
+ ff476115 + D3D11_DSV_DIMENSION + D3D11_DSV_DIMENSION +
+ + +

D3D11_DSV_DIMENSION_UNKNOWN is not a valid value for and is not used.

+
+ ff476115 + D3D11_DSV_DIMENSION_UNKNOWN + D3D11_DSV_DIMENSION_UNKNOWN +
+ + +

The resource will be accessed as a 1D texture.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE1D + D3D11_DSV_DIMENSION_TEXTURE1D +
+ + +

The resource will be accessed as an array of 1D textures.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE1DARRAY + D3D11_DSV_DIMENSION_TEXTURE1DARRAY +
+ + +

The resource will be accessed as a 2D texture.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE2D + D3D11_DSV_DIMENSION_TEXTURE2D +
+ + +

The resource will be accessed as an array of 2D textures.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE2DARRAY + D3D11_DSV_DIMENSION_TEXTURE2DARRAY +
+ + +

The resource will be accessed as a 2D texture with multisampling.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE2DMS + D3D11_DSV_DIMENSION_TEXTURE2DMS +
+ + +

The resource will be accessed as an array of 2D textures with multisampling.

+
+ ff476115 + D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY + D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY +
+ + +

Indicates that depth values are read only.

+
+ ff476116 + D3D11_DSV_READ_ONLY_DEPTH + D3D11_DSV_READ_ONLY_DEPTH +
+ + +

Indicates that stencil values are read only.

+
+ ff476116 + D3D11_DSV_READ_ONLY_STENCIL + D3D11_DSV_READ_ONLY_STENCIL +
+ + + None + + None + None + + + +

Identify the portion of a depth-stencil buffer for writing depth data.

+
+ ff476113 + D3D11_DEPTH_WRITE_MASK + D3D11_DEPTH_WRITE_MASK +
+ + +

Turn off writes to the depth-stencil buffer.

+
+ ff476113 + D3D11_DEPTH_WRITE_MASK_ZERO + D3D11_DEPTH_WRITE_MASK_ZERO +
+ + +

Turn on writes to the depth-stencil buffer.

+
+ ff476113 + D3D11_DEPTH_WRITE_MASK_ALL + D3D11_DEPTH_WRITE_MASK_ALL +
+ + +

Device context options.

+
+ +

This enumeration is used by ID3D11DeviceContext::GetType.

+
+ ff476114 + D3D11_DEVICE_CONTEXT_TYPE + D3D11_DEVICE_CONTEXT_TYPE +
+ + +

The device context is an immediate context.

+
+ ff476114 + D3D11_DEVICE_CONTEXT_IMMEDIATE + D3D11_DEVICE_CONTEXT_IMMEDIATE +
+ + +

The device context is a deferred context.

+
+ ff476114 + D3D11_DEVICE_CONTEXT_DEFERRED + D3D11_DEVICE_CONTEXT_DEFERRED +
+ + +

Use this flag if your application will only call methods of Direct3D?11 interfaces from a single thread. By default, the object is thread-safe. By using this flag, you can increase performance. However, if you use this flag and your application calls methods of Direct3D?11 interfaces from multiple threads, undefined behavior might result.

+
+ ff476107 + D3D11_CREATE_DEVICE_SINGLETHREADED + D3D11_CREATE_DEVICE_SINGLETHREADED +
+ + +

Creates a device that supports the debug layer.

To use this flag, you must have D3D11*SDKLayers.dll installed; otherwise, device creation fails. To get D3D11_1SDKLayers.dll, install the SDK for Windows?8.

+
+ ff476107 + D3D11_CREATE_DEVICE_DEBUG + D3D11_CREATE_DEVICE_DEBUG +
+ + +
Note??This flag is not supported in Direct3D?11. ?
+
+ ff476107 + D3D11_CREATE_DEVICE_SWITCH_TO_REF + D3D11_CREATE_DEVICE_SWITCH_TO_REF +
+ + +

Prevents multiple threads from being created. When this flag is used with a Windows Advanced Rasterization Platform (WARP) device, no additional threads will be created by WARP and all rasterization will occur on the calling thread. This flag is not recommended for general use. See remarks.

+
+ ff476107 + D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS + D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS +
+ + +

Creates a device that supports BGRA formats (DXGI_FORMAT_B8G8R8A8_UNORM and DXGI_FORMAT_B8G8R8A8_UNORM_SRGB). All 10level9 and higher hardware with WDDM 1.1+ drivers support BGRA formats.

Note??Required for Direct2D interoperability with Direct3D resources. ?
+
+ ff476107 + D3D11_CREATE_DEVICE_BGRA_SUPPORT + D3D11_CREATE_DEVICE_BGRA_SUPPORT +
+ + +

Causes the device and driver to keep information that you can use for shader debugging. The exact impact from this flag will vary from driver to driver.

To use this flag, you must have D3D11_1SDKLayers.dll installed; otherwise, device creation fails. The created device supports the debug layer. To get D3D11_1SDKLayers.dll, install the SDK for Windows?8.

If you use this flag and the current driver does not support shader debugging, device creation fails. Shader debugging requires a driver that is implemented to the WDDM for Windows?8 (WDDM 1.2).

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476107 + D3D11_CREATE_DEVICE_DEBUGGABLE + D3D11_CREATE_DEVICE_DEBUGGABLE +
+ + +

Causes the Direct3D runtime to ignore registry settings that turn on the debug layer. You can turn on the debug layer by using the DirectX Control Panel that was included as part of the DirectX SDK. We shipped the last version of the DirectX SDK in June 2010; you can download it from the Microsoft Download Center. You can set this flag in your app, typically in release builds only, to prevent end users from using the DirectX Control Panel to monitor how the app uses Direct3D.

Note??You can also set this flag in your app to prevent Direct3D debugging tools, such as Visual Studio Ultimate?2012, from hooking your app. ?

Windows?8.1:??This flag doesn't prevent Visual Studio?2013 and later running on Windows?8.1 and later from hooking your app; instead use ID3D11DeviceContext2::IsAnnotationEnabled. This flag still prevents Visual Studio?2013 and later running on Windows?8 and earlier from hooking your app.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476107 + D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY + D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY +
+ + +

Use this flag if the device will produce GPU workloads that take more than two seconds to complete, and you want the operating system to allow them to successfully finish. If this flag is not set, the operating system performs timeout detection and recovery when it detects a GPU packet that took more than two seconds to execute. If this flag is set, the operating system allows such a long running packet to execute without resetting the GPU. We recommend not to set this flag if your device needs to be highly responsive so that the operating system can detect and recover from GPU timeouts. We recommend to set this flag if your device needs to perform time consuming background tasks such as compute, image recognition, and video encoding to allow such tasks to successfully finish.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476107 + D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT + D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT +
+ + +

Forces the creation of the Direct3D device to fail if the display driver is not implemented to the WDDM for Windows?8 (WDDM 1.2). When the display driver is not implemented to WDDM 1.2, only a Direct3D device that is created with feature level 9.1, 9.2, or 9.3 supports video; therefore, if this flag is set, the runtime creates the Direct3D device only for feature level 9.1, 9.2, or 9.3. We recommend not to specify this flag for applications that want to favor Direct3D capability over video. If feature level 10 and higher is available, the runtime will use that feature level regardless of video support.

If this flag is set, device creation on the Basic Render Device (BRD) will succeed regardless of the BRD's missing support for video decode. This is because the Media Foundation video stack operates in software mode on BRD. In this situation, if you force the video stack to create the Direct3D device twice (create the device once with this flag, next discover BRD, then again create the device without the flag), you actually degrade performance.

If you attempt to create a Direct3D device with driver type D3D_DRIVER_TYPE_NULL, D3D_DRIVER_TYPE_REFERENCE, or D3D_DRIVER_TYPE_SOFTWARE, device creation fails at any feature level because none of the associated drivers provide video capability. If you attempt to create a Direct3D device with driver type D3D_DRIVER_TYPE_WARP, device creation succeeds to allow software fallback for video.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476107 + D3D11_CREATE_DEVICE_VIDEO_SUPPORT + D3D11_CREATE_DEVICE_VIDEO_SUPPORT +
+ + + None + + None + None + + + +

Direct3D 11 feature options.

+
+ +

This enumeration is used when querying a driver about support for these features by calling ID3D11Device::CheckFeatureSupport. Each value in this enumeration has a corresponding data structure that is required to be passed to the pFeatureSupportData parameter of ID3D11Device::CheckFeatureSupport.

+
+ ff476124 + D3D11_FEATURE + D3D11_FEATURE +
+ + +

The driver supports multithreading. To see an example of testing a driver for multithread support, see How To: Check for Driver Support. Refer to .

+
+ ff476124 + D3D11_FEATURE_THREADING + D3D11_FEATURE_THREADING +
+ + +

Supports the use of the double-precision shaders in HLSL. Refer to .

+
+ ff476124 + D3D11_FEATURE_DOUBLES + D3D11_FEATURE_DOUBLES +
+ + +

Supports the formats in . Refer to .

+
+ ff476124 + D3D11_FEATURE_FORMAT_SUPPORT + D3D11_FEATURE_FORMAT_SUPPORT +
+ + +

Supports the formats in . Refer to .

+
+ ff476124 + D3D11_FEATURE_FORMAT_SUPPORT2 + D3D11_FEATURE_FORMAT_SUPPORT2 +
+ + +

Supports compute shaders and raw and structured buffers. Refer to .

+
+ ff476124 + D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS + D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS +
+ + +

Supports Direct3D 11.1 feature options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476124 + D3D11_FEATURE_D3D11_OPTIONS + D3D11_FEATURE_D3D11_OPTIONS +
+ + +

Supports specific adapter architecture. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476124 + D3D11_FEATURE_ARCHITECTURE_INFO + D3D11_FEATURE_ARCHITECTURE_INFO +
+ + +

Supports Direct3D?9 feature options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476124 + D3D11_FEATURE_D3D9_OPTIONS + D3D11_FEATURE_D3D9_OPTIONS +
+ + +

Supports minimum precision of shaders. For more info about HLSL minimum precision, see using HLSL minimum precision. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476124 + D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT + D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT +
+ + +

Supports Direct3D?9 shadowing feature. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476124 + D3D11_FEATURE_D3D9_SHADOW_SUPPORT + D3D11_FEATURE_D3D9_SHADOW_SUPPORT +
+ + +

Supports Direct3D 11.2 feature options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476124 + D3D11_FEATURE_D3D11_OPTIONS1 + D3D11_FEATURE_D3D11_OPTIONS1 +
+ + +

Supports Direct3D 11.2 instancing options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476124 + D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT + D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT +
+ + +

Supports Direct3D 11.2 marker options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476124 + D3D11_FEATURE_MARKER_SUPPORT + D3D11_FEATURE_MARKER_SUPPORT +
+ + +

Supports Direct3D?9 feature options, which includes the Direct3D?9 shadowing feature and instancing support. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476124 + D3D11_FEATURE_D3D9_OPTIONS1 + D3D11_FEATURE_D3D9_OPTIONS1 +
+ + +

Supports Direct3D 11.3 conservative rasterization feature options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.3.

+
+ ff476124 + D3D11_FEATURE_D3D11_OPTIONS2 + D3D11_FEATURE_D3D11_OPTIONS2 +
+ + +

Supports Direct3D 11.4 conservative rasterization feature options. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.4.

+
+ ff476124 + D3D11_FEATURE_D3D11_OPTIONS3 + D3D11_FEATURE_D3D11_OPTIONS3 +
+ + +

Supports GPU virtual addresses. Refer to .

+
+ ff476124 + D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT + D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT +
+ + +

Supports a single boolean for NV12 shared textures. Refer to .

Direct3D 11:??This value is not supported until Direct3D 11.4.

+
+ ff476124 + D3D11_FEATURE_D3D11_OPTIONS4 + D3D11_FEATURE_D3D11_OPTIONS4 +
+ + + No documentation. + + ff476124 + D3D11_FEATURE_SHADER_CACHE + D3D11_FEATURE_SHADER_CACHE + + + +

The device context is an immediate context.

+
+ ff476114 + D3D11_FENCE_FLAG_NONE + D3D11_FENCE_FLAG_NONE +
+ + +

The device context is a deferred context.

+
+ ff476114 + D3D11_FENCE_FLAG_SHARED + D3D11_FENCE_FLAG_SHARED +
+ + + No documentation. + + ff476114 + D3D11_FENCE_FLAG_SHARED_CROSS_ADAPTER + D3D11_FENCE_FLAG_SHARED_CROSS_ADAPTER + + + +

Determines the fill mode to use when rendering triangles.

+
+ +

This enumeration is part of a rasterizer-state object description (see ).

+
+ ff476131 + D3D11_FILL_MODE + D3D11_FILL_MODE +
+ + +

Draw lines connecting the vertices. Adjacent vertices are not drawn.

+
+ ff476131 + D3D11_FILL_WIREFRAME + D3D11_FILL_WIREFRAME +
+ + +

Fill the triangles formed by the vertices. Adjacent vertices are not drawn.

+
+ ff476131 + D3D11_FILL_SOLID + D3D11_FILL_SOLID +
+ + +

Filtering options during texture sampling.

+
+ + Note??If you use different filter types for min versus mag filter, undefined behavior occurs in certain cases where the choice between whether magnification or minification happens is ambiguous. To prevent this undefined behavior, use filter modes that use similar filter operations for both min and mag (or use anisotropic filtering, which avoids the issue as well).?

During texture sampling, one or more texels are read and combined (this is calling filtering) to produce a single value. Point sampling reads a single texel while linear sampling reads two texels (endpoints) and linearly interpolates a third value between the endpoints.

HLSL texture-sampling functions also support comparison filtering during texture sampling. Comparison filtering compares each sampled texel against a comparison value. The boolean result is blended the same way that normal texture filtering is blended.

You can use HLSL intrinsic texture-sampling functions that implement texture filtering only or companion functions that use texture filtering with comparison filtering.

Texture Sampling FunctionTexture Sampling Function with Comparison Filtering
samplesamplecmp or samplecmplevelzero

?

Comparison filters only work with textures that have the following DXGI formats: R32_FLOAT_X8X24_TYPELESS, R32_FLOAT, R24_UNORM_X8_TYPELESS, R16_UNORM.

+
+ ff476132 + D3D11_FILTER + D3D11_FILTER +
+ + +

Use point sampling for minification, magnification, and mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_MAG_MIP_POINT + D3D11_FILTER_MIN_MAG_MIP_POINT +
+ + +

Use point sampling for minification and magnification; use linear interpolation for mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR +
+ + +

Use point sampling for minification; use linear interpolation for magnification; use point sampling for mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT +
+ + +

Use point sampling for minification; use linear interpolation for magnification and mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR + D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR +
+ + +

Use linear interpolation for minification; use point sampling for magnification and mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT + D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT +
+ + +

Use linear interpolation for minification; use point sampling for magnification; use linear interpolation for mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR +
+ + +

Use linear interpolation for minification and magnification; use point sampling for mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT +
+ + +

Use linear interpolation for minification, magnification, and mip-level sampling.

+
+ ff476132 + D3D11_FILTER_MIN_MAG_MIP_LINEAR + D3D11_FILTER_MIN_MAG_MIP_LINEAR +
+ + +

Use anisotropic interpolation for minification, magnification, and mip-level sampling.

+
+ ff476132 + D3D11_FILTER_ANISOTROPIC + D3D11_FILTER_ANISOTROPIC +
+ + +

Use point sampling for minification, magnification, and mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT + D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT +
+ + +

Use point sampling for minification and magnification; use linear interpolation for mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR + D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR +
+ + +

Use point sampling for minification; use linear interpolation for magnification; use point sampling for mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT + D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT +
+ + +

Use point sampling for minification; use linear interpolation for magnification and mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR + D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR +
+ + +

Use linear interpolation for minification; use point sampling for magnification and mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT + D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT +
+ + +

Use linear interpolation for minification; use point sampling for magnification; use linear interpolation for mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR + D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR +
+ + +

Use linear interpolation for minification and magnification; use point sampling for mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT + D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT +
+ + +

Use linear interpolation for minification, magnification, and mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR + D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR +
+ + +

Use anisotropic interpolation for minification, magnification, and mip-level sampling. Compare the result to the comparison value.

+
+ ff476132 + D3D11_FILTER_COMPARISON_ANISOTROPIC + D3D11_FILTER_COMPARISON_ANISOTROPIC +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_MIP_POINT and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT + D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR + D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT + D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_MIP_LINEAR and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR + D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_ANISOTROPIC and instead of filtering them return the minimum of the texels. Texels that are weighted 0 during filtering aren't counted towards the minimum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MINIMUM_ANISOTROPIC + D3D11_FILTER_MINIMUM_ANISOTROPIC +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_MIP_POINT and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT + D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR + D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT + D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR + D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT + D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT +
+ + +

Fetch the same set of texels as D3D11_FILTER_MIN_MAG_MIP_LINEAR and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR + D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR +
+ + +

Fetch the same set of texels as D3D11_FILTER_ANISOTROPIC and instead of filtering them return the maximum of the texels. Texels that are weighted 0 during filtering aren't counted towards the maximum. You can query support for this filter type from the MinMaxFiltering member in the structure.

+
+ ff476132 + D3D11_FILTER_MAXIMUM_ANISOTROPIC + D3D11_FILTER_MAXIMUM_ANISOTROPIC +
+ + +

Specifies the type of sampler filter reduction.

+
+ +

This enum is used by the structure.

+
+ dn912870 + D3D11_FILTER_REDUCTION_TYPE + D3D11_FILTER_REDUCTION_TYPE +
+ + +

Indicates standard (default) filter reduction.

+
+ dn912870 + D3D11_FILTER_REDUCTION_TYPE_STANDARD + D3D11_FILTER_REDUCTION_TYPE_STANDARD +
+ + +

Indicates a comparison filter reduction.

+
+ dn912870 + D3D11_FILTER_REDUCTION_TYPE_COMPARISON + D3D11_FILTER_REDUCTION_TYPE_COMPARISON +
+ + +

Indicates minimum filter reduction.

+
+ dn912870 + D3D11_FILTER_REDUCTION_TYPE_MINIMUM + D3D11_FILTER_REDUCTION_TYPE_MINIMUM +
+ + +

Indicates maximum filter reduction.

+
+ dn912870 + D3D11_FILTER_REDUCTION_TYPE_MAXIMUM + D3D11_FILTER_REDUCTION_TYPE_MAXIMUM +
+ + +

Types of magnification or minification sampler filters.

+
+ ff476133 + D3D11_FILTER_TYPE + D3D11_FILTER_TYPE +
+ + +

Point filtering used as a texture magnification or minification filter. The texel with coordinates nearest to the desired pixel value is used. The texture filter to be used between mipmap levels is nearest-point mipmap filtering. The rasterizer uses the color from the texel of the nearest mipmap texture.

+
+ ff476133 + D3D11_FILTER_TYPE_POINT + D3D11_FILTER_TYPE_POINT +
+ + +

Bilinear interpolation filtering used as a texture magnification or minification filter. A weighted average of a 2 x 2 area of texels surrounding the desired pixel is used. The texture filter to use between mipmap levels is trilinear mipmap interpolation. The rasterizer linearly interpolates pixel color, using the texels of the two nearest mipmap textures.

+
+ ff476133 + D3D11_FILTER_TYPE_LINEAR + D3D11_FILTER_TYPE_LINEAR +
+ + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_BUFFER + D3D11_FORMAT_SUPPORT_BUFFER + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER + D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER + D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SO_BUFFER + D3D11_FORMAT_SUPPORT_SO_BUFFER + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_TEXTURE1D + D3D11_FORMAT_SUPPORT_TEXTURE1D + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_TEXTURE2D + D3D11_FORMAT_SUPPORT_TEXTURE2D + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_TEXTURE3D + D3D11_FORMAT_SUPPORT_TEXTURE3D + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_TEXTURECUBE + D3D11_FORMAT_SUPPORT_TEXTURECUBE + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_LOAD + D3D11_FORMAT_SUPPORT_SHADER_LOAD + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT + D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_MIP + D3D11_FORMAT_SUPPORT_MIP + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_MIP_AUTOGEN + D3D11_FORMAT_SUPPORT_MIP_AUTOGEN + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_RENDER_TARGET + D3D11_FORMAT_SUPPORT_RENDER_TARGET + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_BLENDABLE + D3D11_FORMAT_SUPPORT_BLENDABLE + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_DEPTH_STENCIL + D3D11_FORMAT_SUPPORT_DEPTH_STENCIL + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_CPU_LOCKABLE + D3D11_FORMAT_SUPPORT_CPU_LOCKABLE + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE + D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_DISPLAY + D3D11_FORMAT_SUPPORT_DISPLAY + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT + D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET + D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD + D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_GATHER + D3D11_FORMAT_SUPPORT_SHADER_GATHER + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST + D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW + D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON + D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_DECODER_OUTPUT + D3D11_FORMAT_SUPPORT_DECODER_OUTPUT + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT + D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT + D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT + + + + No documentation. + + ff476134 + D3D11_FORMAT_SUPPORT_VIDEO_ENCODER + D3D11_FORMAT_SUPPORT_VIDEO_ENCODER + + + + None + + None + None + + + +

Type of data contained in an input slot.

+
+ +

Use these values to specify the type of data for a particular input element (see ) of an input-layout object.

+
+ ff476179 + D3D11_INPUT_CLASSIFICATION + D3D11_INPUT_CLASSIFICATION +
+ + +

Input data is per-vertex data.

+
+ ff476179 + D3D11_INPUT_PER_VERTEX_DATA + D3D11_INPUT_PER_VERTEX_DATA +
+ + +

Input data is per-instance data.

+
+ ff476179 + D3D11_INPUT_PER_INSTANCE_DATA + D3D11_INPUT_PER_INSTANCE_DATA +
+ + + Note??This enumeration is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Specifies logical operations to configure for a render target.

+
+ hh404484 + D3D11_LOGIC_OP + D3D11_LOGIC_OP +
+ + +

Clears the render target.

+
+ hh404484 + D3D11_LOGIC_OP_CLEAR + D3D11_LOGIC_OP_CLEAR +
+ + +

Sets the render target.

+
+ hh404484 + D3D11_LOGIC_OP_SET + D3D11_LOGIC_OP_SET +
+ + +

Copys the render target.

+
+ hh404484 + D3D11_LOGIC_OP_COPY + D3D11_LOGIC_OP_COPY +
+ + +

Performs an inverted-copy of the render target.

+
+ hh404484 + D3D11_LOGIC_OP_COPY_INVERTED + D3D11_LOGIC_OP_COPY_INVERTED +
+ + +

No operation is performed on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_NOOP + D3D11_LOGIC_OP_NOOP +
+ + +

Inverts the render target.

+
+ hh404484 + D3D11_LOGIC_OP_INVERT + D3D11_LOGIC_OP_INVERT +
+ + +

Performs a logical AND operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_AND + D3D11_LOGIC_OP_AND +
+ + +

Performs a logical NAND operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_NAND + D3D11_LOGIC_OP_NAND +
+ + +

Performs a logical OR operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_OR + D3D11_LOGIC_OP_OR +
+ + +

Performs a logical NOR operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_NOR + D3D11_LOGIC_OP_NOR +
+ + +

Performs a logical XOR operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_XOR + D3D11_LOGIC_OP_XOR +
+ + +

Performs a logical equal operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_EQUIV + D3D11_LOGIC_OP_EQUIV +
+ + +

Performs a logical AND and reverse operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_AND_REVERSE + D3D11_LOGIC_OP_AND_REVERSE +
+ + +

Performs a logical AND and invert operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_AND_INVERTED + D3D11_LOGIC_OP_AND_INVERTED +
+ + +

Performs a logical OR and reverse operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_OR_REVERSE + D3D11_LOGIC_OP_OR_REVERSE +
+ + +

Performs a logical OR and invert operation on the render target.

+
+ hh404484 + D3D11_LOGIC_OP_OR_INVERTED + D3D11_LOGIC_OP_OR_INVERTED +
+ + + No documentation. + + ff476183 + D3D11_MAP_FLAG_DO_NOT_WAIT + D3D11_MAP_FLAG_DO_NOT_WAIT + + + + None + + None + None + + + +

Identifies a resource to be accessed for reading and writing by the CPU. Applications may combine one or more of these flags.

+
+ +

This enumeration is used in ID3D11DeviceContext::Map.

These remarks are divided into the following topics:

  • Meaning
  • Common
+
+ ff476181 + D3D11_MAP + D3D11_MAP +
+ + +

Resource is mapped for reading. The resource must have been created with read access (see D3D11_CPU_ACCESS_READ).

+
+ ff476181 + D3D11_MAP_READ + D3D11_MAP_READ +
+ + +

Resource is mapped for writing. The resource must have been created with write access (see D3D11_CPU_ACCESS_WRITE).

+
+ ff476181 + D3D11_MAP_WRITE + D3D11_MAP_WRITE +
+ + +

Resource is mapped for reading and writing. The resource must have been created with read and write access (see D3D11_CPU_ACCESS_READ and D3D11_CPU_ACCESS_WRITE).

+
+ ff476181 + D3D11_MAP_READ_WRITE + D3D11_MAP_READ_WRITE +
+ + +

Resource is mapped for writing; the previous contents of the resource will be undefined. The resource must have been created with write access and dynamic usage (See D3D11_CPU_ACCESS_WRITE and D3D11_USAGE_DYNAMIC).

+
+ ff476181 + D3D11_MAP_WRITE_DISCARD + D3D11_MAP_WRITE_DISCARD +
+ + +

Resource is mapped for writing; the existing contents of the resource cannot be overwritten (see Remarks). This flag is only valid on vertex and index buffers. The resource must have been created with write access (see D3D11_CPU_ACCESS_WRITE). Cannot be used on a resource created with the D3D11_BIND_CONSTANT_BUFFER flag.

Note??The Direct3D 11.1 runtime, which is available starting with Windows?8, enables mapping dynamic constant buffers and shader resource views (SRVs) of dynamic buffers with D3D11_MAP_WRITE_NO_OVERWRITE. The Direct3D 11 and earlier runtimes limited mapping to vertex or index buffers. To determine if a Direct3D device supports these features, call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS. CheckFeatureSupport fills members of a structure with the device's features. The relevant members here are MapNoOverwriteOnDynamicConstantBuffer and MapNoOverwriteOnDynamicBufferSRV. ?
+
+ ff476181 + D3D11_MAP_WRITE_NO_OVERWRITE + D3D11_MAP_WRITE_NO_OVERWRITE +
+ + +

Categories of debug messages. This will identify the category of a message when retrieving a message with ID3D11InfoQueue::GetMessage and when adding a message with ID3D11InfoQueue::AddMessage. When creating an info queue filter, these values can be used to allow or deny any categories of messages to pass through the storage and retrieval filters.

+
+ +

This is part of the Information Queue feature. See Interface.

+
+ ff476185 + D3D11_MESSAGE_CATEGORY + D3D11_MESSAGE_CATEGORY +
+ + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_APPLICATION_DEFINED + D3D11_MESSAGE_CATEGORY_APPLICATION_DEFINED + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_MISCELLANEOUS + D3D11_MESSAGE_CATEGORY_MISCELLANEOUS + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_INITIALIZATION + D3D11_MESSAGE_CATEGORY_INITIALIZATION + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_CLEANUP + D3D11_MESSAGE_CATEGORY_CLEANUP + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_COMPILATION + D3D11_MESSAGE_CATEGORY_COMPILATION + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_STATE_CREATION + D3D11_MESSAGE_CATEGORY_STATE_CREATION + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_STATE_SETTING + D3D11_MESSAGE_CATEGORY_STATE_SETTING + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_STATE_GETTING + D3D11_MESSAGE_CATEGORY_STATE_GETTING + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_RESOURCE_MANIPULATION + D3D11_MESSAGE_CATEGORY_RESOURCE_MANIPULATION + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_EXECUTION + D3D11_MESSAGE_CATEGORY_EXECUTION + + + + No documentation. + + ff476185 + D3D11_MESSAGE_CATEGORY_SHADER + D3D11_MESSAGE_CATEGORY_SHADER + + + + No documentation. + + D3D11_MESSAGE_ID + D3D11_MESSAGE_ID + + + + No documentation. + + D3D11_MESSAGE_ID_UNKNOWN + D3D11_MESSAGE_ID_UNKNOWN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD + D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_STRING_FROM_APPLICATION + D3D11_MESSAGE_ID_STRING_FROM_APPLICATION + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_THIS + D3D11_MESSAGE_ID_CORRUPTED_THIS + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER1 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER1 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER2 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER2 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER3 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER3 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER4 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER4 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER5 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER5 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER6 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER6 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER7 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER7 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER8 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER8 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER9 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER9 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER10 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER10 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER11 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER11 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER12 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER12 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER13 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER13 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER14 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER14 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER15 + D3D11_MESSAGE_ID_CORRUPTED_PARAMETER15 + + + + No documentation. + + D3D11_MESSAGE_ID_CORRUPTED_MULTITHREADING + D3D11_MESSAGE_ID_CORRUPTED_MULTITHREADING + + + + No documentation. + + D3D11_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY + D3D11_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_GETPRIVATEDATA_MOREDATA + D3D11_MESSAGE_ID_GETPRIVATEDATA_MOREDATA + + + + No documentation. + + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA + + + + No documentation. + + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN + + + + No documentation. + + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS + D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS + D3D11_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS + + + + No documentation. + + D3D11_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY + D3D11_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_NULLDESC + D3D11_MESSAGE_ID_CREATEBUFFER_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION + D3D11_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_NULLDESC + D3D11_MESSAGE_ID_CREATETEXTURE1D_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION + D3D11_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_NULLDESC + D3D11_MESSAGE_ID_CREATETEXTURE2D_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION + D3D11_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_NULLDESC + D3D11_MESSAGE_ID_CREATETEXTURE3D_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION + D3D11_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED + + + + No documentation. + + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER + D3D11_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER + D3D11_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH + D3D11_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY + D3D11_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY + D3D11_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID + D3D11_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE + D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID + D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE + D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS + D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED + D3D11_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED + D3D11_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS + D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED + D3D11_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED + D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS + D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED + D3D11_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED + D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS + D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED + D3D11_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED + D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED + D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED + D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED + + + + No documentation. + + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE + D3D11_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE + + + + No documentation. + + D3D11_MESSAGE_ID_REF_THREADING_MODE + D3D11_MESSAGE_ID_REF_THREADING_MODE + + + + No documentation. + + D3D11_MESSAGE_ID_REF_UMDRIVER_EXCEPTION + D3D11_MESSAGE_ID_REF_UMDRIVER_EXCEPTION + + + + No documentation. + + D3D11_MESSAGE_ID_REF_KMDRIVER_EXCEPTION + D3D11_MESSAGE_ID_REF_KMDRIVER_EXCEPTION + + + + No documentation. + + D3D11_MESSAGE_ID_REF_HARDWARE_EXCEPTION + D3D11_MESSAGE_ID_REF_HARDWARE_EXCEPTION + + + + No documentation. + + D3D11_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE + D3D11_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE + + + + No documentation. + + D3D11_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER + D3D11_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER + + + + No documentation. + + D3D11_MESSAGE_ID_REF_OUT_OF_MEMORY + D3D11_MESSAGE_ID_REF_OUT_OF_MEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_REF_INFO + D3D11_MESSAGE_ID_REF_INFO + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL + D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT + D3D11_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED + D3D11_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE + D3D11_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER + D3D11_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT + D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY + D3D11_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY + + + + No documentation. + + D3D11_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY + D3D11_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER + D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED + D3D11_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER + D3D11_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN + D3D11_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOUNTER_NULLDESC + D3D11_MESSAGE_ID_CREATECOUNTER_NULLDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER + D3D11_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER + D3D11_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE + D3D11_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED + D3D11_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION + D3D11_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_BEGIN_DUPLICATE + D3D11_MESSAGE_ID_QUERY_BEGIN_DUPLICATE + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS + D3D11_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS + + + + No documentation. + + D3D11_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION + D3D11_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS + D3D11_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN + D3D11_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL + D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE + D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY + D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_BUFFER + D3D11_MESSAGE_ID_LIVE_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE1D + D3D11_MESSAGE_ID_LIVE_TEXTURE1D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE2D + D3D11_MESSAGE_ID_LIVE_TEXTURE2D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE3D + D3D11_MESSAGE_ID_LIVE_TEXTURE3D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW + D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW + D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_VERTEXSHADER + D3D11_MESSAGE_ID_LIVE_VERTEXSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER + D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PIXELSHADER + D3D11_MESSAGE_ID_LIVE_PIXELSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT + D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_SAMPLER + D3D11_MESSAGE_ID_LIVE_SAMPLER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_BLENDSTATE + D3D11_MESSAGE_ID_LIVE_BLENDSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE + D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_QUERY + D3D11_MESSAGE_ID_LIVE_QUERY + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PREDICATE + D3D11_MESSAGE_ID_LIVE_PREDICATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_COUNTER + D3D11_MESSAGE_ID_LIVE_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEVICE + D3D11_MESSAGE_ID_LIVE_DEVICE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_SWAPCHAIN + D3D11_MESSAGE_ID_LIVE_SWAPCHAIN + + + + No documentation. + + D3D11_MESSAGE_ID_D3D10_MESSAGES_END + D3D11_MESSAGE_ID_D3D10_MESSAGES_END + + + + No documentation. + + D3D11_MESSAGE_ID_D3D10L9_MESSAGES_START + D3D11_MESSAGE_ID_D3D10L9_MESSAGES_START + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED + D3D11_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS + D3D11_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS + D3D11_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS + D3D11_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND + D3D11_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D + D3D11_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE + D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE + D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS + + + + No documentation. + + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX + D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS + D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY + D3D11_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK + D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK + D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE + + + + No documentation. + + D3D11_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE + D3D11_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET + D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER + D3D11_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE + D3D11_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE + D3D11_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT + D3D11_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS + D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES + D3D11_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED + D3D11_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED + + + + No documentation. + + D3D11_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED + D3D11_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED + D3D11_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED + D3D11_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED + D3D11_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND + D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED + D3D11_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE + + + + No documentation. + + D3D11_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED + D3D11_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3 + D3D11_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3 + + + + No documentation. + + D3D11_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED + D3D11_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO + D3D11_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION + D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED + D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR + D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR + + + + No documentation. + + D3D11_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA + D3D11_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP + D3D11_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED + D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT + D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT + + + + No documentation. + + D3D11_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES + D3D11_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES + + + + No documentation. + + D3D11_MESSAGE_ID_D3D10L9_MESSAGES_END + D3D11_MESSAGE_ID_D3D10L9_MESSAGES_END + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_MESSAGES_START + D3D11_MESSAGE_ID_D3D11_MESSAGES_START + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS + D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_SINGLETHREADED + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_SINGLETHREADED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_ONIMMEDIATECONTEXT + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_ONIMMEDIATECONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_INVALID_CALL_RETURN + D3D11_MESSAGE_ID_FINISHDISPLAYLIST_INVALID_CALL_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES + D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCALL + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCALL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCALL + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCALL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_XOR_DS_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_XOR_DS_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT + D3D11_MESSAGE_ID_DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDMAPTYPE + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDMAPTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDFLAGS + D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_ALREADYMAPPED + D3D11_MESSAGE_ID_RESOURCE_MAP_ALREADYMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_DEVICEREMOVED_RETURN + D3D11_MESSAGE_ID_RESOURCE_MAP_DEVICEREMOVED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_RESOURCE_MAP_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_MAP_WITHOUT_INITIAL_DISCARD + D3D11_MESSAGE_ID_RESOURCE_MAP_WITHOUT_INITIAL_DISCARD + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_UNMAP_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_RESOURCE_UNMAP_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED + D3D11_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RASTERIZING_CONTROL_POINTS + D3D11_MESSAGE_ID_DEVICE_DRAW_RASTERIZING_CONTROL_POINTS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH + D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_CONTEXT + D3D11_MESSAGE_ID_CREATE_CONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_CONTEXT + D3D11_MESSAGE_ID_LIVE_CONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_CONTEXT + D3D11_MESSAGE_ID_DESTROY_CONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_BUFFER + D3D11_MESSAGE_ID_CREATE_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_BUFFER_WIN7 + D3D11_MESSAGE_ID_LIVE_BUFFER_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_BUFFER + D3D11_MESSAGE_ID_DESTROY_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_TEXTURE1D + D3D11_MESSAGE_ID_CREATE_TEXTURE1D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE1D_WIN7 + D3D11_MESSAGE_ID_LIVE_TEXTURE1D_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_TEXTURE1D + D3D11_MESSAGE_ID_DESTROY_TEXTURE1D + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_TEXTURE2D + D3D11_MESSAGE_ID_CREATE_TEXTURE2D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE2D_WIN7 + D3D11_MESSAGE_ID_LIVE_TEXTURE2D_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_TEXTURE2D + D3D11_MESSAGE_ID_DESTROY_TEXTURE2D + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_TEXTURE3D + D3D11_MESSAGE_ID_CREATE_TEXTURE3D + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_TEXTURE3D_WIN7 + D3D11_MESSAGE_ID_LIVE_TEXTURE3D_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_TEXTURE3D + D3D11_MESSAGE_ID_DESTROY_TEXTURE3D + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_SHADERRESOURCEVIEW + D3D11_MESSAGE_ID_CREATE_SHADERRESOURCEVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW_WIN7 + D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_SHADERRESOURCEVIEW + D3D11_MESSAGE_ID_DESTROY_SHADERRESOURCEVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_RENDERTARGETVIEW + D3D11_MESSAGE_ID_CREATE_RENDERTARGETVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW_WIN7 + D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_RENDERTARGETVIEW + D3D11_MESSAGE_ID_DESTROY_RENDERTARGETVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILVIEW + D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW_WIN7 + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILVIEW + D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_VERTEXSHADER + D3D11_MESSAGE_ID_CREATE_VERTEXSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_VERTEXSHADER_WIN7 + D3D11_MESSAGE_ID_LIVE_VERTEXSHADER_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_VERTEXSHADER + D3D11_MESSAGE_ID_DESTROY_VERTEXSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_HULLSHADER + D3D11_MESSAGE_ID_CREATE_HULLSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_HULLSHADER + D3D11_MESSAGE_ID_LIVE_HULLSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_HULLSHADER + D3D11_MESSAGE_ID_DESTROY_HULLSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_DOMAINSHADER + D3D11_MESSAGE_ID_CREATE_DOMAINSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DOMAINSHADER + D3D11_MESSAGE_ID_LIVE_DOMAINSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_DOMAINSHADER + D3D11_MESSAGE_ID_DESTROY_DOMAINSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_GEOMETRYSHADER + D3D11_MESSAGE_ID_CREATE_GEOMETRYSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER_WIN7 + D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_GEOMETRYSHADER + D3D11_MESSAGE_ID_DESTROY_GEOMETRYSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_PIXELSHADER + D3D11_MESSAGE_ID_CREATE_PIXELSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PIXELSHADER_WIN7 + D3D11_MESSAGE_ID_LIVE_PIXELSHADER_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_PIXELSHADER + D3D11_MESSAGE_ID_DESTROY_PIXELSHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_INPUTLAYOUT + D3D11_MESSAGE_ID_CREATE_INPUTLAYOUT + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT_WIN7 + D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_INPUTLAYOUT + D3D11_MESSAGE_ID_DESTROY_INPUTLAYOUT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_SAMPLER + D3D11_MESSAGE_ID_CREATE_SAMPLER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_SAMPLER_WIN7 + D3D11_MESSAGE_ID_LIVE_SAMPLER_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_SAMPLER + D3D11_MESSAGE_ID_DESTROY_SAMPLER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_BLENDSTATE + D3D11_MESSAGE_ID_CREATE_BLENDSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_BLENDSTATE_WIN7 + D3D11_MESSAGE_ID_LIVE_BLENDSTATE_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_BLENDSTATE + D3D11_MESSAGE_ID_DESTROY_BLENDSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILSTATE + D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE_WIN7 + D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILSTATE + D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_RASTERIZERSTATE + D3D11_MESSAGE_ID_CREATE_RASTERIZERSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE_WIN7 + D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_RASTERIZERSTATE + D3D11_MESSAGE_ID_DESTROY_RASTERIZERSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_QUERY + D3D11_MESSAGE_ID_CREATE_QUERY + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_QUERY_WIN7 + D3D11_MESSAGE_ID_LIVE_QUERY_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_QUERY + D3D11_MESSAGE_ID_DESTROY_QUERY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_PREDICATE + D3D11_MESSAGE_ID_CREATE_PREDICATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PREDICATE_WIN7 + D3D11_MESSAGE_ID_LIVE_PREDICATE_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_PREDICATE + D3D11_MESSAGE_ID_DESTROY_PREDICATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_COUNTER + D3D11_MESSAGE_ID_CREATE_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_COUNTER + D3D11_MESSAGE_ID_DESTROY_COUNTER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_COMMANDLIST + D3D11_MESSAGE_ID_CREATE_COMMANDLIST + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_COMMANDLIST + D3D11_MESSAGE_ID_LIVE_COMMANDLIST + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_COMMANDLIST + D3D11_MESSAGE_ID_DESTROY_COMMANDLIST + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_CLASSINSTANCE + D3D11_MESSAGE_ID_CREATE_CLASSINSTANCE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_CLASSINSTANCE + D3D11_MESSAGE_ID_LIVE_CLASSINSTANCE + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_CLASSINSTANCE + D3D11_MESSAGE_ID_DESTROY_CLASSINSTANCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_CLASSLINKAGE + D3D11_MESSAGE_ID_CREATE_CLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_CLASSLINKAGE + D3D11_MESSAGE_ID_LIVE_CLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_CLASSLINKAGE + D3D11_MESSAGE_ID_DESTROY_CLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEVICE_WIN7 + D3D11_MESSAGE_ID_LIVE_DEVICE_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY_WIN7 + D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY_WIN7 + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_COMPUTESHADER + D3D11_MESSAGE_ID_CREATE_COMPUTESHADER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_COMPUTESHADER + D3D11_MESSAGE_ID_LIVE_COMPUTESHADER + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_COMPUTESHADER + D3D11_MESSAGE_ID_DESTROY_COMPUTESHADER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_UNORDEREDACCESSVIEW + D3D11_MESSAGE_ID_CREATE_UNORDEREDACCESSVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_UNORDEREDACCESSVIEW + D3D11_MESSAGE_ID_LIVE_UNORDEREDACCESSVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_UNORDEREDACCESSVIEW + D3D11_MESSAGE_ID_DESTROY_UNORDEREDACCESSVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACES_FEATURELEVEL + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACES_FEATURELEVEL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_INDEX + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_INDEX + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_TYPE + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_TYPE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_DATA + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_DATA + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA + D3D11_MESSAGE_ID_DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS + D3D11_MESSAGE_ID_DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATESHADER_CLASSLINKAGE_FULL + D3D11_MESSAGE_ID_DEVICE_CREATESHADER_CLASSLINKAGE_FULL + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN + D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_HAZARD + D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_HAZARD + D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCALL + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCALL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERTYPE + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE + D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFER + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSTRUCTURESTRIDE + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSTRUCTURESTRIDE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFLAGS + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_DENORMFLUSH + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_DENORMFLUSH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY + D3D11_MESSAGE_ID_DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS + D3D11_MESSAGE_ID_CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD + D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT + D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE + D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DEPTH_READONLY + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DEPTH_READONLY + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_STENCIL_READONLY + D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_STENCIL_READONLY + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKFEATURESUPPORT_FORMAT_DEPRECATED + D3D11_MESSAGE_ID_CHECKFEATURESUPPORT_FORMAT_DEPRECATED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP + D3D11_MESSAGE_ID_DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED + D3D11_MESSAGE_ID_DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW + D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO + D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCH_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DISPATCH_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDOFFSET + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_LARGEOFFSET + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_LARGEOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDSOURCESTATE + D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDSOURCESTATE + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED + D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS + D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING + D3D11_MESSAGE_ID_REF_WARNING + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV + D3D11_MESSAGE_ID_DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV + + + + No documentation. + + D3D11_MESSAGE_ID_SHADER_ABORT + D3D11_MESSAGE_ID_SHADER_ABORT + + + + No documentation. + + D3D11_MESSAGE_ID_SHADER_MESSAGE + D3D11_MESSAGE_ID_SHADER_MESSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_SHADER_ERROR + D3D11_MESSAGE_ID_SHADER_ERROR + + + + No documentation. + + D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDRESOURCE + D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_HSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_DSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETSAMPLERS_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_CSSETSAMPLERS_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_HSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_DSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETSHADER_UNBINDDELETINGOBJECT + D3D11_MESSAGE_ID_CSSETSHADER_UNBINDDELETINGOBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_ENQUEUESETEVENT_INVALIDARG_RETURN + D3D11_MESSAGE_ID_ENQUEUESETEVENT_INVALIDARG_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_ENQUEUESETEVENT_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_ENQUEUESETEVENT_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_ENQUEUESETEVENT_ACCESSDENIED_RETURN + D3D11_MESSAGE_ID_ENQUEUESETEVENT_ACCESSDENIED_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE + + + + No documentation. + + D3D11_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT + D3D11_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_MESSAGES_END + D3D11_MESSAGE_ID_D3D11_MESSAGES_END + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_1_MESSAGES_START + D3D11_MESSAGE_ID_D3D11_1_MESSAGES_START + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_VIDEODECODER + D3D11_MESSAGE_ID_CREATE_VIDEODECODER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSORENUM + D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSORENUM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSOR + D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSOR + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_DECODEROUTPUTVIEW + D3D11_MESSAGE_ID_CREATE_DECODEROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_PROCESSORINPUTVIEW + D3D11_MESSAGE_ID_CREATE_PROCESSORINPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_PROCESSOROUTPUTVIEW + D3D11_MESSAGE_ID_CREATE_PROCESSOROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_DEVICECONTEXTSTATE + D3D11_MESSAGE_ID_CREATE_DEVICECONTEXTSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_VIDEODECODER + D3D11_MESSAGE_ID_LIVE_VIDEODECODER + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSORENUM + D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSORENUM + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSOR + D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSOR + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DECODEROUTPUTVIEW + D3D11_MESSAGE_ID_LIVE_DECODEROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PROCESSORINPUTVIEW + D3D11_MESSAGE_ID_LIVE_PROCESSORINPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_PROCESSOROUTPUTVIEW + D3D11_MESSAGE_ID_LIVE_PROCESSOROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_DEVICECONTEXTSTATE + D3D11_MESSAGE_ID_LIVE_DEVICECONTEXTSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_VIDEODECODER + D3D11_MESSAGE_ID_DESTROY_VIDEODECODER + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSORENUM + D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSORENUM + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSOR + D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSOR + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_DECODEROUTPUTVIEW + D3D11_MESSAGE_ID_DESTROY_DECODEROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_PROCESSORINPUTVIEW + D3D11_MESSAGE_ID_DESTROY_PROCESSORINPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_PROCESSOROUTPUTVIEW + D3D11_MESSAGE_ID_DESTROY_PROCESSOROUTPUTVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_DEVICECONTEXTSTATE + D3D11_MESSAGE_ID_DESTROY_DEVICECONTEXTSTATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFLAGS + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDREFIID + D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDREFIID + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DISCARDVIEW_INVALIDVIEW + D3D11_MESSAGE_ID_DEVICE_DISCARDVIEW_INVALIDVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE1_INVALIDCOPYFLAGS + D3D11_MESSAGE_ID_UPDATESUBRESOURCE1_INVALIDCOPYFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEODECODER_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEODECODER_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEVIDEODECODER_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_ZEROWIDTHHEIGHT + D3D11_MESSAGE_ID_CREATEVIDEODECODER_ZEROWIDTHHEIGHT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE + D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE + D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_INVALIDINDEX + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_INVALIDINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_NULLPARAM + D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_INVALIDINDEX + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_INVALIDINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERCREATIONPARAMS_NULLPARAM + D3D11_MESSAGE_ID_GETDECODERCREATIONPARAMS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERDRIVERHANDLE_NULLPARAM + D3D11_MESSAGE_ID_GETDECODERDRIVERHANDLE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERBUFFER_NULLPARAM + D3D11_MESSAGE_ID_GETDECODERBUFFER_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDBUFFER + D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDBUFFER + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDTYPE + D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERBUFFER_LOCKED + D3D11_MESSAGE_ID_GETDECODERBUFFER_LOCKED + + + + No documentation. + + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NULLPARAM + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_INVALIDTYPE + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NOTLOCKED + D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NOTLOCKED + + + + No documentation. + + D3D11_MESSAGE_ID_DECODERBEGINFRAME_NULLPARAM + D3D11_MESSAGE_ID_DECODERBEGINFRAME_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_DECODERBEGINFRAME_HAZARD + D3D11_MESSAGE_ID_DECODERBEGINFRAME_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_DECODERENDFRAME_NULLPARAM + D3D11_MESSAGE_ID_DECODERENDFRAME_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_NULLPARAM + D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_INVALIDTYPE + D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_DECODEREXTENSION_NULLPARAM + D3D11_MESSAGE_ID_DECODEREXTENSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_DECODEREXTENSION_INVALIDRESOURCE + D3D11_MESSAGE_ID_DECODEREXTENSION_INVALIDRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCONTENTDESC_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCONTENTDESC_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMAT_NULLPARAM + D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCAPS_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCAPS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX + D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX + D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED + D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_TARGETRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_TARGETRECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDOUTPUT + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDOUTPUT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDPASTFRAMES + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDPASTFRAMES + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAYSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAYSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAY + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTEXPECTED + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTEXPECTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTNOTEXPECTED + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTNOTEXPECTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_STEREONOTENABLED + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_STEREONOTENABLED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NOSTEREOSTREAMS + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NOSTEREOSTREAMS + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INPUTHAZARD + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INPUTHAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_OUTPUTHAZARD + D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_OUTPUTHAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION + D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS + D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_LOCKEDOUT_INTERFACE + D3D11_MESSAGE_ID_DEVICE_LOCKEDOUT_INTERFACE + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING_ATOMIC_INCONSISTENT + D3D11_MESSAGE_ID_REF_WARNING_ATOMIC_INCONSISTENT + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING_READING_UNINITIALIZED_RESOURCE + D3D11_MESSAGE_ID_REF_WARNING_READING_UNINITIALIZED_RESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING_RAW_HAZARD + D3D11_MESSAGE_ID_REF_WARNING_RAW_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING_WAR_HAZARD + D3D11_MESSAGE_ID_REF_WARNING_WAR_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_REF_WARNING_WAW_HAZARD + D3D11_MESSAGE_ID_REF_WARNING_WAW_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECRYPTOSESSION_NULLPARAM + D3D11_MESSAGE_ID_CREATECRYPTOSESSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATECRYPTOSESSION_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATECRYPTOSESSION_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOTYPE_NULLPARAM + D3D11_MESSAGE_ID_GETCRYPTOTYPE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETDECODERPROFILE_NULLPARAM + D3D11_MESSAGE_ID_GETDECODERPROFILE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_NULLPARAM + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE + D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_WRONGSIZE + D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_WRONGSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM + D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_UNSUPPORTED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_NULLPARAM + D3D11_MESSAGE_ID_ENCRYPTIONBLT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_WRONGDEVICE + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_WRONGDEVICE + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_WRONGDEVICE + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_WRONGDEVICE + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_FORMAT_MISMATCH + D3D11_MESSAGE_ID_ENCRYPTIONBLT_FORMAT_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SIZE_MISMATCH + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SIZE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MULTISAMPLED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MULTISAMPLED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_NOT_STAGING + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_NOT_STAGING + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MAPPED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_MAPPED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_OFFERED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_OFFERED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_OFFERED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_OFFERED + + + + No documentation. + + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED + D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_UNSUPPORTED + D3D11_MESSAGE_ID_DECRYPTIONBLT_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_NULLPARAM + D3D11_MESSAGE_ID_DECRYPTIONBLT_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_WRONGDEVICE + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_WRONGDEVICE + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_WRONGDEVICE + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_WRONGDEVICE + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_FORMAT_MISMATCH + D3D11_MESSAGE_ID_DECRYPTIONBLT_FORMAT_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SIZE_MISMATCH + D3D11_MESSAGE_ID_DECRYPTIONBLT_SIZE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MULTISAMPLED + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MULTISAMPLED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_NOT_STAGING + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_NOT_STAGING + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_NOT_RENDER_TARGET + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_NOT_RENDER_TARGET + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_MAPPED + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MAPPED + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MAPPED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_OFFERED + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_OFFERED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_OFFERED + D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_OFFERED + + + + No documentation. + + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_CONTENT_UNDEFINED + D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_CONTENT_UNDEFINED + + + + No documentation. + + D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_NULLPARAM + D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_INVALIDSIZE + D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_FINISHSESSIONKEYREFRESH_NULLPARAM + D3D11_MESSAGE_ID_FINISHSESSIONKEYREFRESH_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_NULLPARAM + D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_INVALIDSIZE + D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_GETCONTENTPROTECTIONCAPS_NULLPARAM + D3D11_MESSAGE_ID_GETCONTENTPROTECTIONCAPS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_NULLPARAM + D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX + D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_NULLPARAM + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN + D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN + + + + No documentation. + + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE + D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_NULLPARAM + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY + + + + No documentation. + + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGSIZE + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX + D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE + + + + No documentation. + + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE + D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE + D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE + D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDPRIORITY + D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDPRIORITY + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_OUTOFMEMORY + D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_OUTOFMEMORY + + + + No documentation. + + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_NULLPARAM + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDTYPE + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDBIND + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDBIND + + + + No documentation. + + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDARRAY + D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDARRAY + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALID + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALID + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDVIEW + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDVIEW + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_MINPRECISION + D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_MINPRECISION + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS + D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_NOTSUPPORTED + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_NOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_SWAPDEVICECONTEXTSTATE_NOTSUPPORTED + D3D11_MESSAGE_ID_SWAPDEVICECONTEXTSTATE_NOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1 + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1 + + + + No documentation. + + D3D11_MESSAGE_ID_GETDC_INACCESSIBLE + D3D11_MESSAGE_ID_GETDC_INACCESSIBLE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDRECT + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDRECT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9 + D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9 + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED + D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_ENQUEUESETEVENT_NOT_SUPPORTED + D3D11_MESSAGE_ID_ENQUEUESETEVENT_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_OFFERRELEASE_NOT_SUPPORTED + D3D11_MESSAGE_ID_OFFERRELEASE_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_OFFERRESOURCES_INACCESSIBLE + D3D11_MESSAGE_ID_OFFERRESOURCES_INACCESSIBLE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA + D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT + D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_EMPTYDESTBOX + D3D11_MESSAGE_ID_UPDATESUBRESOURCE_EMPTYDESTBOX + + + + No documentation. + + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_EMPTYSOURCEBOX + D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_EMPTYSOURCEBOX + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS + D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET + D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT + D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT + D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT + + + + No documentation. + + D3D11_MESSAGE_ID_GETDATAFORNEWHARDWAREKEY_NULLPARAM + D3D11_MESSAGE_ID_GETDATAFORNEWHARDWAREKEY_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKCRYPTOSESSIONSTATUS_NULLPARAM + D3D11_MESSAGE_ID_CHECKCRYPTOSESSIONSTATUS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM + D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_NULLPARAM + D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT + D3D11_MESSAGE_ID_GETVIDEODECODERCAPS_ZEROWIDTHHEIGHT + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT + D3D11_MESSAGE_ID_CHECKVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM + D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEODECODERENABLEDOWNSAMPLING_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM + D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEODECODERUPDATEDOWNSAMPLING_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM + D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMATCONVERSION_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE1_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE1_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE1_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMMIRROR_UNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_INVALIDCOLORSPACE + + + + No documentation. + + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT + D3D11_MESSAGE_ID_RECOMMENDVIDEODECODERDOWNSAMPLING_ZEROWIDTHHEIGHT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSHADERUSAGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSHADERUSAGE_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSTREAMCOUNT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_TARGETRECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDSOURCERECT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT + D3D11_MESSAGE_ID_VIDEOPROCESSORGETBEHAVIORHINTS_INVALIDDESTRECT + + + + No documentation. + + D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE + D3D11_MESSAGE_ID_GETCRYPTOSESSIONPRIVATEDATASIZE_INVALID_KEY_EXCHANGE_TYPE + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_1_MESSAGES_END + D3D11_MESSAGE_ID_D3D11_1_MESSAGES_END + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_2_MESSAGES_START + D3D11_MESSAGE_ID_D3D11_2_MESSAGES_START + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDUSAGE + D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDUSAGE + D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDUSAGE + D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1 + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_STEPRATE_NOT_1 + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED + D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_LEVEL9_INSTANCING_NOT_SUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER + D3D11_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER + D3D11_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_COPYTILES_INVALID_PARAMETER + D3D11_MESSAGE_ID_COPYTILES_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_UPDATETILES_INVALID_PARAMETER + D3D11_MESSAGE_ID_UPDATETILES_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_RESIZETILEPOOL_INVALID_PARAMETER + D3D11_MESSAGE_ID_RESIZETILEPOOL_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_TILEDRESOURCEBARRIER_INVALID_PARAMETER + D3D11_MESSAGE_ID_TILEDRESOURCEBARRIER_INVALID_PARAMETER + + + + No documentation. + + D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_WARNING + D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_WARNING + + + + No documentation. + + D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_ERROR + D3D11_MESSAGE_ID_NULL_TILE_MAPPING_ACCESS_ERROR + + + + No documentation. + + D3D11_MESSAGE_ID_DIRTY_TILE_MAPPING_ACCESS + D3D11_MESSAGE_ID_DIRTY_TILE_MAPPING_ACCESS + + + + No documentation. + + D3D11_MESSAGE_ID_DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA + D3D11_MESSAGE_ID_DUPLICATE_TILE_MAPPINGS_IN_COVERED_AREA + + + + No documentation. + + D3D11_MESSAGE_ID_TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE + D3D11_MESSAGE_ID_TILE_MAPPINGS_IN_COVERED_AREA_DUPLICATED_OUTSIDE + + + + No documentation. + + D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES + D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INCOMPATIBLE_RESOURCES + + + + No documentation. + + D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT + D3D11_MESSAGE_ID_TILE_MAPPINGS_SHARED_BETWEEN_INPUT_AND_OUTPUT + + + + No documentation. + + D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS + D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_INVALIDFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_GETRESOURCETILING_NONTILED_RESOURCE + D3D11_MESSAGE_ID_GETRESOURCETILING_NONTILED_RESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END + D3D11_MESSAGE_ID_RESIZETILEPOOL_SHRINK_WITH_MAPPINGS_STILL_DEFINED_PAST_END + + + + No documentation. + + D3D11_MESSAGE_ID_NEED_TO_CALL_TILEDRESOURCEBARRIER + D3D11_MESSAGE_ID_NEED_TO_CALL_TILEDRESOURCEBARRIER + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICE_INVALIDARGS + D3D11_MESSAGE_ID_CREATEDEVICE_INVALIDARGS + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEDEVICE_WARNING + D3D11_MESSAGE_ID_CREATEDEVICE_WARNING + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWUINT_HAZARD + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWUINT_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD + D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH + D3D11_MESSAGE_ID_TILED_RESOURCE_TIER_1_BUFFER_TEXTURE_MISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_CRYPTOSESSION + D3D11_MESSAGE_ID_CREATE_CRYPTOSESSION + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_AUTHENTICATEDCHANNEL + D3D11_MESSAGE_ID_CREATE_AUTHENTICATEDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_CRYPTOSESSION + D3D11_MESSAGE_ID_LIVE_CRYPTOSESSION + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_AUTHENTICATEDCHANNEL + D3D11_MESSAGE_ID_LIVE_AUTHENTICATEDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_CRYPTOSESSION + D3D11_MESSAGE_ID_DESTROY_CRYPTOSESSION + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_AUTHENTICATEDCHANNEL + D3D11_MESSAGE_ID_DESTROY_AUTHENTICATEDCHANNEL + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_2_MESSAGES_END + D3D11_MESSAGE_ID_D3D11_2_MESSAGES_END + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_3_MESSAGES_START + D3D11_MESSAGE_ID_D3D11_3_MESSAGES_START + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE + D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_SYSTEMVALUE + D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_SYSTEMVALUE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDCONTEXTTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_DECODENOTSUPPORTED + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_DECODENOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_ENCODENOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_AMBIGUOUSVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANEINDEX + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_AMBIGUOUSVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX + D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_AMBIGUOUSVIDEOPLANEINDEX + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSCANDATAOFFSET + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSCANDATAOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_NOTSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_NOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_DIMENSIONSTOOLARGE + D3D11_MESSAGE_ID_JPEGDECODE_DIMENSIONSTOOLARGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOMPONENTS + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOMPONENTS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_DESTINATIONNOT2D + D3D11_MESSAGE_ID_JPEGDECODE_DESTINATIONNOT2D + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_TILEDRESOURCESUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_TILEDRESOURCESUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_GUARDRECTSUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_GUARDRECTSUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_FORMATUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_FORMATUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDMIPLEVEL + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDMIPLEVEL + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_EMPTYDESTBOX + D3D11_MESSAGE_ID_JPEGDECODE_EMPTYDESTBOX + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOT2D + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOT2D + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOTSUB + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXNOTSUB + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXESINTERSECT + D3D11_MESSAGE_ID_JPEGDECODE_DESTBOXESINTERSECT + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEMISMATCH + D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEMISMATCH + D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEODD + D3D11_MESSAGE_ID_JPEGDECODE_XSUBSAMPLEODD + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEODD + D3D11_MESSAGE_ID_JPEGDECODE_YSUBSAMPLEODD + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE + D3D11_MESSAGE_ID_JPEGDECODE_OUTPUTDIMENSIONSTOOLARGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_NONPOW2SCALEUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_NONPOW2SCALEUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_FRACTIONALDOWNSCALETOLARGE + D3D11_MESSAGE_ID_JPEGDECODE_FRACTIONALDOWNSCALETOLARGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_CHROMASIZEMISMATCH + D3D11_MESSAGE_ID_JPEGDECODE_CHROMASIZEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_LUMACHROMASIZEMISMATCH + D3D11_MESSAGE_ID_JPEGDECODE_LUMACHROMASIZEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDNUMDESTINATIONS + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDNUMDESTINATIONS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_SUBBOXUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_SUBBOXUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_1DESTUNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_JPEGDECODE_1DESTUNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_3DESTUNSUPPORTEDFORMAT + D3D11_MESSAGE_ID_JPEGDECODE_3DESTUNSUPPORTEDFORMAT + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_SCALEUNSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_SCALEUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSOURCESIZE + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDSOURCESIZE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOPYFLAGS + D3D11_MESSAGE_ID_JPEGDECODE_INVALIDCOPYFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_HAZARD + D3D11_MESSAGE_ID_JPEGDECODE_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDSRCBUFFERMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPORTEDDSTTEXTUREUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_BACKBUFFERNOTSUPPORTED + D3D11_MESSAGE_ID_JPEGDECODE_BACKBUFFERNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPRTEDCOPYFLAGS + D3D11_MESSAGE_ID_JPEGDECODE_UNSUPPRTEDCOPYFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_NOTSUPPORTED + D3D11_MESSAGE_ID_JPEGENCODE_NOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSCANDATAOFFSET + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSCANDATAOFFSET + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDCOMPONENTS + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDCOMPONENTS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_SOURCENOT2D + D3D11_MESSAGE_ID_JPEGENCODE_SOURCENOT2D + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_TILEDRESOURCESUNSUPPORTED + D3D11_MESSAGE_ID_JPEGENCODE_TILEDRESOURCESUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_GUARDRECTSUNSUPPORTED + D3D11_MESSAGE_ID_JPEGENCODE_GUARDRECTSUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_XSUBSAMPLEMISMATCH + D3D11_MESSAGE_ID_JPEGENCODE_XSUBSAMPLEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_YSUBSAMPLEMISMATCH + D3D11_MESSAGE_ID_JPEGENCODE_YSUBSAMPLEMISMATCH + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_FORMATUNSUPPORTED + D3D11_MESSAGE_ID_JPEGENCODE_FORMATUNSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSUBRESOURCE + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDSUBRESOURCE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDMIPLEVEL + D3D11_MESSAGE_ID_JPEGENCODE_INVALIDMIPLEVEL + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_DIMENSIONSTOOLARGE + D3D11_MESSAGE_ID_JPEGENCODE_DIMENSIONSTOOLARGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_HAZARD + D3D11_MESSAGE_ID_JPEGENCODE_HAZARD + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDDSTBUFFERMISCFLAGS + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE + D3D11_MESSAGE_ID_JPEGENCODE_UNSUPPORTEDSRCTEXTUREUSAGE + + + + No documentation. + + D3D11_MESSAGE_ID_JPEGENCODE_BACKBUFFERNOTSUPPORTED + D3D11_MESSAGE_ID_JPEGENCODE_BACKBUFFERNOTSUPPORTED + + + + No documentation. + + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY + D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNSUPPORTEDCONTEXTTTYPEFORQUERY + + + + No documentation. + + D3D11_MESSAGE_ID_FLUSH1_INVALIDCONTEXTTYPE + D3D11_MESSAGE_ID_FLUSH1_INVALIDCONTEXTTYPE + + + + No documentation. + + D3D11_MESSAGE_ID_DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT + D3D11_MESSAGE_ID_DEVICE_SETHARDWAREPROTECTION_INVALIDCONTEXT + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTHDRMETADATA_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTHDRMETADATA_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMHDRMETADATA_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_NULLPARAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMHDRMETADATA_INVALIDSIZE + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE1_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM + D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMMIRROR_INVALIDSTREAM + + + + No documentation. + + D3D11_MESSAGE_ID_CREATE_FENCE + D3D11_MESSAGE_ID_CREATE_FENCE + + + + No documentation. + + D3D11_MESSAGE_ID_LIVE_FENCE + D3D11_MESSAGE_ID_LIVE_FENCE + + + + No documentation. + + D3D11_MESSAGE_ID_DESTROY_FENCE + D3D11_MESSAGE_ID_DESTROY_FENCE + + + + No documentation. + + D3D11_MESSAGE_ID_D3D11_3_MESSAGES_END + D3D11_MESSAGE_ID_D3D11_3_MESSAGES_END + + + +

Debug message severity levels for an information queue.

+
+ +

Use these values to allow or deny message categories to pass through the storage and retrieval filters for an information queue (see ). This API is used by ID3D11InfoQueue::AddApplicationMessage.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY + D3D11_MESSAGE_SEVERITY +
+ + +

Defines some type of corruption which has occurred.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY_CORRUPTION + D3D11_MESSAGE_SEVERITY_CORRUPTION +
+ + +

Defines an error message.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY_ERROR + D3D11_MESSAGE_SEVERITY_ERROR +
+ + +

Defines a warning message.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY_WARNING + D3D11_MESSAGE_SEVERITY_WARNING +
+ + +

Defines an information message.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY_INFO + D3D11_MESSAGE_SEVERITY_INFO +
+ + +

Defines a message other than corruption, error, warning, or information.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476187 + D3D11_MESSAGE_SEVERITY_MESSAGE + D3D11_MESSAGE_SEVERITY_MESSAGE +
+ + +

Tell the hardware that if it is not yet sure if something is hidden or not to draw it anyway. This is only used with an occlusion predicate. Predication data cannot be returned to your application via ID3D11DeviceContext::GetData when using this flag.

+
+ ff476196 + D3D11_QUERY_MISC_PREDICATEHINT + D3D11_QUERY_MISC_PREDICATEHINT +
+ + + None + + None + None + + + +

Query types.

+
+ +

Create a query with ID3D11Device::CreateQuery.

+
+ ff476191 + D3D11_QUERY + D3D11_QUERY +
+ + +

Determines whether or not the GPU is finished processing commands. When the GPU is finished processing commands ID3D11DeviceContext::GetData will return , and pData will point to a with a value of TRUE. When using this type of query, ID3D11DeviceContext::Begin is disabled.

+
+ ff476191 + D3D11_QUERY_EVENT + D3D11_QUERY_EVENT +
+ + +

Get the number of samples that passed the depth and stencil tests in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a UINT64. If a depth or stencil test is disabled, then each of those tests will be counted as a pass.

+
+ ff476191 + D3D11_QUERY_OCCLUSION + D3D11_QUERY_OCCLUSION +
+ + +

Get a timestamp value where ID3D11DeviceContext::GetData returns a UINT64. This kind of query is only useful if two timestamp queries are done in the middle of a D3D11_QUERY_TIMESTAMP_DISJOINT query. The difference of two timestamps can be used to determine how many ticks have elapsed, and the D3D11_QUERY_TIMESTAMP_DISJOINT query will determine if that difference is a reliable value and also has a value that shows how to convert the number of ticks into seconds. See . When using this type of query, ID3D11DeviceContext::Begin is disabled.

+
+ ff476191 + D3D11_QUERY_TIMESTAMP + D3D11_QUERY_TIMESTAMP +
+ + +

Determines whether or not a D3D11_QUERY_TIMESTAMP is returning reliable values, and also gives the frequency of the processor enabling you to convert the number of elapsed ticks into seconds. ID3D11DeviceContext::GetData will return a . This type of query should only be invoked once per frame or less.

+
+ ff476191 + D3D11_QUERY_TIMESTAMP_DISJOINT + D3D11_QUERY_TIMESTAMP_DISJOINT +
+ + +

Get pipeline statistics, such as the number of pixel shader invocations in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a .

+
+ ff476191 + D3D11_QUERY_PIPELINE_STATISTICS + D3D11_QUERY_PIPELINE_STATISTICS +
+ + +

Similar to D3D11_QUERY_OCCLUSION, except ID3D11DeviceContext::GetData returns a indicating whether or not any samples passed the depth and stencil tests - TRUE meaning at least one passed, meaning none passed.

+
+ ff476191 + D3D11_QUERY_OCCLUSION_PREDICATE + D3D11_QUERY_OCCLUSION_PREDICATE +
+ + +

Get streaming output statistics, such as the number of primitives streamed out in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a structure.

+
+ ff476191 + D3D11_QUERY_SO_STATISTICS + D3D11_QUERY_SO_STATISTICS +
+ + +

Determines whether or not any of the streaming output buffers overflowed in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a - TRUE meaning there was an overflow, meaning there was not an overflow. If streaming output writes to multiple buffers, and one of the buffers overflows, then it will stop writing to all the output buffers. When an overflow is detected by Direct3D it is prevented from happening - no memory is corrupted. This predication may be used in conjunction with an SO_STATISTICS query so that when an overflow occurs the SO_STATISTIC query will let the application know how much memory was needed to prevent an overflow.

+
+ ff476191 + D3D11_QUERY_SO_OVERFLOW_PREDICATE + D3D11_QUERY_SO_OVERFLOW_PREDICATE +
+ + +

Get streaming output statistics for stream 0, such as the number of primitives streamed out in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a structure.

+
+ ff476191 + D3D11_QUERY_SO_STATISTICS_STREAM0 + D3D11_QUERY_SO_STATISTICS_STREAM0 +
+ + +

Determines whether or not the stream 0 output buffers overflowed in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a - TRUE meaning there was an overflow, meaning there was not an overflow. If streaming output writes to multiple buffers, and one of the buffers overflows, then it will stop writing to all the output buffers. When an overflow is detected by Direct3D it is prevented from happening - no memory is corrupted. This predication may be used in conjunction with an SO_STATISTICS query so that when an overflow occurs the SO_STATISTIC query will let the application know how much memory was needed to prevent an overflow.

+
+ ff476191 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0 +
+ + +

Get streaming output statistics for stream 1, such as the number of primitives streamed out in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a structure.

+
+ ff476191 + D3D11_QUERY_SO_STATISTICS_STREAM1 + D3D11_QUERY_SO_STATISTICS_STREAM1 +
+ + +

Determines whether or not the stream 1 output buffers overflowed in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a - TRUE meaning there was an overflow, meaning there was not an overflow. If streaming output writes to multiple buffers, and one of the buffers overflows, then it will stop writing to all the output buffers. When an overflow is detected by Direct3D it is prevented from happening - no memory is corrupted. This predication may be used in conjunction with an SO_STATISTICS query so that when an overflow occurs the SO_STATISTIC query will let the application know how much memory was needed to prevent an overflow.

+
+ ff476191 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1 +
+ + +

Get streaming output statistics for stream 2, such as the number of primitives streamed out in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a structure.

+
+ ff476191 + D3D11_QUERY_SO_STATISTICS_STREAM2 + D3D11_QUERY_SO_STATISTICS_STREAM2 +
+ + +

Determines whether or not the stream 2 output buffers overflowed in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a - TRUE meaning there was an overflow, meaning there was not an overflow. If streaming output writes to multiple buffers, and one of the buffers overflows, then it will stop writing to all the output buffers. When an overflow is detected by Direct3D it is prevented from happening - no memory is corrupted. This predication may be used in conjunction with an SO_STATISTICS query so that when an overflow occurs the SO_STATISTIC query will let the application know how much memory was needed to prevent an overflow.

+
+ ff476191 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2 +
+ + +

Get streaming output statistics for stream 3, such as the number of primitives streamed out in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData will return a structure.

+
+ ff476191 + D3D11_QUERY_SO_STATISTICS_STREAM3 + D3D11_QUERY_SO_STATISTICS_STREAM3 +
+ + +

Determines whether or not the stream 3 output buffers overflowed in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End. ID3D11DeviceContext::GetData returns a - TRUE meaning there was an overflow, meaning there was not an overflow. If streaming output writes to multiple buffers, and one of the buffers overflows, then it will stop writing to all the output buffers. When an overflow is detected by Direct3D it is prevented from happening - no memory is corrupted. This predication may be used in conjunction with an SO_STATISTICS query so that when an overflow occurs the SO_STATISTIC query will let the application know how much memory was needed to prevent an overflow.

+
+ ff476191 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3 + D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3 +
+ + +

These flags identify the type of resource that will be viewed as a render target.

+
+ +

This enumeration is used in to create a render-target view.

+
+ ff476206 + D3D11_RTV_DIMENSION + D3D11_RTV_DIMENSION +
+ + +

Do not use this value, as it will cause ID3D11Device::CreateRenderTargetView to fail.

+
+ ff476206 + D3D11_RTV_DIMENSION_UNKNOWN + D3D11_RTV_DIMENSION_UNKNOWN +
+ + +

The resource will be accessed as a buffer.

+
+ ff476206 + D3D11_RTV_DIMENSION_BUFFER + D3D11_RTV_DIMENSION_BUFFER +
+ + +

The resource will be accessed as a 1D texture.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE1D + D3D11_RTV_DIMENSION_TEXTURE1D +
+ + +

The resource will be accessed as an array of 1D textures.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE1DARRAY + D3D11_RTV_DIMENSION_TEXTURE1DARRAY +
+ + +

The resource will be accessed as a 2D texture.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE2D + D3D11_RTV_DIMENSION_TEXTURE2D +
+ + +

The resource will be accessed as an array of 2D textures.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE2DARRAY + D3D11_RTV_DIMENSION_TEXTURE2DARRAY +
+ + +

The resource will be accessed as a 2D texture with multisampling.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE2DMS + D3D11_RTV_DIMENSION_TEXTURE2DMS +
+ + +

The resource will be accessed as an array of 2D textures with multisampling.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY + D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY +
+ + +

The resource will be accessed as a 3D texture.

+
+ ff476206 + D3D11_RTV_DIMENSION_TEXTURE3D + D3D11_RTV_DIMENSION_TEXTURE3D +
+ + +

Specifies to obtain a summary about a device object's lifetime.

+
+ ff476205 + D3D11_RLDO_SUMMARY + D3D11_RLDO_SUMMARY +
+ + +

Specifies to obtain detailed information about a device object's lifetime.

+
+ ff476205 + D3D11_RLDO_DETAIL + D3D11_RLDO_DETAIL +
+ + +

Do not use this enumeration constant. It is for internal use only.

+
+ ff476205 + D3D11_RLDO_IGNORE_INTERNAL + D3D11_RLDO_IGNORE_INTERNAL +
+ + + None + + None + None + + + +

Identifies the type of resource being used.

+
+ +

This enumeration is used in ID3D11Resource::GetType.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION + D3D11_RESOURCE_DIMENSION +
+ + +

Resource is of unknown type.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION_UNKNOWN + D3D11_RESOURCE_DIMENSION_UNKNOWN +
+ + +

Resource is a buffer.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION_BUFFER + D3D11_RESOURCE_DIMENSION_BUFFER +
+ + +

Resource is a 1D texture.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION_TEXTURE1D + D3D11_RESOURCE_DIMENSION_TEXTURE1D +
+ + +

Resource is a 2D texture.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION_TEXTURE2D + D3D11_RESOURCE_DIMENSION_TEXTURE2D +
+ + +

Resource is a 3D texture.

+
+ ff476202 + D3D11_RESOURCE_DIMENSION_TEXTURE3D + D3D11_RESOURCE_DIMENSION_TEXTURE3D +
+ + +

Enables MIP map generation by using ID3D11DeviceContext::GenerateMips on a texture resource. The resource must be created with the bind flags that specify that the resource is a render target and a shader resource.

+
+ ff476203 + D3D11_RESOURCE_MISC_GENERATE_MIPS + D3D11_RESOURCE_MISC_GENERATE_MIPS +
+ + +

Enables resource data sharing between two or more Direct3D devices. The only resources that can be shared are 2D non-mipmapped textures.

D3D11_RESOURCE_MISC_SHARED and D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX are mutually exclusive.

WARP and REF devices do not support shared resources. If you try to create a resource with this flag on either a WARP or REF device, the create method will return an E_OUTOFMEMORY error code.

Note?? Starting with Windows?8, WARP devices fully support shared resources. ? Note?? Starting with Windows?8, we recommend that you enable resource data sharing between two or more Direct3D devices by using a combination of the D3D11_RESOURCE_MISC_SHARED_NTHANDLE and D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flags instead. ?
+
+ ff476203 + D3D11_RESOURCE_MISC_SHARED + D3D11_RESOURCE_MISC_SHARED +
+ + +

Sets a resource to be a cube texture created from a Texture2DArray that contains 6 textures.

+
+ ff476203 + D3D11_RESOURCE_MISC_TEXTURECUBE + D3D11_RESOURCE_MISC_TEXTURECUBE +
+ + +

Enables instancing of GPU-generated content.

+
+ ff476203 + D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS + D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS +
+ + +

Enables a resource as a byte address buffer.

+
+ ff476203 + D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS + D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS +
+ + +

Enables a resource as a structured buffer.

+
+ ff476203 + D3D11_RESOURCE_MISC_BUFFER_STRUCTURED + D3D11_RESOURCE_MISC_BUFFER_STRUCTURED +
+ + +

Enables a resource with MIP map clamping for use with ID3D11DeviceContext::SetResourceMinLOD.

+
+ ff476203 + D3D11_RESOURCE_MISC_RESOURCE_CLAMP + D3D11_RESOURCE_MISC_RESOURCE_CLAMP +
+ + +

Enables the resource to be synchronized by using the IDXGIKeyedMutex::AcquireSync and IDXGIKeyedMutex::ReleaseSync APIs. The following Direct3D?11 resource creation APIs, that take parameters, have been extended to support the new flag.

  • ID3D11Device::CreateTexture1D
  • ID3D11Device::CreateTexture2D
  • ID3D11Device::CreateTexture3D
  • ID3D11Device::CreateBuffer

If you call any of these methods with the D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flag set, the interface returned will support the interface. You can retrieve a reference to the interface from the resource by using IUnknown::QueryInterface. The interface implements the IDXGIKeyedMutex::AcquireSync and IDXGIKeyedMutex::ReleaseSync APIs to synchronize access to the surface. The device that creates the surface, and any other device that opens the surface by using OpenSharedResource, must call IDXGIKeyedMutex::AcquireSync before they issue any rendering commands to the surface. When those devices finish rendering, they must call IDXGIKeyedMutex::ReleaseSync.

D3D11_RESOURCE_MISC_SHARED and D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX are mutually exclusive.

WARP and REF devices do not support shared resources. If you try to create a resource with this flag on either a WARP or REF device, the create method will return an E_OUTOFMEMORY error code.

Note?? Starting with Windows?8, WARP devices fully support shared resources. ?
+
+ ff476203 + D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX + D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX +
+ + +

Enables a resource compatible with GDI. You must set the D3D11_RESOURCE_MISC_GDI_COMPATIBLE flag on surfaces that you use with GDI. Setting the D3D11_RESOURCE_MISC_GDI_COMPATIBLE flag allows GDI rendering on the surface via IDXGISurface1::GetDC.

Consider the following programming tips for using D3D11_RESOURCE_MISC_GDI_COMPATIBLE when you create a texture or use that texture in a swap chain:

  • D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX and D3D11_RESOURCE_MISC_GDI_COMPATIBLE are mutually exclusive. Therefore, do not use them together.
  • D3D11_RESOURCE_MISC_RESOURCE_CLAMP and D3D11_RESOURCE_MISC_GDI_COMPATIBLE are mutually exclusive. Therefore, do not use them together.
  • You must bind the texture as a render target for the output-merger stage. For example, set the D3D11_BIND_RENDER_TARGET flag in the BindFlags member of the structure.
  • You must set the maximum number of MIP map levels to 1. For example, set the MipLevels member of the structure to 1.
  • You must specify that the texture requires read and write access by the GPU. For example, set the Usage member of the structure to D3D11_USAGE_DEFAULT.
  • You must set the texture format to one of the following types.

    • DXGI_FORMAT_B8G8R8A8_UNORM
    • DXGI_FORMAT_B8G8R8A8_TYPELESS
    • DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
    For example, set the Format member of the structure to one of these types.
  • You cannot use D3D11_RESOURCE_MISC_GDI_COMPATIBLE with multisampling. Therefore, set the Count member of the structure to 1. Then, set the SampleDesc member of the structure to this structure.
+
+ ff476203 + D3D11_RESOURCE_MISC_GDI_COMPATIBLE + D3D11_RESOURCE_MISC_GDI_COMPATIBLE +
+ + +

Set this flag to enable the use of NT HANDLE values when you create a shared resource. By enabling this flag, you deprecate the use of existing HANDLE values.

When you use this flag, you must combine it with the D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flag by using a bitwise OR operation. The resulting value specifies a new shared resource type that directs the runtime to use NT HANDLE values for the shared resource. The runtime then must confirm that the shared resource works on all hardware at the specified feature level.

Without this flag set, the runtime does not strictly validate shared resource parameters (that is, formats, flags, usage, and so on). When the runtime does not validate shared resource parameters, behavior of much of the Direct3D API might be undefined and might vary from driver to driver.

Direct3D 11 and earlier:??This value is not supported until Direct3D 11.1.

+
+ ff476203 + D3D11_RESOURCE_MISC_SHARED_NTHANDLE + D3D11_RESOURCE_MISC_SHARED_NTHANDLE +
+ + +

Set this flag to indicate that the resource might contain protected content; therefore, the operating system should use the resource only when the driver and hardware support content protection. If the driver and hardware do not support content protection and you try to create a resource with this flag, the resource creation fails.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476203 + D3D11_RESOURCE_MISC_RESTRICTED_CONTENT + D3D11_RESOURCE_MISC_RESTRICTED_CONTENT +
+ + +

Set this flag to indicate that the operating system restricts access to the shared surface. You can use this flag together with the D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER flag and only when you create a shared surface. The process that creates the shared resource can always open the shared resource.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476203 + D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE + D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE +
+ + +

Set this flag to indicate that the driver restricts access to the shared surface. You can use this flag in conjunction with the D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE flag and only when you create a shared surface. The process that creates the shared resource can always open the shared resource.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476203 + D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER + D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER +
+ + +

Set this flag to indicate that the resource is guarded. Such a resource is returned by the IDCompositionSurface::BeginDraw (DirectComposition) and ISurfaceImageSourceNative::BeginDraw (Windows Runtime) APIs. For these APIs, you provide a region of interest (ROI) on a surface to update. This surface isn't compatible with multiple render targets (MRT).

A guarded resource automatically restricts all writes to the region that is related to one of the preceding APIs. Additionally, the resource enforces access to the ROI with these restrictions:

  • Copy operations from the resource by using ID3D11DeviceContext::CopyResource or ID3D11DeviceContext::CopySubresourceRegion are restricted to only copy from the ROI.
  • When a guarded resource is set as a render target, it must be the only target.

Direct3D 11:??This value is not supported until Direct3D 11.1.

+
+ ff476203 + D3D11_RESOURCE_MISC_GUARDED + D3D11_RESOURCE_MISC_GUARDED +
+ + +

Set this flag to indicate that the resource is a tile pool.

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476203 + D3D11_RESOURCE_MISC_TILE_POOL + D3D11_RESOURCE_MISC_TILE_POOL +
+ + +

Set this flag to indicate that the resource is a tiled resource.

Direct3D 11:??This value is not supported until Direct3D 11.2.

+
+ ff476203 + D3D11_RESOURCE_MISC_TILED + D3D11_RESOURCE_MISC_TILED +
+ + +

Set this flag to indicate that the resource should be created such that it will be protected by the hardware. Resource creation will fail if hardware content protection is not supported.

This flag has the following restrictions:

  • This flag cannot be used with the following values:
    • D3D11_USAGE_DYNAMIC
    • D3D11_USAGE_STAGING
  • This flag cannot be used with the following values.
    • D3D11_BIND_VERTEX_BUFFER
    • D3D11_BIND_INDEX_BUFFER
  • No CPU access flags can be specified.
Note??

Creating a texture using this flag does not automatically guarantee that hardware protection will be enabled for the underlying allocation. Some implementations require that the DRM components are first initialized prior to any guarantees of protection.

?

Note?? This enumeration value is supported starting with Windows?10.

+
+ ff476203 + D3D11_RESOURCE_MISC_HW_PROTECTED + D3D11_RESOURCE_MISC_HW_PROTECTED +
+ + + None + + None + None + + + +

Identifies expected resource use during rendering. The usage directly reflects whether a resource is accessible by the CPU and/or the graphics processing unit (GPU).

+
+ +

An application identifies the way a resource is intended to be used (its usage) in a resource description. There are several structures for creating resources including: , , , and .

Differences between Direct3D 9 and Direct3D 10/11:

In Direct3D 9, you specify the type of memory a resource should be created in at resource creation time (using D3DPOOL). It was an application's job to decide what memory pool would provide the best combination of functionality and performance.

In Direct3D 10/11, an application no longer specifies what type of memory (the pool) to create a resource in. Instead, you specify the intended usage of the resource, and let the runtime (in concert with the driver and a memory manager) choose the type of memory that will achieve the best performance.

?

+
+ ff476259 + D3D11_USAGE + D3D11_USAGE +
+ + +

A resource that requires read and write access by the GPU. This is likely to be the most common usage choice.

+
+ ff476259 + D3D11_USAGE_DEFAULT + D3D11_USAGE_DEFAULT +
+ + +

A resource that can only be read by the GPU. It cannot be written by the GPU, and cannot be accessed at all by the CPU. This type of resource must be initialized when it is created, since it cannot be changed after creation.

+
+ ff476259 + D3D11_USAGE_IMMUTABLE + D3D11_USAGE_IMMUTABLE +
+ + +

A resource that is accessible by both the GPU (read only) and the CPU (write only). A dynamic resource is a good choice for a resource that will be updated by the CPU at least once per frame. To update a dynamic resource, use a Map method.

For info about how to use dynamic resources, see How to: Use dynamic resources.

+
+ ff476259 + D3D11_USAGE_DYNAMIC + D3D11_USAGE_DYNAMIC +
+ + +

A resource that supports data transfer (copy) from the GPU to the CPU.

+
+ ff476259 + D3D11_USAGE_STAGING + D3D11_USAGE_STAGING +
+ + +

Indicates that the driver does not support shader caching.

+
+ mt492476 + D3D11_SHADER_CACHE_SUPPORT_NONE + D3D11_SHADER_CACHE_SUPPORT_NONE +
+ + +

Indicates that the driver supports an OS-managed shader cache that stores compiled shaders in memory during the current run of the application.

+
+ mt492476 + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE +
+ + +

Indicates that the driver supports an OS-managed shader cache that stores compiled shaders on disk to accelerate future runs of the application.

+
+ mt492476 + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE +
+ + + Note??This enumeration is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Values that specify minimum precision levels at shader stages.

+
+ hh404495 + D3D11_SHADER_MIN_PRECISION_SUPPORT + D3D11_SHADER_MIN_PRECISION_SUPPORT +
+ + +

Minimum precision level is 10-bit.

+
+ hh404495 + D3D11_SHADER_MIN_PRECISION_10_BIT + D3D11_SHADER_MIN_PRECISION_10_BIT +
+ + +

Minimum precision level is 16-bit.

+
+ hh404495 + D3D11_SHADER_MIN_PRECISION_16_BIT + D3D11_SHADER_MIN_PRECISION_16_BIT +
+ + +

View the buffer as raw. For more info about raw viewing of buffers, see Raw Views of Buffers.

+
+ ff476091 + D3D11_BUFFEREX_SRV_FLAG_RAW + D3D11_BUFFEREX_SRV_FLAG_RAW +
+ + + None + + None + None + + + +

Options that specify how to perform shader debug tracking.

+
+ +

This enumeration is used by the following methods:

  • ID3D11RefDefaultTrackingOptions::SetTrackingOptions
  • ID3D11RefTrackingOptions::SetTrackingOptions
  • ID3D11TracingDevice::SetShaderTrackingOptions
  • ID3D11TracingDevice::SetShaderTrackingOptionsByType
Note?? This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh404501 + D3D11_SHADER_TRACKING_OPTION + D3D11_SHADER_TRACKING_OPTION +
+ + +

No debug tracking is performed.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_IGNORE + D3D11_SHADER_TRACKING_OPTION_IGNORE +
+ + +

Track the reading of uninitialized data.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_UNINITIALIZED + D3D11_SHADER_TRACKING_OPTION_TRACK_UNINITIALIZED +
+ + +

Track read-after-write hazards.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_RAW + D3D11_SHADER_TRACKING_OPTION_TRACK_RAW +
+ + +

Track write-after-read hazards.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_WAR + D3D11_SHADER_TRACKING_OPTION_TRACK_WAR +
+ + +

Track write-after-write hazards.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_WAW + D3D11_SHADER_TRACKING_OPTION_TRACK_WAW +
+ + +

Track that hazards are allowed in which data is written but the value does not change.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_ALLOW_SAME + D3D11_SHADER_TRACKING_OPTION_ALLOW_SAME +
+ + +

Track that only one type of atomic operation is used on an address.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY + D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY +
+ + +

Track read-after-write hazards across thread groups.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_RAW_ACROSS_THREADGROUPS + D3D11_SHADER_TRACKING_OPTION_TRACK_RAW_ACROSS_THREADGROUPS +
+ + +

Track write-after-read hazards across thread groups.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_WAR_ACROSS_THREADGROUPS + D3D11_SHADER_TRACKING_OPTION_TRACK_WAR_ACROSS_THREADGROUPS +
+ + +

Track write-after-write hazards across thread groups.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_WAW_ACROSS_THREADGROUPS + D3D11_SHADER_TRACKING_OPTION_TRACK_WAW_ACROSS_THREADGROUPS +
+ + +

Track that only one type of atomic operation is used on an address across thread groups.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY_ACROSS_THREADGROUPS + D3D11_SHADER_TRACKING_OPTION_TRACK_ATOMIC_CONSISTENCY_ACROSS_THREADGROUPS +
+ + +

Track hazards that are specific to unordered access views (UAVs).

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_UAV_SPECIFIC_FLAGS + D3D11_SHADER_TRACKING_OPTION_UAV_SPECIFIC_FLAGS +
+ + +

Track all hazards.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS + D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS +
+ + +

Track all hazards and track that hazards are allowed in which data is written but the value does not change.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS_ALLOWING_SAME + D3D11_SHADER_TRACKING_OPTION_ALL_HAZARDS_ALLOWING_SAME +
+ + +

All of the preceding tracking options are set except D3D11_SHADER_TRACKING_OPTION_IGNORE.

+
+ hh404501 + D3D11_SHADER_TRACKING_OPTION_ALL_OPTIONS + D3D11_SHADER_TRACKING_OPTION_ALL_OPTIONS +
+ + +

Indicates which resource types to track.

+
+ +

The ID3D11TracingDevice::SetShaderTrackingOptionsByType or ID3D11RefDefaultTrackingOptions::SetTrackingOptions method tracks a specific type of resource.

Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? +
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE + D3D11_SHADER_TRACKING_RESOURCE_TYPE +
+ + +

No resource types are tracked.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_NONE + D3D11_SHADER_TRACKING_RESOURCE_TYPE_NONE +
+ + +

Track device memory that is created with unordered access view (UAV) bind flags.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_UAV_DEVICEMEMORY + D3D11_SHADER_TRACKING_RESOURCE_TYPE_UAV_DEVICEMEMORY +
+ + +

Track device memory that is created without UAV bind flags.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_NON_UAV_DEVICEMEMORY + D3D11_SHADER_TRACKING_RESOURCE_TYPE_NON_UAV_DEVICEMEMORY +
+ + +

Track all device memory.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_DEVICEMEMORY + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_DEVICEMEMORY +
+ + +

Track all shaders that use group shared memory.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_MEMORY + D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_MEMORY +
+ + +

Track all device memory except device memory that is created without UAV bind flags.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_SHARED_MEMORY + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL_SHARED_MEMORY +
+ + +

Track all device memory except device memory that is created with UAV bind flags.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_NON_UAV + D3D11_SHADER_TRACKING_RESOURCE_TYPE_GROUPSHARED_NON_UAV +
+ + +

Track all memory on the device.

+
+ hh404503 + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL + D3D11_SHADER_TRACKING_RESOURCE_TYPE_ALL +
+ + +

Specifies a multi-sample pattern type.

+
+ +

An app calls ID3D11Device::CheckMultisampleQualityLevels to get the number of quality levels available during multisampling. A 0 quality level means the hardware does not support multisampling for the particular format. If the number of quality levels is greater than 0 and the hardware supports the fixed sample patterns for the sample count, the app can request the fixed patterns by specifying quality level as either D3D11_STANDARD_MULTISAMPLE_PATTERN or D3D11_CENTER_MULTISAMPLE_PATTERN. The app can call ID3D11Device::CheckFormatSupport to check for support of the standard fixed patterns. If the hardware only supports the fixed patterns but no additional vendor-specific patterns, the runtime can report the number of quality levels as 1, and the hardware can pretend 0 quality level behaves the same as quality level equal to D3D11_STANDARD_MULTISAMPLE_PATTERN.

The runtime defines the following standard sample patterns for 1(trivial), 2, 4, 8, and 16 sample counts. Hardware must support 1, 4, and 8 sample counts. Hardware vendors can expose more sample counts beyond these. However, if vendors support 2, 4(required), 8(required), or 16, they must also support the corresponding standard pattern or center pattern for each of those sample counts.

+
+ ff476218 + D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS + D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS +
+ + +

Pre-defined multi-sample patterns required for Direct3D?11 and Direct3D?10.1 hardware.

+
+ ff476218 + D3D11_STANDARD_MULTISAMPLE_PATTERN + D3D11_STANDARD_MULTISAMPLE_PATTERN +
+ + +

Pattern where all of the samples are located at the pixel center.

+
+ ff476218 + D3D11_CENTER_MULTISAMPLE_PATTERN + D3D11_CENTER_MULTISAMPLE_PATTERN +
+ + +

The stencil operations that can be performed during depth-stencil testing.

+
+ ff476219 + D3D11_STENCIL_OP + D3D11_STENCIL_OP +
+ + +

Keep the existing stencil data.

+
+ ff476219 + D3D11_STENCIL_OP_KEEP + D3D11_STENCIL_OP_KEEP +
+ + +

Set the stencil data to 0.

+
+ ff476219 + D3D11_STENCIL_OP_ZERO + D3D11_STENCIL_OP_ZERO +
+ + +

Set the stencil data to the reference value set by calling ID3D11DeviceContext::OMSetDepthStencilState.

+
+ ff476219 + D3D11_STENCIL_OP_REPLACE + D3D11_STENCIL_OP_REPLACE +
+ + +

Increment the stencil value by 1, and clamp the result.

+
+ ff476219 + D3D11_STENCIL_OP_INCR_SAT + D3D11_STENCIL_OP_INCR_SAT +
+ + +

Decrement the stencil value by 1, and clamp the result.

+
+ ff476219 + D3D11_STENCIL_OP_DECR_SAT + D3D11_STENCIL_OP_DECR_SAT +
+ + +

Invert the stencil data.

+
+ ff476219 + D3D11_STENCIL_OP_INVERT + D3D11_STENCIL_OP_INVERT +
+ + +

Increment the stencil value by 1, and wrap the result if necessary.

+
+ ff476219 + D3D11_STENCIL_OP_INCR + D3D11_STENCIL_OP_INCR +
+ + +

Decrement the stencil value by 1, and wrap the result if necessary.

+
+ ff476219 + D3D11_STENCIL_OP_DECR + D3D11_STENCIL_OP_DECR +
+ + +

Identify a technique for resolving texture coordinates that are outside of the boundaries of a texture.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_MODE + D3D11_TEXTURE_ADDRESS_MODE +
+ + +

Tile the texture at every (u,v) integer junction. For example, for u values between 0 and 3, the texture is repeated three times.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_WRAP + D3D11_TEXTURE_ADDRESS_WRAP +
+ + +

Flip the texture at every (u,v) integer junction. For u values between 0 and 1, for example, the texture is addressed normally; between 1 and 2, the texture is flipped (mirrored); between 2 and 3, the texture is normal again; and so on.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_MIRROR + D3D11_TEXTURE_ADDRESS_MIRROR +
+ + +

Texture coordinates outside the range [0.0, 1.0] are set to the texture color at 0.0 or 1.0, respectively.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_CLAMP + D3D11_TEXTURE_ADDRESS_CLAMP +
+ + +

Texture coordinates outside the range [0.0, 1.0] are set to the border color specified in or HLSL code.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_BORDER + D3D11_TEXTURE_ADDRESS_BORDER +
+ + +

Similar to D3D11_TEXTURE_ADDRESS_MIRROR and D3D11_TEXTURE_ADDRESS_CLAMP. Takes the absolute value of the texture coordinate (thus, mirroring around 0), and then clamps to the maximum value.

+
+ ff476256 + D3D11_TEXTURE_ADDRESS_MIRROR_ONCE + D3D11_TEXTURE_ADDRESS_MIRROR_ONCE +
+ + +

The different faces of a cube texture.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE + D3D11_TEXTURECUBE_FACE +
+ + +

Positive X face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_POSITIVE_X + D3D11_TEXTURECUBE_FACE_POSITIVE_X +
+ + +

Negative X face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_NEGATIVE_X + D3D11_TEXTURECUBE_FACE_NEGATIVE_X +
+ + +

Positive Y face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_POSITIVE_Y + D3D11_TEXTURECUBE_FACE_POSITIVE_Y +
+ + +

Negative Y face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_NEGATIVE_Y + D3D11_TEXTURECUBE_FACE_NEGATIVE_Y +
+ + +

Positive Z face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_POSITIVE_Z + D3D11_TEXTURECUBE_FACE_POSITIVE_Z +
+ + +

Negative Z face.

+
+ ff476255 + D3D11_TEXTURECUBE_FACE_NEGATIVE_Z + D3D11_TEXTURECUBE_FACE_NEGATIVE_Z +
+ + +

Specifies texture layout options.

+
+ +

This enumeration controls the swizzle pattern of default textures and enable map support on default textures. Callers must query to ensure that each option is supported.

The standard swizzle formats applies within each page-sized chunk, and pages are laid out in linear order with respect to one another. A 16-bit interleave pattern defines the conversion from pre-swizzled intra-page location to the post-swizzled location.

To demonstrate, consider the 32bpp swizzle format above. This is represented by the following interleave masks, where bits on the left are most-significant.

UINT xBytesMask = 1010 1010 1000 1111 + UINT yMask = 0101 0101 0111 0000 +

To compute the swizzled address, the following code could be used (where the _pdep_u32 instruction is supported):

UINT swizzledOffset = resourceBaseOffset + _pdep_u32(xOffset, xBytesMask) + _pdep_u32(yOffset, yBytesMask); + +
+ dn899168 + D3D11_TEXTURE_LAYOUT + D3D11_TEXTURE_LAYOUT +
+ + +

The texture layout is undefined, and is selected by the driver.

+
+ dn899168 + D3D11_TEXTURE_LAYOUT_UNDEFINED + D3D11_TEXTURE_LAYOUT_UNDEFINED +
+ + +

Data for the texture is stored in row major (sometimes called pitch-linear) order.

+
+ dn899168 + D3D11_TEXTURE_LAYOUT_ROW_MAJOR + D3D11_TEXTURE_LAYOUT_ROW_MAJOR +
+ + +

A default texture uses the standardized swizzle pattern.

+
+ dn899168 + D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE + D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE +
+ + +

Indicates that the GPU isn't currently referencing any of the portions of destination memory being written. +

+
+ dn280439 + D3D11_TILE_COPY_NO_OVERWRITE + D3D11_TILE_COPY_NO_OVERWRITE +
+ + +

Indicates that the ID3D11DeviceContext2::CopyTiles operation involves copying a linear buffer to a swizzled tiled resource. This means to copy tile data from the + specified buffer location, reading tiles sequentially, + to the specified tile region (in x,y,z order if the region is a box), swizzling to optimal hardware memory layout as needed. + In this ID3D11DeviceContext2::CopyTiles call, you specify the source data with the pBuffer parameter and the destination with the pTiledResource parameter. +

+
+ dn280439 + D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE + D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE +
+ + +

Indicates that the ID3D11DeviceContext2::CopyTiles operation involves copying a swizzled tiled resource to a linear buffer. This means to copy tile data from the tile region, reading tiles sequentially (in x,y,z order if the region is a box), + to the specified buffer location, deswizzling to linear memory layout as needed. + In this ID3D11DeviceContext2::CopyTiles call, you specify the source data with the pTiledResource parameter and the destination with the pBuffer parameter. +

+
+ dn280439 + D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER + D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER +
+ + + None + + None + None + + + +

Indicates the tier level at which tiled resources are supported.

+
+ dn280435 + D3D11_TILED_RESOURCES_TIER + D3D11_TILED_RESOURCES_TIER +
+ + +

Tiled resources are not supported.

+
+ dn280435 + D3D11_TILED_RESOURCES_NOT_SUPPORTED + D3D11_TILED_RESOURCES_NOT_SUPPORTED +
+ + +

Tier_1 tiled resources are supported.

The device supports calls to CreateTexture2D and so on with the D3D11_RESOURCE_MISC_TILED flag.

The device supports calls to CreateBuffer with the D3D11_RESOURCE_MISC_TILE_POOL flag.

If you access tiles (read or write) that are null-mapped, you get undefined behavior, which includes device-removed. Apps can map all tiles to a single "default" tile to avoid this condition.

+
+ dn280435 + D3D11_TILED_RESOURCES_TIER_1 + D3D11_TILED_RESOURCES_TIER_1 +
+ + +

Tier_2 tiled resources are supported.

Superset of Tier_1 functionality, which includes this additional support:

  • On Tier_1, if the size of a texture mipmap level is an integer multiple of the standard tile shape for its format, it is guaranteed to be nonpacked. On Tier_2, this guarantee is expanded to include mipmap levels whose size is at least one standard tile shape. For more info, see .
  • Shader instructions are available for clamping level-of-detail (LOD) and for obtaining status about the shader operation. For info about one of these shader instructions, see Sample(S,float,int,float,uint).
  • Reading from null-mapped tiles treat that sampled value as zero. Writes to null-mapped tiles are discarded.
+
+ dn280435 + D3D11_TILED_RESOURCES_TIER_2 + D3D11_TILED_RESOURCES_TIER_2 +
+ + +

Tier_3 tiled resources are supported.

Superset of Tier_2 functionality, Tier 3 is essentially Tier 2 but with the additional support of Texture3D for Tiled Resources.

+
+ dn280435 + D3D11_TILED_RESOURCES_TIER_3 + D3D11_TILED_RESOURCES_TIER_3 +
+ + +

Indicates that no overwriting of tiles occurs in the tile-mapping operation.

+
+ dn280440 + D3D11_TILE_MAPPING_NO_OVERWRITE + D3D11_TILE_MAPPING_NO_OVERWRITE +
+ + + None + + None + None + + + + No documentation. + + dn280441 + D3D11_TILE_RANGE_NULL + D3D11_TILE_RANGE_NULL + + + + No documentation. + + dn280441 + D3D11_TILE_RANGE_SKIP + D3D11_TILE_RANGE_SKIP + + + + No documentation. + + dn280441 + D3D11_TILE_RANGE_REUSE_SINGLE_TILE + D3D11_TILE_RANGE_REUSE_SINGLE_TILE + + + + None + + None + None + + + +

Resource contains raw, unstructured data. Requires the UAV format to be DXGI_FORMAT_R32_TYPELESS. For more info about raw viewing of buffers, see Raw Views of Buffers.

+
+ ff476096 + D3D11_BUFFER_UAV_FLAG_RAW + D3D11_BUFFER_UAV_FLAG_RAW +
+ + +

Allow data to be appended to the end of the buffer. D3D11_BUFFER_UAV_FLAG_APPEND flag must also be used for any view that will be used as a AppendStructuredBuffer or a ConsumeStructuredBuffer. Requires the UAV format to be DXGI_FORMAT_UNKNOWN.

+
+ ff476096 + D3D11_BUFFER_UAV_FLAG_APPEND + D3D11_BUFFER_UAV_FLAG_APPEND +
+ + +

Adds a counter to the unordered-access-view buffer. D3D11_BUFFER_UAV_FLAG_COUNTER can only be used on a UAV that is a RWStructuredBuffer and it enables the functionality needed for the IncrementCounter and DecrementCounter methods in HLSL. Requires the UAV format to be DXGI_FORMAT_UNKNOWN.

+
+ ff476096 + D3D11_BUFFER_UAV_FLAG_COUNTER + D3D11_BUFFER_UAV_FLAG_COUNTER +
+ + + None + + None + None + + + +

Unordered-access view options.

+
+ +

This enumeration is used by a unordered access-view description (see ).

+
+ ff476257 + D3D11_UAV_DIMENSION + D3D11_UAV_DIMENSION +
+ + +

The view type is unknown.

+
+ ff476257 + D3D11_UAV_DIMENSION_UNKNOWN + D3D11_UAV_DIMENSION_UNKNOWN +
+ + +

View the resource as a buffer.

+
+ ff476257 + D3D11_UAV_DIMENSION_BUFFER + D3D11_UAV_DIMENSION_BUFFER +
+ + +

View the resource as a 1D texture.

+
+ ff476257 + D3D11_UAV_DIMENSION_TEXTURE1D + D3D11_UAV_DIMENSION_TEXTURE1D +
+ + +

View the resource as a 1D texture array.

+
+ ff476257 + D3D11_UAV_DIMENSION_TEXTURE1DARRAY + D3D11_UAV_DIMENSION_TEXTURE1DARRAY +
+ + +

View the resource as a 2D texture.

+
+ ff476257 + D3D11_UAV_DIMENSION_TEXTURE2D + D3D11_UAV_DIMENSION_TEXTURE2D +
+ + +

View the resource as a 2D texture array.

+
+ ff476257 + D3D11_UAV_DIMENSION_TEXTURE2DARRAY + D3D11_UAV_DIMENSION_TEXTURE2DARRAY +
+ + +

View the resource as a 3D texture array.

+
+ ff476257 + D3D11_UAV_DIMENSION_TEXTURE3D + D3D11_UAV_DIMENSION_TEXTURE3D +
+ + +

Specifies how to access a resource that is used in a video decoding output view.

+
+ +

This enumeration is used with the structure.

+
+ hh447636 + D3D11_VDOV_DIMENSION + D3D11_VDOV_DIMENSION +
+ + +

Not a valid value.

+
+ hh447636 + D3D11_VDOV_DIMENSION_UNKNOWN + D3D11_VDOV_DIMENSION_UNKNOWN +
+ + +

The resource will be accessed as a 2D texture. +

+
+ hh447636 + D3D11_VDOV_DIMENSION_TEXTURE2D + D3D11_VDOV_DIMENSION_TEXTURE2D +
+ + +

Specifies a type of compressed buffer for decoding.

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_TYPE + D3D11_VIDEO_DECODER_BUFFER_TYPE +
+ + +

Picture decoding parameter buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS + D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS +
+ + +

Macroblock control command buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL + D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL +
+ + +

Residual difference block data buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE + D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE +
+ + +

Deblocking filter control command buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL + D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL +
+ + +

Inverse quantization matrix buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX + D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX +
+ + +

Slice-control buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL + D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL +
+ + +

Bitstream data buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_BITSTREAM + D3D11_VIDEO_DECODER_BUFFER_BITSTREAM +
+ + +

Motion vector buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR + D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR +
+ + +

Film grain synthesis data buffer. +

+
+ hh447642 + D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN + D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN +
+ + +

Specifies capabilities of the video decoder.

+
+ dn894120 + D3D11_VIDEO_DECODER_CAPS + D3D11_VIDEO_DECODER_CAPS +
+ + +

Indicates that the graphics driver supports at least a subset of downsampling operations.

+
+ dn894120 + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE +
+ + +

Indicates that the decoding hardware cannot support the decode operation in real-time. Decoding is still supported for transcoding scenarios. With this capability, it is possible that decoding can occur in real-time if downsampling is enabled. +

+
+ dn894120 + D3D11_VIDEO_DECODER_CAPS_NON_REAL_TIME + D3D11_VIDEO_DECODER_CAPS_NON_REAL_TIME +
+ + +

Indicates that the driver supports changing down sample parameters after the initial down sample parameters have been applied. For more information, see ID3D11VideoContext1::DecoderUpdateDownsampling.

+
+ dn894120 + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC +
+ + + No documentation. + + dn894120 + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_REQUIRED + D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_REQUIRED + + + + No documentation. + + dn894120 + D3D11_VIDEO_DECODER_CAPS_UNSUPPORTED + D3D11_VIDEO_DECODER_CAPS_UNSUPPORTED + + + +

Describes how a video stream is interlaced.

+
+ hh447647 + D3D11_VIDEO_FRAME_FORMAT + D3D11_VIDEO_FRAME_FORMAT +
+ + +

Frames are progressive.

+
+ hh447647 + D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE + D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE +
+ + +

Frames are interlaced. The top field of each frame is displayed first.

+
+ hh447647 + D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST + D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST +
+ + +

Frame are interlaced. The bottom field of each frame is displayed first.

+
+ hh447647 + D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST + D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST +
+ + +

Specifies the alpha fill mode for video processing.

+
+ hh447648 + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE +
+ + +

Alpha values inside the target rectangle are set to opaque.

+
+ hh447648 + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE +
+ + +

Alpha values inside the target rectangle are set to the alpha value specified in the background color. To set the background color, call the ID3D11VideoContext::VideoProcessorSetOutputBackgroundColor method.

+
+ hh447648 + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND +
+ + +

Existing alpha values remain unchanged in the output surface.

+
+ hh447648 + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION +
+ + +

Alpha values are taken from an input stream, scaled, and copied to the corresponding destination rectangle for that stream. The input stream is specified in the StreamIndex parameter of the ID3D11VideoContext::VideoProcessorSetOutputAlphaFillMode method.

If the input stream does not have alpha data, the video processor sets the alpha values in the target rectangle to opaque. If the input stream is disabled or the source rectangle is empty, the alpha values in the target rectangle are not modified.

+
+ hh447648 + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM + D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM +
+ + +

Specifies the automatic image processing capabilities of the video processor.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS +
+ + +

Denoise.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE +
+ + +

Deringing.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING +
+ + +

Edge enhancement.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT +
+ + +

Color correction.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION +
+ + +

Flesh-tone mapping.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING +
+ + +

Image stabilization.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION +
+ + +

Enhanced image resolution.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION +
+ + +

Anamorphic scaling.

+
+ hh447649 + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING + D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING +
+ + +

Specifies flags that indicate the most efficient methods for performing video processing operations.

+
+ dn894122 + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS +
+ + +

Multi-plane overlay hardware can perform the rotation operation more efficiently than the ID3D11VideoContext::VideoProcessorBlt method.

+
+ dn894122 + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_ROTATION + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_ROTATION +
+ + +

Multi-plane overlay hardware can perform the scaling operation more efficiently than the ID3D11VideoContext::VideoProcessorBlt method.

+
+ dn894122 + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_RESIZE + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_RESIZE +
+ + +

Multi-plane overlay hardware can perform the colorspace conversion operation more efficiently than the ID3D11VideoContext::VideoProcessorBlt method.

+
+ dn894122 + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION +
+ + +

The video processor output data should be at least triple buffered for optimal performance.

+
+ dn894122 + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_TRIPLE_BUFFER_OUTPUT + D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_TRIPLE_BUFFER_OUTPUT +
+ + +

Defines video processing capabilities for a Microsoft Direct3D?11 video processor.

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS +
+ + +

The video processor can blend video content in linear color space. Most video content is gamma corrected, resulting in nonlinear values. This capability flag means that the video processor converts colors to linear space before blending, which produces better results.

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE +
+ + +

The video processor supports the xvYCC color space for YCbCr data.

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC +
+ + +

The video processor can perform range conversion when the input and output are both RGB but use different color ranges (0-255 or 16-235, for 8-bit RGB).

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION +
+ + +

The video processor can apply a matrix conversion to YCbCr values when the input and output are both YCbCr. For example, the driver can convert colors from BT.601 to BT.709.

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION +
+ + +

The video processor supports YUV nominal range .

Supported in Windows?8.1 and later.

+
+ hh447654 + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE + D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE +
+ + +

Defines features that a Microsoft Direct3D?11 video processor can support.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS +
+ + +

The video processor can set alpha values on the output pixels. For more information, see ID3D11VideoContext::VideoProcessorSetOutputAlphaFillMode.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL +
+ + +

The video processor can downsample the video output. For more information, see ID3D11VideoContext::VideoProcessorSetOutputConstriction.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION +
+ + +

The video processor can perform luma keying. For more information, see ID3D11VideoContext::VideoProcessorSetStreamLumaKey.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY +
+ + +

The video processor can apply alpha values from color palette entries.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE +
+ + +

The driver does not support full video processing capabilities. If this capability flag is set, the video processor has the following limitations:

  • A maximum of two streams are supported:
    • The first stream must be either NV12 or YUY2.
    • The second stream must be AYUV, AI44, or IA44.
  • Image adjustment (proc amp) controls are applied to the entire video processing blit, rather than per stream.
  • Support for per-stream planar alpha is not reliable. (Per-pixel alpha is supported, however.)
+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY +
+ + +

The video processor can support 3D stereo video. For more information, see ID3D11VideoContext::VideoProcessorSetStreamStereoFormat.

All drivers setting this caps must support the following stereo formats: D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL, and D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO +
+ + +

The driver can rotate the input data either 90, 180, or 270 degrees clockwise as part of the video processing operation.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION +
+ + +

The driver supports the VideoProcessorSetStreamAlpha call.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM +
+ + +

The driver supports the VideoProcessorSetStreamPixelAspectRatio call.

+
+ hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO +
+ + + No documentation. + + hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR + + + + No documentation. + + hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE + + + + No documentation. + + hh447655 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10 + D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10 + + + +

Identifies a video processor filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER + D3D11_VIDEO_PROCESSOR_FILTER +
+ + +

Brightness filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS + D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS +
+ + +

Contrast filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST + D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST +
+ + +

Hue filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_HUE + D3D11_VIDEO_PROCESSOR_FILTER_HUE +
+ + +

Saturation filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_SATURATION + D3D11_VIDEO_PROCESSOR_FILTER_SATURATION +
+ + +

Noise reduction filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION + D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION +
+ + +

Edge enhancement filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT + D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT +
+ + +

Anamorphic scaling filter.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING + D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING +
+ + +

Stereo adjustment filter. When stereo 3D video is enabled, this filter adjusts the offset between the left and right views, allowing the user to reduce potential eye strain.

The filter value indicates the amount by which the left and right views are adjusted. A positive value shifts the images away from each other: the left image toward the left, and the right image toward the right. A negative value shifts the images in the opposite directions, closer to each other.

+
+ hh447656 + D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT + D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT +
+ + +

Defines image filter capabilities for a Microsoft Direct3D?11 video processor.

+
+ +

These capability flags indicate support for the image filters defined by the enumeration. To apply a particular filter, call the ID3D11VideoContext::VideoProcessorSetStreamFilter method.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS + D3D11_VIDEO_PROCESSOR_FILTER_CAPS +
+ + +

The video processor can adjust the brightness level.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS +
+ + +

The video processor can adjust the contrast level.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST +
+ + +

The video processor can adjust hue.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE +
+ + +

The video processor can adjust the saturation level.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION +
+ + +

The video processor can perform noise reduction.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION +
+ + +

The video processor can perform edge enhancement.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT +
+ + +

The video processor can perform anamorphic scaling. Anamorphic scaling can be used to stretch 4:3 content to a widescreen 16:9 aspect ratio.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING +
+ + +

For stereo 3D video, the video processor can adjust the offset between the left and right views, allowing the user to reduce potential eye strain.

+
+ hh447671 + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT + D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT +
+ + +

Defines capabilities related to input formats for a Microsoft Direct3D?11 video processor.

+
+ +

These flags define video processing capabilities that usually are not needed, and that video devices are therefore not required to support.

The first three flags relate to RGB support for functions that are normally applied to YCbCr video: deinterlacing, color adjustment, and luma keying. A device that supports these functions for YCbCr is not required to support them for RGB input. Supporting RGB input for these functions is an additional capability, reflected by these constants. Note that the driver might convert the input to another color space, perform the indicated function, and then convert the result back to RGB.

Similarly, a device that supports deinterlacing is not required to support deinterlacing of palettized formats. This capability is indicated by the D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED flag.

+
+ hh447658 + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS +
+ + +

The video processor can deinterlace an input stream that contains interlaced RGB video.

+
+ hh447658 + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED +
+ + +

The video processor can perform color adjustment on RGB video.

+
+ hh447658 + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP +
+ + +

The video processor can perform luma keying on RGB video.

+
+ hh447658 + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY +
+ + +

The video processor can deinterlace input streams with palettized color formats.

+
+ hh447658 + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED + D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED +
+ + +

Specifies how a video format can be used for video processing.

+
+ hh447659 + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT +
+ + +

The format can be used as the input to the video processor.

+
+ hh447659 + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT +
+ + +

The format can be used as the output from the video processor.

+
+ hh447659 + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT + D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT +
+ + +

Specifies the inverse telecine (IVTC) capabilities of a video processor.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS +
+ + +

The video processor can reverse 3:2 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32 +
+ + +

The video processor can reverse 2:2 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22 +
+ + +

The video processor can reverse 2:2:2:4 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224 +
+ + +

The video processor can reverse 2:3:3:2 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332 +
+ + +

The video processor can reverse 3:2:3:2:2 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322 +
+ + +

The video processor can reverse 5:5 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55 +
+ + +

The video processor can reverse 6:4 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64 +
+ + +

The video processor can reverse 8:7 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87 +
+ + +

The video processor can reverse 2:2:2:2:2:2:2:2:2:2:2:3 pulldown.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223 +
+ + +

The video processor can reverse other telecine modes not listed here.

+
+ hh447661 + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER +
+ + +

Specifies values for the luminance range of YUV data.

+
+ dn280649 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE +
+ + +

Driver defaults are used, which should be Studio luminance range [16-235],

+
+ dn280649 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED +
+ + +

Studio luminance range [16-235]

+
+ dn280649 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 +
+ + +

Full luminance range [0-255]

+
+ dn280649 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255 + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255 +
+ + +

Specifies the rate at which the video processor produces output frames from an input stream.

+
+ hh447662 + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE +
+ + +

The output is the normal frame rate.

+
+ hh447662 + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL +
+ + +

The output is half the frame rate.

+
+ hh447662 + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF +
+ + +

The output is a custom frame rate.

+
+ hh447662 + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM + D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM +
+ + +

Specifies video processing capabilities that relate to deinterlacing, inverse telecine (IVTC), and frame-rate conversion.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS +
+ + +

The video processor can perform blend deinterlacing.

In blend deinterlacing, the two fields from an interlaced frame are blended into a single progressive frame. A video processor uses blend deinterlacing when it deinterlaces at half rate, as when converting 60i to 30p. Blend deinterlacing does not require reference frames.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND +
+ + +

The video processor can perform bob deinterlacing.

In bob deinterlacing, missing field lines are interpolated from the lines above and below. Bob deinterlacing does not require reference frames.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB +
+ + +

The video processor can perform adaptive deinterlacing.

Adaptive deinterlacing uses spatial or temporal interpolation, and switches between the two on a field-by-field basis, depending on the amount of motion. If the video processor does not receive enough reference frames to perform adaptive deinterlacing, it falls back to bob deinterlacing.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE +
+ + +

The video processor can perform motion-compensated deinterlacing.

Motion-compensated deinterlacing uses motion vectors to recreate missing lines. If the video processor does not receive enough reference frames to perform motion-compensated deinterlacing, it falls back to bob deinterlacing.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION +
+ + +

The video processor can perform inverse telecine (IVTC).

If the video processor supports this capability, the ITelecineCaps member of the structure specifies which IVTC modes are supported.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE +
+ + +

The video processor can convert the frame rate by interpolating frames.

+
+ hh447664 + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION +
+ + +

Specifies the video rotation states.

+
+ jj160515 + D3D11_VIDEO_PROCESSOR_ROTATION + D3D11_VIDEO_PROCESSOR_ROTATION +
+ + +

The video is not rotated.

+
+ jj160515 + D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY + D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY +
+ + +

The video is rotated 90 degrees clockwise.

+
+ jj160515 + D3D11_VIDEO_PROCESSOR_ROTATION_90 + D3D11_VIDEO_PROCESSOR_ROTATION_90 +
+ + +

The video is rotated 180 degrees clockwise.

+
+ jj160515 + D3D11_VIDEO_PROCESSOR_ROTATION_180 + D3D11_VIDEO_PROCESSOR_ROTATION_180 +
+ + +

The video is rotated 270 degrees clockwise.

+
+ jj160515 + D3D11_VIDEO_PROCESSOR_ROTATION_270 + D3D11_VIDEO_PROCESSOR_ROTATION_270 +
+ + +

Defines stereo 3D capabilities for a Microsoft Direct3D?11 video processor.

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS + D3D11_VIDEO_PROCESSOR_STEREO_CAPS +
+ + +

The video processor supports the D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET format.

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET +
+ + +

The video processor supports the D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED format.

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED +
+ + +

The video processor supports the D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED format.

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED +
+ + +

The video processor supports the D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD format.

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD +
+ + +

The video processor can flip one or both views. For more information, see .

+
+ hh447667 + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE + D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE +
+ + +

For stereo 3D video, specifies whether the data in frame 0 or frame 1 is flipped, either horizontally or vertically.

+
+ hh447668 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE +
+ + +

Neither frame is flipped.

+
+ hh447668 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE +
+ + +

The data in frame 0 is flipped.

+
+ hh447668 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0 +
+ + +

The data in frame 1 is flipped.

+
+ hh447668 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1 + D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1 +
+ + +

Specifies the layout in memory of a stereo 3D video frame.

+
+ +

This enumeration designates the two stereo views as "frame 0" and "frame 1". The LeftViewFrame0 parameter of the VideoProcessorSetStreamStereoFormat method specifies which view is the left view, and which is the right view.

For packed formats, if the source rectangle clips part of the surface, the driver interprets the rectangle in logical coordinates relative to the stereo view, rather than absolute pixel coordinates. The result is that frame 0 and frame 1 are clipped proportionately.

To query whether the device supports stereo 3D video, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check for the D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO flag in the FeatureCaps member of the structure. If this capability flag is present, it means that the driver supports all of the stereo formats that are not listed as optional. To find out which optional formats are supported, call GetVideoProcessorCaps and check the StereoCaps member of the structure.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT +
+ + +

The sample does not contain stereo data. If the stereo format is not specified, this value is the default.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO +
+ + +

Frame 0 and frame 1 are packed side-by-side, as shown in the following diagram.

All drivers that support stereo video must support this format.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL +
+ + +

Frame 0 and frame 1 are packed top-to-bottom, as shown in the following diagram.

All drivers that support stereo video must support this format.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL +
+ + +

Frame 0 and frame 1 are placed in separate resources or in separate texture array elements within the same resource.

All drivers that support stereo video must support this format.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE +
+ + +

The sample contains non-stereo data. However, the driver should create a left/right output of this sample using a specified offset. The offset is specified in the MonoOffset parameter of the ID3D11VideoContext::VideoProcessorSetStreamStereoFormat method.

This format is primarily intended for subtitles and other subpicture data, where the entire sample is presented on the same plane.

Support for this stereo format is optional.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET +
+ + +

Frame 0 and frame 1 are packed into interleaved rows, as shown in the following diagram.

Support for this stereo format is optional.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED +
+ + +

Frame 0 and frame 1 are packed into interleaved columns, as shown in the following diagram.

Support for this stereo format is optional.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED +
+ + +

Frame 0 and frame 1 are packed in a checkerboard format, as shown in the following diagram.

Support for this stereo format is optional.

+
+ hh447669 + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD + D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD +
+ + +

Specifies the intended use for a video processor.

+
+ hh447673 + D3D11_VIDEO_USAGE + D3D11_VIDEO_USAGE +
+ + +

Normal video playback. The graphics driver should expose a set of capabilities that are appropriate for real-time video playback.

+
+ hh447673 + D3D11_VIDEO_USAGE_PLAYBACK_NORMAL + D3D11_VIDEO_USAGE_PLAYBACK_NORMAL +
+ + +

Optimal speed. The graphics driver should expose a minimal set of capabilities that are optimized for performance.

Use this setting if you want better performance and can accept some reduction in video quality. For example, you might use this setting in power-saving mode or to play video thumbnails.

+
+ hh447673 + D3D11_VIDEO_USAGE_OPTIMAL_SPEED + D3D11_VIDEO_USAGE_OPTIMAL_SPEED +
+ + +

Optimal quality. The grahics driver should expose its maximum set of capabilities.

Specify this setting to get the best video quality possible. It is appropriate for tasks such as video editing, when quality is more important than speed. It is not appropriate for real-time playback.

+
+ hh447673 + D3D11_VIDEO_USAGE_OPTIMAL_QUALITY + D3D11_VIDEO_USAGE_OPTIMAL_QUALITY +
+ + +

Specifies how to access a resource that is used in a video processor input view.

+
+ +

This enumeration is used with the structure.

+
+ hh447674 + D3D11_VPIV_DIMENSION + D3D11_VPIV_DIMENSION +
+ + +

Not a valid value.

+
+ hh447674 + D3D11_VPIV_DIMENSION_UNKNOWN + D3D11_VPIV_DIMENSION_UNKNOWN +
+ + +

The resource will be accessed as a 2D texture.

+
+ hh447674 + D3D11_VPIV_DIMENSION_TEXTURE2D + D3D11_VPIV_DIMENSION_TEXTURE2D +
+ + +

Specifies how to access a resource that is used in a video processor output view.

+
+ +

This enumeration is used with the structure.

+
+ hh447675 + D3D11_VPOV_DIMENSION + D3D11_VPOV_DIMENSION +
+ + +

Not a valid value.

+
+ hh447675 + D3D11_VPOV_DIMENSION_UNKNOWN + D3D11_VPOV_DIMENSION_UNKNOWN +
+ + +

The resource will be accessed as a 2D texture.

+
+ hh447675 + D3D11_VPOV_DIMENSION_TEXTURE2D + D3D11_VPOV_DIMENSION_TEXTURE2D +
+ + +

The resource will be accessed as an array of 2D textures.

+
+ hh447675 + D3D11_VPOV_DIMENSION_TEXTURE2DARRAY + D3D11_VPOV_DIMENSION_TEXTURE2DARRAY +
+ + + Functions + + + + Constant SdkVersion + D3D11_SDK_VERSION + + + +

Creates a device that represents the display adapter.

+
+

A reference to the video adapter to use when creating a device. Pass null to use the default adapter, which is the first adapter that is enumerated by IDXGIFactory1::EnumAdapters.

Note?? Do not mix the use of DXGI 1.0 () and DXGI 1.1 () in an application. Use or , but not both in an application. ?
+

The , which represents the driver type to create.

+

A handle to a DLL that implements a software rasterizer. If DriverType is D3D_DRIVER_TYPE_SOFTWARE, Software must not be null. Get the handle by calling LoadLibrary, LoadLibraryEx , or GetModuleHandle.

+

The runtime layers to enable (see ); values can be bitwise OR'd together.

+

A reference to an array of s, which determine the order of feature levels to attempt to create. If pFeatureLevels is set to null, this function uses the following array of feature levels:

{ D3D_FEATURE_LEVEL_11_0, D3D_FEATURE_LEVEL_10_1, D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_9_3, D3D_FEATURE_LEVEL_9_2, D3D_FEATURE_LEVEL_9_1,};
Note?? If the Direct3D 11.1 runtime is present on the computer and pFeatureLevels is set to null, this function won't create a D3D_FEATURE_LEVEL_11_1 device. To create a D3D_FEATURE_LEVEL_11_1 device, you must explicitly provide a array that includes D3D_FEATURE_LEVEL_11_1. If you provide a array that contains D3D_FEATURE_LEVEL_11_1 on a computer that doesn't have the Direct3D 11.1 runtime installed, this function immediately fails with E_INVALIDARG. ?
+

The number of elements in pFeatureLevels.

+

The SDK version; use .

+

Returns the address of a reference to an object that represents the device created. If this parameter is null, no will be returned.

+

If successful, returns the first from the pFeatureLevels array which succeeded. Supply null as an input if you don't need to determine which feature level is supported.

+

Returns the address of a reference to an object that represents the device context. If this parameter is null, no will be returned.

+

This method can return one of the Direct3D 11 Return Codes.

This method returns E_INVALIDARG if you set the pAdapter parameter to a non-null value and the DriverType parameter to the D3D_DRIVER_TYPE_HARDWARE value.

This method returns if you specify D3D11_CREATE_DEVICE_DEBUG in Flags and the incorrect version of the debug layer is installed on your computer. Install the latest Windows SDK to get the correct version.

+ +

This entry-point is supported by the Direct3D 11 runtime, which is available on Windows 7, Windows Server 2008 R2, and as an update to Windows Vista (KB971644).

To create a Direct3D 11.1 device (), which is available on Windows?8, Windows Server?2012, and Windows?7 and Windows Server?2008?R2 with the Platform Update for Windows 7 installed, you first create a with this function, and then call the QueryInterface method on the object to obtain the interface.

To create a Direct3D 11.2 device (), which is available on Windows?8.1 and Windows Server?2012?R2, you first create a with this function, and then call the QueryInterface method on the object to obtain the interface.

Set ppDevice and ppImmediateContext to null to determine which feature level is supported by looking at pFeatureLevel without creating a device.

For an example, see How To: Create a Device and Immediate Context; to create a device and a swap chain at the same time, use D3D11CreateDeviceAndSwapChain.

If you set the pAdapter parameter to a non-null value, you must also set the DriverType parameter to the D3D_DRIVER_TYPE_UNKNOWN value. If you set the pAdapter parameter to a non-null value and the DriverType parameter to the D3D_DRIVER_TYPE_HARDWARE value, D3D11CreateDevice returns an of E_INVALIDARG.

Differences between Direct3D 10 and Direct3D 11:

In Direct3D 10, the presence of pAdapter dictated which adapter to use and the DriverType could mismatch what the adapter was.

In Direct3D 11, if you are trying to create a hardware or a software device, set pAdapter != null which constrains the other inputs to be:

  • DriverType must be D3D_DRIVER_TYPE_UNKNOWN
  • Software must be null.

On the other hand, if pAdapter == null, the DriverType cannot be set to D3D_DRIVER_TYPE_UNKNOWN; it can be set to either:

  • If DriverType == D3D_DRIVER_TYPE_SOFTWARE, Software cannot be null.
  • If DriverType == D3D_DRIVER_TYPE_HARDWARE, the adapter used will be the default adapter, which is the first adapter that is enumerated by IDXGIFactory1::EnumAdapters

?

The function signature PFN_D3D11_CREATE_DEVICE is provided as a typedef, so that you can use dynamic linking techniques (GetProcAddress) instead of statically linking.

Windows?Phone?8: This API is supported.

Windows Phone 8.1: This API is supported.

+
+ ff476082 + HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] unsigned int Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext) + D3D11CreateDevice +
+ + +

Creates a device that uses Direct3D 11 functionality in Direct3D 12, specifying a pre-existing D3D12 device to use for D3D11 interop.

+
+

Specifies a pre-existing D3D12 device to use for D3D11 interop. May not be null.

+

One or more bitwise OR'ed flags from . These are the same flags as those used by D3D11CreateDeviceAndSwapChain. Specifies which runtime layers to enable. Flags must be compatible with device flags, and its NodeMask must be a subset of the NodeMask provided to the present API.

+

An array of any of the following:

  • D3D_FEATURE_LEVEL_12_1
  • D3D_FEATURE_LEVEL_12_0
  • D3D_FEATURE_LEVEL_11_1
  • D3D_FEATURE_LEVEL_11_0
  • D3D_FEATURE_LEVEL_10_1
  • D3D_FEATURE_LEVEL_10_0
  • D3D_FEATURE_LEVEL_9_3
  • D3D_FEATURE_LEVEL_9_2
  • D3D_FEATURE_LEVEL_9_1

The first feature level which is less than or equal to the D3D12 device's feature level will be used to perform D3D11 validation. Creation will fail if no acceptable feature levels are provided. Providing null will default to the D3D12 device's feature level.

+

The size of the feature levels array, in bytes.

+

An array of unique queues for D3D11On12 to use. Valid queue types: 3D command queue.

+

The size of the command queue array, in bytes.

+

Which node of the D3D12 device to use. Only 1 bit may be set.

+

Pointer to the returned . May be null.

+

A reference to the returned . May be null.

+

A reference to the returned feature level. May be null.

+

This method returns one of the Direct3D 12 Return Codes that are documented for D3D11CreateDevice. See Direct3D 12 Return Codes.

This method returns if you specify D3D11_CREATE_DEVICE_DEBUG in Flags and the incorrect version of the debug layer is installed on your computer. Install the latest Windows SDK to get the correct version.

+ +

The function signature PFN_D3D11ON12_CREATE_DEVICE is provided as a typedef, so that you can use dynamic linking techniques (GetProcAddress) instead of statically linking.

+
+ dn933209 + HRESULT D3D11On12CreateDevice([In] IUnknown* pDevice,[In] unsigned int Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In, Buffer, Optional] const IUnknown** ppCommandQueues,[In] unsigned int NumQueues,[In] unsigned int NodeMask,[Out] ID3D11Device** ppDevice,[Out, Optional] ID3D11DeviceContext** ppImmediateContext,[Out, Optional] D3D_FEATURE_LEVEL* pChosenFeatureLevel) + D3D11On12CreateDevice +
+ + + Functions + + + + + Functions + + + + + Functions + + + + Constant TooManyUniqueStateObjects + D3D11_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS + + + Constant FileNotFound + D3D11_ERROR_FILE_NOT_FOUND + + + Constant TooManyUniqueViewObjects + D3D11_ERROR_TOO_MANY_UNIQUE_VIEW_OBJECTS + + + Constant DeferredContextMapWithoutInitialDiscard + D3D11_ERROR_DEFERRED_CONTEXT_MAP_WITHOUT_INITIAL_DISCARD + + + +

Get the size of the data (in bytes) that is output when calling ID3D11DeviceContext::GetData.

+
+ ff476348 + GetDataSize + GetDataSize +
+ + +

Get the size of the data (in bytes) that is output when calling ID3D11DeviceContext::GetData.

+
+

Size of the data (in bytes) that is output when calling GetData.

+ ff476348 + unsigned int ID3D11Asynchronous::GetDataSize() + ID3D11Asynchronous::GetDataSize +
+ + +

Gets the size of the driver's certificate chain.

+
+ hh447688 + GetCertificateSize + GetCertificateSize +
+ + +

Gets a handle to the authenticated channel.

+
+ hh447689 + GetChannelHandle + GetChannelHandle +
+ + +

Gets the size of the driver's certificate chain.

+
+

Receives the size of the certificate chain, in bytes.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447688 + HRESULT ID3D11AuthenticatedChannel::GetCertificateSize([Out] unsigned int* pCertificateSize) + ID3D11AuthenticatedChannel::GetCertificateSize +
+ + +

Gets the driver's certificate chain.

+
+

The size of the pCertificate array, in bytes. To get the size of the certificate chain, call ID3D11CryptoSession::GetCertificateSize.

+

A reference to a byte array that receives the driver's certificate chain. The caller must allocate the array.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447687 + HRESULT ID3D11AuthenticatedChannel::GetCertificate([In] unsigned int CertificateSize,[Out, Buffer] unsigned char* pCertificate) + ID3D11AuthenticatedChannel::GetCertificate +
+ + +

Gets a handle to the authenticated channel.

+
+

Receives a handle to the channel.

+ hh447689 + void ID3D11AuthenticatedChannel::GetChannelHandle([Out] void** pChannelHandle) + ID3D11AuthenticatedChannel::GetChannelHandle +
+ + +

Gets the type of encryption that is supported by this session.

+
+ +

The application specifies the encryption type when it creates the session.

+
+ hh447699 + GetCryptoType + GetCryptoType +
+ + +

Gets the decoding profile of the session.

+
+ +

The application specifies the profile when it creates the session.

+
+ hh447701 + GetDecoderProfile + GetDecoderProfile +
+ + +

Gets the size of the driver's certificate chain.

+
+ +

To get the certificate, call ID3D11CryptoSession::GetCertificate.

+
+ hh447695 + GetCertificateSize + GetCertificateSize +
+ + +

Gets a handle to the cryptographic session.

+
+ +

You can use this handle to associate the session with a decoder. This enables the decoder to decrypt data that is encrypted using this session.

+
+ hh447697 + GetCryptoSessionHandle + GetCryptoSessionHandle +
+ + +

Gets the type of encryption that is supported by this session.

+
+

Receives a that specifies the encryption type. The following GUIDs are defined.

ValueMeaning
D3D11_CRYPTO_TYPE_AES128_CTR

128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.

?

+ +

The application specifies the encryption type when it creates the session.

+
+ hh447699 + void ID3D11CryptoSession::GetCryptoType([Out] GUID* pCryptoType) + ID3D11CryptoSession::GetCryptoType +
+ + +

Gets the decoding profile of the session.

+
+

Receives the decoding profile. For a list of possible values, see ID3D11VideoDevice::GetVideoDecoderProfile.

+ +

The application specifies the profile when it creates the session.

+
+ hh447701 + void ID3D11CryptoSession::GetDecoderProfile([Out] GUID* pDecoderProfile) + ID3D11CryptoSession::GetDecoderProfile +
+ + +

Gets the size of the driver's certificate chain.

+
+

Receives the size of the certificate chain, in bytes.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

To get the certificate, call ID3D11CryptoSession::GetCertificate.

+
+ hh447695 + HRESULT ID3D11CryptoSession::GetCertificateSize([Out] unsigned int* pCertificateSize) + ID3D11CryptoSession::GetCertificateSize +
+ + +

Gets the driver's certificate chain.

+
+

The size of the pCertificate array, in bytes. To get the size of the certificate chain, call ID3D11CryptoSession::GetCertificateSize.

+

A reference to a byte array that receives the driver's certificate chain. The caller must allocate the array.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447693 + HRESULT ID3D11CryptoSession::GetCertificate([In] unsigned int CertificateSize,[Out, Buffer] unsigned char* pCertificate) + ID3D11CryptoSession::GetCertificate +
+ + +

Gets a handle to the cryptographic session.

+
+

Receives a handle to the session.

+ +

You can use this handle to associate the session with a decoder. This enables the decoder to decrypt data that is encrypted using this session.

+
+ hh447697 + void ID3D11CryptoSession::GetCryptoSessionHandle([Out] void** pCryptoSessionHandle) + ID3D11CryptoSession::GetCryptoSessionHandle +
+ + +

This method creates D3D11 resources for use with D3D 11on12.

+
+

A reference to an already-created D3D12 resource or heap.

+

A structure that enables an application to override flags that would be inferred by the resource/heap properties. The structure contains bind flags, misc flags, and CPU access flags.

+

The use of the resource on input, as a bitwise-OR'd combination of enumeration constants.

+

The use of the resource on output, as a bitwise-OR'd combination of enumeration constants.

+

The globally unique identifier () for the wrapped resource interface. The REFIID, or , of the interface to the wrapped resource can be obtained by using the __uuidof() macro. For example, __uuidof() will get the of the interface to a wrapped resource.

+

After the method returns, points to the newly created wrapped D3D11 resource or heap.

+

This method returns one of the Direct3D 12 Return Codes.

+ dn913199 + HRESULT ID3D11On12Device::CreateWrappedResource([In] IUnknown* pResource12,[In] const D3D11_RESOURCE_FLAGS* pFlags11,[In] int InState,[In] int OutState,[In] const GUID& riid,[Out, Optional] void** ppResource11) + ID3D11On12Device::CreateWrappedResource +
+ + +

Releases D3D11 resources that were wrapped for D3D 11on12.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

Call this method prior to calling Flush, to insert resource barriers to the appropriate "out" state, and to mark that they should then be expected to be in the "in" state. If no resource list is provided, all wrapped resources are transitioned. These resources will be marked as ?not acquired? in hazard tracking until ID3D11On12Device::AcquireWrappedResources is called.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::ReleaseSync instead.

+
+ dn913200 + void ID3D11On12Device::ReleaseWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::ReleaseWrappedResources +
+ + +

Acquires D3D11 resources for use with D3D 11on12. Indicates that rendering to the wrapped resources can begin again.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

This method marks the resources as "acquired" in hazard tracking.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::AcquireSync instead.

+
+ dn913198 + void ID3D11On12Device::AcquireWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::AcquireWrappedResources +
+ + +

Releases D3D11 resources that were wrapped for D3D 11on12.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

Call this method prior to calling Flush, to insert resource barriers to the appropriate "out" state, and to mark that they should then be expected to be in the "in" state. If no resource list is provided, all wrapped resources are transitioned. These resources will be marked as ?not acquired? in hazard tracking until ID3D11On12Device::AcquireWrappedResources is called.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::ReleaseSync instead.

+
+ dn913200 + void ID3D11On12Device::ReleaseWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::ReleaseWrappedResources +
+ + +

Releases D3D11 resources that were wrapped for D3D 11on12.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

Call this method prior to calling Flush, to insert resource barriers to the appropriate "out" state, and to mark that they should then be expected to be in the "in" state. If no resource list is provided, all wrapped resources are transitioned. These resources will be marked as ?not acquired? in hazard tracking until ID3D11On12Device::AcquireWrappedResources is called.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::ReleaseSync instead.

+
+ dn913200 + void ID3D11On12Device::ReleaseWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::ReleaseWrappedResources +
+ + +

Acquires D3D11 resources for use with D3D 11on12. Indicates that rendering to the wrapped resources can begin again.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

This method marks the resources as "acquired" in hazard tracking.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::AcquireSync instead.

+
+ dn913198 + void ID3D11On12Device::AcquireWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::AcquireWrappedResources +
+ + +

Acquires D3D11 resources for use with D3D 11on12. Indicates that rendering to the wrapped resources can begin again.

+
+

Specifies a reference to a set of D3D11 resources, defined by .

+

Count of the number of resources.

+ +

This method marks the resources as "acquired" in hazard tracking.

Keyed mutex resources cannot be provided to this method; use IDXGIKeyedMutex::AcquireSync instead.

+
+ dn913198 + void ID3D11On12Device::AcquireWrappedResources([In, Buffer] const ID3D11Resource** ppResources,[In] unsigned int NumResources) + ID3D11On12Device::AcquireWrappedResources +
+ + +

Registers the "device removed" event and indicates when a Direct3D device has become removed for any reason, using an asynchronous notification mechanism.

+
+

The handle to the "device removed" event.

+

A reference to information about the "device removed" event, which can be used in UnregisterDeviceRemoved to unregister the event.

+ +

Indicates when a Direct3D device has become removed for any reason, using an asynchronous notification mechanism, rather than as an from Present. The reason for device removal can be retrieved using ID3D11Device::GetDeviceRemovedReason after being notified of the occurrence.

Applications register and un-register a Win32 event handle with a particular device. That event handle will be signaled when the device becomes removed. A poll into the device's ID3D11Device::GetDeviceRemovedReason method indicates that the device is removed.

ISignalableNotifier or SetThreadpoolWait can be used by UWP apps.

When the graphics device is lost, the app or title will receive the graphics event, so that the app or title knows that its graphics device is no longer valid and it is safe for the app or title to re-create its DirectX devices. In response to this event, the app or title needs to re-create its rendering device and pass it into a SetRenderingDevice call on the composition graphics device objects.

After setting this new rendering device, the app or title needs to redraw content of all the pre-existing surfaces after the composition graphics device's OnRenderingDeviceReplaced event is fired.

This method supports Composition for device loss.

The event is not signaled when it is most ideal to re-create. So, instead, we recommend iterating through the adapter ordinals and creating the first ordinal that will succeed.

The application can register an event with the device. The application will be signaled when the device becomes removed.

If the device is already removed, calls to RegisterDeviceRemovedEvent will signal the event immediately. No device-removed error code will be returned from RegisterDeviceRemovedEvent.

Each "device removed" event is never signaled, or is signaled only once. These events are not signaled during device destruction. These events are unregistered during destruction.

The semantics of RegisterDeviceRemovedEvent are similar to IDXGIFactory2::RegisterOcclusionStatusEvent.

+
+ mt589890 + HRESULT ID3D11Device4::RegisterDeviceRemovedEvent([In] void* hEvent,[Out] DWORD* pdwCookie) + ID3D11Device4::RegisterDeviceRemovedEvent +
+ + +

Unregisters the "device removed" event.

+
+

Information about the "device removed" event, retrieved during a successful RegisterDeviceRemovedEvent call.

+ +

See RegisterDeviceRemovedEvent.

+
+ mt589892 + void ID3D11Device4::UnregisterDeviceRemoved([In] DWORD dwCookie) + ID3D11Device4::UnregisterDeviceRemoved +
+ + + No documentation. + + No documentation. + No documentation. + No documentation. + HRESULT ID3D11DeviceContext4::Signal([In] ID3D11Fence* pFence,[In] unsigned longlong Value) + ID3D11DeviceContext4::Signal + + + + No documentation. + + No documentation. + No documentation. + No documentation. + HRESULT ID3D11DeviceContext4::Wait([In] ID3D11Fence* pFence,[In] unsigned longlong Value) + ID3D11DeviceContext4::Wait + + + +

Bind an array of shader resources to the domain-shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources(ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a render target, then the method will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476421 + void ID3D11DeviceContext::DSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::DSSetShaderResources +
+ + +

Set a domain shader to the device.

+
+

Pointer to a domain shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Windows?Phone?8: This API is supported.

+
+ ff476420 + void ID3D11DeviceContext::DSSetShader([In, Optional] ID3D11DomainShader* pDomainShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::DSSetShader +
+ + +

Set an array of sampler states to the domain-shader stage.

+
+

Index into the device's zero-based array to begin setting samplers to (ranges from 0 to - 1).

+

Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ). See Remarks.

+ +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

 //Default sampler state:
+             SamplerDesc;
+            SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
+            SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.MipLODBias = 0;
+            SamplerDesc.MaxAnisotropy = 1;
+            SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
+            SamplerDesc.BorderColor[0] = 1.0f;
+            SamplerDesc.BorderColor[1] = 1.0f;
+            SamplerDesc.BorderColor[2] = 1.0f;
+            SamplerDesc.BorderColor[3] = 1.0f;
+            SamplerDesc.MinLOD = -FLT_MAX;
+            SamplerDesc.MaxLOD = FLT_MAX; 

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476419 + void ID3D11DeviceContext::DSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::DSSetSamplers +
+ + +

Sets the constant buffers used by the domain-shader stage.

+
+

Index into the zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The Direct3D 11.1 runtime, which is available starting with Windows?8, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

If the application wants the shader to access other parts of the buffer, it must call the DSSetConstantBuffers1 method instead.

Windows?Phone?8: This API is supported.

+
+ ff476418 + void ID3D11DeviceContext::DSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::DSSetConstantBuffers +
+ + +

Get the domain-shader resources.

+
+

Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to - 1).

+

The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476417 + void ID3D11DeviceContext::DSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::DSGetShaderResources +
+ + +

Get the domain shader currently set on the device.

+
+

Address of a reference to a domain shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476416 + void ID3D11DeviceContext::DSGetShader([Out, Optional] ID3D11DomainShader** ppDomainShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::DSGetShader +
+ + +

Get an array of sampler state interfaces from the domain-shader stage.

+
+

Index into a zero-based array to begin getting samplers from (ranges from 0 to - 1).

+

Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ).

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476415 + void ID3D11DeviceContext::DSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::DSGetSamplers +
+ + +

Get the constant buffers used by the domain-shader stage.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references (see ) to be returned by the method.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476414 + void ID3D11DeviceContext::DSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::DSGetConstantBuffers +
+ + +

Set a domain shader to the device.

+
+

Pointer to a domain shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Windows?Phone?8: This API is supported.

+
+ ff476420 + void ID3D11DeviceContext::DSSetShader([In, Optional] ID3D11DomainShader* pDomainShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::DSSetShader +
+ + +

Set a domain shader to the device.

+
+

Pointer to a domain shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Windows?Phone?8: This API is supported.

+
+ ff476420 + void ID3D11DeviceContext::DSSetShader([In, Optional] ID3D11DomainShader* pDomainShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::DSSetShader +
+ + +

Sets the constant buffers used by the geometry shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

You can't use the interface to get information about what is currently bound to the pipeline in the device context. But you can use to get information from a compiled shader. For example, you can use and to determine the slot in which a geometry shader expects a constant buffer. You can then pass this slot number to GSSetConstantBuffers to set the constant buffer. You can call the D3D11Reflect function to retrieve the address of a reference to the interface and then call ID3D11ShaderReflection::GetConstantBufferByName to get a reference to .

The Direct3D 11.1 runtime, which is available starting with Windows?8, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

If the application wants the shader to access other parts of the buffer, it must call the GSSetConstantBuffers1 method instead.

+
+ ff476436 + void ID3D11DeviceContext::GSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::GSSetConstantBuffers +
+ + +

Set a geometry shader to the device.

+
+

Pointer to a geometry shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476438 + void ID3D11DeviceContext::GSSetShader([In, Optional] ID3D11GeometryShader* pShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::GSSetShader +
+ + +

Bind an array of shader resources to the geometry shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources(ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a render target, then the method will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476439 + void ID3D11DeviceContext::GSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::GSSetShaderResources +
+ + +

Set an array of sampler states to the geometry shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting samplers to (ranges from 0 to - 1).

+

Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ). See Remarks.

+ +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

 //Default sampler state:
+             SamplerDesc;
+            SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
+            SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.MipLODBias = 0;
+            SamplerDesc.MaxAnisotropy = 1;
+            SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
+            SamplerDesc.BorderColor[0] = 1.0f;
+            SamplerDesc.BorderColor[1] = 1.0f;
+            SamplerDesc.BorderColor[2] = 1.0f;
+            SamplerDesc.BorderColor[3] = 1.0f;
+            SamplerDesc.MinLOD = -FLT_MAX;
+            SamplerDesc.MaxLOD = FLT_MAX; 

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476437 + void ID3D11DeviceContext::GSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::GSSetSamplers +
+ + +

Get the constant buffers used by the geometry shader pipeline stage.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references (see ) to be returned by the method.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476432 + void ID3D11DeviceContext::GSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::GSGetConstantBuffers +
+ + +

Get the geometry shader currently set on the device.

+
+

Address of a reference to a geometry shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476434 + void ID3D11DeviceContext::GSGetShader([Out, Optional] ID3D11GeometryShader** ppGeometryShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::GSGetShader +
+ + +

Get the geometry shader resources.

+
+

Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to - 1).

+

The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476435 + void ID3D11DeviceContext::GSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::GSGetShaderResources +
+ + +

Get an array of sampler state interfaces from the geometry shader pipeline stage.

+
+

Index into a zero-based array to begin getting samplers from (ranges from 0 to - 1).

+

Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ).

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476433 + void ID3D11DeviceContext::GSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::GSGetSamplers +
+ + +

Set a geometry shader to the device.

+
+

Pointer to a geometry shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476438 + void ID3D11DeviceContext::GSSetShader([In, Optional] ID3D11GeometryShader* pShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::GSSetShader +
+ + +

Set a geometry shader to the device.

+
+

Pointer to a geometry shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476438 + void ID3D11DeviceContext::GSSetShader([In, Optional] ID3D11GeometryShader* pShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::GSSetShader +
+ + +

Bind an array of shader resources to the hull-shader stage.

+
+ No documentation. + No documentation. + No documentation. + +

If an overlapping resource view is already bound to an output slot, such as a render target, then the method will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476448 + void ID3D11DeviceContext::HSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::HSSetShaderResources +
+ + +

Set a hull shader to the device.

+
+

Pointer to a hull shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476447 + void ID3D11DeviceContext::HSSetShader([In, Optional] ID3D11HullShader* pHullShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::HSSetShader +
+ + +

Set an array of sampler states to the hull-shader stage.

+
+ No documentation. + No documentation. + No documentation. + +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

 //Default sampler state:
+             SamplerDesc;
+            SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
+            SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.MipLODBias = 0;
+            SamplerDesc.MaxAnisotropy = 1;
+            SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
+            SamplerDesc.BorderColor[0] = 1.0f;
+            SamplerDesc.BorderColor[1] = 1.0f;
+            SamplerDesc.BorderColor[2] = 1.0f;
+            SamplerDesc.BorderColor[3] = 1.0f;
+            SamplerDesc.MinLOD = -FLT_MAX;
+            SamplerDesc.MaxLOD = FLT_MAX; 

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476446 + void ID3D11DeviceContext::HSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::HSSetSamplers +
+ + +

Set the constant buffers used by the hull-shader stage.

+
+ No documentation. + No documentation. + No documentation. + +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The Direct3D 11.1 runtime, which is available starting with Windows?8, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

If the application wants the shader to access other parts of the buffer, it must call the HSSetConstantBuffers1 method instead.

+
+ ff476445 + void ID3D11DeviceContext::HSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::HSSetConstantBuffers +
+ + +

Get the hull-shader resources.

+
+

Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to - 1).

+

The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476443 + void ID3D11DeviceContext::HSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::HSGetShaderResources +
+ + +

Get the hull shader currently set on the device.

+
+

Address of a reference to a hull shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476442 + void ID3D11DeviceContext::HSGetShader([Out, Optional] ID3D11HullShader** ppHullShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::HSGetShader +
+ + +

Get an array of sampler state interfaces from the hull-shader stage.

+
+ No documentation. + No documentation. + No documentation. + +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476441 + void ID3D11DeviceContext::HSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::HSGetSamplers +
+ + +

Get the constant buffers used by the hull-shader stage.

+
+ No documentation. + No documentation. + No documentation. + +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476440 + void ID3D11DeviceContext::HSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::HSGetConstantBuffers +
+ + +

Set a hull shader to the device.

+
+

Pointer to a hull shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476447 + void ID3D11DeviceContext::HSSetShader([In, Optional] ID3D11HullShader* pHullShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::HSSetShader +
+ + +

Set a hull shader to the device.

+
+

Pointer to a hull shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476447 + void ID3D11DeviceContext::HSSetShader([In, Optional] ID3D11HullShader* pHullShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::HSSetShader +
+ + +

Enter a device's critical section.

+
+ +

If SetMultithreadProtected is set to true, then entering a device's critical section prevents other threads from simultaneously calling that device's methods, calling DXGI methods, and calling the methods of all resource, view, shader, state, and asynchronous interfaces.

This function should be used in multithreaded applications when there is a series of graphics commands that must happen in order. This function is typically called at the beginning of the series of graphics commands, and Leave is typically called after those graphics commands.

+
+ mt644887 + void ID3D11Multithread::Enter() + ID3D11Multithread::Enter +
+ + +

Leave a device's critical section.

+
+ +

This function is typically used in multithreaded applications when there is a series of graphics commands that must happen in order. Enter is typically called at the beginning of a series of graphics commands, and this function is typically called after those graphics commands.

+
+ mt644890 + void ID3D11Multithread::Leave() + ID3D11Multithread::Leave +
+ + +

Turns multithread protection on or off.

+
+

Set to true to turn multithread protection on, false to turn it off.

+

True if multithread protection was already turned on prior to calling this method, false otherwise.

+ mt644891 + BOOL ID3D11Multithread::SetMultithreadProtected([In] BOOL bMTProtect) + ID3D11Multithread::SetMultithreadProtected +
+ + +

Find out if multithread protection is turned on or not.

+
+

Returns true if multithread protection is turned on, false otherwise.

+ mt644889 + BOOL ID3D11Multithread::GetMultithreadProtected() + ID3D11Multithread::GetMultithreadProtected +
+ + Constant PixelCenterFractionalComponent + D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT + + + Constant FrontfacingDefaultValue + D3D11_PS_FRONTFACING_DEFAULT_VALUE + + + Constant FrontfacingFalseValue + D3D11_PS_FRONTFACING_FALSE_VALUE + + + Constant FrontfacingTrueValue + D3D11_PS_FRONTFACING_TRUE_VALUE + + + Constant InputRegisterComponents + D3D11_PS_INPUT_REGISTER_COMPONENTS + + + Constant InputRegisterComponentBitCount + D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT + + + Constant InputRegisterCount + D3D11_PS_INPUT_REGISTER_COUNT + + + Constant InputRegisterReadsPerInst + D3D11_PS_INPUT_REGISTER_READS_PER_INST + + + Constant InputRegisterReadPorts + D3D11_PS_INPUT_REGISTER_READ_PORTS + + + Constant LegacyPixelCenterFractionalComponent + D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT + + + Constant OutputDepthRegisterComponents + D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS + + + Constant OutputDepthRegisterComponentBitCount + D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT + + + Constant OutputDepthRegisterCount + D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT + + + Constant OutputMaskRegisterComponents + D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS + + + Constant OutputMaskRegisterComponentBitCount + D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT + + + Constant OutputMaskRegisterCount + D3D11_PS_OUTPUT_MASK_REGISTER_COUNT + + + Constant OutputRegisterComponents + D3D11_PS_OUTPUT_REGISTER_COMPONENTS + + + Constant OutputRegisterComponentBitCount + D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT + + + Constant OutputRegisterCount + D3D11_PS_OUTPUT_REGISTER_COUNT + + + +

Bind an array of shader resources to the pixel shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a rendertarget, then this API will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476473 + void ID3D11DeviceContext::PSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::PSSetShaderResources +
+ + +

Sets a pixel shader to the device.

+
+

Pointer to a pixel shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Set ppClassInstances to null if no interfaces are used in the shader. If it is not null, the number of class instances must match the number of interfaces used in the shader. Furthermore, each interface reference must have a corresponding class instance or the assigned shader will be disabled.

Windows?Phone?8: This API is supported.

+
+ ff476472 + void ID3D11DeviceContext::PSSetShader([In, Optional] ID3D11PixelShader* pPixelShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::PSSetShader +
+ + +

Set an array of sampler states to the pixel shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting samplers to (ranges from 0 to - 1).

+

Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ). See Remarks.

+ +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

StateDefault Value
FilterD3D11_FILTER_MIN_MAG_MIP_LINEAR
AddressUD3D11_TEXTURE_ADDRESS_CLAMP
AddressVD3D11_TEXTURE_ADDRESS_CLAMP
AddressWD3D11_TEXTURE_ADDRESS_CLAMP
MipLODBias0
MaxAnisotropy1
ComparisonFuncD3D11_COMPARISON_NEVER
BorderColor[0]1.0f
BorderColor[1]1.0f
BorderColor[2]1.0f
BorderColor[3]1.0f
MinLOD-FLT_MAX
MaxLODFLT_MAX

?

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476471 + void ID3D11DeviceContext::PSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::PSSetSamplers +
+ + +

Sets the constant buffers used by the pixel shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

To enable the shader to access other parts of the buffer, call PSSetConstantBuffers1 instead of PSSetConstantBuffers. PSSetConstantBuffers1 has additional parameters pFirstConstant and pNumConstants.

+
+ ff476470 + void ID3D11DeviceContext::PSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::PSSetConstantBuffers +
+ + +

Bind an array of shader resources to the pixel shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a rendertarget, then this API will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476473 + void ID3D11DeviceContext::PSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::PSGetShaderResources +
+ + +

Get the pixel shader currently set on the device.

+
+

Address of a reference to a pixel shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed, to avoid memory leaks.

Windows?Phone?8: This API is supported.

+
+ ff476468 + void ID3D11DeviceContext::PSGetShader([Out, Optional] ID3D11PixelShader** ppPixelShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::PSGetShader +
+ + +

Get an array of sampler states from the pixel shader pipeline stage.

+
+

Index into a zero-based array to begin getting samplers from (ranges from 0 to - 1).

+

Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Arry of sampler-state interface references (see ) to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476467 + void ID3D11DeviceContext::PSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::PSGetSamplers +
+ + +

Get the constant buffers used by the pixel shader pipeline stage.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references (see ) to be returned by the method.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476466 + void ID3D11DeviceContext::PSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::PSGetConstantBuffers +
+ + +

Sets a pixel shader to the device.

+
+

Pointer to a pixel shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Set ppClassInstances to null if no interfaces are used in the shader. If it is not null, the number of class instances must match the number of interfaces used in the shader. Furthermore, each interface reference must have a corresponding class instance or the assigned shader will be disabled.

Windows?Phone?8: This API is supported.

+
+ ff476472 + void ID3D11DeviceContext::PSSetShader([In, Optional] ID3D11PixelShader* pPixelShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::PSSetShader +
+ + +

Sets a pixel shader to the device.

+
+

Pointer to a pixel shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

Set ppClassInstances to null if no interfaces are used in the shader. If it is not null, the number of class instances must match the number of interfaces used in the shader. Furthermore, each interface reference must have a corresponding class instance or the assigned shader will be disabled.

Windows?Phone?8: This API is supported.

+
+ ff476472 + void ID3D11DeviceContext::PSSetShader([In, Optional] ID3D11PixelShader* pPixelShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::PSSetShader +
+ + +

Sets graphics processing unit (GPU) debug reference default tracking options for specific resource types.

+
+

A -typed value that specifies the type of resource to track.

+

A combination of D3D11_SHADER_TRACKING_OPTIONS-typed flags that are combined by using a bitwise OR operation. The resulting value identifies tracking options. If a flag is present, the tracking option that the flag represents is set to "on"; otherwise the tracking option is set to "off."

+

This method returns one of the Direct3D 11 return codes.

+ +

This API requires the Windows Software Development Kit (SDK) for Windows?8.

+
+ hh446834 + HRESULT ID3D11RefDefaultTrackingOptions::SetTrackingOptions([In] unsigned int ResourceTypeFlags,[In] unsigned int Options) + ID3D11RefDefaultTrackingOptions::SetTrackingOptions +
+ + +

Sets graphics processing unit (GPU) debug reference tracking options.

+
+ +

This API requires the Windows Software Development Kit (SDK) for Windows?8.

+
+ hh446838 + SetTrackingOptions + SetTrackingOptions +
+ + +

Sets graphics processing unit (GPU) debug reference tracking options.

+
+

A combination of D3D11_SHADER_TRACKING_OPTIONS-typed flags that are combined by using a bitwise OR operation. The resulting value identifies tracking options. If a flag is present, the tracking option that the flag represents is set to "on"; otherwise the tracking option is set to "off."

+

This method returns one of the Direct3D 11 return codes.

+ +

This API requires the Windows Software Development Kit (SDK) for Windows?8.

+
+ hh446838 + HRESULT ID3D11RefTrackingOptions::SetTrackingOptions([In] unsigned int uOptions) + ID3D11RefTrackingOptions::SetTrackingOptions +
+ + + Note??The interface and its methods are not supported in Direct3D 11.? + + No documentation. +

Reserved.

+ ff476632 + BOOL ID3D11SwitchToRef::SetUseRef([In] BOOL UseRef) + ID3D11SwitchToRef::SetUseRef +
+ + + Note??The interface and its methods are not supported in Direct3D 11.? + +

Reserved.

+ ff476631 + BOOL ID3D11SwitchToRef::GetUseRef() + ID3D11SwitchToRef::GetUseRef +
+ + +

Sets the reference rasterizer's default race-condition tracking options for the specified resource types.

+
+

A -typed value that specifies the type of resource to track.

+

A combination of D3D11_SHADER_TRACKING_OPTIONS-typed flags that are combined by using a bitwise OR operation. The resulting value identifies tracking options. If a flag is present, the tracking option that the flag represents is set to "on," otherwise the tracking option is set to "off."

+

This method returns one of the Direct3D 11 return codes.

+ +

This API requires the Windows Software Development Kit (SDK) for Windows?8.

+
+ hh446874 + HRESULT ID3D11TracingDevice::SetShaderTrackingOptionsByType([In] unsigned int ResourceTypeFlags,[In] unsigned int Options) + ID3D11TracingDevice::SetShaderTrackingOptionsByType +
+ + +

Sets the reference rasterizer's race-condition tracking options for a specific shader.

+
+

A reference to the interface of a shader.

+

A combination of D3D11_SHADER_TRACKING_OPTIONS-typed flags that are combined by using a bitwise OR operation. The resulting value identifies tracking options. If a flag is present, the tracking option that the flag represents is set to "on"; otherwise the tracking option is set to "off."

+

This method returns one of the Direct3D 11 return codes.

+ + Note??After a call to SetShaderTrackingOptions, the tracking options that the Options parameter specifies are set for all calls by the shader that the pShader parameter specifies, until the next call to SetShaderTrackingOptions. If you set a flag that is specific to unordered access views (UAV) (for example, D3D11_SHADER_TRACKING_OPTION_UAV_SPECIFIC_FLAGS) in the Options parameter for a compute shader, SetShaderTrackingOptions ignores it.?Note??This API requires the Windows Software Development Kit (SDK) for Windows?8.? + + hh446871 + HRESULT ID3D11TracingDevice::SetShaderTrackingOptions([In] IUnknown* pShader,[In] unsigned int Options) + ID3D11TracingDevice::SetShaderTrackingOptions +
+ + +

Determines whether the calling application is running under a Microsoft Direct3D profiling tool.

+
+ +

You can call GetStatus to determine whether your application is running under a Direct3D profiling tool before you make further calls to other methods of the interface. For example, the ID3DUserDefinedAnnotation::BeginEvent and ID3DUserDefinedAnnotation::EndEvent methods have no effect if the calling application is not running under an enabled Direct3D profiling tool. Therefore, you do not need to call these methods unless your application is running under a Direct3D profiling tool.

+
+ hh446889 + GetStatus + GetStatus +
+ + +

Marks the beginning of a section of event code.

+
+

A null-terminated UNICODE string that contains the name of the event. The name is not relevant to the operating system. You can choose a name that is meaningful when the calling application is running under the Direct3D profiling tool.A null reference produces undefined results.

+

Returns the number of previous calls to BeginEvent that have not yet been finalized by calls to the ID3DUserDefinedAnnotation::EndEvent method.

The return value is ?1 if the calling application is not running under a Direct3D profiling tool.

+ +

You call the EndEvent method to mark the end of the section of event code.

A user can visualize the event when the calling application is running under an enabled Direct3D profiling tool such as Microsoft Visual Studio Ultimate?2012.

BeginEvent has no effect if the calling application is not running under an enabled Direct3D profiling tool.

+
+ hh446884 + int ID3DUserDefinedAnnotation::BeginEvent([In] const wchar_t* Name) + ID3DUserDefinedAnnotation::BeginEvent +
+ + +

Marks the end of a section of event code.

+
+

Returns the number of previous calls to the ID3DUserDefinedAnnotation::BeginEvent method that have not yet been finalized by calls to EndEvent.

The return value is ?1 if the calling application is not running under a Direct3D profiling tool.

+ +

You call the BeginEvent method to mark the beginning of the section of event code.

A user can visualize the event when the calling application is running under an enabled Direct3D profiling tool such as Microsoft Visual Studio Ultimate?2012.

EndEvent has no effect if the calling application is not running under an enabled Direct3D profiling tool.

+
+ hh446886 + int ID3DUserDefinedAnnotation::EndEvent() + ID3DUserDefinedAnnotation::EndEvent +
+ + +

Marks a single point of execution in code.

+
+

A null-terminated UNICODE string that contains the name of the marker. The name is not relevant to the operating system. You can choose a name that is meaningful when the calling application is running under the Direct3D profiling tool.A null reference produces undefined results.

+ +

A user can visualize the marker when the calling application is running under an enabled Direct3D profiling tool such as Microsoft Visual Studio Ultimate?2012.

SetMarker has no effect if the calling application is not running under an enabled Direct3D profiling tool.

+
+ hh446898 + void ID3DUserDefinedAnnotation::SetMarker([In] const wchar_t* Name) + ID3DUserDefinedAnnotation::SetMarker +
+ + +

Determines whether the calling application is running under a Microsoft Direct3D profiling tool.

+
+

The return value is nonzero if the calling application is running under a Direct3D profiling tool such as Visual Studio Ultimate?2012, and zero otherwise.

+ +

You can call GetStatus to determine whether your application is running under a Direct3D profiling tool before you make further calls to other methods of the interface. For example, the ID3DUserDefinedAnnotation::BeginEvent and ID3DUserDefinedAnnotation::EndEvent methods have no effect if the calling application is not running under an enabled Direct3D profiling tool. Therefore, you do not need to call these methods unless your application is running under a Direct3D profiling tool.

+
+ hh446889 + BOOL ID3DUserDefinedAnnotation::GetStatus() + ID3DUserDefinedAnnotation::GetStatus +
+ + +

Sets the constant buffers used by the vertex shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting constant buffers to (ranges from 0 to - 1).

+

Number of buffers to set (ranges from 0 to - StartSlot).

+

Array of constant buffers (see ) being given to the device.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The Direct3D 11.1 runtime, which is available starting with Windows?8, can bind a larger number of resources to the shader than the maximum constant buffer size that is supported by shaders (4096 constants ? 4*32-bit components each). When you bind such a large buffer, the shader can access only the first 4096 4*32-bit component constants in the buffer, as if 4096 constants is the full size of the buffer.

If the application wants the shader to access other parts of the buffer, it must call the VSSetConstantBuffers1 method instead.

Windows?Phone?8: This API is supported.

+
+ ff476491 + void ID3D11DeviceContext::VSSetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[In, Buffer, Optional] const ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::VSSetConstantBuffers +
+ + +

Set a vertex shader to the device.

+
+

Pointer to a vertex shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476493 + void ID3D11DeviceContext::VSSetShader([In, Optional] ID3D11VertexShader* pVertexShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::VSSetShader +
+ + +

Bind an array of shader resources to the vertex-shader stage.

+
+

Index into the device's zero-based array to begin setting shader resources to (range is from 0 to - 1).

+

Number of shader resources to set. Up to a maximum of 128 slots are available for shader resources (range is from 0 to - StartSlot).

+

Array of shader resource view interfaces to set to the device.

+ +

If an overlapping resource view is already bound to an output slot, such as a rendertarget, then this API will fill the destination shader resource slot with null.

For information about creating shader-resource views, see ID3D11Device::CreateShaderResourceView.

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476494 + void ID3D11DeviceContext::VSSetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[In, Buffer, Optional] const ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::VSSetShaderResources +
+ + +

Set an array of sampler states to the vertex shader pipeline stage.

+
+

Index into the device's zero-based array to begin setting samplers to (ranges from 0 to - 1).

+

Number of samplers in the array. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Pointer to an array of sampler-state interfaces (see ). See Remarks.

+ +

Any sampler may be set to null; this invokes the default state, which is defined to be the following.

 //Default sampler state:
+             SamplerDesc;
+            SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
+            SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
+            SamplerDesc.MipLODBias = 0;
+            SamplerDesc.MaxAnisotropy = 1;
+            SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
+            SamplerDesc.BorderColor[0] = 1.0f;
+            SamplerDesc.BorderColor[1] = 1.0f;
+            SamplerDesc.BorderColor[2] = 1.0f;
+            SamplerDesc.BorderColor[3] = 1.0f;
+            SamplerDesc.MinLOD = -FLT_MAX;
+            SamplerDesc.MaxLOD = FLT_MAX; 

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

+
+ ff476492 + void ID3D11DeviceContext::VSSetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[In, Buffer, Optional] const ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::VSSetSamplers +
+ + +

Get the constant buffers used by the vertex shader pipeline stage.

+
+

Index into the device's zero-based array to begin retrieving constant buffers from (ranges from 0 to - 1).

+

Number of buffers to retrieve (ranges from 0 to - StartSlot).

+

Array of constant buffer interface references (see ) to be returned by the method.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476487 + void ID3D11DeviceContext::VSGetConstantBuffers([In] unsigned int StartSlot,[In] unsigned int NumBuffers,[Out, Buffer, Optional] ID3D11Buffer** ppConstantBuffers) + ID3D11DeviceContext::VSGetConstantBuffers +
+ + +

Get the vertex shader currently set on the device.

+
+

Address of a reference to a vertex shader (see ) to be returned by the method.

+

Pointer to an array of class instance interfaces (see ).

+

The number of class-instance elements in the array.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476489 + void ID3D11DeviceContext::VSGetShader([Out, Optional] ID3D11VertexShader** ppVertexShader,[Out, Buffer, Optional] ID3D11ClassInstance** ppClassInstances,[InOut] unsigned int* pNumClassInstances) + ID3D11DeviceContext::VSGetShader +
+ + +

Get the vertex shader resources.

+
+

Index into the device's zero-based array to begin getting shader resources from (ranges from 0 to - 1).

+

The number of resources to get from the device. Up to a maximum of 128 slots are available for shader resources (ranges from 0 to - StartSlot).

+

Array of shader resource view interfaces to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476490 + void ID3D11DeviceContext::VSGetShaderResources([In] unsigned int StartSlot,[In] unsigned int NumViews,[Out, Buffer, Optional] ID3D11ShaderResourceView** ppShaderResourceViews) + ID3D11DeviceContext::VSGetShaderResources +
+ + +

Get an array of sampler states from the vertex shader pipeline stage.

+
+

Index into a zero-based array to begin getting samplers from (ranges from 0 to - 1).

+

Number of samplers to get from a device context. Each pipeline stage has a total of 16 sampler slots available (ranges from 0 to - StartSlot).

+

Arry of sampler-state interface references (see ) to be returned by the device.

+ +

Any returned interfaces will have their reference count incremented by one. Applications should call IUnknown::Release on the returned interfaces when they are no longer needed to avoid memory leaks.

+
+ ff476488 + void ID3D11DeviceContext::VSGetSamplers([In] unsigned int StartSlot,[In] unsigned int NumSamplers,[Out, Buffer, Optional] ID3D11SamplerState** ppSamplers) + ID3D11DeviceContext::VSGetSamplers +
+ + +

Set a vertex shader to the device.

+
+

Pointer to a vertex shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476493 + void ID3D11DeviceContext::VSSetShader([In, Optional] ID3D11VertexShader* pVertexShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::VSSetShader +
+ + +

Set a vertex shader to the device.

+
+

Pointer to a vertex shader (see ). Passing in null disables the shader for this pipeline stage.

+

A reference to an array of class-instance interfaces (see ). Each interface used by a shader must have a corresponding class instance or the shader will get disabled. Set ppClassInstances to null if the shader does not use any interfaces.

+

The number of class-instance interfaces in the array.

+ +

The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10.

The maximum number of instances a shader can have is 256.

+
+ ff476493 + void ID3D11DeviceContext::VSSetShader([In, Optional] ID3D11VertexShader* pVertexShader,[In, Buffer, Optional] const ID3D11ClassInstance** ppClassInstances,[In] unsigned int NumClassInstances) + ID3D11DeviceContext::VSSetShader +
+ + +

Submits one or more buffers for decoding.

+
+

A reference to the interface. To get this reference, call the ID3D11VideoDevice::CreateVideoDecoder method.

+

The number of buffers submitted for decoding.

+

A reference to an array of structures. The NumBuffers parameter specifies the number of elements in the array. Each element in the array describes a compressed buffer for decoding.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This function does not honor any D3D11 predicate that may have been set. will not include this function for any feature level. +

+
+ dn894131 + HRESULT ID3D11VideoContext1::SubmitDecoderBuffers1([In] ID3D11VideoDecoder* pDecoder,[In] unsigned int NumBuffers,[In, Buffer] const D3D11_VIDEO_DECODER_BUFFER_DESC1* pBufferDesc) + ID3D11VideoContext1::SubmitDecoderBuffers1 +
+ + +

Allows the driver to return IHV specific information used when initializing the new hardware key.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice1::CreateCryptoSession.

+

The size of the memory referenced by the pPrivateInputData parameter.

+

The private input data. The contents of this parameter is defined by the implementation of the secure execution environment. It may contain data about the license or about the stream properties.

+

A reference to the private output data. The return data is defined by the implementation of the secure execution environment. It may contain graphics-specific data to be associated with the underlying hardware key.

+

This method returns one of the following error codes.

The operation completed successfully.
E_OUTOFMEMORYThere is insufficient memory to complete the operation.

?

+ dn894130 + HRESULT ID3D11VideoContext1::GetDataForNewHardwareKey([In] ID3D11CryptoSession* pCryptoSession,[In] unsigned int PrivateInputSize,[In, Buffer] const void* pPrivatInputData,[Out] unsigned longlong* pPrivateOutputData) + ID3D11VideoContext1::GetDataForNewHardwareKey +
+ + +

Checks the status of a crypto session.

+
+

Specifies a for which status is checked.

+

A that is populated with the crypto session status upon completion.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.
E_OUTOFMEMORYThere is insufficient memory to complete the operation.

?

+ dn894127 + HRESULT ID3D11VideoContext1::CheckCryptoSessionStatus([In] ID3D11CryptoSession* pCryptoSession,[Out] D3D11_CRYPTO_SESSION_STATUS* pStatus) + ID3D11VideoContext1::CheckCryptoSessionStatus +
+ + +

Indicates that decoder downsampling will be used and that the driver should allocate the appropriate reference frames.

+
+

A reference to the interface.

+

The color space information of the reference frame data.

+

The resolution, format, and colorspace of the output/display frames. This is the destination resolution and format of the downsample operation.

+

The number of reference frames to be used in the operation.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.
E_OUTOFMEMORYThere is insufficient memory to complete the operation.

?

+ +

This function can only be called once for a specific interface. This method must be called prior to the first call to DecoderBeginFrame. To update the downsampling parameters, use DecoderUpdateDownsampling.

+
+ dn894128 + HRESULT ID3D11VideoContext1::DecoderEnableDownsampling([In] ID3D11VideoDecoder* pDecoder,[In] DXGI_COLOR_SPACE_TYPE InputColorSpace,[In] const D3D11_VIDEO_SAMPLE_DESC* pOutputDesc,[In] unsigned int ReferenceFrameCount) + ID3D11VideoContext1::DecoderEnableDownsampling +
+ + +

Updates the decoder downsampling parameters.

+
+

A reference to the interface.

+

The resolution, format, and colorspace of the output/display frames. This is the destination resolution and format of the downsample operation.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.
E_OUTOFMEMORYThere is insufficient memory to complete the operation.

?

+ +

This method can only be called after decode downsampling is enabled by calling DecoderEnableDownsampling. This method is only supported if the D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC capability is reported.

+
+ dn894129 + HRESULT ID3D11VideoContext1::DecoderUpdateDownsampling([In] ID3D11VideoDecoder* pDecoder,[In] const D3D11_VIDEO_SAMPLE_DESC* pOutputDesc) + ID3D11VideoContext1::DecoderUpdateDownsampling +
+ + +

Sets the color space information for the video processor output surface.

+
+

A reference to the interface.

+

A value that specifies the colorspace for the video processor output surface.

+ dn894137 + void ID3D11VideoContext1::VideoProcessorSetOutputColorSpace1([In] ID3D11VideoProcessor* pVideoProcessor,[In] DXGI_COLOR_SPACE_TYPE ColorSpace) + ID3D11VideoContext1::VideoProcessorSetOutputColorSpace1 +
+ + +

Sets a value indicating whether the output surface from a call to ID3D11VideoContext::VideoProcessorBlt will be read by Direct3D shaders.

+
+ No documentation. + No documentation. + dn894138 + void ID3D11VideoContext1::VideoProcessorSetOutputShaderUsage([In] ID3D11VideoProcessor* pVideoProcessor,[In] BOOL ShaderUsage) + ID3D11VideoContext1::VideoProcessorSetOutputShaderUsage +
+ + +

Gets the color space information for the video processor output surface.

+
+

A reference to the interface.

+

A reference to a value that indicates the colorspace for the video processor output surface.

+ dn894133 + void ID3D11VideoContext1::VideoProcessorGetOutputColorSpace1([In] ID3D11VideoProcessor* pVideoProcessor,[Out] DXGI_COLOR_SPACE_TYPE* pColorSpace) + ID3D11VideoContext1::VideoProcessorGetOutputColorSpace1 +
+ + +

Gets a value indicating whether the output surface from a call to ID3D11VideoContext::VideoProcessorBlt can be read by Direct3D shaders.

+
+ No documentation. + No documentation. + dn894134 + void ID3D11VideoContext1::VideoProcessorGetOutputShaderUsage([In] ID3D11VideoProcessor* pVideoProcessor,[Out] BOOL* pShaderUsage) + ID3D11VideoContext1::VideoProcessorGetOutputShaderUsage +
+ + +

Sets the color space information for the video processor input stream.

+
+

A reference to the interface.

+

An index identifying the input stream.

+

A value that specifies the colorspace for the video processor input stream.

+ dn894139 + void ID3D11VideoContext1::VideoProcessorSetStreamColorSpace1([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] DXGI_COLOR_SPACE_TYPE ColorSpace) + ID3D11VideoContext1::VideoProcessorSetStreamColorSpace1 +
+ + +

Specifies whether the video processor input stream should be flipped vertically or horizontally.

+
+

A reference to the interface.

+

An index identifying the input stream.

+

True if mirroring should be enabled; otherwise, false.

+

True if the stream should be flipped horizontally; otherwise, false.

+

True if the stream should be flipped vertically; otherwise, false.

+ +

When used in combination, transformations on the processor input stream should be applied in the following order:

  • Rotation
  • Mirroring
  • Source clipping
+
+ dn894140 + void ID3D11VideoContext1::VideoProcessorSetStreamMirror([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] BOOL Enable,[In] BOOL FlipHorizontal,[In] BOOL FlipVertical) + ID3D11VideoContext1::VideoProcessorSetStreamMirror +
+ + +

Gets the color space information for the video processor input stream.

+
+

A reference to the interface.

+

An index identifying the input stream.

+

A reference to a value that specifies the colorspace for the video processor input stream.

+ dn894135 + void ID3D11VideoContext1::VideoProcessorGetStreamColorSpace1([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] DXGI_COLOR_SPACE_TYPE* pColorSpace) + ID3D11VideoContext1::VideoProcessorGetStreamColorSpace1 +
+ + +

Gets values that indicate whether the video processor input stream is being flipped vertically or horizontally.

+
+

A reference to the interface.

+

An index identifying the input stream.

+

A reference to a boolean value indicating whether mirroring is enabled. True if mirroring is enabled; otherwise, false.

+

A reference to a boolean value indicating whether the stream is being flipped horizontally. True if the stream is being flipped horizontally; otherwise, false.

+

A reference to a boolean value indicating whether the stream is being flipped vertically. True if the stream is being flipped vertically; otherwise, false.

+ dn894136 + void ID3D11VideoContext1::VideoProcessorGetStreamMirror([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] BOOL* pEnable,[Out] BOOL* pFlipHorizontal,[Out] BOOL* pFlipVertical) + ID3D11VideoContext1::VideoProcessorGetStreamMirror +
+ + +

Returns driver hints that indicate which of the video processor operations are best performed using multi-plane overlay hardware rather than ID3D11VideoContext::VideoProcessorBlt method.

+
+ No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. +

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.
E_OUTOFMEMORYThere is insufficient memory to complete the operation.

?

+ +

This method computes the behavior hints using the current state of the video processor as set by the "SetOutput" and "SetStream" methods of and . You must set the proper state before calling this method to ensure that the returned hints contain useful data.

+
+ dn894132 + HRESULT ID3D11VideoContext1::VideoProcessorGetBehaviorHints([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int OutputWidth,[In] unsigned int OutputHeight,[In] DXGI_FORMAT OutputFormat,[In] unsigned int StreamCount,[In, Buffer] const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT* pStreams,[Out] unsigned int* pBehaviorHints) + ID3D11VideoContext1::VideoProcessorGetBehaviorHints +
+ + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + void ID3D11VideoContext2::VideoProcessorSetOutputHDRMetaData([In] ID3D11VideoProcessor* pVideoProcessor,[In] DXGI_HDR_METADATA_TYPE Type,[In] unsigned int Size,[In, Buffer, Optional] const void* pHDRMetaData) + ID3D11VideoContext2::VideoProcessorSetOutputHDRMetaData + + + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + void ID3D11VideoContext2::VideoProcessorGetOutputHDRMetaData([In] ID3D11VideoProcessor* pVideoProcessor,[Out] DXGI_HDR_METADATA_TYPE* pType,[In] unsigned int Size,[Out, Buffer, Optional] void* pMetaData) + ID3D11VideoContext2::VideoProcessorGetOutputHDRMetaData + + + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + void ID3D11VideoContext2::VideoProcessorSetStreamHDRMetaData([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[In] DXGI_HDR_METADATA_TYPE Type,[In] unsigned int Size,[In, Buffer, Optional] const void* pHDRMetaData) + ID3D11VideoContext2::VideoProcessorSetStreamHDRMetaData + + + + No documentation. + + No documentation. + No documentation. + No documentation. + No documentation. + No documentation. + void ID3D11VideoContext2::VideoProcessorGetStreamHDRMetaData([In] ID3D11VideoProcessor* pVideoProcessor,[In] unsigned int StreamIndex,[Out] DXGI_HDR_METADATA_TYPE* pType,[In] unsigned int Size,[Out, Buffer, Optional] void* pMetaData) + ID3D11VideoContext2::VideoProcessorGetStreamHDRMetaData + + + +

Gets a handle to the driver.

+
+ +

The driver handle can be used to configure content protection.

+
+ hh447780 + GetDriverHandle + GetDriverHandle +
+ + +

Gets the parameters that were used to create the decoder.

+
+

A reference to a structure that receives a description of the video stream.

+

A reference to a structure that receives the decoder configuration.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447769 + HRESULT ID3D11VideoDecoder::GetCreationParameters([Out] D3D11_VIDEO_DECODER_DESC* pVideoDesc,[Out] D3D11_VIDEO_DECODER_CONFIG* pConfig) + ID3D11VideoDecoder::GetCreationParameters +
+ + +

Gets a handle to the driver.

+
+

Receives a handle to the driver.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The driver handle can be used to configure content protection.

+
+ hh447780 + HRESULT ID3D11VideoDecoder::GetDriverHandle([Out] void** pDriverHandle) + ID3D11VideoDecoder::GetDriverHandle +
+ + +

Gets the properties of the video decoder output view. +

+
+ hh447768 + GetDesc + GetDesc +
+ + +

Gets the properties of the video decoder output view. +

+
+

A reference to a structure. The method fills the structure with the view properties.

+ hh447768 + void ID3D11VideoDecoderOutputView::GetDesc([Out] D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC* pDesc) + ID3D11VideoDecoderOutputView::GetDesc +
+ + +

Gets the number of profiles that are supported by the driver.

+
+ +

To enumerate the profiles, call ID3D11VideoDevice::GetVideoDecoderProfile.

+
+ hh447796 + GetVideoDecoderProfileCount + GetVideoDecoderProfileCount +
+ + +

Creates a video decoder device for Microsoft Direct3D?11.

+
+

A reference to a structure that describes the video stream and the decoder profile.

+

A reference to a structure that specifies the decoder configuration.

+

Receives a reference to the interface. The caller must release the interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

This method allocates the necessary decoder buffers.

The ID3D11DeviceContext::ClearState method does not affect the internal state of the video decoder.

+
+ hh447786 + HRESULT ID3D11VideoDevice::CreateVideoDecoder([In] const D3D11_VIDEO_DECODER_DESC* pVideoDesc,[In] const D3D11_VIDEO_DECODER_CONFIG* pConfig,[Out] ID3D11VideoDecoder** ppDecoder) + ID3D11VideoDevice::CreateVideoDecoder +
+ + +

Creates a video processor device for Microsoft Direct3D?11.

+
+

A reference to the interface. To get this reference, call ID3D11VideoDevice::CreateVideoProcessorEnumerator.

+

Specifies the frame-rate conversion capabilities for the video processor. The value is a zero-based index that corresponds to the TypeIndex parameter of the ID3D11VideoProcessorEnumerator::GetVideoProcessorRateConversionCaps method.

+

Receives a reference to the interface. The caller must release the interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The ID3D11DeviceContext::ClearState method does not affect the internal state of the video processor.

+
+ hh447788 + HRESULT ID3D11VideoDevice::CreateVideoProcessor([In] ID3D11VideoProcessorEnumerator* pEnum,[In] unsigned int RateConversionIndex,[Out] ID3D11VideoProcessor** ppVideoProcessor) + ID3D11VideoDevice::CreateVideoProcessor +
+ + +

Creates a channel to communicate with the Microsoft Direct3D device or the graphics driver. The channel can be used to send commands and queries for content protection.

+
+

Specifies the type of channel, as a member of the enumeration.

+

Receives a reference to the interface. The caller must release the interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

If the ChannelType parameter is D3D11_AUTHENTICATED_CHANNEL_D3D11, the method creates a channel with the Direct3D device. This type of channel does not support authentication.

If ChannelType is D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE or D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE, the method creates an authenticated channel with the graphics driver.

+
+ hh447784 + HRESULT ID3D11VideoDevice::CreateAuthenticatedChannel([In] D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,[Out] ID3D11AuthenticatedChannel** ppAuthenticatedChannel) + ID3D11VideoDevice::CreateAuthenticatedChannel +
+ + +

Creates a cryptographic session to encrypt video content that is sent to the graphics driver.

+
+

A reference to a that specifies the type of encryption to use. The following GUIDs are defined.

ValueMeaning
D3D11_CRYPTO_TYPE_AES128_CTR

128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.

?

+

A reference to a that specifies the decoding profile. For a list of possible values, see ID3D11VideoDevice::GetVideoDecoderProfile. If decoding will not be used, set this parameter to null.

+

A reference to a that specifies the type of key exchange.

ValueMeaning
D3D11_KEY_EXCHANGE_RSAES_OAEP

The caller will create the session key, encrypt it with RSA Encryption Scheme - Optimal Asymmetric Encryption Padding (RSAES-OAEP) by using the driver's public key, and pass the session key to the driver.

?

+

Receives a reference to the interface. The caller must release the interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The ID3D11DeviceContext::ClearState method does not affect the internal state of the cryptographic session.

+
+ hh447785 + HRESULT ID3D11VideoDevice::CreateCryptoSession([In] const GUID* pCryptoType,[In, Optional] const GUID* pDecoderProfile,[In] const GUID* pKeyExchangeType,[Out] ID3D11CryptoSession** ppCryptoSession) + ID3D11VideoDevice::CreateCryptoSession +
+ + +

Creates a resource view for a video decoder, describing the output sample for the decoding operation.

+
+

A reference to the interface of the decoder surface. The resource must be created with the D3D11_BIND_DECODER flag. See .

+

A reference to a structure that describes the view.

+

Receives a reference to the interface. The caller must release the interface. If this parameter is null, the method checks whether the view is supported, but does not create the view.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

Set the ppVDOVView parameter to null to test whether a view is supported.

+
+ hh447787 + HRESULT ID3D11VideoDevice::CreateVideoDecoderOutputView([In] ID3D11Resource* pResource,[In] const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC* pDesc,[Out, Optional] ID3D11VideoDecoderOutputView** ppVDOVView) + ID3D11VideoDevice::CreateVideoDecoderOutputView +
+ + +

Creates a resource view for a video processor, describing the input sample for the video processing operation.

+
+

A reference to the interface of the input surface.

+

A reference to the interface that specifies the video processor. To get this reference, call ID3D11VideoDevice::CreateVideoProcessorEnumerator.

+

A reference to a structure that describes the view.

+

Receives a reference to the interface. The caller must release the resource. If this parameter is null, the method checks whether the view is supported, but does not create the view.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

Set the ppVPIView parameter to null to test whether a view is supported.

The surface format is given in the FourCC member of the structure. The method fails if the video processor does not support this format as an input sample. An app must specify 0 when using 9_1, 9_2, or 9_3 feature levels.

Resources used for video processor input views must use the following bind flag combinations:

  • Any combination of bind flags that includes D3D11_BIND_DECODER,D3D11_BIND_VIDEO_ENCODER, D3D11_BIND_RENDER_TARGET, and D3D11_BIND_UNORDERED_ACCESS_VIEW can be used as for video processor input views (regardless of what other bind flags may be set).
  • Bind flags = 0 is also allowed for a video processor input view.
  • Other restrictions will apply such as:
    • No multi-sampling is allowed.
    • The Texture2D must have been created using D3D11_USAGE_DEFAULT.
+
+ hh447790 + HRESULT ID3D11VideoDevice::CreateVideoProcessorInputView([In] ID3D11Resource* pResource,[In] ID3D11VideoProcessorEnumerator* pEnum,[In] const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC* pDesc,[Out, Optional] ID3D11VideoProcessorInputView** ppVPIView) + ID3D11VideoDevice::CreateVideoProcessorInputView +
+ + +

Creates a resource view for a video processor, describing the output sample for the video processing operation.

+
+

A reference to the interface of the output surface. The resource must be created with the D3D11_BIND_RENDER_TARGET flag. See .

+

A reference to the interface that specifies the video processor. To get this reference, call ID3D11VideoDevice::CreateVideoProcessorEnumerator.

+

A reference to a structure that describes the view.

+

Receives a reference to the interface. The caller must release the resource. If this parameter is null, the method checks whether the view is supported, but does not create the view.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

Set the ppVPOView parameter to null to test whether a view is supported.

Resources used for video processor output views must use the following combinations:

  • D3D11_BIND_RENDER_TARGET indicates that it can be used for a video processor output view. The following bind flags are allowed to be set with D3D11_BIND_RENDER_TARGET:
    • D3D11_BIND_VIDEO_ENCODER
    • D3D11_BIND_SHADER_RESOURCE
  • Other restrictions will apply such as:
    • No multi-sampling is allowed.
    • The Texture2D must have been created using D3D11_USAGE_DEFAULT.
  • Some YUV formats can be supported as a video processor output view, but might not be supported as a 3D render target. D3D11 will allow the D3D11_BIND_RENDER_TARGET flag for these formats, but CreateRenderTargetView will not be allowed for these formats.

If stereo output is enabled, the output view must have 2 array elements. Otherwise, it must only have a single array element.

+
+ hh447791 + HRESULT ID3D11VideoDevice::CreateVideoProcessorOutputView([In] ID3D11Resource* pResource,[In] ID3D11VideoProcessorEnumerator* pEnum,[In] const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC* pDesc,[Out, Optional] ID3D11VideoProcessorOutputView** ppVPOView) + ID3D11VideoDevice::CreateVideoProcessorOutputView +
+ + +

Enumerates the video processor capabilities of the driver.

+
+

A reference to a structure that describes the video content.

+

Receives a reference to the interface. The caller must release the interface.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

To create the video processor device, pass the reference to the ID3D11VideoDevice::CreateVideoProcessor method.

+
+ hh447789 + HRESULT ID3D11VideoDevice::CreateVideoProcessorEnumerator([In] const D3D11_VIDEO_PROCESSOR_CONTENT_DESC* pDesc,[Out] ID3D11VideoProcessorEnumerator** ppEnum) + ID3D11VideoDevice::CreateVideoProcessorEnumerator +
+ + +

Gets the number of profiles that are supported by the driver.

+
+

Returns the number of profiles.

+ +

To enumerate the profiles, call ID3D11VideoDevice::GetVideoDecoderProfile.

+
+ hh447796 + unsigned int ID3D11VideoDevice::GetVideoDecoderProfileCount() + ID3D11VideoDevice::GetVideoDecoderProfileCount +
+ + +

Gets a profile that is supported by the driver.

+
+

The zero-based index of the profile. To get the number of profiles that the driver supports, call ID3D11VideoDevice::GetVideoDecoderProfileCount.

+

Receives a that identifies the profile.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447795 + HRESULT ID3D11VideoDevice::GetVideoDecoderProfile([In] unsigned int Index,[Out] GUID* pDecoderProfile) + ID3D11VideoDevice::GetVideoDecoderProfile +
+ + +

Given aprofile, checks whether the driver supports a specified output format.

+
+

A reference to a that identifies the profile. To get the list of supported profiles, call ID3D11VideoDevice::GetVideoDecoderProfile.

+

A value that specifies the output format. Typical values include DXGI_FORMAT_NV12 and DXGI_FORMAT_420_OPAQUE.

+

Receives the value TRUE if the format is supported, or otherwise.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

If the driver does not support the profile given in pDecoderProfile, the method returns E_INVALIDARG. If the driver supports the profile, but the DXGI format is not compatible with the profile, the method succeeds but returns the value in pSupported.

+
+ hh447783 + HRESULT ID3D11VideoDevice::CheckVideoDecoderFormat([In] const GUID* pDecoderProfile,[In] DXGI_FORMAT Format,[Out] BOOL* pSupported) + ID3D11VideoDevice::CheckVideoDecoderFormat +
+ + +

Gets the number of decoder configurations that the driver supports for a specified video description.

+
+

A reference to a structure that describes the video stream.

+

Receives the number of decoder configurations.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

To enumerate the decoder configurations, call ID3D11VideoDevice::GetVideoDecoderConfig.

+
+ hh447794 + HRESULT ID3D11VideoDevice::GetVideoDecoderConfigCount([In] const D3D11_VIDEO_DECODER_DESC* pDesc,[Out] unsigned int* pCount) + ID3D11VideoDevice::GetVideoDecoderConfigCount +
+ + +

Gets a decoder configuration that is supported by the driver.

+
+

A reference to a structure that describes the video stream.

+

The zero-based index of the decoder configuration. To get the number of configurations that the driver supports, call ID3D11VideoDevice::GetVideoDecoderConfigCount.

+

A reference to a structure. The method fills in the structure with the decoder configuration.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447793 + HRESULT ID3D11VideoDevice::GetVideoDecoderConfig([In] const D3D11_VIDEO_DECODER_DESC* pDesc,[In] unsigned int Index,[Out] D3D11_VIDEO_DECODER_CONFIG* pConfig) + ID3D11VideoDevice::GetVideoDecoderConfig +
+ + +

Queries the driver for its content protection capabilities.

+
+

A reference to a that specifies the type of encryption to be used. The following GUIDs are defined.

ValueMeaning
D3D11_CRYPTO_TYPE_AES128_CTR

128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.

?

If no encryption will be used, set this parameter to null.

+

A reference to a that specifies the decoding profile. To get profiles that the driver supports, call ID3D11VideoDevice::GetVideoDecoderProfile. If decoding will not be used, set this parameter to null.

The driver might disallow some combinations of encryption type and profile.

+

A reference to a structure. The method fills in this structure with the driver's content protection capabilities.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447792 + HRESULT ID3D11VideoDevice::GetContentProtectionCaps([In, Optional] const GUID* pCryptoType,[In, Optional] const GUID* pDecoderProfile,[Out] D3D11_VIDEO_CONTENT_PROTECTION_CAPS* pCaps) + ID3D11VideoDevice::GetContentProtectionCaps +
+ + +

Gets a cryptographic key-exchange mechanism that is supported by the driver.

+
+

A reference to a that specifies the type of encryption to be used. The following GUIDs are defined.

ValueMeaning
D3D11_CRYPTO_TYPE_AES128_CTR

128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.

?

+

A reference to a that specifies the decoding profile. To get profiles that the driver supports, call ID3D11VideoDevice::GetVideoDecoderProfile. If decoding will not be used, set this parameter to null.

+

The zero-based index of the key-exchange type. The driver reports the number of types in the KeyExchangeTypeCount member of the structure.

+

Receives a that identifies the type of key exchange.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447782 + HRESULT ID3D11VideoDevice::CheckCryptoKeyExchange([In] const GUID* pCryptoType,[In, Optional] const GUID* pDecoderProfile,[In] unsigned int Index,[Out] GUID* pKeyExchangeType) + ID3D11VideoDevice::CheckCryptoKeyExchange +
+ + +

Sets private data on the video device and associates that data with a . +

+
+

The associated with the data.

+

The size of the data, in bytes.

+

A reference to the data.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447797 + HRESULT ID3D11VideoDevice::SetPrivateData([In] const GUID& guid,[In] unsigned int DataSize,[In, Buffer, Optional] const void* pData) + ID3D11VideoDevice::SetPrivateData +
+ + +

Sets a private reference on the video device and associates that reference with a . +

+
+ No documentation. + No documentation. +

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447798 + HRESULT ID3D11VideoDevice::SetPrivateDataInterface([In] const GUID& guid,[In, Optional] const IUnknown* pData) + ID3D11VideoDevice::SetPrivateDataInterface +
+ + +

Retrieves optional sizes for private driver data.

+
+

Indicates the crypto type for which the private input and output size is queried.

+

Indicates the decoder profile for which the private input and output size is queried.

+

Indicates the key exchange type for which the private input and output size is queried.

+

Returns the size of private data that the driver needs for input commands.

+

Returns the size of private data that the driver needs for output commands.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

When pKeyExchangeType is D3D11_KEY_EXCHANGE_HW_PROTECTION, the following behavior is expected in the ID3D11VideoContext::NegotiateCryptoSessionKeyExchange method:

  • The DataSize parameter is set to the size of the structure.
  • pData points to a structure.
    • The pInputData of this structure points to a structure where:
      • pbInput[0] ? pbInput[N-1] contains memory reserved for use by the driver. The number of bytes (N) reserved for the driver is determined by the pPrivateInputSize value returned by the ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize function.
      • pbInput[N] contains the first byte of the DRM command packet.
    • The pOutputData of this structure points to a structure where:
      • pbOutput[0] ? pbOutput[N-1] contains memory reserved for use by the driver. The number of bytes (N) reserved for the driver is determined by the pPrivateOutputSize value returned by the ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize function.
      • pbOutput[N] contains the first byte of the DRM command packet.
+
+ dn894143 + HRESULT ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize([In] const GUID* pCryptoType,[In, Optional] const GUID* pDecoderProfile,[In] const GUID* pKeyExchangeType,[Out] unsigned int* pPrivateInputSize,[Out] unsigned int* pPrivateOutputSize) + ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize +
+ + +

Retrieves capabilities and limitations of the video decoder.

+
+

The decode profile for which the capabilities are queried.

+

The video width for which the capabilities are queried.

+

The video height for which the capabilities are queried.

+

The frame rate of the video content. This information is used by the driver to determine whether the video can be decoded in real-time.

+

The bit rate of the video stream. A value of zero indicates that the bit rate can be ignored.

+

The type of cryptography used to encrypt the video stream. A value of null indicates that the video stream is not encrypted.

+

A reference to a bitwise OR combination of values specifying the decoder capabilities.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.

?

+ dn894144 + HRESULT ID3D11VideoDevice1::GetVideoDecoderCaps([In] const GUID* pDecoderProfile,[In] unsigned int SampleWidth,[In] unsigned int SampleHeight,[In] const DXGI_RATIONAL* pFrameRate,[In] unsigned int BitRate,[In, Optional] const GUID* pCryptoType,[Out] unsigned int* pDecoderCaps) + ID3D11VideoDevice1::GetVideoDecoderCaps +
+ + +

Indicates whether the video decoder supports downsampling with the specified input format, and whether real-time downsampling is supported.

+
+

An object describing the decoding profile, the resolution, and format of the input stream. This is the resolution and format to be downsampled.

+

A value that specifies the colorspace of the reference frame data.

+

The configuration data associated with the decode profile.

+

The frame rate of the video content. This is used by the driver to determine whether the video can be decoded in real-time.

+

An object describing the resolution, format, and colorspace of the output frames. This is the destination resolution and format of the downsample operation.

+

Pointer to a boolean value set by the driver that indicates if downsampling is supported with the specified input data. True if the driver supports the requested downsampling; otherwise, false.

+

Pointer to a boolean value set by the driver that indicates if real-time decoding is supported with the specified input data. True if the driver supports the requested real-time decoding; otherwise, false. Note that the returned value is based on the current configuration of the video decoder and does not guarantee that real-time decoding will be supported for future downsampling operations.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.

?

+ +

You should call GetVideoDecoderCaps to determine whether decoder downsampling is supported before checking support for a specific configuration.

+
+ dn894142 + HRESULT ID3D11VideoDevice1::CheckVideoDecoderDownsampling([In] const D3D11_VIDEO_DECODER_DESC* pInputDesc,[In] DXGI_COLOR_SPACE_TYPE InputColorSpace,[In] const D3D11_VIDEO_DECODER_CONFIG* pInputConfig,[In] const DXGI_RATIONAL* pFrameRate,[In] const D3D11_VIDEO_SAMPLE_DESC* pOutputDesc,[Out] BOOL* pSupported,[Out] BOOL* pRealTimeHint) + ID3D11VideoDevice1::CheckVideoDecoderDownsampling +
+ + +

Allows the driver to recommend optimal output downsample parameters from the input parameters.

+
+

A object describing the decoding profile, the resolution, and format of the input stream. This is the resolution and format to be downsampled.

+

A value that specifies the colorspace of the reference frame data.

+

The configuration data associated with the decode profile.

+

The frame rate of the video content. This is used by the driver to determine whether the video can be decoded in real-time.

+

Pointer to a structure that the driver populates with the recommended output buffer parameters for a downsample operation. The driver will attempt to recommend parameters that can support real-time decoding. If it is unable to do so, the driver will recommend values that are as close to the real-time solution as possible.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.

?

+ +

You should call GetVideoDecoderCaps to determine whether decoder downsampling is supported before checking support for a specific configuration.

+
+ dn894145 + HRESULT ID3D11VideoDevice1::RecommendVideoDecoderDownsampleParameters([In] const D3D11_VIDEO_DECODER_DESC* pInputDesc,[In] DXGI_COLOR_SPACE_TYPE InputColorSpace,[In] const D3D11_VIDEO_DECODER_CONFIG* pInputConfig,[In] const DXGI_RATIONAL* pFrameRate,[Out] D3D11_VIDEO_SAMPLE_DESC* pRecommendedOutputDesc) + ID3D11VideoDevice1::RecommendVideoDecoderDownsampleParameters +
+ + +

Gets the content description that was used to create the video processor.

+
+ hh447811 + GetContentDesc + GetContentDesc +
+ + +

Gets the rate conversion capabilities of the video processor.

+
+ hh447813 + GetRateConversionCaps + GetRateConversionCaps +
+ + +

Gets the content description that was used to create the video processor.

+
+

A reference to a structure that receives the content description.

+ hh447811 + void ID3D11VideoProcessor::GetContentDesc([Out] D3D11_VIDEO_PROCESSOR_CONTENT_DESC* pDesc) + ID3D11VideoProcessor::GetContentDesc +
+ + +

Gets the rate conversion capabilities of the video processor.

+
+

A reference to a structure that receives the rate conversion capabilities.

+ hh447813 + void ID3D11VideoProcessor::GetRateConversionCaps([Out] D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS* pCaps) + ID3D11VideoProcessor::GetRateConversionCaps +
+ + +

Gets the content description that was used to create this enumerator.

+
+ hh447803 + GetVideoProcessorContentDesc + GetVideoProcessorContentDesc +
+ + +

Gets the capabilities of the video processor.

+
+ hh447802 + GetVideoProcessorCaps + GetVideoProcessorCaps +
+ + +

Gets the content description that was used to create this enumerator.

+
+

A reference to a structure that receives the content description.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447803 + HRESULT ID3D11VideoProcessorEnumerator::GetVideoProcessorContentDesc([Out] D3D11_VIDEO_PROCESSOR_CONTENT_DESC* pContentDesc) + ID3D11VideoProcessorEnumerator::GetVideoProcessorContentDesc +
+ + +

Queries whether the video processor supports a specified video format.

+
+

The video format to query, specified as a value.

+

Receives a bitwise OR of zero or more flags from the enumeration.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447801 + HRESULT ID3D11VideoProcessorEnumerator::CheckVideoProcessorFormat([In] DXGI_FORMAT Format,[Out] unsigned int* pFlags) + ID3D11VideoProcessorEnumerator::CheckVideoProcessorFormat +
+ + +

Gets the capabilities of the video processor.

+
+

A reference to a structure that receives the capabilities.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447802 + HRESULT ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps([Out] D3D11_VIDEO_PROCESSOR_CAPS* pCaps) + ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps +
+ + +

Returns a group of video processor capabilities that are associated with frame-rate conversion, including deinterlacing and inverse telecine.

+
+

The zero-based index of the group to retrieve. To get the maximum index, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the RateConversionCapsCount member of the structure.

+

A reference to a structure that receives the frame-rate conversion capabilities.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ +

The capabilities defined in the structure are interdependent. Therefore, the driver can support multiple, distinct groups of these capabilities.

+
+ hh447806 + HRESULT ID3D11VideoProcessorEnumerator::GetVideoProcessorRateConversionCaps([In] unsigned int TypeIndex,[Out] D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS* pCaps) + ID3D11VideoProcessorEnumerator::GetVideoProcessorRateConversionCaps +
+ + +

Gets a list of custom frame rates that a video processor supports.

+
+

The zero-based index of the frame-rate capability group. To get the maxmum index, call ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps and check the RateConversionCapsCount member of the structure.

+

The zero-based index of the custom rate to retrieve. To get the maximum index, call ID3D11VideoProcessorEnumerator::GetVideoProcessorRateConversionCaps and check the CustomRateCount member of the structure.

This index value is always relative to the capability group specified in the TypeIndex parameter.

+

A reference to a structure that receives the custom rate.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447804 + HRESULT ID3D11VideoProcessorEnumerator::GetVideoProcessorCustomRate([In] unsigned int TypeIndex,[In] unsigned int CustomRateIndex,[Out] D3D11_VIDEO_PROCESSOR_CUSTOM_RATE* pRate) + ID3D11VideoProcessorEnumerator::GetVideoProcessorCustomRate +
+ + +

Gets the range of values for an image filter.

+
+

The type of image filter, specified as a value.

+

A reference to a structure. The method fills the structure with the range of values for the specified filter.

+

If this method succeeds, it returns . Otherwise, it returns an error code.

+ hh447805 + HRESULT ID3D11VideoProcessorEnumerator::GetVideoProcessorFilterRange([In] D3D11_VIDEO_PROCESSOR_FILTER Filter,[Out] D3D11_VIDEO_PROCESSOR_FILTER_RANGE* pRange) + ID3D11VideoProcessorEnumerator::GetVideoProcessorFilterRange +
+ + +

Indicates whether the driver supports the specified combination of format and colorspace conversions.

+
+

The format of the video processor input.

+

The colorspace of the video processor input.

+

The format of the video processor output.

+

The colorspace of the video processor output.

+

Pointer to a boolean that is set by the driver to indicate if the specified combination of format and colorspace conversions is supported. True if the conversion is supported; otherwise, false.

+

This method returns one of the following error codes.

The operation completed successfully.
E_INVALIDARGAn invalid parameter was passed or this function was called using an invalid calling pattern.

?

+ dn894147 + HRESULT ID3D11VideoProcessorEnumerator1::CheckVideoProcessorFormatConversion([In] DXGI_FORMAT InputFormat,[In] DXGI_COLOR_SPACE_TYPE InputColorSpace,[In] DXGI_FORMAT OutputFormat,[In] DXGI_COLOR_SPACE_TYPE OutputColorSpace,[Out] BOOL* pSupported) + ID3D11VideoProcessorEnumerator1::CheckVideoProcessorFormatConversion +
+ + +

Gets the properties of the video processor input view.

+
+ hh447808 + GetDesc + GetDesc +
+ + +

Gets the properties of the video processor input view.

+
+

A reference to a structure. The method fills the structure with the view properties.

+ hh447808 + void ID3D11VideoProcessorInputView::GetDesc([Out] D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC* pDesc) + ID3D11VideoProcessorInputView::GetDesc +
+ + +

Gets the properties of the video processor output view.

+
+ hh447810 + GetDesc + GetDesc +
+ + +

Gets the properties of the video processor output view.

+
+

A reference to a structure. The method fills the structure with the view properties.

+ hh447810 + void ID3D11VideoProcessorOutputView::GetDesc([Out] D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC* pDesc) + ID3D11VideoProcessorOutputView::GetDesc +
+ + +

Contains an initialization vector (IV) for 128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher encryption.

+
+ hh447597 + D3D11_AES_CTR_IV + D3D11_AES_CTR_IV +
+ + +

The IV, in big-endian format.

+
+ hh447597 + IV + IV +
+ + +

The block count, in big-endian format.

+
+ hh447597 + Count + Count +
+ + +

Contains input data for a D3D11_AUTHENTICATED_CONFIGURE_ENCRYPTION_WHEN_ACCESSIBLE command.

+
+ hh447600 + D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT + D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT +
+ + +

A structure that contains the command and other data.

+
+ hh447600 + Parameters + Parameters +
+ + +

A that specifies the type of encryption to apply.

+
+ hh447600 + EncryptionGuid + EncryptionGuid +
+ + +

Contains input data for a D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION command.

+
+ hh447601 + D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT + D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT +
+ + +

A structure that contains the command and other data.

+
+ hh447601 + Parameters + Parameters +
+ + +

A handle to the decoder device. Get this from ID3D11VideoDecoder::GetDriverHandle.

+
+ hh447601 + DecoderHandle + DecoderHandle +
+ + +

A handle to the cryptographic session. Get this from ID3D11CryptoSession::GetCryptoSessionHandle.

+
+ hh447601 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

A handle to the Direct3D device. Get this from D3D11VideoContext::QueryAuthenticatedChannel using D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE. +

+
+ hh447601 + DeviceHandle + DeviceHandle +
+ + +

Contains input data for a D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE command.

+
+ hh447602 + D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT + D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT +
+ + +

A structure that contains the command and other data.

+
+ hh447602 + Parameters + Parameters +
+ + +

The initial sequence number for queries.

+
+ hh447602 + StartSequenceQuery + StartSequenceQuery +
+ + +

The initial sequence number for commands.

+
+ hh447602 + StartSequenceConfigure + StartSequenceConfigure +
+ + +

Contains input data for the ID3D11VideoContext::ConfigureAuthenticatedChannel method.

+
+ hh447603 + D3D11_AUTHENTICATED_CONFIGURE_INPUT + D3D11_AUTHENTICATED_CONFIGURE_INPUT +
+ + + No documentation. + + hh447603 + omac + omac + + + + No documentation. + + hh447603 + ConfigureType + ConfigureType + + + + No documentation. + + hh447603 + hChannel + hChannel + + + + No documentation. + + hh447603 + SequenceNumber + SequenceNumber + + + +

Contains the response from the ID3D11VideoContext::ConfigureAuthenticatedChannel method.

+
+ hh447604 + D3D11_AUTHENTICATED_CONFIGURE_OUTPUT + D3D11_AUTHENTICATED_CONFIGURE_OUTPUT +
+ + + No documentation. + + hh447604 + omac + omac + + + + No documentation. + + hh447604 + ConfigureType + ConfigureType + + + + No documentation. + + hh447604 + hChannel + hChannel + + + + No documentation. + + hh447604 + SequenceNumber + SequenceNumber + + + + No documentation. + + hh447604 + ReturnCode + ReturnCode + + + +

Contains input data for a D3D11_AUTHENTICATED_CONFIGURE_PROTECTION command.

+
+ hh447598 + D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT + D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT +
+ + +

A structure that contains the command and other data.

+
+ hh447598 + Parameters + Parameters +
+ + +

A union that specifies the protection level.

+
+ hh447598 + Protections + Protections +
+ + +

Contains input data for a D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE command.

+
+ hh447605 + D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT + D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT +
+ + +

A structure that contains the command and other data.

+
+ hh447605 + Parameters + Parameters +
+ + +

A value that specifies the type of process. To specify the Desktop Window Manager (DWM) process, set this member to D3D11_PROCESSIDTYPE_DWM. Otherwise, set this member to D3D11_PROCESSIDTYPE_HANDLE and set the ProcessHandle member to a valid handle.

+
+ hh447605 + ProcessType + ProcessType +
+ + +

A process handle. If the ProcessType member equals D3D11_PROCESSIDTYPE_HANDLE, the ProcessHandle member specifies a handle to a process. Otherwise, the value is ignored.

+
+ hh447605 + ProcessHandle + ProcessHandle +
+ + +

If TRUE, the specified process has access to restricted shared resources.

+
+ hh447605 + AllowAccess + AllowAccess +
+ + +

Specifies the protection level for video content.

+
+ hh447607 + D3D11_AUTHENTICATED_PROTECTION_FLAGS + D3D11_AUTHENTICATED_PROTECTION_FLAGS +
+ + +
ProtectionEnabled

If 1, video content protection is enabled.

OverlayOrFullscreenRequired

If 1, the application requires video to be displayed using either a hardware overlay or full-screen exclusive mode.

Reserved

Reserved. Set all bits to zero.

+
+ hh447607 + Flags + Flags +
+ + +

Use this member to access all of the bits in the union.

+
+ hh447607 + Value + Value +
+ + + No documentation. + + D3D11_AUTHENTICATED_PROTECTION_FLAGS___MIDL___MIDL_itf_d3d11_0000_0034_0001_INNER + D3D11_AUTHENTICATED_PROTECTION_FLAGS___MIDL___MIDL_itf_d3d11_0000_0034_0001_INNER + + + + No documentation. + + ProtectionEnabled + ProtectionEnabled + + + + No documentation. + + OverlayOrFullscreenRequired + OverlayOrFullscreenRequired + + + + No documentation. + + Reserved + Reserved + + + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID_COUNT query.

+
+ hh447608 + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447608 + Output + Output +
+ + +

The number of encryption GUIDs.

+
+ hh447608 + EncryptionGuidCount + EncryptionGuidCount +
+ + +

Contains input data for a D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID query.

+
+ hh447609 + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT +
+ + +

A structure that contains the for the query and other data.

+
+ hh447609 + Input + Input +
+ + +

The index of the encryption .

+
+ hh447609 + EncryptionGuidIndex + EncryptionGuidIndex +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_ENCRYPTION_WHEN_ACCESSIBLE_GUID query.

+
+ hh447610 + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT + D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447610 + Output + Output +
+ + +

The index of the encryption .

+
+ hh447610 + EncryptionGuidIndex + EncryptionGuidIndex +
+ + +

A that specifies a supported encryption type.

+
+ hh447610 + EncryptionGuid + EncryptionGuid +
+ + + No documentation. + + D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT + D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT + + + + No documentation. + + Output + Output + + + + No documentation. + + BusType + BusType + + + + No documentation. + + AccessibleInContiguousBlocks + AccessibleInContiguousBlocks + + + + No documentation. + + AccessibleInNonContiguousBlocks + AccessibleInNonContiguousBlocks + + + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE query.

+
+ hh447612 + D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT + D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447612 + Output + Output +
+ + +

A value that specifies the channel type.

+
+ hh447612 + ChannelType + ChannelType +
+ + +

Contains input data for a D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION query.

+
+ hh447613 + D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT + D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT +
+ + +

A structure that contains the for the query and other data.

+
+ hh447613 + Input + Input +
+ + +

A handle to a decoder device.

+
+ hh447613 + DecoderHandle + DecoderHandle +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION query.

+
+ hh447614 + D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT + D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447614 + Output + Output +
+ + +

A handle to a decoder device.

+
+ hh447614 + DecoderHandle + DecoderHandle +
+ + +

A handle to the cryptographic session that is associated with the decoder device.

+
+ hh447614 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

A handle to the Direct3D device that is associated with the decoder device.

+
+ hh447614 + DeviceHandle + DeviceHandle +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_CURRENT_ENCRYPTION_WHEN_ACCESSIBLE query.

+
+ hh447615 + D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT + D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447615 + Output + Output +
+ + +

A that specifies the current encryption type.

+
+ hh447615 + EncryptionGuid + EncryptionGuid +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE query.

+
+ hh447616 + D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT + D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447616 + Output + Output +
+ + +

A handle to the device.

+
+ hh447616 + DeviceHandle + DeviceHandle +
+ + +

Contains input data for the ID3D11VideoContext::QueryAuthenticatedChannel method.

+
+ hh447617 + D3D11_AUTHENTICATED_QUERY_INPUT + D3D11_AUTHENTICATED_QUERY_INPUT +
+ + + No documentation. + + hh447617 + QueryType + QueryType + + + + No documentation. + + hh447617 + hChannel + hChannel + + + + No documentation. + + hh447617 + SequenceNumber + SequenceNumber + + + +

Contains a response from the ID3D11VideoContext::QueryAuthenticatedChannel method.

+
+ hh447618 + D3D11_AUTHENTICATED_QUERY_OUTPUT + D3D11_AUTHENTICATED_QUERY_OUTPUT +
+ + + No documentation. + + hh447618 + omac + omac + + + + No documentation. + + hh447618 + QueryType + QueryType + + + + No documentation. + + hh447618 + hChannel + hChannel + + + + No documentation. + + hh447618 + SequenceNumber + SequenceNumber + + + + No documentation. + + hh447618 + ReturnCode + ReturnCode + + + +

Contains input data for a D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT query.

+
+ hh447619 + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT +
+ + +

A structure that contains the for the query and other data.

+
+ hh447619 + Input + Input +
+ + +

A handle to the device.

+
+ hh447619 + DeviceHandle + DeviceHandle +
+ + +

A handle to the cryptographic session.

+
+ hh447619 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT query.

+
+ hh447620 + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447620 + Output + Output +
+ + +

A handle to the device.

+
+ hh447620 + DeviceHandle + DeviceHandle +
+ + +

A handle to the cryptographic session.

+
+ hh447620 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

The number of output IDs associated with the specified device and cryptographic session.

+
+ hh447620 + OutputIDCount + OutputIDCount +
+ + +

Contains input data for a D3D11_AUTHENTICATED_QUERY_OUTPUT_ID query.

+
+ hh447621 + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT +
+ + +

A structure that contains the for the query and other data.

+
+ hh447621 + Input + Input +
+ + +

A handle to the device.

+
+ hh447621 + DeviceHandle + DeviceHandle +
+ + +

A handle to the cryptographic session.

+
+ hh447621 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

The index of the output ID.

+
+ hh447621 + OutputIDIndex + OutputIDIndex +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_OUTPUT_ID query.

+
+ hh447622 + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT + D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447622 + Output + Output +
+ + +

A handle to the device.

+
+ hh447622 + DeviceHandle + DeviceHandle +
+ + +

A handle to the cryptographic session.

+
+ hh447622 + CryptoSessionHandle + CryptoSessionHandle +
+ + +

The index of the output ID.

+
+ hh447622 + OutputIDIndex + OutputIDIndex +
+ + +

An output ID that is associated with the specified device and cryptographic session.

+
+ hh447622 + OutputID + OutputID +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_PROTECTION query.

+
+ hh447623 + D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT + D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447623 + Output + Output +
+ + +

A union that specifies the protection level.

+
+ hh447623 + ProtectionFlags + ProtectionFlags +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT query.

+
+ hh447624 + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447624 + Output + Output +
+ + +

The number of processes that are allowed to open shared resources that have restricted access. A process cannot open such a resource unless the process has been granted access.

+
+ hh447624 + RestrictedSharedResourceProcessCount + RestrictedSharedResourceProcessCount +
+ + +

Contains input data for a D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS query.

+
+ hh447625 + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT +
+ + +

A structure that contains the for the query and other data.

+
+ hh447625 + Input + Input +
+ + +

The index of the process.

+
+ hh447625 + ProcessIndex + ProcessIndex +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS query.

+
+ +

The Desktop Window Manager (DWM) process is identified by setting ProcessIdentifier equal to D3D11_PROCESSIDTYPE_DWM. Other processes are identified by setting the process handle in ProcessHandle and setting ProcessIdentifier equal to D3D11_PROCESSIDTYPE_HANDLE.

+
+ hh447626 + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT + D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447626 + Output + Output +
+ + +

The index of the process in the list of processes.

+
+ hh447626 + ProcessIndex + ProcessIndex +
+ + +

A value that specifies the type of process.

+
+ hh447626 + ProcessIdentifier + ProcessIdentifier +
+ + +

A process handle. If the ProcessIdentifier member equals D3D11_PROCESSIDTYPE_HANDLE, the ProcessHandle member contains a valid handle to a process. Otherwise, this member is ignored.

+
+ hh447626 + ProcessHandle + ProcessHandle +
+ + +

Contains the response to a D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT query.

+
+ hh447627 + D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT + D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT +
+ + +

A structure that contains a Message Authentication Code (MAC) and other data.

+
+ hh447627 + Output + Output +
+ + +

The number of protected, shared resources that can be opened by any process without restrictions.

+
+ hh447627 + UnrestrictedProtectedSharedResourceCount + UnrestrictedProtectedSharedResourceCount +
+ + + No documentation. + + CD3D11_VIDEO_DEFAULT + CD3D11_VIDEO_DEFAULT + + + +

Describes an HLSL class instance.

+
+ +

The structure is returned by the ID3D11ClassInstance::GetDesc method.

The members of this structure except InstanceIndex are valid (non default values) if they describe a class instance aquired using ID3D11ClassLinkage::CreateClassInstance. The InstanceIndex member is only valid when the class instance is aquired using ID3D11ClassLinkage::GetClassInstance.

+
+ ff476098 + D3D11_CLASS_INSTANCE_DESC + D3D11_CLASS_INSTANCE_DESC +
+ + +

The instance ID of an HLSL class; the default value is 0.

+
+ ff476098 + InstanceId + InstanceId +
+ + +

The instance index of an HLSL class; the default value is 0.

+
+ ff476098 + InstanceIndex + InstanceIndex +
+ + +

The type ID of an HLSL class; the default value is 0.

+
+ ff476098 + TypeId + TypeId +
+ + +

Describes the constant buffer associated with an HLSL class; the default value is 0.

+
+ ff476098 + ConstantBuffer + ConstantBuffer +
+ + +

The base constant buffer offset associated with an HLSL class; the default value is 0.

+
+ ff476098 + BaseConstantBufferOffset + BaseConstantBufferOffset +
+ + +

The base texture associated with an HLSL class; the default value is 127.

+
+ ff476098 + BaseTexture + BaseTexture +
+ + +

The base sampler associated with an HLSL class; the default value is 15.

+
+ ff476098 + BaseSampler + BaseSampler +
+ + +

True if the class was created; the default value is false.

+
+ ff476098 + Created + Created +
+ + +

Information about the video card's performance counter capabilities.

+
+ +

This structure is returned by ID3D11Device::CheckCounterInfo.

+
+ ff476104 + D3D11_COUNTER_INFO + D3D11_COUNTER_INFO +
+ + +

Largest device-dependent counter ID that the device supports. If none are supported, this value will be 0. Otherwise it will be greater than or equal to D3D11_COUNTER_DEVICE_DEPENDENT_0. See .

+
+ ff476104 + LastDeviceDependentCounter + LastDeviceDependentCounter +
+ + +

Number of counters that can be simultaneously supported.

+
+ ff476104 + NumSimultaneousCounters + NumSimultaneousCounters +
+ + +

Number of detectable parallel units that the counter is able to discern. Values are 1 ~ 4. Use NumDetectableParallelUnits to interpret the values of the VERTEX_PROCESSING, GEOMETRY_PROCESSING, PIXEL_PROCESSING, and OTHER_GPU_PROCESSING counters.

+
+ ff476104 + NumDetectableParallelUnits + NumDetectableParallelUnits +
+ + +

Describes a counter.

+
+ +

This structure is used by ID3D11Counter::GetDesc, ID3D11Device::CheckCounter and ID3D11Device::CreateCounter.

+
+ ff476103 + D3D11_COUNTER_DESC + D3D11_COUNTER_DESC +
+ + +

Type of counter (see ).

+
+ ff476103 + Counter + Counter +
+ + +

Reserved.

+
+ ff476103 + MiscFlags + MiscFlags +
+ + +

Used with ID3D11On12Device::CreateWrappedResource to override flags that would be inferred by the resource properties or heap properties, including bind flags, misc flags, and CPU access flags.

+
+ +

Use this structure with CreateWrappedResource.

+
+ dn914753 + D3D11_RESOURCE_FLAGS + D3D11_RESOURCE_FLAGS +
+ + + No documentation. + + dn914753 + BindFlags + BindFlags + + + + No documentation. + + dn914753 + MiscFlags + MiscFlags + + + + No documentation. + + dn914753 + CPUAccessFlags + CPUAccessFlags + + + + No documentation. + + dn914753 + StructureByteStride + StructureByteStride + + + +

Stencil operations that can be performed based on the results of stencil test.

+
+ +

All stencil operations are specified as a . The stencil operation can be set differently based on the outcome of the stencil test (which is referred to as StencilFunc in the stencil test portion of depth-stencil testing.

This structure is a member of a depth-stencil description.

+
+ ff476109 + D3D11_DEPTH_STENCILOP_DESC + D3D11_DEPTH_STENCILOP_DESC +
+ + +

The stencil operation to perform when stencil testing fails.

+
+ ff476109 + StencilFailOp + StencilFailOp +
+ + +

The stencil operation to perform when stencil testing passes and depth testing fails.

+
+ ff476109 + StencilDepthFailOp + StencilDepthFailOp +
+ + +

The stencil operation to perform when stencil testing and depth testing both pass.

+
+ ff476109 + StencilPassOp + StencilPassOp +
+ + +

A function that compares stencil data against existing stencil data. The function options are listed in .

+
+ ff476109 + StencilFunc + StencilFunc +
+ + +

Specifies the subresources of a texture that are accessible from a depth-stencil view.

+
+ +

These are valid formats for a depth-stencil view:

  • DXGI_FORMAT_D16_UNORM
  • DXGI_FORMAT_D24_UNORM_S8_UINT
  • DXGI_FORMAT_D32_FLOAT
  • DXGI_FORMAT_D32_FLOAT_S8X24_UINT
  • DXGI_FORMAT_UNKNOWN

A depth-stencil view cannot use a typeless format. If the format chosen is DXGI_FORMAT_UNKNOWN, then the format of the parent resource is used.

A depth-stencil-view description is needed when calling ID3D11Device::CreateDepthStencilView.

+
+ ff476112 + D3D11_DEPTH_STENCIL_VIEW_DESC + D3D11_DEPTH_STENCIL_VIEW_DESC +
+ + +

Specifies the subresource from a 1D texture that is accessible to a depth-stencil view.

+
+ +

This structure is one member of a depth-stencil-view description (see ).

+
+ ff476229 + D3D11_TEX1D_DSV + D3D11_TEX1D_DSV +
+ + +

The index of the first mipmap level to use.

+
+ ff476229 + MipSlice + MipSlice +
+ + +

Specifies the subresources from an array of 1D textures to use in a depth-stencil view.

+
+ +

This structure is one member of a depth-stencil-view description (see ).

+
+ ff476225 + D3D11_TEX1D_ARRAY_DSV + D3D11_TEX1D_ARRAY_DSV +
+ + +

The index of the first mipmap level to use.

+
+ ff476225 + MipSlice + MipSlice +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476225 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476225 + ArraySize + ArraySize +
+ + +

Specifies the subresource from a 2D texture that is accessible to a depth-stencil view.

+
+ +

This structure is one member of a depth-stencil-view description (see ).

+
+ ff476243 + D3D11_TEX2D_DSV + D3D11_TEX2D_DSV +
+ + +

The index of the first mipmap level to use.

+
+ ff476243 + MipSlice + MipSlice +
+ + +

Specifies the subresources from an array 2D textures that are accessible to a depth-stencil view.

+
+ +

This structure is one member of a depth-stencil-view description (see ).

+
+ ff476239 + D3D11_TEX2D_ARRAY_DSV + D3D11_TEX2D_ARRAY_DSV +
+ + +

The index of the first mipmap level to use.

+
+ ff476239 + MipSlice + MipSlice +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476239 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476239 + ArraySize + ArraySize +
+ + +

Specifies the subresource from a multisampled 2D texture that is accessible to a depth-stencil view.

+
+ +

Because a multisampled 2D texture contains a single subtexture, there is nothing to specify; this unused member is included so that this structure will compile in C.

+
+ ff476236 + D3D11_TEX2DMS_DSV + D3D11_TEX2DMS_DSV +
+ + +

Unused.

+
+ ff476236 + UnusedField_NothingToDefine + UnusedField_NothingToDefine +
+ + +

Specifies the subresources from an array of multisampled 2D textures for a depth-stencil view.

+
+ +

This structure is one member of a depth-stencil-view description (see ).

+
+ ff476233 + D3D11_TEX2DMS_ARRAY_DSV + D3D11_TEX2DMS_ARRAY_DSV +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476233 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476233 + ArraySize + ArraySize +
+ + +

Resource data format (see ). See remarks for allowable formats.

+
+ ff476112 + Format + Format +
+ + +

Type of resource (see ). Specifies how a depth-stencil resource will be accessed; the value is stored in the union in this structure.

+
+ ff476112 + ViewDimension + ViewDimension +
+ + +

A value that describes whether the texture is read only. Pass 0 to specify that it is not read only; otherwise, pass one of the members of the enumerated type.

+
+ ff476112 + Flags + Flags +
+ + +

Specifies a 1D texture subresource (see ).

+
+ ff476112 + Texture1D + Texture1D +
+ + +

Specifies an array of 1D texture subresources (see ).

+
+ ff476112 + Texture1DArray + Texture1DArray +
+ + +

Specifies a 2D texture subresource (see ).

+
+ ff476112 + Texture2D + Texture2D +
+ + +

Specifies an array of 2D texture subresources (see ).

+
+ ff476112 + Texture2DArray + Texture2DArray +
+ + +

Specifies a multisampled 2D texture (see ).

+
+ ff476112 + Texture2DMS + Texture2DMS +
+ + +

Specifies an array of multisampled 2D textures (see ).

+
+ ff476112 + Texture2DMSArray + Texture2DMSArray +
+ + +

Arguments for draw indexed instanced indirect.

+
+ +

The members of this structure serve the same purpose as the parameters of ID3D11DeviceContext::DrawIndexedInstanced.

+
+ dn912868 + D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS + D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS +
+ + +

The number of indices read from the index buffer for each instance.

+
+ dn912868 + IndexCountPerInstance + IndexCountPerInstance +
+ + +

The number of instances to draw.

+
+ dn912868 + InstanceCount + InstanceCount +
+ + +

The location of the first index read by the GPU from the index buffer.

+
+ dn912868 + StartIndexLocation + StartIndexLocation +
+ + +

A value added to each index before reading a vertex from the vertex buffer.

+
+ dn912868 + BaseVertexLocation + BaseVertexLocation +
+ + +

A value added to each index before reading per-instance data from a vertex buffer.

+
+ dn912868 + StartInstanceLocation + StartInstanceLocation +
+ + +

Arguments for draw instanced indirect.

+
+ +

The members of this structure serve the same purpose as the parameters of ID3D11DeviceContext::DrawInstanced.

+
+ dn912869 + D3D11_DRAW_INSTANCED_INDIRECT_ARGS + D3D11_DRAW_INSTANCED_INDIRECT_ARGS +
+ + +

The number of vertices to draw.

+
+ dn912869 + VertexCountPerInstance + VertexCountPerInstance +
+ + +

The number of instances to draw.

+
+ dn912869 + InstanceCount + InstanceCount +
+ + +

The index of the first vertex.

+
+ dn912869 + StartVertexLocation + StartVertexLocation +
+ + +

A value added to each index before reading per-instance data from a vertex buffer.

+
+ dn912869 + StartInstanceLocation + StartInstanceLocation +
+ + +

Specifies which bytes in a video surface are encrypted.

+
+ hh447630 + D3D11_ENCRYPTED_BLOCK_INFO + D3D11_ENCRYPTED_BLOCK_INFO +
+ + +

The number of bytes that are encrypted at the start of the buffer.

+
+ hh447630 + NumEncryptedBytesAtBeginning + NumEncryptedBytesAtBeginning +
+ + +

The number of bytes that are skipped after the first NumEncryptedBytesAtBeginning bytes, and then after each block of NumBytesInEncryptPattern bytes. Skipped bytes are not encrypted.

+
+ hh447630 + NumBytesInSkipPattern + NumBytesInSkipPattern +
+ + +

The number of bytes that are encrypted after each block of skipped bytes.

+
+ hh447630 + NumBytesInEncryptPattern + NumBytesInEncryptPattern +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes information about Direct3D 11.1 adapter architecture.

+
+ hh404455 + D3D11_FEATURE_DATA_ARCHITECTURE_INFO + D3D11_FEATURE_DATA_ARCHITECTURE_INFO +
+ + +

Specifies whether a rendering device batches rendering commands and performs multipass rendering into tiles or bins over a render area. Certain API usage patterns that are fine for TileBasedDefferredRenderers (TBDRs) can perform worse on non-TBDRs and vice versa. Applications that are careful about rendering can be friendly to both TBDR and non-TBDR architectures. TRUE if the rendering device batches rendering commands and otherwise.

+
+ hh404455 + TileBasedDeferredRenderer + TileBasedDeferredRenderer +
+ + +

Describes compute shader and raw and structured buffer support in the current graphics driver.

+
+ +

Direct3D 11 devices (D3D_FEATURE_LEVEL_11_0) are required to support Compute Shader model 5.0. Direct3D 10.x devices (D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_10_1) can optionally support Compute Shader model 4.0 or 4.1.

+
+ ff476126 + D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS + D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS +
+ + +

TRUE if compute shaders and raw and structured buffers are supported; otherwise .

+
+ ff476126 + ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x + ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes Direct3D 11.1 feature options in the current graphics driver.

+
+ +

If a Microsoft Direct3D device supports feature level 11.1 (D3D_FEATURE_LEVEL_11_1), when you call ID3D11Device::CheckFeatureSupport with D3D11_FEATURE_D3D11_OPTIONS, CheckFeatureSupport returns a reference to with all member set to TRUE except the SAD4ShaderInstructions and ExtendedDoublesShaderInstructions members, which are optionally supported by the hardware and driver and therefore can be TRUE or .

Feature level 11.1 provides the following additional features:

  • UAVs at every shader stage with 64 UAV bind slots instead of 8.
  • Target-independent rasterization, which enables you to set the ForcedSampleCount member of to 1, 4, 8, or 16 and to render to RTVs with a single sample.
  • UAV-only rendering with the ForcedSampleCount member of set to up to 16 (only up to 8 for feature level 11).

The runtime always sets the following groupings of members identically. That is, all the values in a grouping are TRUE or together:

  • DiscardAPIsSeenByDriver and FlagsForUpdateAndCopySeenByDriver
  • ClearView, CopyWithOverlap, ConstantBufferPartialUpdate, ConstantBufferOffsetting, and MapNoOverwriteOnDynamicConstantBuffer
  • MapNoOverwriteOnDynamicBufferSRV and MultisampleRTVWithForcedSampleCountOne
+
+ hh404457 + D3D11_FEATURE_DATA_D3D11_OPTIONS + D3D11_FEATURE_DATA_D3D11_OPTIONS +
+ + +

Specifies whether logic operations are available in blend state. The runtime sets this member to TRUE if logic operations are available in blend state and otherwise. This member is for feature level 9.1, 9.2, and 9.3. This member is optional for feature level 10, 10.1, and 11. This member is TRUE for feature level 11.1.

+
+ hh404457 + OutputMergerLogicOp + OutputMergerLogicOp +
+ + +

Specifies whether the driver can render with no render target views (RTVs) or depth stencil views (DSVs), and only unordered access views (UAVs) bound. The runtime sets this member to TRUE if the driver can render with no RTVs or DSVs and only UAVs bound and otherwise. If TRUE, you can set the ForcedSampleCount member of to 1, 4, or 8 when you render with no RTVs or DSV and only UAVs bound. For feature level 11.1, this member is always TRUE and you can also set ForcedSampleCount to 16 in addition to 1, 4, or 8. The default value of ForcedSampleCount is 0, which means the same as if the value is set to 1. You can always set ForcedSampleCount to 0 or 1 for UAV-only rendering independently of how this member is set.

+
+ hh404457 + UAVOnlyRenderingForcedSampleCount + UAVOnlyRenderingForcedSampleCount +
+ + +

Specifies whether the driver supports the ID3D11DeviceContext1::DiscardView and ID3D11DeviceContext1::DiscardResource methods. The runtime sets this member to TRUE if the driver supports these methods and otherwise. How this member is set does not indicate whether the driver actually uses these methods; that is, the driver might ignore these methods if they are not useful to the hardware. If , the runtime does not expose these methods to the driver because the driver does not support them. You can monitor this member during development to rule out legacy drivers on hardware where these methods might have otherwise been beneficial. You are not required to write separate code paths based on whether this member is TRUE or ; you can call these methods whenever applicable.

+
+ hh404457 + DiscardAPIsSeenByDriver + DiscardAPIsSeenByDriver +
+ + +

Specifies whether the driver supports new semantics for copy and update that are exposed by the ID3D11DeviceContext1::CopySubresourceRegion1 and ID3D11DeviceContext1::UpdateSubresource1 methods. The runtime sets this member to TRUE if the driver supports new semantics for copy and update. The runtime sets this member to only for legacy drivers. The runtime handles this member similarly to the DiscardAPIsSeenByDriver member.

+
+ hh404457 + FlagsForUpdateAndCopySeenByDriver + FlagsForUpdateAndCopySeenByDriver +
+ + +

Specifies whether the driver supports the ID3D11DeviceContext1::ClearView method. The runtime sets this member to TRUE if the driver supports this method and otherwise. If , the runtime does not expose this method to the driver because the driver does not support it.

Note??For feature level 9.1, 9.2, and 9.3, this member is always TRUE because the option is emulated by the runtime. ?
+
+ hh404457 + ClearView + ClearView +
+ + +

Specifies whether you can call ID3D11DeviceContext1::CopySubresourceRegion1 with overlapping source and destination rectangles. The runtime sets this member to TRUE if you can call CopySubresourceRegion1 with overlapping source and destination rectangles and otherwise. If , the runtime does not expose this method to the driver because the driver does not support it.

Note??For feature level 9.1, 9.2, and 9.3, this member is always TRUE because drivers already support the option for these feature levels. ?
+
+ hh404457 + CopyWithOverlap + CopyWithOverlap +
+ + +

Specifies whether the driver supports partial updates of constant buffers. The runtime sets this member to TRUE if the driver supports partial updates of constant buffers and otherwise. If , the runtime does not expose this operation to the driver because the driver does not support it.

Note??For feature level 9.1, 9.2, and 9.3, this member is always TRUE because the option is emulated by the runtime. ?
+
+ hh404457 + ConstantBufferPartialUpdate + ConstantBufferPartialUpdate +
+ + +

Specifies whether the driver supports new semantics for setting offsets in constant buffers for a shader. The runtime sets this member to TRUE if the driver supports allowing you to specify offsets when you call new methods like the ID3D11DeviceContext1::VSSetConstantBuffers1 method and otherwise. If , the runtime does not expose this operation to the driver because the driver does not support it.

Note??For feature level 9.1, 9.2, and 9.3, this member is always TRUE because the option is emulated by the runtime. ?
+
+ hh404457 + ConstantBufferOffsetting + ConstantBufferOffsetting +
+ + +

Specifies whether you can call ID3D11DeviceContext::Map with D3D11_MAP_WRITE_NO_OVERWRITE on a dynamic constant buffer (that is, whether the driver supports this operation). The runtime sets this member to TRUE if the driver supports this operation and otherwise. If , the runtime fails this method because the driver does not support the operation.

Note??For feature level 9.1, 9.2, and 9.3, this member is always TRUE because the option is emulated by the runtime. ?
+
+ hh404457 + MapNoOverwriteOnDynamicConstantBuffer + MapNoOverwriteOnDynamicConstantBuffer +
+ + +

Specifies whether you can call ID3D11DeviceContext::Map with D3D11_MAP_WRITE_NO_OVERWRITE on a dynamic buffer SRV (that is, whether the driver supports this operation). The runtime sets this member to TRUE if the driver supports this operation and otherwise. If , the runtime fails this method because the driver does not support the operation.

+
+ hh404457 + MapNoOverwriteOnDynamicBufferSRV + MapNoOverwriteOnDynamicBufferSRV +
+ + +

Specifies whether the driver supports multisample rendering when you render with RTVs bound. If TRUE, you can set the ForcedSampleCount member of to 1 with a multisample RTV bound. The driver can support this option on feature level 10 and higher. If , the rasterizer-state creation will fail because the driver is legacy or the feature level is too low.

+
+ hh404457 + MultisampleRTVWithForcedSampleCountOne + MultisampleRTVWithForcedSampleCountOne +
+ + +

Specifies whether the hardware and driver support the msad4 intrinsic function in shaders. The runtime sets this member to TRUE if the hardware and driver support calls to msad4 intrinsic functions in shaders. If , the driver is legacy or the hardware does not support the option; the runtime will fail shader creation for shaders that use msad4.

+
+ hh404457 + SAD4ShaderInstructions + SAD4ShaderInstructions +
+ + +

Specifies whether the hardware and driver support the fma intrinsic function and other extended doubles instructions (DDIV and DRCP) in shaders. The fma intrinsic function emits an extended doubles DFMA instruction. The runtime sets this member to TRUE if the hardware and driver support extended doubles instructions in shaders (shader model 5 and higher). Support of this option implies support of basic double-precision shader instructions as well. You can use the D3D11_FEATURE_DOUBLES value to query for support of double-precision shaders. If , the hardware and driver do not support the option; the runtime will fail shader creation for shaders that use extended doubles instructions.

+
+ hh404457 + ExtendedDoublesShaderInstructions + ExtendedDoublesShaderInstructions +
+ + +

Specifies whether the hardware and driver support sharing a greater variety of Texture2D resource types and formats. The runtime sets this member to TRUE if the hardware and driver support extended Texture2D resource sharing.

+
+ hh404457 + ExtendedResourceSharing + ExtendedResourceSharing +
+ + + Note?? This structure is supported by the Direct3D 11.2 runtime, which is available on Windows?8.1 and later operating systems.?

Describes Direct3D 11.2 feature options in the current graphics driver.

+
+ +

If the Direct3D API is the Direct3D 11.2 runtime and can support 11.2 features, ID3D11Device::CheckFeatureSupport for D3D11_FEATURE_D3D11_OPTIONS1 will return a SUCCESS code when valid parameters are passed. The members of will be set appropriately based on the system's graphics hardware and graphics driver.

+
+ dn280377 + D3D11_FEATURE_DATA_D3D11_OPTIONS1 + D3D11_FEATURE_DATA_D3D11_OPTIONS1 +
+ + +

Specifies whether the hardware and driver support tiled resources. The runtime sets this member to a -typed value that indicates if the hardware and driver support tiled resources and at what tier level.

+
+ dn280377 + TiledResourcesTier + TiledResourcesTier +
+ + +

Specifies whether the hardware and driver support the filtering options () of comparing the result to the minimum or maximum value during texture sampling. The runtime sets this member to TRUE if the hardware and driver support these filtering options.

+
+ dn280377 + MinMaxFiltering + MinMaxFiltering +
+ + +

Specifies whether the hardware and driver also support the ID3D11DeviceContext1::ClearView method on depth formats. For info about valid depth formats, see .

+
+ dn280377 + ClearViewAlsoSupportsDepthOnlyFormats + ClearViewAlsoSupportsDepthOnlyFormats +
+ + +

Specifies support for creating resources that can be passed to the ID3D11DeviceContext::Map and ID3D11DeviceContext::Unmap methods. This means that the CPUAccessFlags member of the structure may be set with the desired elements when the Usage member of is set to D3D11_USAGE_DEFAULT. The runtime sets this member to TRUE if the hardware is capable of at least D3D_FEATURE_LEVEL_11_0 and the graphics device driver supports mappable default buffers.

+
+ dn280377 + MapOnDefaultBuffers + MapOnDefaultBuffers +
+ + + No documentation. + + D3D11_FEATURE_DATA_D3D11_OPTIONS2 + D3D11_FEATURE_DATA_D3D11_OPTIONS2 + + + + No documentation. + + PSSpecifiedStencilRefSupported + PSSpecifiedStencilRefSupported + + + + No documentation. + + TypedUAVLoadAdditionalFormats + TypedUAVLoadAdditionalFormats + + + + No documentation. + + ROVsSupported + ROVsSupported + + + + No documentation. + + ConservativeRasterizationTier + ConservativeRasterizationTier + + + + No documentation. + + TiledResourcesTier + TiledResourcesTier + + + + No documentation. + + MapOnDefaultTextures + MapOnDefaultTextures + + + + No documentation. + + StandardSwizzle + StandardSwizzle + + + + No documentation. + + UnifiedMemoryArchitecture + UnifiedMemoryArchitecture + + + +

Describes Direct3D 11.3 feature options in the current graphics driver.

+
+ dn933226 + D3D11_FEATURE_DATA_D3D11_OPTIONS3 + D3D11_FEATURE_DATA_D3D11_OPTIONS3 +
+ + +

Whether to use the VP and RT array index from any shader feeding the rasterizer.

+
+ dn933226 + VPAndRTArrayIndexFromAnyShaderFeedingRasterizer + VPAndRTArrayIndexFromAnyShaderFeedingRasterizer +
+ + +

Describes Direct3D 11.4 feature options in the current graphics driver.

+
+ +

Use this structure with the D3D11_FEATURE_D3D11_OPTIONS4 member of .

Refer to the section on NV12 in Direct3D 11.4 Features.

+
+ mt732994 + D3D11_FEATURE_DATA_D3D11_OPTIONS4 + D3D11_FEATURE_DATA_D3D11_OPTIONS4 +
+ + +

Specifies a that determines if NV12 textures can be shared across processes and D3D devices.

+
+ mt732994 + ExtendedNV12SharedTextureSupported + ExtendedNV12SharedTextureSupported +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes Direct3D 9 feature options in the current graphics driver.

+
+ hh404458 + D3D11_FEATURE_DATA_D3D9_OPTIONS + D3D11_FEATURE_DATA_D3D9_OPTIONS +
+ + +

Specifies whether the driver supports the nonpowers-of-2-unconditionally feature. For more information about this feature, see feature level. The runtime sets this member to TRUE for hardware at Direct3D 10 and higher feature levels. For hardware at Direct3D 9.3 and lower feature levels, the runtime sets this member to if the hardware and driver support the powers-of-2 (2D textures must have widths and heights specified as powers of two) feature or the nonpowers-of-2-conditionally feature. For more information about this feature, see feature level.

+
+ hh404458 + FullNonPow2TextureSupport + FullNonPow2TextureSupport +
+ + + Note??This structure is supported by the Direct3D 11.2 runtime, which is available on Windows?8.1 and later operating systems.?

Describes Direct3D 9 feature options in the current graphics driver.

+
+ +

You can use the D3D11_FEATURE_D3D9_OPTIONS1 enumeration value with ID3D11Device::CheckFeatureSupport to query a driver about support for Direct3D 9 feature options rather than making multiple calls to ID3D11Device::CheckFeatureSupport by using D3D11_FEATURE_D3D9_OPTIONS, D3D11_FEATURE_D3D9_SHADOW_SUPPORT, and D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT, which provide identical info about supported Direct3D 9 feature options.

+
+ dn629642 + D3D11_FEATURE_DATA_D3D9_OPTIONS1 + D3D11_FEATURE_DATA_D3D9_OPTIONS1 +
+ + +

Specifies whether the driver supports the nonpowers-of-2-unconditionally feature. For more info about this feature, see feature level. The runtime sets this member to TRUE for hardware at Direct3D 10 and higher feature levels. For hardware at Direct3D 9.3 and lower feature levels, the runtime sets this member to if the hardware and driver support the powers-of-2 (2D textures must have widths and heights specified as powers of two) feature or the nonpowers-of-2-conditionally feature.

+
+ dn629642 + FullNonPow2TextureSupported + FullNonPow2TextureSupported +
+ + +

Specifies whether the driver supports the shadowing feature with the comparison-filtering mode set to less than or equal to. The runtime sets this member to TRUE for hardware at Direct3D 10 and higher feature levels. For hardware at Direct3D 9.3 and lower feature levels, the runtime sets this member to TRUE only if the hardware and driver support the shadowing feature; otherwise .

+
+ dn629642 + DepthAsTextureWithLessEqualComparisonFilterSupported + DepthAsTextureWithLessEqualComparisonFilterSupported +
+ + +

Specifies whether the hardware and driver support simple instancing. The runtime sets this member to TRUE if the hardware and driver support simple instancing.

+
+ dn629642 + SimpleInstancingSupported + SimpleInstancingSupported +
+ + +

Specifies whether the hardware and driver support setting a single face of a TextureCube as a render target while the depth stencil surface that is bound alongside can be a Texture2D (as opposed to TextureCube). The runtime sets this member to TRUE if the hardware and driver support this feature; otherwise .

If the hardware and driver don't support this feature, the app must match the render target surface type with the depth stencil surface type. Because hardware at Direct3D 9.3 and lower feature levels doesn't allow TextureCube depth surfaces, the only way to render a scene into a TextureCube while having depth buffering enabled is to render each TextureCube face separately to a Texture2D render target first (because that can be matched with a Texture2D depth), and then copy the results into the TextureCube. If the hardware and driver support this feature, the app can just render to the TextureCube faces directly while getting depth buffering out of a Texture2D depth buffer.

You only need to query this feature from hardware at Direct3D 9.3 and lower feature levels because hardware at Direct3D 10.0 and higher feature levels allow TextureCube depth surfaces.

+
+ dn629642 + TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported + TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes Direct3D?9 shadow support in the current graphics driver.

+
+ +

Shadows are an important element in realistic 3D scenes. You can use the shadow buffer technique to render shadows. The basic principle of the technique is to use a depth buffer to store the scene depth info from the perspective of the light source, and then compare each point rendered in the scene with that buffer to determine if it is in shadow.

To render objects into the scene with shadows on them, you create sampler state objects with comparison filtering set and the comparison mode (ComparisonFunc) to LessEqual. You can also set BorderColor addressing on this depth sampler, even though BorderColor isn't typically allowed on feature levels 9.1 and 9.2. By using the border color and picking 0.0 or 1.0 as the border color value, you can control whether the regions off the edge of the shadow map appear to be always in shadow or never in shadow respectively. + You can control the shadow filter quality by the Mag and Min filter settings in the comparison sampler. Point sampling will produce shadows with non-anti-aliased edges. Linear filter sampler settings will result in higher quality shadow edges, but might affect performance on some power-optimized devices.

Note??If you use a separate setting for Mag versus Min filter options, you produce an undefined result. Anisotropic filtering is not supported. The Mip filter choice is not relevant because feature level 9.x does not allow mipmapped depth buffers.?Note??On feature level 9.x, you can't compile a shader with the SampleCmp and SampleCmpLevelZero intrinsic functions by using older versions of the compiler. For example, you can't use the fxc.exe compiler that ships with the DirectX SDK or use the D3DCompile** functions (like D3DCompileFromFile) that are implemented in D3DCompiler_43.dll and earlier. These intrinsic functions on feature level 9.x are only supported in the fxc.exe compiler that ships with the Windows?8 SDK and later and with the D3DCompile** functions that are implemented in D3DCompiler_44.dll and later. + But these intrinsic functions are present in shader models for feature levels higher than 9.x.? +
+ jj247569 + D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT + D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT +
+ + +

Specifies whether the driver supports the shadowing feature with the comparison-filtering mode set to less than or equal to. The runtime sets this member to TRUE for hardware at Direct3D 10 and higher feature levels. For hardware at Direct3D 9.3 and lower feature levels, the runtime sets this member to TRUE only if the hardware and driver support the shadowing feature; otherwise .

+
+ jj247569 + SupportsDepthAsTextureWithLessEqualComparisonFilter + SupportsDepthAsTextureWithLessEqualComparisonFilter +
+ + + Note?? This structure is supported by the Direct3D 11.2 runtime, which is available on Windows?8.1 and later operating systems.?

Describes whether simple instancing is supported.

+
+ +

If the Direct3D API is the Direct3D 11.2 runtime and can support 11.2 features, ID3D11Device::CheckFeatureSupport for D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT will return a SUCCESS code when valid parameters are passed. The SimpleInstancingSupported member of will be set to TRUE or .

Simple instancing means that instancing is supported with the caveat that the InstanceDataStepRate member of the structure must be equal to 1. This does not change the full instancing support provided by hardware at feature level 9.3 and above, and is meant to expose the instancing support that may be available on feature level 9.2 and 9.1 hardware.

+
+ dn280414 + D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT + D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT +
+ + +

Specifies whether the hardware and driver support simple instancing. The runtime sets this member to TRUE if the hardware and driver support simple instancing.

+
+ dn280414 + SimpleInstancingSupported + SimpleInstancingSupported +
+ + +

Describes double data type support in the current graphics driver.

+
+ +

If the runtime sets DoublePrecisionFloatShaderOps to TRUE, the hardware and driver support the following Shader Model 5 instructions:

  • dadd
  • dmax
  • dmin
  • dmul
  • deq
  • dge
  • dlt
  • dne
  • dmov
  • dmovc
  • dtof
  • ftod
Note??If DoublePrecisionFloatShaderOps is TRUE, the hardware and driver do not necessarily support double-precision division.? +
+ ff476127 + D3D11_FEATURE_DATA_DOUBLES + D3D11_FEATURE_DATA_DOUBLES +
+ + +

Specifies whether double types are allowed. If TRUE, double types are allowed; otherwise . The runtime must set DoublePrecisionFloatShaderOps to TRUE in order for you to use any HLSL shader that is compiled with a double type.

+
+ ff476127 + DoublePrecisionFloatShaderOps + DoublePrecisionFloatShaderOps +
+ + +

Describes which resources are supported by the current graphics driver for a given format.

+
+ ff476128 + D3D11_FEATURE_DATA_FORMAT_SUPPORT + D3D11_FEATURE_DATA_FORMAT_SUPPORT +
+ + +

to return information on.

+
+ ff476128 + InFormat + InFormat +
+ + +

Combination of flags indicating which resources are supported.

+
+ ff476128 + OutFormatSupport + OutFormatSupport +
+ + +

Describes which unordered resource options are supported by the current graphics driver for a given format.

+
+ ff476129 + D3D11_FEATURE_DATA_FORMAT_SUPPORT2 + D3D11_FEATURE_DATA_FORMAT_SUPPORT2 +
+ + +

to return information on.

+
+ ff476129 + InFormat + InFormat +
+ + +

Combination of flags indicating which unordered resource options are supported.

+
+ ff476129 + OutFormatSupport2 + OutFormatSupport2 +
+ + +

Describes feature data GPU virtual address support, including maximum address bits per resource and per process.

+
+ +

See .

+
+ mt158212 + D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT + D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT +
+ + +

The maximum GPU virtual address bits per resource.

+
+ mt158212 + MaxGPUVirtualAddressBitsPerResource + MaxGPUVirtualAddressBitsPerResource +
+ + +

The maximum GPU virtual address bits per process.

+
+ mt158212 + MaxGPUVirtualAddressBitsPerProcess + MaxGPUVirtualAddressBitsPerProcess +
+ + + Note??This structure is supported by the Direct3D 11.2 runtime, which is available on Windows?8.1 and later operating systems.?

Describes whether a GPU profiling technique is supported.

+
+ +

If the Direct3D API is the Direct3D 11.2 runtime and can support 11.2 features, ID3D11Device::CheckFeatureSupport for D3D11_FEATURE_MARKER_SUPPORT will return a SUCCESS code when valid parameters are passed. The Profile member of will be set to TRUE or .

+
+ dn280415 + D3D11_FEATURE_DATA_MARKER_SUPPORT + D3D11_FEATURE_DATA_MARKER_SUPPORT +
+ + +

Specifies whether the hardware and driver support a GPU profiling technique that can be used with development tools. The runtime sets this member to TRUE if the hardware and driver support data marking.

+
+ dn280415 + Profile + Profile +
+ + +

Stencil operations that can be performed based on the results of stencil test.

+
+ +

All stencil operations are specified as a . The stencil operation can be set differently based on the outcome of the stencil test (which is referred to as StencilFunc in the stencil test portion of depth-stencil testing.

This structure is a member of a depth-stencil description.

+
+ ff476109 + D3D11_FEATURE_DATA_SHADER_CACHE + D3D11_FEATURE_DATA_SHADER_CACHE +
+ + +

The stencil operation to perform when stencil testing fails.

+
+ ff476109 + SupportFlags + SupportFlags +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes precision support options for shaders in the current graphics driver.

+
+ +

For hardware at Direct3D 10 and higher feature levels, the runtime sets both members identically. For hardware at Direct3D 9.3 and lower feature levels, the runtime can set a lower precision support in the PixelShaderMinPrecision member than the AllOtherShaderStagesMinPrecision member; for 9.3 and lower, all other shader stages represent only the vertex shader.

For more info about HLSL minimum precision, see using HLSL minimum precision.

+
+ hh404460 + D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT + D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies minimum precision levels that the driver supports for the pixel shader. A value of zero indicates that the driver supports only full 32-bit precision for the pixel shader.

+
+ hh404460 + PixelShaderMinPrecision + PixelShaderMinPrecision +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies minimum precision levels that the driver supports for all other shader stages. A value of zero indicates that the driver supports only full 32-bit precision for all other shader stages.

+
+ hh404460 + AllOtherShaderStagesMinPrecision + AllOtherShaderStagesMinPrecision +
+ + +

Describes the multi-threading features that are supported by the current graphics driver.

+
+ +

Use the structure with the ID3D11Device::CheckFeatureSupport method to determine multi-threading support.

+
+ ff476130 + D3D11_FEATURE_DATA_THREADING + D3D11_FEATURE_DATA_THREADING +
+ + +

TRUE means resources can be created concurrently on multiple threads while drawing; means that the presence of coarse synchronization will prevent concurrency.

+
+ ff476130 + DriverConcurrentCreates + DriverConcurrentCreates +
+ + +

TRUE means command lists are supported by the current driver; means that the API will emulate deferred contexts and command lists with software.

+
+ ff476130 + DriverCommandLists + DriverCommandLists +
+ + +

Allow or deny certain types of messages to pass through a filter.

+
+ ff476178 + D3D11_INFO_QUEUE_FILTER + D3D11_INFO_QUEUE_FILTER +
+ + +

Number of message categories to allow or deny.

+
+ ff476178 + AllowList + AllowList +
+ + +

Array of message categories to allow or deny. Array must have at least NumCategories members (see ).

+
+ ff476178 + DenyList + DenyList +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Represents key exchange data for hardware content protection.

+
+ +

A reference to this structure is passed in the pData parameter of ID3D11VideoContext::NegotiateCryptoSessionKeyExchange method when the is creating using the D3D11_KEY_EXCHANGE_HW_PROTECTION key exchange type.

+
+ dn894115 + D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA + D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA +
+ + +

The function ID of the DRM command. The values and meanings of the function ID are defined by the DRM specification.

+
+ dn894115 + HWProtectionFunctionID + HWProtectionFunctionID +
+ + +

Pointer to a buffer containing a structure that specifies memory reserved for IHV use and the input data for the DRM command.

+
+ dn894115 + pInputData + pInputData +
+ + +

Pointer to a buffer containing a structure that specifies memory reserved for IHV use and the input data for the DRM command.

+
+ dn894115 + pOutputData + pOutputData +
+ + +

The result of the hardware DRM command.

+
+ dn894115 + Status + Status +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Represents key exchange input data for hardware content protection.

+
+ dn894116 + D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA + D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA +
+ + +

The size of the private data reserved for IHV usage. This size is determined from the pPrivateInputSize parameter returned by the ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize function.

+
+ dn894116 + PrivateDataSize + PrivateDataSize +
+ + +

The size of the DRM command data.

+
+ dn894116 + HWProtectionDataSize + HWProtectionDataSize +
+ + +

If PrivateDataSize is greater than 0, pbInput[0] ? pbInput[PrivateDataSize - 1] is reserved for IHV use.

pbInput[PrivateDataSize] ? pbInput[HWProtectionDataSize + PrivateDataSize - 1] contains the input data for the DRM command. The format and size of the DRM command is defined by the DRM specification.

+
+ dn894116 + pbInput + pbInput +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Represents key exchange output data for hardware content protection.

+
+ dn894117 + D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA + D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA +
+ + +

The size of the private data reserved for IHV usage. This size is determined from the pPrivateOutputSize parameter returned by the ID3D11VideoDevice1::GetCryptoSessionPrivateDataSize function.

+
+ dn894117 + PrivateDataSize + PrivateDataSize +
+ + +

The maximum size of data that the driver can return in the output buffer. The last byte that it can write to is pbOuput[PrivateDataSize + MaxHWProtectionDataSize ? 1].

+
+ dn894117 + MaxHWProtectionDataSize + MaxHWProtectionDataSize +
+ + +

The size of the output data written by the driver.

+
+ dn894117 + HWProtectionDataSize + HWProtectionDataSize +
+ + +

The number of 100 nanosecond units spent transporting the data.

+
+ dn894117 + TransportTime + TransportTime +
+ + +

The number of 100 nanosecond units spent executing the content protection command.

+
+ dn894117 + ExecutionTime + ExecutionTime +
+ + +

If PrivateDataSize is greater than 0, pbInput[0] ? pbOutput[PrivateDataSize - 1] is reserved for IHV use.

pbOutput[PrivateDataSize] ? pbOutput[HWProtectionDataSize + PrivateDataSize - 1] contains the input data for the DRM command. The format and size of the DRM command is defined by the DRM specification.

+
+ dn894117 + pbOutput + pbOutput +
+ + +

Contains a Message Authentication Code (MAC).

+
+ hh447631 + D3D11_OMAC + D3D11_OMAC +
+ + +

A byte array that contains the cryptographic MAC value of the message.

+
+ hh447631 + Omac + Omac +
+ + +

Describes the tile structure of a tiled resource with mipmaps.

+
+ dn280418 + D3D11_PACKED_MIP_DESC + D3D11_PACKED_MIP_DESC +
+ + +

Number of standard mipmaps in the tiled resource.

+
+ dn280418 + NumStandardMips + NumStandardMips +
+ + +

Number of packed mipmaps in the tiled resource.

This number starts from the least detailed mipmap (either sharing tiles or using non standard tile layout). This number is 0 if no + such packing is in the resource. For array surfaces, this value is the number of mipmaps that are packed for a given array slice where each array slice repeats the same + packing. +

On Tier_2 tiled resources hardware, mipmaps that fill at least one standard shaped tile in all dimensions + are not allowed to be included in the set of packed mipmaps. On Tier_1 hardware, mipmaps that are an integer multiple of one standard shaped tile in all dimensions are not allowed to be included in the set of packed mipmaps. Mipmaps with at least one + dimension less than the standard tile shape may or may not be packed. When a given mipmap needs to be packed, all coarser + mipmaps for a given array slice are considered packed as well. +

+
+ dn280418 + NumPackedMips + NumPackedMips +
+ + +

Number of tiles for the packed mipmaps in the tiled resource.

If there is no packing, this value is meaningless and is set to 0. + Otherwise, it is set to the number of tiles + that are needed to represent the set of packed mipmaps. + The pixel layout within the packed mipmaps is hardware specific. + If apps define only partial mappings for the set of tiles in packed mipmaps, read and write behavior is vendor specific and undefined. + For arrays, this value is only the count of packed mipmaps within + the subresources for each array slice.

+
+ dn280418 + NumTilesForPackedMips + NumTilesForPackedMips +
+ + +

Offset of the first packed tile for the resource + in the overall range of tiles. If NumPackedMips is 0, this + value is meaningless and is 0. Otherwise, it is the + offset of the first packed tile for the resource in the overall + range of tiles for the resource. A value of 0 for + StartTileIndexInOverallResource means the entire resource is packed. + For array surfaces, this is the offset for the tiles that contain the packed + mipmaps for the first array slice. Packed mipmaps for each array slice in arrayed surfaces are at this offset + past the beginning of the tiles for each array slice.

Note??The + number of overall tiles, packed or not, for a given array slice is + simply the total number of tiles for the resource divided by the + resource's array size, so it is easy to locate the range of tiles for + any given array slice, out of which StartTileIndexInOverallResource identifies + which of those are packed. ?
+
+ dn280418 + StartTileIndexInOverallResource + StartTileIndexInOverallResource +
+ + +

Query information about graphics-pipeline activity in between calls to ID3D11DeviceContext::Begin and ID3D11DeviceContext::End.

+
+ ff476192 + D3D11_QUERY_DATA_PIPELINE_STATISTICS + D3D11_QUERY_DATA_PIPELINE_STATISTICS +
+ + + No documentation. + + ff476192 + IAVertices + IAVertices + + + + No documentation. + + ff476192 + IAPrimitives + IAPrimitives + + + + No documentation. + + ff476192 + VSInvocations + VSInvocations + + + + No documentation. + + ff476192 + GSInvocations + GSInvocations + + + + No documentation. + + ff476192 + GSPrimitives + GSPrimitives + + + + No documentation. + + ff476192 + CInvocations + CInvocations + + + + No documentation. + + ff476192 + CPrimitives + CPrimitives + + + + No documentation. + + ff476192 + PSInvocations + PSInvocations + + + + No documentation. + + ff476192 + HSInvocations + HSInvocations + + + + No documentation. + + ff476192 + DSInvocations + DSInvocations + + + + No documentation. + + ff476192 + CSInvocations + CSInvocations + + + +

Query information about the reliability of a timestamp query.

+
+ +

For a list of query types see .

+
+ ff476194 + D3D11_QUERY_DATA_TIMESTAMP_DISJOINT + D3D11_QUERY_DATA_TIMESTAMP_DISJOINT +
+ + +

How frequently the GPU counter increments in Hz.

+
+ ff476194 + Frequency + Frequency +
+ + +

If this is TRUE, something occurred in between the query's ID3D11DeviceContext::Begin and ID3D11DeviceContext::End calls that caused the timestamp counter to become discontinuous or disjoint, such as unplugging the AC cord on a laptop, overheating, or throttling up/down due to laptop savings events. The timestamp returned by ID3D11DeviceContext::GetData for a timestamp query is only reliable if Disjoint is .

+
+ ff476194 + Disjoint + Disjoint +
+ + +

Describes a query.

+
+ ff476195 + D3D11_QUERY_DESC + D3D11_QUERY_DESC +
+ + +

Type of query (see ).

+
+ ff476195 + Query + Query +
+ + +

Miscellaneous flags (see ).

+
+ ff476195 + MiscFlags + MiscFlags +
+ + +

Describes a query.

+
+ dn899156 + D3D11_QUERY_DESC1 + D3D11_QUERY_DESC1 +
+ + +

A -typed value that specifies the type of query.

+
+ dn899156 + Query + Query +
+ + +

A combination of -typed values that are combined by using a bitwise OR operation. The resulting value specifies query behavior.

+
+ dn899156 + MiscFlags + MiscFlags +
+ + +

A -typed value that specifies the context for the query.

+
+ dn899156 + ContextType + ContextType +
+ + +

Describes rasterizer state.

+
+ +

Rasterizer state defines the behavior of the rasterizer stage. To create a rasterizer-state object, call ID3D11Device3::CreateRasterizerState2. To set rasterizer state, call ID3D11DeviceContext::RSSetState.

If you do not specify some rasterizer state, the Direct3D runtime uses the following default values for rasterizer state.

StateDefault Value
FillModeSolid
CullModeBack
FrontCounterClockwise
DepthBias0
SlopeScaledDepthBias0.0f
DepthBiasClamp0.0f
DepthClipEnableTRUE
ScissorEnable
MultisampleEnable
AntialiasedLineEnable
ForcedSampleCount0
ConservativeRasterD3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF

?

Note??For feature levels 9.1, 9.2, 9.3, and 10.0, if you set MultisampleEnable to , the runtime renders all points, lines, and triangles without anti-aliasing even for render targets with a sample count greater than 1. For feature levels 10.1 and higher, the setting of MultisampleEnable has no effect on points and triangles with regard to MSAA and impacts only the selection of the line-rendering algorithm as shown in this table:?

Line-rendering algorithmMultisampleEnableAntialiasedLineEnable
Aliased
Alpha antialiasedTRUE
QuadrilateralTRUE
QuadrilateralTRUETRUE

?

The settings of the MultisampleEnable and AntialiasedLineEnable members apply only to multisample antialiasing (MSAA) render targets (that is, render targets with sample counts greater than 1). Because of the differences in feature-level behavior and as long as you aren?t performing any line drawing or don?t mind that lines render as quadrilaterals, we recommend that you always set MultisampleEnable to TRUE whenever you render on MSAA render targets.

+
+ dn899157 + D3D11_RASTERIZER_DESC2 + D3D11_RASTERIZER_DESC2 +
+ + +

A -typed value that determines the fill mode to use when rendering.

+
+ dn899157 + FillMode + FillMode +
+ + +

A -typed value that indicates that triangles facing the specified direction are not drawn.

+
+ dn899157 + CullMode + CullMode +
+ + +

Specifies whether a triangle is front- or back-facing. If TRUE, a triangle will be considered front-facing if its vertices are counter-clockwise on the render target and considered back-facing if they are clockwise. If , the opposite is true.

+
+ dn899157 + FrontCounterClockwise + FrontCounterClockwise +
+ + +

Depth value added to a given pixel. For info about depth bias, see Depth Bias.

+
+ dn899157 + DepthBias + DepthBias +
+ + +

Maximum depth bias of a pixel. For info about depth bias, see Depth Bias.

+
+ dn899157 + DepthBiasClamp + DepthBiasClamp +
+ + +

Scalar on a given pixel's slope. For info about depth bias, see Depth Bias.

+
+ dn899157 + SlopeScaledDepthBias + SlopeScaledDepthBias +
+ + +

Specifies whether to enable clipping based on distance.

The hardware always performs x and y clipping of rasterized coordinates. When DepthClipEnable is set to the default?TRUE, the hardware also clips the z value (that is, the hardware performs the last step of the following algorithm). +

0 < w + -w <= x <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + -w <= y <= w (or arbitrarily wider range if implementation uses a guard band to reduce clipping burden) + 0 <= z <= w +

When you set DepthClipEnable to , the hardware skips the z clipping (that is, the last step in the preceding algorithm). However, the hardware still performs the "0 < w" clipping. When z clipping is disabled, improper depth ordering at the pixel level might result. However, when z clipping is disabled, stencil shadow implementations are simplified. In other words, you can avoid complex special-case handling for geometry that goes beyond the back clipping plane. +

+
+ dn899157 + DepthClipEnable + DepthClipEnable +
+ + +

Specifies whether to enable scissor-rectangle culling. All pixels outside an active scissor rectangle are culled.

+
+ dn899157 + ScissorEnable + ScissorEnable +
+ + +

Specifies whether to use the quadrilateral or alpha line anti-aliasing algorithm on multisample antialiasing (MSAA) render targets. Set to TRUE to use the quadrilateral line anti-aliasing algorithm and to to use the alpha line anti-aliasing algorithm. For more info about this member, see Remarks.

+
+ dn899157 + MultisampleEnable + MultisampleEnable +
+ + +

Specifies whether to enable line antialiasing; only applies if doing line drawing and MultisampleEnable is . For more info about this member, see Remarks.

+
+ dn899157 + AntialiasedLineEnable + AntialiasedLineEnable +
+ + +

The sample count that is forced while UAV rendering or rasterizing. Valid values are 0, 1, 2, 4, 8, and optionally 16. 0 indicates that the sample count is not forced.

Note??

If you want to render with ForcedSampleCount set to 1 or greater, you must follow these guidelines:

  • Don't bind depth-stencil views.
  • Disable depth testing.
  • Ensure the shader doesn't output depth.
  • If you have any render-target views bound (D3D11_BIND_RENDER_TARGET) and ForcedSampleCount is greater than 1, ensure that every render target has only a single sample.
  • Don't operate the shader at sample frequency. Therefore, ID3D11ShaderReflection::IsSampleFrequencyShader returns .
Otherwise, rendering behavior is undefined. For info about how to configure depth-stencil, see Configuring Depth-Stencil Functionality. ?
+
+ dn899157 + ForcedSampleCount + ForcedSampleCount +
+ + +

A -typed value that identifies whether conservative rasterization is on or off.

+
+ dn899157 + ConservativeRaster + ConservativeRaster +
+ + + Note??This structure is supported by the Direct3D 11.1 runtime, which is available on Windows?8 and later operating systems.?

Describes the blend state for a render target.

+
+ +

You specify an array of structures in the RenderTarget member of the structure to describe the blend states for render targets; you can bind up to eight render targets to the output-merger stage at one time.

For info about how blending is done, see the output-merger stage.

Here are the default values for blend state.

StateDefault Value
BlendEnable
LogicOpEnable
SrcBlendD3D11_BLEND_ONE
DestBlendD3D11_BLEND_ZERO
BlendOpD3D11_BLEND_OP_ADD
SrcBlendAlphaD3D11_BLEND_ONE
DestBlendAlphaD3D11_BLEND_ZERO
BlendOpAlphaD3D11_BLEND_OP_ADD
LogicOpD3D11_LOGIC_OP_NOOP
RenderTargetWriteMaskD3D11_COLOR_WRITE_ENABLE_ALL

?

+
+ hh404492 + D3D11_RENDER_TARGET_BLEND_DESC1 + D3D11_RENDER_TARGET_BLEND_DESC1 +
+ + +

Enable (or disable) blending.

+
+ hh404492 + BlendEnable + BlendEnable +
+ + +

Enable (or disable) a logical operation.

+
+ hh404492 + LogicOpEnable + LogicOpEnable +
+ + +

This blend option specifies the operation to perform on the RGB value that the pixel shader outputs. The BlendOp member defines how to combine the SrcBlend and DestBlend operations.

+
+ hh404492 + SrcBlend + SrcBlend +
+ + +

This blend option specifies the operation to perform on the current RGB value in the render target. The BlendOp member defines how to combine the SrcBlend and DestBlend operations.

+
+ hh404492 + DestBlend + DestBlend +
+ + +

This blend operation defines how to combine the SrcBlend and DestBlend operations.

+
+ hh404492 + BlendOp + BlendOp +
+ + +

This blend option specifies the operation to perform on the alpha value that the pixel shader outputs. Blend options that end in _COLOR are not allowed. The BlendOpAlpha member defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ hh404492 + SrcBlendAlpha + SrcBlendAlpha +
+ + +

This blend option specifies the operation to perform on the current alpha value in the render target. Blend options that end in _COLOR are not allowed. The BlendOpAlpha member defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ hh404492 + DestBlendAlpha + DestBlendAlpha +
+ + +

This blend operation defines how to combine the SrcBlendAlpha and DestBlendAlpha operations.

+
+ hh404492 + BlendOpAlpha + BlendOpAlpha +
+ + +

A -typed value that specifies the logical operation to configure for the render target.

+
+ hh404492 + LogicOp + LogicOp +
+ + +

A write mask.

+
+ hh404492 + RenderTargetWriteMask + RenderTargetWriteMask +
+ + +

Specifies the subresources from a resource that are accessible using a render-target view.

+
+ +

A render-target-view description is passed into ID3D11Device::CreateRenderTargetView to create a render target.

A render-target-view cannot use the following formats:

  • Any typeless format.
  • DXGI_FORMAT_R32G32B32 if the view will be used to bind a buffer (vertex, index, constant, or stream-output).

If the format is set to DXGI_FORMAT_UNKNOWN, then the format of the resource that the view binds to the pipeline will be used.

+
+ ff476201 + D3D11_RENDER_TARGET_VIEW_DESC + D3D11_RENDER_TARGET_VIEW_DESC +
+ + +

Specifies the elements in a buffer resource to use in a render-target view.

+
+ +

A render-target view is a member of a render-target-view description (see ). Create a render-target view by calling ID3D11Device::CreateRenderTargetView.

+
+ ff476093 + D3D11_BUFFER_RTV + D3D11_BUFFER_RTV +
+ + +

Number of bytes between the beginning of the buffer and the first element to access.

+
+ ff476093 + FirstElement + FirstElement +
+ + +

The offset of the first element in the view to access, relative to element 0.

+
+ ff476093 + ElementOffset + ElementOffset +
+ + +

The total number of elements in the view.

+
+ ff476093 + NumElements + NumElements +
+ + +

The width of each element (in bytes). This can be determined from the format stored in the render-target-view description.

+
+ ff476093 + ElementWidth + ElementWidth +
+ + +

Specifies the subresource from a 1D texture to use in a render-target view.

+
+ +

This structure is one member of a render-target-view description (see ).

+
+ ff476230 + D3D11_TEX1D_RTV + D3D11_TEX1D_RTV +
+ + +

The index of the mipmap level to use mip slice.

+
+ ff476230 + MipSlice + MipSlice +
+ + +

Specifies the subresources from an array of 1D textures to use in a render-target view.

+
+ +

This structure is one member of a render-target-view description (see ).

+
+ ff476226 + D3D11_TEX1D_ARRAY_RTV + D3D11_TEX1D_ARRAY_RTV +
+ + +

The index of the mipmap level to use mip slice.

+
+ ff476226 + MipSlice + MipSlice +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476226 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476226 + ArraySize + ArraySize +
+ + +

Specifies the subresource from a 2D texture to use in a render-target view.

+
+ +

This structure is one member of a render-target-view description (see ).

+
+ ff476244 + D3D11_TEX2D_RTV + D3D11_TEX2D_RTV +
+ + +

The index of the mipmap level to use mip slice.

+
+ ff476244 + MipSlice + MipSlice +
+ + +

Specifies the subresource from a multisampled 2D texture to use in a render-target view.

+
+ +

Since a multisampled 2D texture contains a single subresource, there is actually nothing to specify in . Consequently, UnusedField_NothingToDefine is included so that this structure will compile in C.

+
+ ff476237 + D3D11_TEX2DMS_RTV + D3D11_TEX2DMS_RTV +
+ + +

Integer of any value. See remarks.

+
+ ff476237 + UnusedField_NothingToDefine + UnusedField_NothingToDefine +
+ + +

Specifies the subresources from an array of 2D textures to use in a render-target view.

+
+ +

This structure is one member of a render-target-view description (see ).

+
+ ff476240 + D3D11_TEX2D_ARRAY_RTV + D3D11_TEX2D_ARRAY_RTV +
+ + +

The index of the mipmap level to use mip slice.

+
+ ff476240 + MipSlice + MipSlice +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476240 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures in the array to use in the render target view, starting from FirstArraySlice.

+
+ ff476240 + ArraySize + ArraySize +
+ + +

Specifies the subresources from a an array of multisampled 2D textures to use in a render-target view.

+
+ +

This structure is one member of a render-target-view description (see ).

+
+ ff476234 + D3D11_TEX2DMS_ARRAY_RTV + D3D11_TEX2DMS_ARRAY_RTV +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476234 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476234 + ArraySize + ArraySize +
+ + +

Specifies the subresources from a 3D texture to use in a render-target view.

+
+ +

This structure is one member of a render target view. See .

+
+ ff476247 + D3D11_TEX3D_RTV + D3D11_TEX3D_RTV +
+ + +

The index of the mipmap level to use mip slice.

+
+ ff476247 + MipSlice + MipSlice +
+ + +

First depth level to use.

+
+ ff476247 + FirstWSlice + FirstWSlice +
+ + +

Number of depth levels to use in the render-target view, starting from FirstWSlice. A value of -1 indicates all of the slices along the w axis, starting from FirstWSlice.

+
+ ff476247 + WSize + WSize +
+ + +

The data format (see ).

+
+ ff476201 + Format + Format +
+ + +

The resource type (see ), which specifies how the render-target resource will be accessed.

+
+ ff476201 + ViewDimension + ViewDimension +
+ + +

Specifies which buffer elements can be accessed (see ).

+
+ ff476201 + Buffer + Buffer +
+ + +

Specifies the subresources in a 1D texture that can be accessed (see ).

+
+ ff476201 + Texture1D + Texture1D +
+ + +

Specifies the subresources in a 1D texture array that can be accessed (see ).

+
+ ff476201 + Texture1DArray + Texture1DArray +
+ + +

Specifies the subresources in a 2D texture that can be accessed (see ).

+
+ ff476201 + Texture2D + Texture2D +
+ + +

Specifies the subresources in a 2D texture array that can be accessed (see ).

+
+ ff476201 + Texture2DArray + Texture2DArray +
+ + +

Specifies a single subresource because a multisampled 2D texture only contains one subresource (see ).

+
+ ff476201 + Texture2DMS + Texture2DMS +
+ + +

Specifies the subresources in a multisampled 2D texture array that can be accessed (see ).

+
+ ff476201 + Texture2DMSArray + Texture2DMSArray +
+ + +

Specifies subresources in a 3D texture that can be accessed (see ).

+
+ ff476201 + Texture3D + Texture3D +
+ + +

Describes the subresources from a resource that are accessible using a render-target view.

+
+ +

A render-target-view description is passed into ID3D11Device3::CreateRenderTargetView1 to create a render target.

A render-target-view can't use the following formats:

  • Any typeless format.
  • DXGI_FORMAT_R32G32B32 if the view will be used to bind a buffer (vertex, index, constant, or stream-output).

If the format is set to DXGI_FORMAT_UNKNOWN, then the format of the resource that the view binds to the pipeline will be used.

+
+ dn899158 + D3D11_RENDER_TARGET_VIEW_DESC1 + D3D11_RENDER_TARGET_VIEW_DESC1 +
+ + +

Describes the subresource from a 2D texture to use in a render-target view.

+
+ dn899163 + D3D11_TEX2D_RTV1 + D3D11_TEX2D_RTV1 +
+ + +

The index of the mipmap level to use mip slice.

+
+ dn899163 + MipSlice + MipSlice +
+ + +

The index (plane slice number) of the plane to use in the texture.

+
+ dn899163 + PlaneSlice + PlaneSlice +
+ + +

Describes the subresources from an array of 2D textures to use in a render-target view.

+
+ dn899160 + D3D11_TEX2D_ARRAY_RTV1 + D3D11_TEX2D_ARRAY_RTV1 +
+ + +

The index of the mipmap level to use mip slice.

+
+ dn899160 + MipSlice + MipSlice +
+ + +

The index of the first texture to use in an array of textures.

+
+ dn899160 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures in the array to use in the render-target view, starting from FirstArraySlice.

+
+ dn899160 + ArraySize + ArraySize +
+ + +

The index (plane slice number) of the plane to use in an array of textures.

+
+ dn899160 + PlaneSlice + PlaneSlice +
+ + +

A -typed value that specifies the data format.

+
+ dn899158 + Format + Format +
+ + +

A -typed value that specifies the resource type and how the render-target resource will be accessed.

+
+ dn899158 + ViewDimension + ViewDimension +
+ + +

A structure that specifies which buffer elements can be accessed.

+
+ dn899158 + Buffer + Buffer +
+ + +

A structure that specifies the subresources in a 1D texture that can be accessed.

+
+ dn899158 + Texture1D + Texture1D +
+ + +

A structure that specifies the subresources in a 1D texture array that can be accessed.

+
+ dn899158 + Texture1DArray + Texture1DArray +
+ + +

A structure that specifies the subresources in a 2D texture that can be accessed.

+
+ dn899158 + Texture2D + Texture2D +
+ + +

A structure that specifies the subresources in a 2D texture array that can be accessed.

+
+ dn899158 + Texture2DArray + Texture2DArray +
+ + +

A structure that specifies a single subresource because a multisampled 2D texture only contains one subresource.

+
+ dn899158 + Texture2DMS + Texture2DMS +
+ + +

A structure that specifies the subresources in a multisampled 2D texture array that can be accessed.

+
+ dn899158 + Texture2DMSArray + Texture2DMSArray +
+ + +

A structure that specifies subresources in a 3D texture that can be accessed.

+
+ dn899158 + Texture3D + Texture3D +
+ + +

Describes a shader-resource view.

+
+ +

A view is a format-specific way to look at the data in a resource. The view determines what data to look at, and how it is cast when read.

When viewing a resource, the resource-view description must specify a typed format, that is compatible with the resource format. So that means that you cannot create a resource-view description using any format with _TYPELESS in the name. You can however view a typeless resource by specifying a typed format for the view. For example, a DXGI_FORMAT_R32G32B32_TYPELESS resource can be viewed with one of these typed formats: DXGI_FORMAT_R32G32B32_FLOAT, DXGI_FORMAT_R32G32B32_UINT, and DXGI_FORMAT_R32G32B32_SINT, since these typed formats are compatible with the typeless resource.

Create a shader-resource-view description by calling ID3D11Device::CreateShaderResourceView. To view a shader-resource-view description, call ID3D11ShaderResourceView::GetDesc.

+
+ ff476211 + D3D11_SHADER_RESOURCE_VIEW_DESC + D3D11_SHADER_RESOURCE_VIEW_DESC +
+ + +

Specifies the elements in a buffer resource to use in a shader-resource view.

+
+ +

The structure is a member of the structure, which represents a shader-resource view description. You can create a shader-resource view by calling the ID3D11Device::CreateShaderResourceView method.

+
+ ff476094 + D3D11_BUFFER_SRV + D3D11_BUFFER_SRV +
+ + +

Number of bytes between the beginning of the buffer and the first element to access.

+
+ ff476094 + FirstElement + FirstElement +
+ + +

The offset of the first element in the view to access, relative to element 0.

+
+ ff476094 + ElementOffset + ElementOffset +
+ + +

The total number of elements in the view.

+
+ ff476094 + NumElements + NumElements +
+ + +

The width of each element (in bytes). This can be determined from the format stored in the shader-resource-view description.

+
+ ff476094 + ElementWidth + ElementWidth +
+ + +

Describes the elements in a raw buffer resource to use in a shader-resource view.

+
+ +

This structure is used by to create a raw view of a buffer.

+
+ ff476090 + D3D11_BUFFEREX_SRV + D3D11_BUFFEREX_SRV +
+ + +

The index of the first element to be accessed by the view.

+
+ ff476090 + FirstElement + FirstElement +
+ + +

The number of elements in the resource.

+
+ ff476090 + NumElements + NumElements +
+ + +

A -typed value that identifies view options for the buffer. Currently, the only option is to identify a raw view of the buffer. For more info about raw viewing of buffers, see Raw Views of Buffers.

+
+ ff476090 + Flags + Flags +
+ + +

Specifies the subresource from a 1D texture to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

As an example, assuming MostDetailedMip = 6 and MipLevels = 2, the view will have access to 2 mipmap levels, 6 and 7, of the original texture for which ID3D11Device::CreateShaderResourceView creates the view. In this situation, MostDetailedMip is greater than the MipLevels in the view. However, MostDetailedMip is not greater than the MipLevels in the original resource.

+
+ ff476231 + D3D11_TEX1D_SRV + D3D11_TEX1D_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original Texture1D for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476231 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks.

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476231 + MipLevels + MipLevels +
+ + +

Specifies the subresources from an array of 1D textures to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476227 + D3D11_TEX1D_ARRAY_SRV + D3D11_TEX1D_ARRAY_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original Texture1D for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476227 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476227 + MipLevels + MipLevels +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476227 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures in the array.

+
+ ff476227 + ArraySize + ArraySize +
+ + +

Specifies the subresource from a 2D texture to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476245 + D3D11_TEX2D_SRV + D3D11_TEX2D_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original Texture2D for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476245 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476245 + MipLevels + MipLevels +
+ + +

Specifies the subresources from an array of 2D textures to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476241 + D3D11_TEX2D_ARRAY_SRV + D3D11_TEX2D_ARRAY_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original Texture2D for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476241 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476241 + MipLevels + MipLevels +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476241 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures in the array.

+
+ ff476241 + ArraySize + ArraySize +
+ + +

Specifies the subresources from a 3D texture to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476248 + D3D11_TEX3D_SRV + D3D11_TEX3D_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original Texture3D for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476248 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476248 + MipLevels + MipLevels +
+ + +

Specifies the subresource from a cube texture to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476251 + D3D11_TEXCUBE_SRV + D3D11_TEXCUBE_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original TextureCube for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476251 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476251 + MipLevels + MipLevels +
+ + +

Specifies the subresources from an array of cube textures to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476250 + D3D11_TEXCUBE_ARRAY_SRV + D3D11_TEXCUBE_ARRAY_SRV +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and MipLevels (from the original TextureCube for which ID3D11Device::CreateShaderResourceView creates a view) -1.

+
+ ff476250 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ ff476250 + MipLevels + MipLevels +
+ + +

Index of the first 2D texture to use.

+
+ ff476250 + First2DArrayFace + First2DArrayFace +
+ + +

Number of cube textures in the array.

+
+ ff476250 + NumCubes + NumCubes +
+ + +

Specifies the subresources from a multisampled 2D texture to use in a shader-resource view.

+
+ +

Since a multisampled 2D texture contains a single subresource, there is actually nothing to specify in . Consequently, UnusedField_NothingToDefine is included so that this structure will compile in C.

+
+ ff476238 + D3D11_TEX2DMS_SRV + D3D11_TEX2DMS_SRV +
+ + +

Integer of any value. See remarks.

+
+ ff476238 + UnusedField_NothingToDefine + UnusedField_NothingToDefine +
+ + +

Specifies the subresources from an array of multisampled 2D textures to use in a shader-resource view.

+
+ +

This structure is one member of a shader-resource-view description (see ).

+
+ ff476235 + D3D11_TEX2DMS_ARRAY_SRV + D3D11_TEX2DMS_ARRAY_SRV +
+ + +

The index of the first texture to use in an array of textures.

+
+ ff476235 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures to use.

+
+ ff476235 + ArraySize + ArraySize +
+ + +

A specifying the viewing format. See remarks.

+
+ ff476211 + Format + Format +
+ + +

The resource type of the view. See D3D11_SRV_DIMENSION. This should be the same as the resource type of the underlying resource. This parameter also determines which _SRV to use in the union below.

+
+ ff476211 + ViewDimension + ViewDimension +
+ + +

View the resource as a buffer using information from a shader-resource view (see ).

+
+ ff476211 + Buffer + Buffer +
+ + +

View the resource as a 1D texture using information from a shader-resource view (see ).

+
+ ff476211 + Texture1D + Texture1D +
+ + +

View the resource as a 1D-texture array using information from a shader-resource view (see ).

+
+ ff476211 + Texture1DArray + Texture1DArray +
+ + +

View the resource as a 2D-texture using information from a shader-resource view (see ).

+
+ ff476211 + Texture2D + Texture2D +
+ + +

View the resource as a 2D-texture array using information from a shader-resource view (see ).

+
+ ff476211 + Texture2DArray + Texture2DArray +
+ + +

View the resource as a 2D-multisampled texture using information from a shader-resource view (see ).

+
+ ff476211 + Texture2DMS + Texture2DMS +
+ + +

View the resource as a 2D-multisampled-texture array using information from a shader-resource view (see ).

+
+ ff476211 + Texture2DMSArray + Texture2DMSArray +
+ + +

View the resource as a 3D texture using information from a shader-resource view (see ).

+
+ ff476211 + Texture3D + Texture3D +
+ + +

View the resource as a 3D-cube texture using information from a shader-resource view (see ).

+
+ ff476211 + TextureCube + TextureCube +
+ + +

View the resource as a 3D-cube-texture array using information from a shader-resource view (see ).

+
+ ff476211 + TextureCubeArray + TextureCubeArray +
+ + +

View the resource as a raw buffer using information from a shader-resource view (see ). For more info about raw viewing of buffers, see Raw Views of Buffers.

+
+ ff476211 + BufferEx + BufferEx +
+ + +

Describes a shader-resource view.

+
+ +

A view is a format-specific way to look at the data in a resource. The view determines what data to look at, and how it is cast when read.

When viewing a resource, the resource-view description must specify a typed format, that is compatible with the resource format. So that means that you cannot create a resource-view description using any format with _TYPELESS in the name. You can however view a typeless resource by specifying a typed format for the view. For example, a DXGI_FORMAT_R32G32B32_TYPELESS resource can be viewed with one of these typed formats: DXGI_FORMAT_R32G32B32_FLOAT, DXGI_FORMAT_R32G32B32_UINT, and DXGI_FORMAT_R32G32B32_SINT, since these typed formats are compatible with the typeless resource.

Create a shader-resource-view description by calling ID3D11Device3::CreateShaderResourceView1. To view a shader-resource-view description, call ID3D11ShaderResourceView1::GetDesc1.

+
+ dn899159 + D3D11_SHADER_RESOURCE_VIEW_DESC1 + D3D11_SHADER_RESOURCE_VIEW_DESC1 +
+ + +

Describes the subresource from a 2D texture to use in a shader-resource view.

+
+ dn899164 + D3D11_TEX2D_SRV1 + D3D11_TEX2D_SRV1 +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and (MipLevels (from the original Texture2D for which ID3D11Device3::CreateShaderResourceView1 creates a view) - 1 ).

+
+ dn899164 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ dn899164 + MipLevels + MipLevels +
+ + +

The index (plane slice number) of the plane to use in the texture.

+
+ dn899164 + PlaneSlice + PlaneSlice +
+ + +

Describes the subresources from an array of 2D textures to use in a shader-resource view.

+
+ dn899161 + D3D11_TEX2D_ARRAY_SRV1 + D3D11_TEX2D_ARRAY_SRV1 +
+ + +

Index of the most detailed mipmap level to use; this number is between 0 and ( MipLevels (from the original Texture2D for which ID3D11Device3::CreateShaderResourceView1 creates a view) - 1).

+
+ dn899161 + MostDetailedMip + MostDetailedMip +
+ + +

The maximum number of mipmap levels for the view of the texture. See the remarks in .

Set to -1 to indicate all the mipmap levels from MostDetailedMip on down to least detailed.

+
+ dn899161 + MipLevels + MipLevels +
+ + +

The index of the first texture to use in an array of textures.

+
+ dn899161 + FirstArraySlice + FirstArraySlice +
+ + +

Number of textures in the array.

+
+ dn899161 + ArraySize + ArraySize +
+ + +

The index (plane slice number) of the plane to use in an array of textures.

+
+ dn899161 + PlaneSlice + PlaneSlice +
+ + +

A -typed value that specifies the viewing format. See remarks.

+
+ dn899159 + Format + Format +
+ + +

A D3D11_SRV_DIMENSION-typed value that specifies the resource type of the view. This type is the same as the resource type of the underlying resource. This member also determines which _SRV to use in the union below.

+
+ dn899159 + ViewDimension + ViewDimension +
+ + +

A structure that views the resource as a buffer.

+
+ dn899159 + Buffer + Buffer +
+ + +

A structure that views the resource as a 1D texture.

+
+ dn899159 + Texture1D + Texture1D +
+ + +

A structure that views the resource as a 1D-texture array.

+
+ dn899159 + Texture1DArray + Texture1DArray +
+ + +

A structure that views the resource as a 2D-texture.

+
+ dn899159 + Texture2D + Texture2D +
+ + +

A structure that views the resource as a 2D-texture array.

+
+ dn899159 + Texture2DArray + Texture2DArray +
+ + +

A structure that views the resource as a 2D-multisampled texture.

+
+ dn899159 + Texture2DMS + Texture2DMS +
+ + +

A structure that views the resource as a 2D-multisampled-texture array.

+
+ dn899159 + Texture2DMSArray + Texture2DMSArray +
+ + +

A structure that views the resource as a 3D texture.

+
+ dn899159 + Texture3D + Texture3D +
+ + +

A structure that views the resource as a 3D-cube texture.

+
+ dn899159 + TextureCube + TextureCube +
+ + +

A structure that views the resource as a 3D-cube-texture array.

+
+ dn899159 + TextureCubeArray + TextureCubeArray +
+ + +

A structure that views the resource as a raw buffer. For more info about raw viewing of buffers, see Raw Views of Buffers.

+
+ dn899159 + BufferEx + BufferEx +
+ + +

Query information about the amount of data streamed out to the stream-output buffers in between ID3D11DeviceContext::Begin and ID3D11DeviceContext::End.

+
+ ff476193 + D3D11_QUERY_DATA_SO_STATISTICS + D3D11_QUERY_DATA_SO_STATISTICS +
+ + + No documentation. + + ff476193 + NumPrimitivesWritten + NumPrimitivesWritten + + + + No documentation. + + ff476193 + PrimitivesStorageNeeded + PrimitivesStorageNeeded + + + +

Describes a tiled subresource volume.

+
+ +

Each packed mipmap is individually reported as 0 for WidthInTiles, HeightInTiles and DepthInTiles. +

The total number of tiles in subresources is WidthInTiles*HeightInTiles*DepthInTiles.

+
+ dn280434 + D3D11_SUBRESOURCE_TILING + D3D11_SUBRESOURCE_TILING +
+ + +

The width in tiles of the subresource.

+
+ dn280434 + WidthInTiles + WidthInTiles +
+ + +

The height in tiles of the subresource.

+
+ dn280434 + HeightInTiles + HeightInTiles +
+ + +

The depth in tiles of the subresource.

+
+ dn280434 + DepthInTiles + DepthInTiles +
+ + +

The index of the tile in the overall tiled subresource to start with.

GetResourceTiling sets StartTileIndexInOverallResource to D3D11_PACKED_TILE (0xffffffff) to indicate that the whole + structure is meaningless, and the info to which the pPackedMipDesc parameter of GetResourceTiling points applies. For packed tiles, the description of the packed mipmaps comes from a structure instead. +

+
+ dn280434 + StartTileIndexInOverallResource + StartTileIndexInOverallResource +
+ + +

Describes a 1D texture.

+
+ +

This structure is used in a call to ID3D11Device::CreateTexture1D.

In addition to this structure, you can also use the CD3D11_TEXTURE1D_DESC derived structure, which is defined in D3D11.h and behaves like an inherited class, to help create a texture description.

The texture size range is determined by the feature level at which you create the device and not the Microsoft Direct3D interface version. For example, if you use Microsoft Direct3D?10 hardware at feature level 10 (D3D_FEATURE_LEVEL_10_0) and call D3D11CreateDevice to create an , you must constrain the maximum texture size to D3D10_REQ_TEXTURE1D_U_DIMENSION (8192) when you create your 1D texture.

+
+ ff476252 + D3D11_TEXTURE1D_DESC + D3D11_TEXTURE1D_DESC +
+ + +

Texture width (in texels). The range is from 1 to (16384). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476252 + Width + Width +
+ + +

The maximum number of mipmap levels in the texture. See the remarks in . Use 1 for a multisampled texture; or 0 to generate a full set of subtextures.

+
+ ff476252 + MipLevels + MipLevels +
+ + +

Number of textures in the array. The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476252 + ArraySize + ArraySize +
+ + +

Texture format (see ).

+
+ ff476252 + Format + Format +
+ + +

Value that identifies how the texture is to be read from and written to. The most common value is D3D11_USAGE_DEFAULT; see for all possible values.

+
+ ff476252 + Usage + Usage +
+ + +

Flags (see ) for binding to pipeline stages. The flags can be combined by a logical OR. For a 1D texture, the allowable values are: D3D11_BIND_SHADER_RESOURCE, D3D11_BIND_RENDER_TARGET and D3D11_BIND_DEPTH_STENCIL.

+
+ ff476252 + BindFlags + BindFlags +
+ + +

Flags (see ) to specify the types of CPU access allowed. Use 0 if CPU access is not required. These flags can be combined with a logical OR.

+
+ ff476252 + CPUAccessFlags + CPUAccessFlags +
+ + +

Flags (see ) that identify other, less common resource options. Use 0 if none of these flags apply. These flags can be combined with a logical OR.

+
+ ff476252 + MiscFlags + MiscFlags +
+ + +

Identifies a texture resource for a video processor output view.

+
+ hh447632 + D3D11_TEX2D_ARRAY_VPOV + D3D11_TEX2D_ARRAY_VPOV +
+ + +

The zero-based index into the array of subtextures.

+
+ hh447632 + MipSlice + MipSlice +
+ + +

The index of the first texture to use.

+
+ hh447632 + FirstArraySlice + FirstArraySlice +
+ + +

The number of textures in the array.

+
+ hh447632 + ArraySize + ArraySize +
+ + +

Describes a 2D texture.

+
+ +

This structure is used in a call to ID3D11Device::CreateTexture2D.

In addition to this structure, you can also use the CD3D11_TEXTURE2D_DESC derived structure, which is defined in D3D11.h and behaves like an inherited class, to help create a texture description.

The device places some size restrictions (must be multiples of a minimum size) for a subsampled, block compressed, or bit-format resource.

The texture size range is determined by the feature level at which you create the device and not the Microsoft Direct3D interface version. For example, if you use Microsoft Direct3D?10 hardware at feature level 10 (D3D_FEATURE_LEVEL_10_0) and call D3D11CreateDevice to create an , you must constrain the maximum texture size to D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) when you create your 2D texture.

+
+ ff476253 + D3D11_TEXTURE2D_DESC + D3D11_TEXTURE2D_DESC +
+ + +

Texture width (in texels). The range is from 1 to (16384). For a texture cube-map, the range is from 1 to (16384). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476253 + Width + Width +
+ + +

Texture height (in texels). The range is from 1 to (16384). For a texture cube-map, the range is from 1 to (16384). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476253 + Height + Height +
+ + +

The maximum number of mipmap levels in the texture. See the remarks in . Use 1 for a multisampled texture; or 0 to generate a full set of subtextures.

+
+ ff476253 + MipLevels + MipLevels +
+ + +

Number of textures in the texture array. The range is from 1 to (2048). For a texture cube-map, this value is a multiple of 6 (that is, 6 times the value in the NumCubes member of ), and the range is from 6 to 2046. The range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476253 + ArraySize + ArraySize +
+ + +

Texture format (see ).

+
+ ff476253 + Format + Format +
+ + +

Structure that specifies multisampling parameters for the texture. See .

+
+ ff476253 + SampleDesc + SampleDesc +
+ + +

Value that identifies how the texture is to be read from and written to. The most common value is D3D11_USAGE_DEFAULT; see for all possible values.

+
+ ff476253 + Usage + Usage +
+ + +

Flags (see ) for binding to pipeline stages. The flags can be combined by a logical OR.

+
+ ff476253 + BindFlags + BindFlags +
+ + +

Flags (see ) to specify the types of CPU access allowed. Use 0 if CPU access is not required. These flags can be combined with a logical OR.

+
+ ff476253 + CPUAccessFlags + CPUAccessFlags +
+ + +

Flags (see ) that identify other, less common resource options. Use 0 if none of these flags apply. These flags can be combined by using a logical OR. For a texture cube-map, set the D3D11_RESOURCE_MISC_TEXTURECUBE flag. Cube-map arrays (that is, ArraySize > 6) require feature level D3D_FEATURE_LEVEL_10_1 or higher.

+
+ ff476253 + MiscFlags + MiscFlags +
+ + +

Describes a 2D texture.

+
+ +

This structure is used in a call to ID3D11Device3::CreateTexture2D1.

In addition to this structure, you can also use the CD3D11_TEXTURE2D_DESC1 derived structure, which is defined in D3D11_3.h and behaves like an inherited class, to help create a texture description.

The device places some size restrictions (must be multiples of a minimum size) for a subsampled, block compressed, or bit-format resource.

The texture size range is determined by the feature level at which you create the device and not the Microsoft Direct3D interface version. For example, if you use Microsoft Direct3D?10 hardware at feature level 10 (D3D_FEATURE_LEVEL_10_0) and call D3D11CreateDevice to create an , you must constrain the maximum texture size to D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) when you create your 2D texture.

+
+ dn899166 + D3D11_TEXTURE2D_DESC1 + D3D11_TEXTURE2D_DESC1 +
+ + +

Texture width (in texels). The range is from 1 to (16384). For a texture cube-map, the range is from 1 to (16384). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899166 + Width + Width +
+ + +

Texture height (in texels). The range is from 1 to (16384). For a texture cube-map, the range is from 1 to (16384). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899166 + Height + Height +
+ + +

The maximum number of mipmap levels in the texture. See the remarks in . Use 1 for a multisampled texture; or 0 to generate a full set of subtextures.

+
+ dn899166 + MipLevels + MipLevels +
+ + +

Number of textures in the texture array. The range is from 1 to (2048). For a texture cube-map, this value is a multiple of 6 (that is, 6 times the value in the NumCubes member of ), and the range is from 6 to 2046. The range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899166 + ArraySize + ArraySize +
+ + +

Texture format (see ).

+
+ dn899166 + Format + Format +
+ + +

Structure that specifies multisampling parameters for the texture. See .

+
+ dn899166 + SampleDesc + SampleDesc +
+ + +

Value that identifies how the texture is to be read from and written to. The most common value is D3D11_USAGE_DEFAULT; see for all possible values.

+
+ dn899166 + Usage + Usage +
+ + +

Flags (see ) for binding to pipeline stages. The flags can be combined by a logical OR.

+
+ dn899166 + BindFlags + BindFlags +
+ + +

Flags (see ) to specify the types of CPU access allowed. Use 0 if CPU access is not required. These flags can be combined with a logical OR.

+
+ dn899166 + CPUAccessFlags + CPUAccessFlags +
+ + +

Flags (see ) that identify other, less common resource options. Use 0 if none of these flags apply. These flags can be combined by using a logical OR. For a texture cube-map, set the D3D11_RESOURCE_MISC_TEXTURECUBE flag. Cube-map arrays (that is, ArraySize > 6) require feature level D3D_FEATURE_LEVEL_10_1 or higher.

+
+ dn899166 + MiscFlags + MiscFlags +
+ + +

A -typed value that identifies the layout of the texture.

The TextureLayout parameter selects both the actual layout of the texture in memory and the layout visible to the application while the texture is mapped. These flags may not be requested without CPU access also requested.

It is illegal to set CPU access flags on default textures without also setting TextureLayout to a value other than D3D11_TEXTURE_LAYOUT_UNDEFINED.

D3D11_TEXTURE_LAYOUT_ROW_MAJOR may only be used to create non-multisampled, textures with a single subresource (Planar YUV textures are supported). These textures may only be used as a source and destination of copy operations, and BindFlags must be zero. +

D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE may only be used to create non-multisampled, non-depth-stencil textures.

+
+ dn899166 + TextureLayout + TextureLayout +
+ + +

Identifies the texture resource for a video decoder output view.

+
+ hh447633 + D3D11_TEX2D_VDOV + D3D11_TEX2D_VDOV +
+ + +

The zero-based index of the texture.

+
+ hh447633 + ArraySlice + ArraySlice +
+ + +

Identifies the texture resource for a video processor input view.

+
+ hh447634 + D3D11_TEX2D_VPIV + D3D11_TEX2D_VPIV +
+ + +

The zero-based index into the array of subtextures.

+
+ hh447634 + MipSlice + MipSlice +
+ + +

The zero-based index of the texture.

+
+ hh447634 + ArraySlice + ArraySlice +
+ + +

Identifies a texture resource for a video processor output view.

+
+ hh447635 + D3D11_TEX2D_VPOV + D3D11_TEX2D_VPOV +
+ + +

The zero-based index into the array of subtextures.

+
+ hh447635 + MipSlice + MipSlice +
+ + +

Describes a 3D texture.

+
+ +

This structure is used in a call to ID3D11Device::CreateTexture3D.

In addition to this structure, you can also use the CD3D11_TEXTURE3D_DESC derived structure, which is defined in D3D11.h and behaves like an inherited class, to help create a texture description.

The device restricts the size of subsampled, block compressed, and bit format resources to be multiples of sizes specific to each format.

The texture size range is determined by the feature level at which you create the device and not the Microsoft Direct3D interface version. For example, if you use Microsoft Direct3D?10 hardware at feature level 10 (D3D_FEATURE_LEVEL_10_0) and call D3D11CreateDevice to create an , you must constrain the maximum texture size to D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) when you create your 3D texture.

+
+ ff476254 + D3D11_TEXTURE3D_DESC + D3D11_TEXTURE3D_DESC +
+ + +

Texture width (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476254 + Width + Width +
+ + +

Texture height (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476254 + Height + Height +
+ + +

Texture depth (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ ff476254 + Depth + Depth +
+ + +

The maximum number of mipmap levels in the texture. See the remarks in . Use 1 for a multisampled texture; or 0 to generate a full set of subtextures.

+
+ ff476254 + MipLevels + MipLevels +
+ + +

Texture format (see ).

+
+ ff476254 + Format + Format +
+ + +

Value that identifies how the texture is to be read from and written to. The most common value is D3D11_USAGE_DEFAULT; see for all possible values.

+
+ ff476254 + Usage + Usage +
+ + +

Flags (see ) for binding to pipeline stages. The flags can be combined by a logical OR.

+
+ ff476254 + BindFlags + BindFlags +
+ + +

Flags (see ) to specify the types of CPU access allowed. Use 0 if CPU access is not required. These flags can be combined with a logical OR.

+
+ ff476254 + CPUAccessFlags + CPUAccessFlags +
+ + +

Flags (see ) that identify other, less common resource options. Use 0 if none of these flags apply. These flags can be combined with a logical OR.

+
+ ff476254 + MiscFlags + MiscFlags +
+ + +

Describes a 3D texture.

+
+ +

This structure is used in a call to ID3D11Device3::CreateTexture3D1.

In addition to this structure, you can also use the CD3D11_TEXTURE3D_DESC1 derived structure, which is defined in D3D11_3.h and behaves like an inherited class, to help create a texture description.

The device restricts the size of subsampled, block compressed, and bit format resources to be multiples of sizes specific to each format.

The texture size range is determined by the feature level at which you create the device and not the Microsoft Direct3D interface version. For example, if you use Microsoft Direct3D?10 hardware at feature level 10 (D3D_FEATURE_LEVEL_10_0) and call D3D11CreateDevice to create an , you must constrain the maximum texture size to D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) when you create your 3D texture.

+
+ dn899167 + D3D11_TEXTURE3D_DESC1 + D3D11_TEXTURE3D_DESC1 +
+ + +

Texture width (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899167 + Width + Width +
+ + +

Texture height (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899167 + Height + Height +
+ + +

Texture depth (in texels). The range is from 1 to (2048). However, the range is actually constrained by the feature level at which you create the rendering device. For more information about restrictions, see Remarks.

+
+ dn899167 + Depth + Depth +
+ + +

The maximum number of mipmap levels in the texture. See the remarks in . Use 1 for a multisampled texture; or 0 to generate a full set of subtextures.

+
+ dn899167 + MipLevels + MipLevels +
+ + +

Texture format (see ).

+
+ dn899167 + Format + Format +
+ + +

Value that identifies how the texture is to be read from and written to. The most common value is D3D11_USAGE_DEFAULT; see for all possible values.

+
+ dn899167 + Usage + Usage +
+ + +

Flags (see ) for binding to pipeline stages. The flags can be combined by a logical OR.

+
+ dn899167 + BindFlags + BindFlags +
+ + +

Flags (see ) to specify the types of CPU access allowed. Use 0 if CPU access is not required. These flags can be combined with a logical OR.

+
+ dn899167 + CPUAccessFlags + CPUAccessFlags +
+ + +

Flags (see ) that identify other, less common resource options. Use 0 if none of these flags apply. These flags can be combined with a logical OR.

+
+ dn899167 + MiscFlags + MiscFlags +
+ + +

A -typed value that identifies the layout of the texture.

The TextureLayout parameter selects both the actual layout of the texture in memory and the layout visible to the application while the texture is mapped. These flags may not be requested without CPU access also requested.

It is illegal to set CPU access flags on default textures without also setting Layout to a value other than D3D11_TEXTURE_LAYOUT_UNDEFINED.

D3D11_TEXTURE_LAYOUT_ROW_MAJOR may not be used with 3D textures. D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE may not be used with 3D textures that have mipmaps.

+
+ dn899167 + TextureLayout + TextureLayout +
+ + +

Describes the coordinates of a tiled resource.

+
+ dn280437 + D3D11_TILED_RESOURCE_COORDINATE + D3D11_TILED_RESOURCE_COORDINATE +
+ + +

The x position of a tiled resource. Used for buffer and 1D, 2D, and 3D textures.

+
+ dn280437 + X + X +
+ + +

The y position of a tiled resource. Used for 2D and 3D textures.

+
+ dn280437 + Y + Y +
+ + +

The z position of a tiled resource. Used for 3D textures.

+
+ dn280437 + Z + Z +
+ + +

A subresource index value into mipmaps and arrays. Used for 1D, 2D, and 3D textures.

For mipmaps that use nonstandard tiling, or are packed, or both use nonstandard tiling and are packed, any subresource value that indicates any of the packed mipmaps all refer to the same tile.

+
+ dn280437 + Subresource + Subresource +
+ + +

Describes the size of a tiled region.

+
+ dn280442 + D3D11_TILE_REGION_SIZE + D3D11_TILE_REGION_SIZE +
+ + +

The number of tiles in the tiled region.

+
+ dn280442 + NumTiles + NumTiles +
+ + +

Specifies whether the runtime uses the Width, Height, and Depth members to define the region.

If TRUE, the runtime uses the Width, Height, and Depth members to define the region.

If , the runtime ignores the Width, Height, and Depth members and uses the NumTiles member to traverse tiles in the resource linearly across x, then y, then z (as applicable) and then spills over mipmaps/arrays in subresource order. For example, use this technique to map an entire resource at once.

Regardless of whether you specify TRUE or for bUseBox, you use a structure to specify the starting location for the region within the resource as a separate parameter outside of this structure by using x, y, and z coordinates.

When the region includes mipmaps that are packed with nonstandard tiling, bUseBox must be because tile dimensions are not standard and the app only knows a count of how many tiles are consumed by the packed area, which is per array slice. The corresponding (separate) starting location parameter uses x to offset into the flat range of tiles in this case, and y and z coordinates must each be 0.

+
+ dn280442 + bUseBox + bUseBox +
+ + +

The width of the tiled region, in tiles. Used for buffer and 1D, 2D, and 3D textures.

+
+ dn280442 + Width + Width +
+ + +

The height of the tiled region, in tiles. Used for 2D and 3D textures.

+
+ dn280442 + Height + Height +
+ + +

The depth of the tiled region, in tiles. Used for 3D textures or arrays. For arrays, used for advancing in depth jumps to next slice of same mipmap size, which isn't contiguous in the subresource counting space if there are multiple mipmaps.

+
+ dn280442 + Depth + Depth +
+ + +

Describes the shape of a tile by specifying its dimensions.

+
+ +

Texels are equivalent to pixels. For untyped buffer resources, a texel is just a byte. For multisample antialiasing (MSAA) surfaces, the numbers are still in terms of pixels/texels. + The values here are independent of the surface dimensions. Even if the surface is smaller than what would fit in a tile, the full tile dimensions are reported here. +

+
+ dn280443 + D3D11_TILE_SHAPE + D3D11_TILE_SHAPE +
+ + +

The width in texels of the tile.

+
+ dn280443 + WidthInTexels + WidthInTexels +
+ + +

The height in texels of the tile.

+
+ dn280443 + HeightInTexels + HeightInTexels +
+ + +

The depth in texels of the tile.

+
+ dn280443 + DepthInTexels + DepthInTexels +
+ + +

Specifies the subresources from a resource that are accessible using an unordered-access view.

+
+ +

An unordered-access-view description is passed into ID3D11Device::CreateUnorderedAccessView to create a view.

+
+ ff476258 + D3D11_UNORDERED_ACCESS_VIEW_DESC + D3D11_UNORDERED_ACCESS_VIEW_DESC +
+ + +

Describes the elements in a buffer to use in a unordered-access view.

+
+ +

This structure is used by a .

+
+ ff476095 + D3D11_BUFFER_UAV + D3D11_BUFFER_UAV +
+ + +

The zero-based index of the first element to be accessed.

+
+ ff476095 + FirstElement + FirstElement +
+ + +

The number of elements in the resource. For structured buffers, this is the number of structures in the buffer.

+
+ ff476095 + NumElements + NumElements +
+ + +

View options for the resource (see ).

+
+ ff476095 + Flags + Flags +
+ + +

Describes a unordered-access 1D texture resource.

+
+ +

This structure is used by a .

+
+ ff476232 + D3D11_TEX1D_UAV + D3D11_TEX1D_UAV +
+ + +

The mipmap slice index.

+
+ ff476232 + MipSlice + MipSlice +
+ + +

Describes an array of unordered-access 1D texture resources.

+
+ +

This structure is used by a .

+
+ ff476228 + D3D11_TEX1D_ARRAY_UAV + D3D11_TEX1D_ARRAY_UAV +
+ + +

The mipmap slice index.

+
+ ff476228 + MipSlice + MipSlice +
+ + +

The zero-based index of the first array slice to be accessed.

+
+ ff476228 + FirstArraySlice + FirstArraySlice +
+ + +

The number of slices in the array.

+
+ ff476228 + ArraySize + ArraySize +
+ + +

Describes a unordered-access 2D texture resource.

+
+ +

This structure is used by a .

+
+ ff476246 + D3D11_TEX2D_UAV + D3D11_TEX2D_UAV +
+ + +

The mipmap slice index.

+
+ ff476246 + MipSlice + MipSlice +
+ + +

Describes an array of unordered-access 2D texture resources.

+
+ +

This structure is used by a .

+
+ ff476242 + D3D11_TEX2D_ARRAY_UAV + D3D11_TEX2D_ARRAY_UAV +
+ + +

The mipmap slice index.

+
+ ff476242 + MipSlice + MipSlice +
+ + +

The zero-based index of the first array slice to be accessed.

+
+ ff476242 + FirstArraySlice + FirstArraySlice +
+ + +

The number of slices in the array.

+
+ ff476242 + ArraySize + ArraySize +
+ + +

Describes a unordered-access 3D texture resource.

+
+ +

This structure is used by a .

+
+ ff476249 + D3D11_TEX3D_UAV + D3D11_TEX3D_UAV +
+ + +

The mipmap slice index.

+
+ ff476249 + MipSlice + MipSlice +
+ + +

The zero-based index of the first depth slice to be accessed.

+
+ ff476249 + FirstWSlice + FirstWSlice +
+ + +

The number of depth slices.

+
+ ff476249 + WSize + WSize +
+ + +

The data format (see ).

+
+ ff476258 + Format + Format +
+ + +

The resource type (see ), which specifies how the resource will be accessed.

+
+ ff476258 + ViewDimension + ViewDimension +
+ + +

Specifies which buffer elements can be accessed (see ).

+
+ ff476258 + Buffer + Buffer +
+ + +

Specifies the subresources in a 1D texture that can be accessed (see ).

+
+ ff476258 + Texture1D + Texture1D +
+ + +

Specifies the subresources in a 1D texture array that can be accessed (see ).

+
+ ff476258 + Texture1DArray + Texture1DArray +
+ + +

Specifies the subresources in a 2D texture that can be accessed (see ).

+
+ ff476258 + Texture2D + Texture2D +
+ + +

Specifies the subresources in a 2D texture array that can be accessed (see ).

+
+ ff476258 + Texture2DArray + Texture2DArray +
+ + +

Specifies subresources in a 3D texture that can be accessed (see ).

+
+ ff476258 + Texture3D + Texture3D +
+ + +

Describes the subresources from a resource that are accessible using an unordered-access view.

+
+ +

An unordered-access-view description is passed into ID3D11Device3::CreateUnorderedAccessView1 to create a view.

+
+ dn899203 + D3D11_UNORDERED_ACCESS_VIEW_DESC1 + D3D11_UNORDERED_ACCESS_VIEW_DESC1 +
+ + +

Describes a unordered-access 2D texture resource.

+
+ dn899165 + D3D11_TEX2D_UAV1 + D3D11_TEX2D_UAV1 +
+ + +

The mipmap slice index.

+
+ dn899165 + MipSlice + MipSlice +
+ + +

The index (plane slice number) of the plane to use in the texture.

+
+ dn899165 + PlaneSlice + PlaneSlice +
+ + +

Describes an array of unordered-access 2D texture resources.

+
+ dn899162 + D3D11_TEX2D_ARRAY_UAV1 + D3D11_TEX2D_ARRAY_UAV1 +
+ + +

The mipmap slice index.

+
+ dn899162 + MipSlice + MipSlice +
+ + +

The zero-based index of the first array slice to be accessed.

+
+ dn899162 + FirstArraySlice + FirstArraySlice +
+ + +

The number of slices in the array.

+
+ dn899162 + ArraySize + ArraySize +
+ + +

The index (plane slice number) of the plane to use in an array of textures.

+
+ dn899162 + PlaneSlice + PlaneSlice +
+ + +

A -typed value that specifies the data format.

+
+ dn899203 + Format + Format +
+ + +

A -typed value that specifies the resource type of the view. This type is the same as the resource type of the underlying resource. This member also determines which _UAV to use in the union below.

+
+ dn899203 + ViewDimension + ViewDimension +
+ + +

A structure that specifies which buffer elements can be accessed.

+
+ dn899203 + Buffer + Buffer +
+ + +

A structure that specifies the subresources in a 1D texture that can be accessed.

+
+ dn899203 + Texture1D + Texture1D +
+ + +

A structure that specifies the subresources in a 1D texture array that can be accessed.

+
+ dn899203 + Texture1DArray + Texture1DArray +
+ + +

A structure that specifies the subresources in a 2D texture that can be accessed.

+
+ dn899203 + Texture2D + Texture2D +
+ + +

A structure that specifies the subresources in a 2D texture array that can be accessed.

+
+ dn899203 + Texture2DArray + Texture2DArray +
+ + +

A structure that specifies subresources in a 3D texture that can be accessed.

+
+ dn899203 + Texture3D + Texture3D +
+ + +

Defines a color value for Microsoft Direct3D?11 video.

+
+ +

The anonymous union can represent both RGB and YCbCr colors. The interpretation of the union depends on the context.

+
+ hh447637 + D3D11_VIDEO_COLOR + D3D11_VIDEO_COLOR +
+ + +

A structure that contains a YCbCr color value.

+
+ hh447637 + YCbCr + YCbCr +
+ + +

A structure that contains an RGB color value.

+
+ hh447637 + RGBA + RGBA +
+ + +

Specifies an RGB color value.

+
+ +

The RGB values have a nominal range of [0...1]. For an RGB format with n bits per channel, the value of each color component is calculated as follows:

val = f * ((1 < < n)-1)

For example, for RGB-32 (8 bits per channel), val = BYTE(f * 255.0).

+
+ hh447638 + D3D11_VIDEO_COLOR_RGBA + D3D11_VIDEO_COLOR_RGBA +
+ + +

The red value.

+
+ hh447638 + R + R +
+ + +

The green value.

+
+ hh447638 + G + G +
+ + +

The blue value.

+
+ hh447638 + B + B +
+ + +

The alpha value. Values range from 0 (transparent) to 1 (opaque). +

+
+ hh447638 + A + A +
+ + + No documentation. + + D3D11_VIDEO_COLOR_YCbCrA + D3D11_VIDEO_COLOR_YCbCrA + + + + No documentation. + + Y + Y + + + + No documentation. + + Cb + Cb + + + + No documentation. + + Cr + Cr + + + + No documentation. + + A + A + + + +

Describes the content-protection capabilities of a graphics driver.

+
+ hh447640 + D3D11_VIDEO_CONTENT_PROTECTION_CAPS + D3D11_VIDEO_CONTENT_PROTECTION_CAPS +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447640 + Caps + Caps +
+ + +

The number of cryptographic key-exchange types that are supported by the driver. To get the list of key-exchange types, call the ID3D11VideoDevice::CheckCryptoKeyExchange method.

+
+ hh447640 + KeyExchangeTypeCount + KeyExchangeTypeCount +
+ + +

The encyrption block size, in bytes. The size of data to be encrypted must be a multiple of this value.

+
+ hh447640 + BlockAlignmentSize + BlockAlignmentSize +
+ + +

The total amount of memory, in bytes, that can be used to hold protected surfaces.

+
+ hh447640 + ProtectedMemorySize + ProtectedMemorySize +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Provides data to the ID3D11VideoContext::DecoderBeginFrame method.

+
+ +

This structure is passed in the pContentKey parameter of the ID3D11VideoContext::DecoderBeginFrame function when D3D11_DECODER_ENCRYPTION_HW_CENC is specified in the guidConfigBitstreamEncryption member of the structure when creating the video decoder interface.

+
+ dn894118 + D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION + D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION +
+ + + No documentation. + + dn894118 + pCryptoSession + pCryptoSession + + + + No documentation. + + dn894118 + BlobSize + BlobSize + + + + No documentation. + + dn894118 + pBlob + pBlob + + + + No documentation. + + dn894118 + pKeyInfoId + pKeyInfoId + + + + No documentation. + + dn894118 + PrivateDataSize + PrivateDataSize + + + + No documentation. + + dn894118 + pPrivateData + pPrivateData + + + +

Describes a compressed buffer for decoding.

+
+ hh447641 + D3D11_VIDEO_DECODER_BUFFER_DESC + D3D11_VIDEO_DECODER_BUFFER_DESC +
+ + +

The type of buffer, specified as a member of the enumeration.

+
+ hh447641 + BufferType + BufferType +
+ + +

Reserved.

+
+ hh447641 + BufferIndex + BufferIndex +
+ + +

The offset of the relevant data from the beginning of the buffer, in bytes. This value must be zero. +

+
+ hh447641 + DataOffset + DataOffset +
+ + +

The macroblock address of the first macroblock in the buffer. The macroblock address is given in raster scan order. +

+
+ hh447641 + DataSize + DataSize +
+ + +

The macroblock address of the first macroblock in the buffer. The macroblock address is given in raster scan order. +

+
+ hh447641 + FirstMBaddress + FirstMBaddress +
+ + +

The number of macroblocks of data in the buffer. This count includes skipped macroblocks.

+
+ hh447641 + NumMBsInBuffer + NumMBsInBuffer +
+ + +

Reserved. Set to zero.

+
+ hh447641 + Width + Width +
+ + +

Reserved. Set to zero.

+
+ hh447641 + Height + Height +
+ + +

Reserved. Set to zero.

+
+ hh447641 + Stride + Stride +
+ + +

Reserved. Set to zero.

+
+ hh447641 + ReservedBits + ReservedBits +
+ + +

A reference to a buffer that contains an initialization vector (IV) for encrypted data. If the decode buffer does not contain encrypted data, set this member to null.

+
+ hh447641 + pIV + pIV +
+ + +

The size of the buffer specified in the pIV parameter. If pIV is null, set this member to zero.

+
+ hh447641 + IVSize + IVSize +
+ + +

If TRUE, the video surfaces are partially encrypted.

+
+ hh447641 + PartialEncryption + PartialEncryption +
+ + +

A structure that specifies which bytes of the surface are encrypted.

+
+ hh447641 + EncryptedBlockInfo + EncryptedBlockInfo +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Describes a compressed buffer for decoding.

+
+ dn894119 + D3D11_VIDEO_DECODER_BUFFER_DESC1 + D3D11_VIDEO_DECODER_BUFFER_DESC1 +
+ + +

The type of buffer.

+
+ dn894119 + BufferType + BufferType +
+ + +

The offset of the relevant data from the beginning of the buffer, in bytes. This value must be zero.

+
+ dn894119 + DataOffset + DataOffset +
+ + +

Size of the relevant data.

+
+ dn894119 + DataSize + DataSize +
+ + +

A reference to a buffer that contains an initialization vector (IV) for encrypted data. If the decode buffer does not contain encrypted data, set this member to null.

+
+ dn894119 + pIV + pIV +
+ + +

The size of the buffer specified in the pIV parameter. If pIV is null, set this member to zero.

+
+ dn894119 + IVSize + IVSize +
+ + +

A reference to an array of structures, which indicates exactly which bytes in the decode buffer are encrypted and which are in the clear. If the decode buffer does not contain encrypted data, set this member to null.

Values in the sub sample mapping blocks are relative to the start of the decode buffer.

+
+ dn894119 + pSubSampleMappingBlock + pSubSampleMappingBlock +
+ + +

The number of structures specified in the pSubSampleMappingBlocks parameter. If pSubSampleMappingBlocks is null, set this member to zero.

+
+ dn894119 + SubSampleMappingCount + SubSampleMappingCount +
+ + +

Describes the configuration of a Microsoft Direct3D?11 decoder device for DirectX Video Acceleration (DXVA).

+
+ hh447643 + D3D11_VIDEO_DECODER_CONFIG + D3D11_VIDEO_DECODER_CONFIG +
+ + +

If the bitstream data buffers are encrypted using the D3D11CryptoSession mechanism, this should be set to zero. If no encryption is applied, the value is DXVA_NoEncrypt. If ConfigBitstreamRaw is 0, the value must be DXVA_NoEncrypt.

+
+ hh447643 + guidConfigBitstreamEncryption + guidConfigBitstreamEncryption +
+ + +

If the macroblock control data buffers are encrypted using the D3D11CryptoSession mechanism, this should be set to zero. If no encryption is applied, the value is DXVA_NoEncrypt. If ConfigBitstreamRaw is 1, the value must be DXVA_NoEncrypt.

+
+ hh447643 + guidConfigMBcontrolEncryption + guidConfigMBcontrolEncryption +
+ + +

If the residual difference decoding data buffers are encrypted using the D3D11CryptoSession mechanism, this should be set to zero. If no encryption is applied, the value is DXVA_NoEncrypt. If ConfigBitstreamRaw is 1, the value must be DXVA_NoEncrypt.

+
+ hh447643 + guidConfigResidDiffEncryption + guidConfigResidDiffEncryption +
+ + +

Indicates whether the host-decoder sends raw bit-stream data. If the value is 1, the data for the pictures will be sent in bit-stream buffers as raw bit-stream content. If the value is 0, picture data will be sent using macroblock control command buffers. If either ConfigResidDiffHost or ConfigResidDiffAccelerator is 1, the value must be 0.

+
+ hh447643 + ConfigBitstreamRaw + ConfigBitstreamRaw +
+ + +

Specifies whether macroblock control commands are in raster scan order or in arbitrary order. If the value is 1, the macroblock control commands within each macroblock control command buffer are in raster-scan order. If the value is 0, the order is arbitrary. For some types of bit streams, forcing raster order either greatly increases the number of required macroblock control buffers that must be processed, or requires host reordering of the control information. Therefore, supporting arbitrary order can be more efficient.

+
+ hh447643 + ConfigMBcontrolRasterOrder + ConfigMBcontrolRasterOrder +
+ + +

Contains the host residual difference configuration. If the value is 1, some residual difference decoding data may be sent as blocks in the spatial domain from the host. If the value is 0, spatial domain data will not be sent.

+
+ hh447643 + ConfigResidDiffHost + ConfigResidDiffHost +
+ + +

Indicates the word size used to represent residual difference spatial-domain blocks for predicted (non-intra) pictures when using host-based residual difference decoding.

If ConfigResidDiffHost is 1 and ConfigSpatialResid8 is 1, the host will send residual difference spatial-domain blocks for non-intra macroblocks using 8-bit signed samples and for intra macroblocks in predicted (non-intra) pictures in a format that depends on the value of ConfigIntraResidUnsigned:

  • If ConfigIntraResidUnsigned is 0, spatial-domain blocks for intra macroblocks are sent as 8-bit signed integer values relative to a constant reference value of 2^(BPP?1).
  • If ConfigIntraResidUnsigned is 1, spatial-domain blocks for intra macroblocks are sent as 8-bit unsigned integer values relative to a constant reference value of 0.

If ConfigResidDiffHost is 1 and ConfigSpatialResid8 is 0, the host will send residual difference spatial-domain blocks of data for non-intra macroblocks using 16-bit signed samples and for intra macroblocks in predicted (non-intra) pictures in a format that depends on the value of ConfigIntraResidUnsigned:

  • If ConfigIntraResidUnsigned is 0, spatial domain blocks for intra macroblocks are sent as 16-bit signed integer values relative to a constant reference value of 2^(BPP?1).
  • If ConfigIntraResidUnsigned is 1, spatial domain blocks for intra macroblocks are sent as 16-bit unsigned integer values relative to a constant reference value of 0.

If ConfigResidDiffHost is 0, ConfigSpatialResid8 must be 0.

For intra pictures, spatial-domain blocks must be sent using 8-bit samples if bits-per-pixel (BPP) is 8, and using 16-bit samples if BPP > 8. If ConfigIntraResidUnsigned is 0, these samples are sent as signed integer values relative to a constant reference value of 2^(BPP?1), and if ConfigIntraResidUnsigned is 1, these samples are sent as unsigned integer values relative to a constant reference value of 0.

+
+ hh447643 + ConfigSpatialResid8 + ConfigSpatialResid8 +
+ + +

If the value is 1, 8-bit difference overflow blocks are subtracted rather than added. The value must be 0 unless ConfigSpatialResid8 is 1.

The ability to subtract differences rather than add them enables 8-bit difference decoding to be fully compliant with the full ?255 range of values required in video decoder specifications, because +255 cannot be represented as the addition of two signed 8-bit numbers, but any number in the range ?255 can be represented as the difference between two signed 8-bit numbers (+255 = +127 minus ?128).

+
+ hh447643 + ConfigResid8Subtraction + ConfigResid8Subtraction +
+ + +

If the value is 1, spatial-domain blocks for intra macroblocks must be clipped to an 8-bit range on the host and spatial-domain blocks for non-intra macroblocks must be clipped to a 9-bit range on the host. If the value is 0, no such clipping is necessary by the host.

The value must be 0 unless ConfigSpatialResid8 is 0 and ConfigResidDiffHost is 1.

+
+ hh447643 + ConfigSpatialHost8or9Clipping + ConfigSpatialHost8or9Clipping +
+ + +

If the value is 1, any spatial-domain residual difference data must be sent in a chrominance-interleaved form matching the YUV format chrominance interleaving pattern. The value must be 0 unless ConfigResidDiffHost is 1 and the YUV format is NV12 or NV21.

+
+ hh447643 + ConfigSpatialResidInterleaved + ConfigSpatialResidInterleaved +
+ + +

Indicates the method of representation of spatial-domain blocks of residual difference data for intra blocks when using host-based difference decoding.

If ConfigResidDiffHost is 1 and ConfigIntraResidUnsigned is 0, spatial-domain residual difference data blocks for intra macroblocks must be sent as follows:

  • In a non-intra picture, if ConfigSpatialResid8 is 0, the spatial-domain residual difference data blocks for intra macroblocks are sent as 16-bit signed integer values relative to a constant reference value of 2^(BPP?1).
  • In a non-intra picture, if ConfigSpatialResid8 is 1, the spatial-domain residual difference data blocks for intra macroblocks are sent as 8-bit signed integer values relative to a constant reference value of 2^(BPP?1).
  • In an intra picture, if BPP is 8, the spatial-domain residual difference data blocks for intra macroblocks are sent as 8-bit signed integer values relative to a constant reference value of 2^(BPP?1), regardless of the value of ConfigSpatialResid8.

If ConfigResidDiffHost is 1 and ConfigIntraResidUnsigned is 1, spatial-domain residual difference data blocks for intra macroblocks must be sent as follows:

  • In a non-intra picture, if ConfigSpatialResid8 is 0, the spatial-domain residual difference data blocks for intra macroblocks must be sent as 16-bit unsigned integer values relative to a constant reference value of 0.
  • In a non-intra picture, if ConfigSpatialResid8 is 1, the spatial-domain residual difference data blocks for intra macroblocks are sent as 8-bit unsigned integer values relative to a constant reference value of 0.
  • In an intra picture, if BPP is 8, the spatial-domain residual difference data blocks for intra macroblocks are sent as 8-bit unsigned integer values relative to a constant reference value of 0, regardless of the value of ConfigSpatialResid8.

The value of the member must be 0 unless ConfigResidDiffHost is 1.

+
+ hh447643 + ConfigIntraResidUnsigned + ConfigIntraResidUnsigned +
+ + +

If the value is 1, transform-domain blocks of coefficient data may be sent from the host for accelerator-based IDCT. If the value is 0, accelerator-based IDCT will not be used. If both ConfigResidDiffHost and ConfigResidDiffAccelerator are 1, this indicates that some residual difference decoding will be done on the host and some on the accelerator, as indicated by macroblock-level control commands.

The value must be 0 if ConfigBitstreamRaw is 1.

+
+ hh447643 + ConfigResidDiffAccelerator + ConfigResidDiffAccelerator +
+ + +

If the value is 1, the inverse scan for transform-domain block processing will be performed on the host, and absolute indices will be sent instead for any transform coefficients. If the value is 0, the inverse scan will be performed on the accelerator.

The value must be 0 if ConfigResidDiffAccelerator is 0 or if Config4GroupedCoefs is 1.

+
+ hh447643 + ConfigHostInverseScan + ConfigHostInverseScan +
+ + +

If the value is 1, the IDCT specified in Annex W of ITU-T Recommendation H.263 is used. If the value is 0, any compliant IDCT can be used for off-host IDCT.

The H.263 annex does not comply with the IDCT requirements of MPEG-2 corrigendum 2, so the value must not be 1 for use with MPEG-2 video.

The value must be 0 if ConfigResidDiffAccelerator is 0, indicating purely host-based residual difference decoding.

+
+ hh447643 + ConfigSpecificIDCT + ConfigSpecificIDCT +
+ + +

If the value is 1, transform coefficients for off-host IDCT will be sent using the DXVA_TCoef4Group structure. If the value is 0, the DXVA_TCoefSingle structure is used. The value must be 0 if ConfigResidDiffAccelerator is 0 or if ConfigHostInverseScan is 1.

+
+ hh447643 + Config4GroupedCoefs + Config4GroupedCoefs +
+ + +

Specifies how many frames the decoder device processes at any one time.

+
+ hh447643 + ConfigMinRenderTargetBuffCount + ConfigMinRenderTargetBuffCount +
+ + +

Contains decoder-specific configuration information.

+
+ hh447643 + ConfigDecoderSpecific + ConfigDecoderSpecific +
+ + +

Describes a video stream for a Microsoft Direct3D?11 video decoder or video processor.

+
+ hh447644 + D3D11_VIDEO_DECODER_DESC + D3D11_VIDEO_DECODER_DESC +
+ + +

The decoding profile. To get the list of profiles supported by the device, call the ID3D11VideoDevice::GetVideoDecoderProfile method.

+
+ hh447644 + Guid + Guid +
+ + +

The width of the video frame, in pixels.

+
+ hh447644 + SampleWidth + SampleWidth +
+ + +

The height of the video frame, in pixels.

+
+ hh447644 + SampleHeight + SampleHeight +
+ + +

The output surface format, specified as a value.

+
+ hh447644 + OutputFormat + OutputFormat +
+ + +

Contains driver-specific data for the ID3D11VideoContext::DecoderExtension method.

+
+ +

The exact meaning of each structure member depends on the value of Function.

+
+ hh447645 + D3D11_VIDEO_DECODER_EXTENSION + D3D11_VIDEO_DECODER_EXTENSION +
+ + + No documentation. + + hh447645 + Function + Function + + + + No documentation. + + hh447645 + pPrivateInputData + pPrivateInputData + + + + No documentation. + + hh447645 + PrivateInputDataSize + PrivateInputDataSize + + + + No documentation. + + hh447645 + pPrivateOutputData + pPrivateOutputData + + + + No documentation. + + hh447645 + PrivateOutputDataSize + PrivateOutputDataSize + + + + No documentation. + + hh447645 + ResourceCount + ResourceCount + + + + No documentation. + + hh447645 + ppResourceList + ppResourceList + + + +

Describes a video decoder output view.

+
+ hh447646 + D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC + D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC +
+ + +

The decoding profile. To get the list of profiles supported by the device, call the ID3D11VideoDevice::GetVideoDecoderProfile method.

+
+ hh447646 + DecodeProfile + DecodeProfile +
+ + +

The resource type of the view, specified as a member of the enumeration.

+
+ hh447646 + ViewDimension + ViewDimension +
+ + +

A structure that identifies the texture resource for the output view.

+
+ hh447646 + Texture2D + Texture2D +
+ + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Describes a sub sample mapping block.

+
+ +

Values in the sub sample mapping blocks are relative to the start of the decode buffer.

+
+ dn894121 + D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK + D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK +
+ + +

The number of clear (non-encrypted) bytes at the start of the block.

+
+ dn894121 + ClearSize + ClearSize +
+ + +

The number of encrypted bytes following the clear bytes.

+
+ dn894121 + EncryptedSize + EncryptedSize +
+ + +

Describes the capabilities of a Microsoft Direct3D?11 video processor.

+
+ +

The video processor stores state information for each input stream. These states persist between blits. With each blit, the application selects which streams to enable or disable. Disabling a stream does not affect the state information for that stream.

The MaxStreamStates member gives the maximum number of stream states that can be saved. The MaxInputStreams member gives the maximum number of streams that can be enabled during a blit. These two values can differ.

+
+ hh447650 + D3D11_VIDEO_PROCESSOR_CAPS + D3D11_VIDEO_PROCESSOR_CAPS +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447650 + DeviceCaps + DeviceCaps +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447650 + FeatureCaps + FeatureCaps +
+ + +

A bitwise OR of zero or more flags from the D3D11_VIDEO_PROCESSPR_FILTER_CAPS enumeration.

+
+ hh447650 + FilterCaps + FilterCaps +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447650 + InputFormatCaps + InputFormatCaps +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447650 + AutoStreamCaps + AutoStreamCaps +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447650 + StereoCaps + StereoCaps +
+ + +

The number of frame-rate conversion capabilities. To enumerate the frame-rate conversion capabilities, call the ID3D11VideoProcessorEnumerator::GetVideoProcessorRateConversionCaps method.

+
+ hh447650 + RateConversionCapsCount + RateConversionCapsCount +
+ + +

The maximum number of input streams that can be enabled at the same time.

+
+ hh447650 + MaxInputStreams + MaxInputStreams +
+ + +

The maximum number of input streams for which the device can store state data.

+
+ hh447650 + MaxStreamStates + MaxStreamStates +
+ + +

Specifies the color space for video processing.

+
+ +

The RGB_Range member applies to RGB output, while the YCbCr_Matrix and YCbCr_xvYCC members apply to YCbCr output. If the driver performs color-space conversion on the background color, it uses the values that apply to both color spaces.

If the driver supports extended YCbCr (xvYCC), it returns the D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC capabilities flag in the ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps method. Otherwise, the driver ignores the value of YCbCr_xvYCC and treats all YCbCr output as conventional YCbCr.

If extended YCbCr is supported, it can be used with either transfer matrix. Extended YCbCr does not change the black point or white point?the black point is still 16 and the white point is still 235. However, extended YCbCr explicitly allows blacker-than-black values in the range 1?15, and whiter-than-white values in the range 236?254. When extended YCbCr is used, the driver should not clip the luma values to the nominal 16?235 range.

+
+ hh447651 + D3D11_VIDEO_PROCESSOR_COLOR_SPACE + D3D11_VIDEO_PROCESSOR_COLOR_SPACE +
+ + +

Specifies whether the output is intended for playback or video processing (such as editing or authoring). The device can optimize the processing based on the type. The default state value is 0 (playback).

ValueMeaning
0

Playback

1

Video processing

?

+
+ hh447651 + Usage + Usage +
+ + +

Specifies the RGB color range. The default state value is 0 (full range).

ValueMeaning
0

Full range (0-255)

1

Limited range (16-235)

?

+
+ hh447651 + RGB_Range + RGB_Range +
+ + +

Specifies the YCbCr transfer matrix. The default state value is 0 (BT.601).

ValueMeaning
0

ITU-R BT.601

1

ITU-R BT.709

?

+
+ hh447651 + YCbCr_Matrix + YCbCr_Matrix +
+ + +

Specifies whether the output uses conventional YCbCr or extended YCbCr (xvYCC). The default state value is zero (conventional YCbCr).

ValueMeaning
0

Conventional YCbCr

1

Extended YCbCr (xvYCC)

?

+
+ hh447651 + YCbCr_xvYCC + YCbCr_xvYCC +
+ + +

Specifies the .

Introduced in Windows?8.1.

+
+ hh447651 + Nominal_Range + Nominal_Range +
+ + +

Reserved. Set to zero.

+
+ hh447651 + Reserved + Reserved +
+ + +

Describes a video stream for a video processor.

+
+ hh447652 + D3D11_VIDEO_PROCESSOR_CONTENT_DESC + D3D11_VIDEO_PROCESSOR_CONTENT_DESC +
+ + +

A member of the enumeration that describes how the video stream is interlaced.

+
+ hh447652 + InputFrameFormat + InputFrameFormat +
+ + +

The frame rate of the input video stream, specified as a structure.

+
+ hh447652 + InputFrameRate + InputFrameRate +
+ + +

The width of the input frames, in pixels.

+
+ hh447652 + InputWidth + InputWidth +
+ + +

The height of the input frames, in pixels.

+
+ hh447652 + InputHeight + InputHeight +
+ + +

The frame rate of the output video stream, specified as a structure.

+
+ hh447652 + OutputFrameRate + OutputFrameRate +
+ + +

The width of the output frames, in pixels.

+
+ hh447652 + OutputWidth + OutputWidth +
+ + +

The height of the output frames, in pixels.

+
+ hh447652 + OutputHeight + OutputHeight +
+ + +

A member of the enumeration that describes how the video processor will be used. The value indicates the desired trade-off between speed and video quality. The driver uses this flag as a hint when it creates the video processor.

+
+ hh447652 + Usage + Usage +
+ + +

Specifies a custom rate for frame-rate conversion or inverse telecine (IVTC).

+
+ +

The CustomRate member gives the rate conversion factor, while the remaining members define the pattern of input and output samples.

+
+ hh447653 + D3D11_VIDEO_PROCESSOR_CUSTOM_RATE + D3D11_VIDEO_PROCESSOR_CUSTOM_RATE +
+ + +

The ratio of the output frame rate to the input frame rate, expressed as a structure that holds a rational number.

+
+ hh447653 + CustomRate + CustomRate +
+ + +

The number of output frames that will be generated for every N input samples, where N = InputFramesOrFields.

+
+ hh447653 + OutputFrames + OutputFrames +
+ + +

If TRUE, the input stream must be interlaced. Otherwise, the input stream must be progressive.

+
+ hh447653 + InputInterlaced + InputInterlaced +
+ + +

The number of input fields or frames for every N output frames that will be generated, where N = OutputFrames.

+
+ hh447653 + InputFramesOrFields + InputFramesOrFields +
+ + +

Defines the range of supported values for an image filter.

+
+ +

The multiplier enables the filter range to have a fractional step value.

For example, a hue filter might have an actual range of [?180.0 ... +180.0] with a step size of 0.25. The device would report the following range and multiplier:

  • Minimum: ?720
  • Maximum: +720
  • Multiplier: 0.25

In this case, a filter value of 2 would be interpreted by the device as 0.50 (or 2 ? 0.25).

The device should use a multiplier that can be represented exactly as a base-2 fraction.

+
+ hh447657 + D3D11_VIDEO_PROCESSOR_FILTER_RANGE + D3D11_VIDEO_PROCESSOR_FILTER_RANGE +
+ + +

The minimum value of the filter.

+
+ hh447657 + Minimum + Minimum +
+ + +

The maximum value of the filter.

+
+ hh447657 + Maximum + Maximum +
+ + +

The default value of the filter.

+
+ hh447657 + Default + Default +
+ + +

A multiplier. Use the following formula to translate the filter setting into the actual filter value: Actual Value = Set Value???Multiplier.

+
+ hh447657 + Multiplier + Multiplier +
+ + +

Describes a video processor input view.

+
+ hh447660 + D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC + D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC +
+ + +

The surface format. If zero, the driver uses the DXGI format that was used to create the resource. If you are using feature level 9, the value must be zero.

+
+ hh447660 + FourCC + FourCC +
+ + +

The resource type of the view, specified as a member of the enumeration.

+
+ hh447660 + ViewDimension + ViewDimension +
+ + +

A structure that identifies the texture resource.

+
+ hh447660 + Texture2D + Texture2D +
+ + +

Describes a video processor output view.

+
+ hh447663 + D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC + D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC +
+ + +

The resource type of the view, specified as a member of the enumeration.

+
+ hh447663 + ViewDimension + ViewDimension +
+ + +

A structure that identifies the texture resource for the output view.

Use this member of the union when ViewDimension equals D3D11_VPOV_DIMENSION_TEXTURE2D.

+
+ hh447663 + Texture2D + Texture2D +
+ + +

A structure that identifies the texture array for the output view.

Use this member of the union when ViewDimension equals D3D11_VPOV_DIMENSION_TEXTURE2DARRAY.

+
+ hh447663 + Texture2DArray + Texture2DArray +
+ + +

Defines a group of video processor capabilities that are associated with frame-rate conversion, including deinterlacing and inverse telecine.

+
+ hh447665 + D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS + D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS +
+ + +

The number of past reference frames required to perform the optimal video processing.

+
+ hh447665 + PastFrames + PastFrames +
+ + +

The number of future reference frames required to perform the optimal video processing.

+
+ hh447665 + FutureFrames + FutureFrames +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447665 + ProcessorCaps + ProcessorCaps +
+ + +

A bitwise OR of zero or more flags from the enumeration.

+
+ hh447665 + ITelecineCaps + ITelecineCaps +
+ + +

The number of custom frame rates that the driver supports. To get the list of custom frame rates, call the ID3D11VideoProcessorEnumerator::GetVideoProcessorCustomRate method.

+
+ hh447665 + CustomRateCount + CustomRateCount +
+ + +

Contains stream-level data for the ID3D11VideoContext::VideoProcessorBlt method.

+
+ +

If the stereo 3D format is D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE, the ppPastSurfaces, pInputSurface, and ppFutureSurfaces members contain the left view.

+
+ hh447670 + D3D11_VIDEO_PROCESSOR_STREAM + D3D11_VIDEO_PROCESSOR_STREAM +
+ + + No documentation. + + hh447670 + Enable + Enable + + + + No documentation. + + hh447670 + OutputIndex + OutputIndex + + + + No documentation. + + hh447670 + InputFrameOrField + InputFrameOrField + + + + No documentation. + + hh447670 + PastFrames + PastFrames + + + + No documentation. + + hh447670 + FutureFrames + FutureFrames + + + + No documentation. + + hh447670 + ppPastSurfaces + ppPastSurfaces + + + + No documentation. + + hh447670 + pInputSurface + pInputSurface + + + + No documentation. + + hh447670 + ppFutureSurfaces + ppFutureSurfaces + + + + No documentation. + + hh447670 + ppPastSurfacesRight + ppPastSurfacesRight + + + + No documentation. + + hh447670 + pInputSurfaceRight + pInputSurfaceRight + + + + No documentation. + + hh447670 + ppFutureSurfacesRight + ppFutureSurfacesRight + + + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Provides information about the input streams passed into the ID3DVideoContext1::VideoProcessorGetBehaviorHints method.

+
+ dn894123 + D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT + D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT +
+ + + No documentation. + + dn894123 + Enable + Enable + + + + No documentation. + + dn894123 + Width + Width + + + + No documentation. + + dn894123 + Height + Height + + + + No documentation. + + dn894123 + Format + Format + + + +

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

Describes a video sample.

+
+ dn894124 + D3D11_VIDEO_SAMPLE_DESC + D3D11_VIDEO_SAMPLE_DESC +
+ + +

The width of the video sample.

+
+ dn894124 + Width + Width +
+ + +

The height of the video sample.

+
+ dn894124 + Height + Height +
+ + +

The format of the video sample.

+
+ dn894124 + Format + Format +
+ + +

The colorspace of the sample.

+
+ dn894124 + ColorSpace + ColorSpace +
+
+
diff --git a/CarConverter/bin/Release/SharpDX.Mathematics.dll b/CarConverter/bin/Release/SharpDX.Mathematics.dll new file mode 100644 index 0000000..7912042 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.Mathematics.dll differ diff --git a/CarConverter/bin/Release/SharpDX.Mathematics.pdb b/CarConverter/bin/Release/SharpDX.Mathematics.pdb new file mode 100644 index 0000000..42031b1 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.Mathematics.pdb differ diff --git a/CarConverter/bin/Release/SharpDX.Mathematics.xml b/CarConverter/bin/Release/SharpDX.Mathematics.xml new file mode 100644 index 0000000..bf5a42b --- /dev/null +++ b/CarConverter/bin/Release/SharpDX.Mathematics.xml @@ -0,0 +1,16449 @@ + + + + SharpDX.Mathematics + + + + + Represents a unit independent angle using a single-precision floating-point + internal representation. + + + + + A value that specifies the size of a single degree. + + + + + A value that specifies the size of a single minute. + + + + + A value that specifies the size of a single second. + + + + + A value that specifies the size of a single radian. + + + + + A value that specifies the size of a single milliradian. + + + + + A value that specifies the size of a single gradian. + + + + + The internal representation of the angle. + + + + + Initializes a new instance of the SharpDX.AngleSingle structure with the + given unit dependant angle and unit type. + + A unit dependant measure of the angle. + The type of unit the angle argument is. + + + + Initializes a new instance of the SharpDX.AngleSingle structure using the + arc length formula (θ = s/r). + + The measure of the arc. + The radius of the circle. + + + + Wraps this SharpDX.AngleSingle to be in the range [π, -π]. + + + + + Wraps this SharpDX.AngleSingle to be in the range [0, 2π). + + + + + Gets or sets the total number of revolutions this SharpDX.AngleSingle represents. + + + + + Gets or sets the total number of degrees this SharpDX.AngleSingle represents. + + + + + Gets or sets the minutes component of the degrees this SharpDX.AngleSingle represents. + When setting the minutes, if the value is in the range (-60, 60) the whole degrees are + not changed; otherwise, the whole degrees may be changed. Fractional values may set + the seconds component. + + + + + Gets or sets the seconds of the degrees this SharpDX.AngleSingle represents. + When setting the seconds, if the value is in the range (-60, 60) the whole minutes + or whole degrees are not changed; otherwise, the whole minutes or whole degrees + may be changed. + + + + + Gets or sets the total number of radians this SharpDX.AngleSingle represents. + + + + + Gets or sets the total number of milliradians this SharpDX.AngleSingle represents. + One milliradian is equal to 1/(2000π). + + + + + Gets or sets the total number of gradians this SharpDX.AngleSingle represents. + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is a right angle (i.e. 90° or π/2). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is a straight angle (i.e. 180° or π). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is a full rotation angle (i.e. 360° or 2π). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is an oblique angle (i.e. is not 90° or a multiple of 90°). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is an acute angle (i.e. less than 90° but greater than 0°). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is an obtuse angle (i.e. greater than 90° but less than 180°). + + + + + Gets a System.Boolean that determines whether this SharpDX.Angle + is a reflex angle (i.e. greater than 180° but less than 360°). + + + + + Gets a SharpDX.AngleSingle instance that complements this angle (i.e. the two angles add to 90°). + + + + + Gets a SharpDX.AngleSingle instance that supplements this angle (i.e. the two angles add to 180°). + + + + + Wraps the SharpDX.AngleSingle given in the value argument to be in the range [π, -π]. + + A SharpDX.AngleSingle to wrap. + The SharpDX.AngleSingle that is wrapped. + + + + Wraps the SharpDX.AngleSingle given in the value argument to be in the range [0, 2π). + + A SharpDX.AngleSingle to wrap. + The SharpDX.AngleSingle that is wrapped. + + + + Compares two SharpDX.AngleSingle instances and returns the smaller angle. + + The first SharpDX.AngleSingle instance to compare. + The second SharpDX.AngleSingle instance to compare. + The smaller of the two given SharpDX.AngleSingle instances. + + + + Compares two SharpDX.AngleSingle instances and returns the greater angle. + + The first SharpDX.AngleSingle instance to compare. + The second SharpDX.AngleSingle instance to compare. + The greater of the two given SharpDX.AngleSingle instances. + + + + Adds two SharpDX.AngleSingle objects and returns the result. + + The first object to add. + The second object to add. + The value of the two objects added together. + + + + Subtracts two SharpDX.AngleSingle objects and returns the result. + + The first object to subtract. + The second object to subtract. + The value of the two objects subtracted. + + + + Multiplies two SharpDX.AngleSingle objects and returns the result. + + The first object to multiply. + The second object to multiply. + The value of the two objects multiplied together. + + + + Divides two SharpDX.AngleSingle objects and returns the result. + + The numerator object. + The denominator object. + The value of the two objects divided. + + + + Gets a new SharpDX.AngleSingle instance that represents the zero angle (i.e. 0°). + + + + + Gets a new SharpDX.AngleSingle instance that represents the right angle (i.e. 90° or π/2). + + + + + Gets a new SharpDX.AngleSingle instance that represents the straight angle (i.e. 180° or π). + + + + + Gets a new SharpDX.AngleSingle instance that represents the full rotation angle (i.e. 360° or 2π). + + + + + Returns a System.Boolean that indicates whether the values of two SharpDX.Angle + objects are equal. + + The first object to compare. + The second object to compare. + True if the left and right parameters have the same value; otherwise, false. + + + + Returns a System.Boolean that indicates whether the values of two SharpDX.Angle + objects are not equal. + + The first object to compare. + The second object to compare. + True if the left and right parameters do not have the same value; otherwise, false. + + + + Returns a System.Boolean that indicates whether a SharpDX.Angle + object is less than another SharpDX.AngleSingle object. + + The first object to compare. + The second object to compare. + True if left is less than right; otherwise, false. + + + + Returns a System.Boolean that indicates whether a SharpDX.Angle + object is greater than another SharpDX.AngleSingle object. + + The first object to compare. + The second object to compare. + True if left is greater than right; otherwise, false. + + + + Returns a System.Boolean that indicates whether a SharpDX.Angle + object is less than or equal to another SharpDX.AngleSingle object. + + The first object to compare. + The second object to compare. + True if left is less than or equal to right; otherwise, false. + + + + Returns a System.Boolean that indicates whether a SharpDX.Angle + object is greater than or equal to another SharpDX.AngleSingle object. + + The first object to compare. + The second object to compare. + True if left is greater than or equal to right; otherwise, false. + + + + Returns the value of the SharpDX.AngleSingle operand. (The sign of + the operand is unchanged.) + + A SharpDX.AngleSingle object. + The value of the value parameter. + + + + Returns the the negated value of the SharpDX.AngleSingle operand. + + A SharpDX.AngleSingle object. + The negated value of the value parameter. + + + + Adds two SharpDX.AngleSingle objects and returns the result. + + The first object to add. + The second object to add. + The value of the two objects added together. + + + + Subtracts two SharpDX.AngleSingle objects and returns the result. + + The first object to subtract + The second object to subtract. + The value of the two objects subtracted. + + + + Multiplies two SharpDX.AngleSingle objects and returns the result. + + The first object to multiply. + The second object to multiply. + The value of the two objects multiplied together. + + + + Divides two SharpDX.AngleSingle objects and returns the result. + + The numerator object. + The denominator object. + The value of the two objects divided. + + + + Compares this instance to a specified object and returns an integer that + indicates whether the value of this instance is less than, equal to, or greater + than the value of the specified object. + + The object to compare. + + A signed integer that indicates the relationship of the current instance + to the obj parameter. If the value is less than zero, the current instance + is less than the other. If the value is zero, the current instance is equal + to the other. If the value is greater than zero, the current instance is + greater than the other. + + + + + Compares this instance to a second SharpDX.AngleSingle and returns + an integer that indicates whether the value of this instance is less than, + equal to, or greater than the value of the specified object. + + The object to compare. + + A signed integer that indicates the relationship of the current instance + to the obj parameter. If the value is less than zero, the current instance + is less than the other. If the value is zero, the current instance is equal + to the other. If the value is greater than zero, the current instance is + greater than the other. + + + + + Returns a value that indicates whether the current instance and a specified + SharpDX.AngleSingle object have the same value. + + The object to compare. + + Returns true if this SharpDX.AngleSingle object and another have the same value; + otherwise, false. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this SharpDX.AngleSingle instance. + + A 32-bit signed integer hash code. + + + + Returns a value that indicates whether the current instance and a specified + object have the same value. + + The object to compare. + + Returns true if the obj parameter is a SharpDX.AngleSingle object or a type + capable of implicit conversion to a SharpDX.AngleSingle value, and + its value is equal to the value of the current SharpDX.Angle + object; otherwise, false. + + + + + The assembly is a managed Math API. + + + + + The namespace provides managed Direct3D Compiler API. + + dd607340 + Math + Math + + + + Represents a four dimensional mathematical vector of bool (32 bits per bool value). + + + + + The size of the type, in bytes. + + + + + A with all of its components set to false. + + + + + The X unit (true, 0, 0, 0). + + + + + The Y unit (0, true, 0, 0). + + + + + The Z unit (0, 0, true, 0). + + + + + The W unit (0, 0, 0, true). + + + + + A with all of its components set to true. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + The W component of the vector. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + The W component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + Initial value for the Z component of the vector. + Initial value for the W component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, Z, and W components of the vector. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the X, Y, Z, or W component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, 2 for the Z component, and 3 for the W component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Creates an array containing the elements of the vector. + + A four-element array containing the components of the vector. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from array to . + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to array. + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents an axis-aligned bounding box in three dimensional space. + + + + + The minimum point of the box. + + + + + The maximum point of the box. + + + + + Initializes a new instance of the struct. + + The minimum vertex of the bounding box. + The maximum vertex of the bounding box. + + + + Returns the width of the bounding box + + + + + Returns the height of the bounding box + + + + + Returns the height of the bounding box + + + + + Returns the size of the bounding box + + + + + Returns the size of the bounding box + + + + + Retrieves the eight corners of the bounding box. + + An array of points representing the eight corners of the bounding box. + + + + Retrieves the eight corners of the bounding box. + + An array of points representing the eight corners of the bounding box. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines whether the current objects contains a point. + + The point to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a point. + + The point to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The box to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The box to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The sphere to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The sphere to test. + The type of containment the two objects have. + + + + Constructs a that fully contains the given points. + + The points that will be contained by the box. + When the method completes, contains the newly constructed bounding box. + Thrown when is null. + + + + Constructs a that fully contains the given points. + + The points that will be contained by the box. + The newly constructed bounding box. + Thrown when is null. + + + + Constructs a from a given sphere. + + The sphere that will designate the extents of the box. + When the method completes, contains the newly constructed bounding box. + + + + Constructs a from a given sphere. + + The sphere that will designate the extents of the box. + The newly constructed bounding box. + + + + Constructs a that is as large as the total combined area of the two specified boxes. + + The first box to merge. + The second box to merge. + When the method completes, contains the newly constructed bounding box. + + + + Constructs a that is as large as the total combined area of the two specified boxes. + + The first box to merge. + The second box to merge. + The newly constructed bounding box. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Defines a frustum which can be used in frustum culling, zoom to Extents (zoom to fit) operations, + (matrix, frustum, camera) interchange, and many kind of intersection testing. + + + + + Gets or sets the Matrix that describes this bounding frustum. + + + + + Gets the near plane of the BoundingFrustum. + + + + + Gets the far plane of the BoundingFrustum. + + + + + Gets the left plane of the BoundingFrustum. + + + + + Gets the right plane of the BoundingFrustum. + + + + + Gets the top plane of the BoundingFrustum. + + + + + Gets the bottom plane of the BoundingFrustum. + + + + + Creates a new instance of BoundingFrustum. + + Combined matrix that usually takes view × projection matrix. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Implements the operator ==. + + The left. + The right. + + The result of the operator. + + + + + Implements the operator !=. + + The left. + The right. + + The result of the operator. + + + + + Returns one of the 6 planes related to this frustum. + + Plane index where 0 fro Left, 1 for Right, 2 for Top, 3 for Bottom, 4 for Near, 5 for Far + + + + + Creates a new frustum relaying on perspective camera parameters + + The camera pos. + The look dir. + Up dir. + The fov. + The znear. + The zfar. + The aspect. + The bounding frustum calculated from perspective camera + + + + Creates a new frustum relaying on perspective camera parameters + + The camera params. + The bounding frustum from camera params + + + + Returns the 8 corners of the frustum, element0 is Near1 (near right down corner) + , element1 is Near2 (near right top corner) + , element2 is Near3 (near Left top corner) + , element3 is Near4 (near Left down corner) + , element4 is Far1 (far right down corner) + , element5 is Far2 (far right top corner) + , element6 is Far3 (far left top corner) + , element7 is Far4 (far left down corner) + + The 8 corners of the frustum + + + + Returns the 8 corners of the frustum, element0 is Near1 (near right down corner) + , element1 is Near2 (near right top corner) + , element2 is Near3 (near Left top corner) + , element3 is Near4 (near Left down corner) + , element4 is Far1 (far right down corner) + , element5 is Far2 (far right top corner) + , element6 is Far3 (far left top corner) + , element7 is Far4 (far left down corner) + + The 8 corners of the frustum + + + + Extracts perspective camera parameters from the frustum, doesn't work with orthographic frustums. + + Perspective camera parameters from the frustum + + + + Checks whether a point lay inside, intersects or lay outside the frustum. + + The point. + Type of the containment + + + + Checks whether a point lay inside, intersects or lay outside the frustum. + + The point. + Type of the containment + + + + Checks whether a group of points lay totally inside the frustum (Contains), or lay partially inside the frustum (Intersects), or lay outside the frustum (Disjoint). + + The points. + Type of the containment + + + + Checks whether a group of points lay totally inside the frustum (Contains), or lay partially inside the frustum (Intersects), or lay outside the frustum (Disjoint). + + The points. + Type of the containment. + + + + Determines the intersection relationship between the frustum and a bounding box. + + The box. + Type of the containment + + + + Determines the intersection relationship between the frustum and a bounding box. + + The box. + Type of the containment + + + + Determines the intersection relationship between the frustum and a bounding box. + + The box. + Type of the containment. + + + + Determines the intersection relationship between the frustum and a bounding sphere. + + The sphere. + Type of the containment + + + + Determines the intersection relationship between the frustum and a bounding sphere. + + The sphere. + Type of the containment + + + + Determines the intersection relationship between the frustum and a bounding sphere. + + The sphere. + Type of the containment. + + + + Determines the intersection relationship between the frustum and another bounding frustum. + + The frustum. + Type of the containment + + + + Determines the intersection relationship between the frustum and another bounding frustum. + + The frustum. + Type of the containment + + + + Determines the intersection relationship between the frustum and another bounding frustum. + + The frustum. + Type of the containment. + + + + Checks whether the current BoundingFrustum intersects a BoundingSphere. + + The sphere. + Type of the containment + + + + Checks whether the current BoundingFrustum intersects a BoundingSphere. + + The sphere. + Set to true if the current BoundingFrustum intersects a BoundingSphere. + + + + Checks whether the current BoundingFrustum intersects a BoundingBox. + + The box. + true if the current BoundingFrustum intersects a BoundingSphere. + + + + Checks whether the current BoundingFrustum intersects a BoundingBox. + + The box. + true if the current BoundingFrustum intersects a BoundingSphere. + + + + Checks whether the current BoundingFrustum intersects the specified Plane. + + The plane. + Plane intersection type. + + + + Checks whether the current BoundingFrustum intersects the specified Plane. + + The plane. + Plane intersection type. + + + + Get the width of the frustum at specified depth. + + the depth at which to calculate frustum width. + With of the frustum at the specified depth + + + + Get the height of the frustum at specified depth. + + the depth at which to calculate frustum height. + Height of the frustum at the specified depth + + + + Checks whether the current BoundingFrustum intersects the specified Ray. + + The ray. + true if the current BoundingFrustum intersects the specified Ray. + + + + Checks whether the current BoundingFrustum intersects the specified Ray. + + The Ray to check for intersection with. + The distance at which the ray enters the frustum if there is an intersection and the ray starts outside the frustum. + The distance at which the ray exits the frustum if there is an intersection. + true if the current BoundingFrustum intersects the specified Ray. + + + + Get the distance which when added to camera position along the lookat direction will do the effect of zoom to extents (zoom to fit) operation, + so all the passed points will fit in the current view. + if the returned value is positive, the camera will move toward the lookat direction (ZoomIn). + if the returned value is negative, the camera will move in the reverse direction of the lookat direction (ZoomOut). + + The points. + The zoom to fit distance + + + + Get the distance which when added to camera position along the lookat direction will do the effect of zoom to extents (zoom to fit) operation, + so all the passed points will fit in the current view. + if the returned value is positive, the camera will move toward the lookat direction (ZoomIn). + if the returned value is negative, the camera will move in the reverse direction of the lookat direction (ZoomOut). + + The bounding box. + The zoom to fit distance + + + + Get the vector shift which when added to camera position will do the effect of zoom to extents (zoom to fit) operation, + so all the passed points will fit in the current view. + + The points. + The zoom to fit vector + + + + Get the vector shift which when added to camera position will do the effect of zoom to extents (zoom to fit) operation, + so all the passed points will fit in the current view. + + The bounding box. + The zoom to fit vector + + + + Indicate whether the current BoundingFrustrum is Orthographic. + + + true if the current BoundingFrustrum is Orthographic; otherwise, false. + + + + + Represents a bounding sphere in three dimensional space. + + + + + The center of the sphere in three dimensional space. + + + + + The radius of the sphere. + + + + + Initializes a new instance of the struct. + + The center of the sphere in three dimensional space. + The radius of the sphere. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines whether the current objects contains a point. + + The point to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The box to test. + The type of containment the two objects have. + + + + Determines whether the current objects contains a . + + The sphere to test. + The type of containment the two objects have. + + + + Constructs a that fully contains the given points. + + The points that will be contained by the sphere. + The start index from points array to start compute the bounding sphere. + The count of points to process to compute the bounding sphere. + When the method completes, contains the newly constructed bounding sphere. + points + + start + or + count + + + + + Constructs a that fully contains the given points. + + The points that will be contained by the sphere. + When the method completes, contains the newly constructed bounding sphere. + + + + Constructs a that fully contains the given points. + + The points that will be contained by the sphere. + The newly constructed bounding sphere. + + + + Constructs a from a given box. + + The box that will designate the extents of the sphere. + When the method completes, the newly constructed bounding sphere. + + + + Constructs a from a given box. + + The box that will designate the extents of the sphere. + The newly constructed bounding sphere. + + + + Constructs a that is the as large as the total combined area of the two specified spheres. + + The first sphere to merge. + The second sphere to merge. + When the method completes, contains the newly constructed bounding sphere. + + + + Constructs a that is the as large as the total combined area of the two specified spheres. + + The first sphere to merge. + The second sphere to merge. + The newly constructed bounding sphere. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Contains static methods to help in determining intersections, containment, etc. + + + + + Determines the closest point between a point and a triangle. + + The point to test. + The first vertex to test. + The second vertex to test. + The third vertex to test. + When the method completes, contains the closest point between the two objects. + + + + Determines the closest point between a and a point. + + The plane to test. + The point to test. + When the method completes, contains the closest point between the two objects. + + + + Determines the closest point between a and a point. + + The box to test. + The point to test. + When the method completes, contains the closest point between the two objects. + + + + Determines the closest point between a and a point. + + + The point to test. + When the method completes, contains the closest point between the two objects; + or, if the point is directly in the center of the sphere, contains . + + + + Determines the closest point between a and a . + + The first sphere to test. + The second sphere to test. + When the method completes, contains the closest point between the two objects; + or, if the point is directly in the center of the sphere, contains . + + If the two spheres are overlapping, but not directly on top of each other, the closest point + is the 'closest' point of intersection. This can also be considered is the deepest point of + intersection. + + + + + Determines the distance between a and a point. + + The plane to test. + The point to test. + The distance between the two objects. + + + + Determines the distance between a and a point. + + The box to test. + The point to test. + The distance between the two objects. + + + + Determines the distance between a and a . + + The first box to test. + The second box to test. + The distance between the two objects. + + + + Determines the distance between a and a point. + + The sphere to test. + The point to test. + The distance between the two objects. + + + + Determines the distance between a and a . + + The first sphere to test. + The second sphere to test. + The distance between the two objects. + + + + Determines whether there is an intersection between a and a point. + + The ray to test. + The point to test. + Whether the two objects intersect. + + + + Determines whether there is an intersection between a and a . + + The first ray to test. + The second ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersect. + + This method performs a ray vs ray intersection test based on the following formula + from Goldman. + s = det([o_2 - o_1, d_2, d_1 x d_2]) / ||d_1 x d_2||^2 + t = det([o_2 - o_1, d_1, d_1 x d_2]) / ||d_1 x d_2||^2 + Where o_1 is the position of the first ray, o_2 is the position of the second ray, + d_1 is the normalized direction of the first ray, d_2 is the normalized direction + of the second ray, det denotes the determinant of a matrix, x denotes the cross + product, [ ] denotes a matrix, and || || denotes the length or magnitude of a vector. + + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The plane to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersect. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The plane to test + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a triangle. + + The ray to test. + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + This method tests if the ray intersects either the front or back of the triangle. + If the ray is parallel to the triangle's plane, no intersection is assumed to have + happened. If the intersection of the ray and the triangle is behind the origin of + the ray, no intersection is assumed to have happened. In both cases of assumptions, + this method returns false. + + + + + Determines whether there is an intersection between a and a triangle. + + The ray to test. + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The box to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The box to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The sphere to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + The sphere to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a point. + + The plane to test. + The point to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The first plane to test. + The second plane to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The first plane to test. + The second plane to test. + When the method completes, contains the line of intersection + as a , or a zero ray if there was no intersection. + Whether the two objects intersected. + + Although a ray is set to have an origin, the ray returned by this method is really + a line in three dimensions which has no real origin. The ray is considered valid when + both the positive direction is used and when the negative direction is used. + + + + + Determines whether there is an intersection between a and a triangle. + + The plane to test. + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The plane to test. + The box to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The plane to test. + The sphere to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The first box to test. + The second box to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The box to test. + The sphere to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a triangle. + + The sphere to test. + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + First sphere to test. + Second sphere to test. + Whether the two objects intersected. + + + + Determines whether a contains a point. + + The box to test. + The point to test. + The type of containment the two objects have. + + + + Determines whether a contains a . + + The first box to test. + The second box to test. + The type of containment the two objects have. + + + + Determines whether a contains a . + + The box to test. + The sphere to test. + The type of containment the two objects have. + + + + Determines whether a contains a point. + + The sphere to test. + The point to test. + The type of containment the two objects have. + + + + Determines whether a contains a triangle. + + The sphere to test. + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + The type of containment the two objects have. + + + + Determines whether a contains a . + + The sphere to test. + The box to test. + The type of containment the two objects have. + + + + Determines whether a contains a . + + The first sphere to test. + The second sphere to test. + The type of containment the two objects have. + + + + Represents a 32-bit color (4 bytes) in the form of RGBA (in byte order: R, G, B, A). + + + List of predefined . + + + + + The red component of the color. + + + + + The green component of the color. + + + + + The blue component of the color. + + + + + The alpha component of the color. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. Alpha is set to 255. + + The red component of the color. + The green component of the color. + The blue component of the color. + + + + Initializes a new instance of the struct. Passed values are clamped within byte range. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color + + + + Initializes a new instance of the struct. Alpha is set to 255. Passed values are clamped within byte range. + + The red component of the color. + The green component of the color. + The blue component of the color. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. Alpha is set to 255. + + The red component of the color. + The green component of the color. + The blue component of the color. + + + + Initializes a new instance of the struct. + + The red, green, blue, and alpha components of the color. + + + + Initializes a new instance of the struct. + + The red, green, and blue components of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. Alpha is set to 255. + + The red, green, and blue components of the color. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in RGBA order. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in RGBA order. + + + + Initializes a new instance of the struct. + + The values to assign to the red, green, and blue, alpha components of the color. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Initializes a new instance of the struct. + + The values to assign to the alpha, red, green, and blue components of the color. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the alpha, red, green, or blue component, depending on the index. + The index of the component to access. Use 0 for the alpha component, 1 for the red component, 2 for the green component, and 3 for the blue component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a three component vector. + + A three component vector containing the red, green, and blue components of the color. + + + + Converts the color into a three component color. + + A three component color containing the red, green, and blue components of the color. + + + + Converts the color into a four component vector. + + A four component vector containing all four color components. + + + + Creates an array containing the elements of the color. + + A four-element array containing the components of the color in RGBA order. + + + + Gets the brightness. + + The Hue-Saturation-Brightness (HSB) brightness for this + + + + Gets the hue. + + The Hue-Saturation-Brightness (HSB) hue for this + + + + Gets the saturation. + + The Hue-Saturation-Brightness (HSB) saturation for this + + + + Adds two colors. + + The first color to add. + The second color to add. + When the method completes, completes the sum of the two colors. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + WHen the method completes, contains the difference of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract + The difference of the two colors. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + When the method completes, contains the modulated color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + When the method completes, contains the scaled color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + The scaled color. + + + + Negates a color. + + The color to negate. + When the method completes, contains the negated color. + + + + Negates a color. + + The color to negate. + The negated color. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in BGRA order + A color. + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in BGRA order + A color. + + + + Converts the color from a packed ABGR integer. + + A packed integer containing all four color components in ABGR order + A color. + + + + Converts the color from a packed ABGR integer. + + A packed integer containing all four color components in ABGR order + A color. + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in RGBA order + A color. + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in RGBA order + A color. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two colors. + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the largest components of the source colors. + + + + Returns a color containing the largest components of the specified colorss. + + The first source color. + The second source color. + A color containing the largest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the smallest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + A color containing the smallest components of the source colors. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + When the method completes, contains the adjusted color. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + The adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + When the method completes, contains the adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + The adjusted color. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Assert a color (return it unchanged). + + The color to assert (unchanged). + The asserted (unchanged) color. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + The difference of the two colors. + + + + Negates a color. + + The color to negate. + A negated color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Convert this instance to a + + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to nullable . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel element (byte). + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel element (byte). + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Zero color. + + + + + Transparent color. + + + + + AliceBlue color. + + + + + AntiqueWhite color. + + + + + Aqua color. + + + + + Aquamarine color. + + + + + Azure color. + + + + + Beige color. + + + + + Bisque color. + + + + + Black color. + + + + + BlanchedAlmond color. + + + + + Blue color. + + + + + BlueViolet color. + + + + + Brown color. + + + + + BurlyWood color. + + + + + CadetBlue color. + + + + + Chartreuse color. + + + + + Chocolate color. + + + + + Coral color. + + + + + CornflowerBlue color. + + + + + Cornsilk color. + + + + + Crimson color. + + + + + Cyan color. + + + + + DarkBlue color. + + + + + DarkCyan color. + + + + + DarkGoldenrod color. + + + + + DarkGray color. + + + + + DarkGreen color. + + + + + DarkKhaki color. + + + + + DarkMagenta color. + + + + + DarkOliveGreen color. + + + + + DarkOrange color. + + + + + DarkOrchid color. + + + + + DarkRed color. + + + + + DarkSalmon color. + + + + + DarkSeaGreen color. + + + + + DarkSlateBlue color. + + + + + DarkSlateGray color. + + + + + DarkTurquoise color. + + + + + DarkViolet color. + + + + + DeepPink color. + + + + + DeepSkyBlue color. + + + + + DimGray color. + + + + + DodgerBlue color. + + + + + Firebrick color. + + + + + FloralWhite color. + + + + + ForestGreen color. + + + + + Fuchsia color. + + + + + Gainsboro color. + + + + + GhostWhite color. + + + + + Gold color. + + + + + Goldenrod color. + + + + + Gray color. + + + + + Green color. + + + + + GreenYellow color. + + + + + Honeydew color. + + + + + HotPink color. + + + + + IndianRed color. + + + + + Indigo color. + + + + + Ivory color. + + + + + Khaki color. + + + + + Lavender color. + + + + + LavenderBlush color. + + + + + LawnGreen color. + + + + + LemonChiffon color. + + + + + LightBlue color. + + + + + LightCoral color. + + + + + LightCyan color. + + + + + LightGoldenrodYellow color. + + + + + LightGray color. + + + + + LightGreen color. + + + + + LightPink color. + + + + + LightSalmon color. + + + + + LightSeaGreen color. + + + + + LightSkyBlue color. + + + + + LightSlateGray color. + + + + + LightSteelBlue color. + + + + + LightYellow color. + + + + + Lime color. + + + + + LimeGreen color. + + + + + Linen color. + + + + + Magenta color. + + + + + Maroon color. + + + + + MediumAquamarine color. + + + + + MediumBlue color. + + + + + MediumOrchid color. + + + + + MediumPurple color. + + + + + MediumSeaGreen color. + + + + + MediumSlateBlue color. + + + + + MediumSpringGreen color. + + + + + MediumTurquoise color. + + + + + MediumVioletRed color. + + + + + MidnightBlue color. + + + + + MintCream color. + + + + + MistyRose color. + + + + + Moccasin color. + + + + + NavajoWhite color. + + + + + Navy color. + + + + + OldLace color. + + + + + Olive color. + + + + + OliveDrab color. + + + + + Orange color. + + + + + OrangeRed color. + + + + + Orchid color. + + + + + PaleGoldenrod color. + + + + + PaleGreen color. + + + + + PaleTurquoise color. + + + + + PaleVioletRed color. + + + + + PapayaWhip color. + + + + + PeachPuff color. + + + + + Peru color. + + + + + Pink color. + + + + + Plum color. + + + + + PowderBlue color. + + + + + Purple color. + + + + + Red color. + + + + + RosyBrown color. + + + + + RoyalBlue color. + + + + + SaddleBrown color. + + + + + Salmon color. + + + + + SandyBrown color. + + + + + SeaGreen color. + + + + + SeaShell color. + + + + + Sienna color. + + + + + Silver color. + + + + + SkyBlue color. + + + + + SlateBlue color. + + + + + SlateGray color. + + + + + Snow color. + + + + + SpringGreen color. + + + + + SteelBlue color. + + + + + Tan color. + + + + + Teal color. + + + + + Thistle color. + + + + + Tomato color. + + + + + Turquoise color. + + + + + Violet color. + + + + + Wheat color. + + + + + White color. + + + + + WhiteSmoke color. + + + + + Yellow color. + + + + + YellowGreen color. + + + + + Represents a color in the form of rgb. + + + + + The Black color (0, 0, 0). + + + + + The White color (1, 1, 1, 1). + + + + + The red component of the color. + + + + + The green component of the color. + + + + + The blue component of the color. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + + + + Initializes a new instance of the struct. + + The red, green, and blue components of the color. + + + + Initializes a new instance of the struct. + + A packed integer containing all three color components in RGB order. + The alpha component is ignored. + + + + Initializes a new instance of the struct. + + The values to assign to the red, green, and blue components of the color. This must be an array with three elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the red, green, or blue component, depending on the index. + The index of the component to access. Use 0 for the red component, 1 for the green component, and 2 for the blue component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 2]. + + + + Converts the color into a packed integer. + + A packed integer containing all three color components. + The alpha channel is set to 255. + + + + Converts the color into a packed integer. + + A packed integer containing all three color components. + The alpha channel is set to 255. + + + + Converts the color into a three component vector. + + A three component vector containing the red, green, and blue components of the color. + + + + Creates an array containing the elements of the color. + + A three-element array containing the components of the color. + + + + Adds two colors. + + The first color to add. + The second color to add. + When the method completes, completes the sum of the two colors. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + WHen the method completes, contains the difference of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract + The difference of the two colors. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + When the method completes, contains the modulated color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + When the method completes, contains the scaled color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + The scaled color. + + + + Negates a color. + + The color to negate. + When the method completes, contains the negated color. + + + + Negates a color. + + The color to negate. + The negated color. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two colors. + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the largest components of the source colors. + + + + Returns a color containing the largest components of the specified colors. + + The first source color. + The second source color. + A color containing the largest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the smallest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + A color containing the smallest components of the source colors. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + When the method completes, contains the adjusted color. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + The adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + When the method completes, contains the adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + The adjusted color. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The color alpha. + The premultiplied result. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The color alpha. + The premultiplied color. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Assert a color (return it unchanged). + + The color to assert (unchanged). + The asserted (unchanged) color. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + The difference of the two colors. + + + + Negates a color. + + The color to negate. + A negated color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel element (float) + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel element (float). + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a color in the form of rgba. + + + + + The Black color (0, 0, 0, 1). + + + + + The White color (1, 1, 1, 1). + + + + + The red component of the color. + + + + + The green component of the color. + + + + + The blue component of the color. + + + + + The alpha component of the color. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. + + The red, green, blue, and alpha components of the color. + + + + Initializes a new instance of the struct. + + The red, green, and blue components of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in RGBA order. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in RGBA order. + + + + Initializes a new instance of the struct. + + The values to assign to the red, green, blue, and alpha components of the color. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Initializes a new instance of the struct. + + used to initialize the color. + + + + Initializes a new instance of the struct. + + used to initialize the color. + The alpha component of the color. + + + + Gets or sets the component at the specified index. + + The value of the red, green, blue, and alpha components, depending on the index. + The index of the component to access. Use 0 for the alpha component, 1 for the red component, 2 for the green component, and 3 for the blue component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a three component vector. + + A three component vector containing the red, green, and blue components of the color. + + + + Converts the color into a four component vector. + + A four component vector containing all four color components. + + + + Creates an array containing the elements of the color. + + A four-element array containing the components of the color. + + + + Adds two colors. + + The first color to add. + The second color to add. + When the method completes, completes the sum of the two colors. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + WHen the method completes, contains the difference of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract + The difference of the two colors. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + When the method completes, contains the modulated color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + When the method completes, contains the scaled color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + The scaled color. + + + + Negates a color. + + The color to negate. + When the method completes, contains the negated color. + + + + Negates a color. + + The color to negate. + The negated color. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two colors. + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the largest components of the source colors. + + + + Returns a color containing the largest components of the specified colors. + + The first source color. + The second source color. + A color containing the largest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the smallest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + A color containing the smallest components of the source colors. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + When the method completes, contains the adjusted color. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + The adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + When the method completes, contains the adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + The adjusted color. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Assert a color (return it unchanged). + + The color to assert (unchanged). + The asserted (unchanged) color. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + The difference of the two colors. + + + + Negates a color. + + The color to negate. + A negated color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel (float). + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel (float). + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a 32-bit color (4 bytes) in the form of BGRA (in byte order: B, G, B, A). + + + + + The blue component of the color. + + + + + The green component of the color. + + + + + The red component of the color. + + + + + The alpha component of the color. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. + + The red, green, blue, and alpha components of the color. + + + + Initializes a new instance of the struct. + + The red, green, and blue components of the color. + The alpha component of the color. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in BGRA order. + + + + Initializes a new instance of the struct. + + A packed integer containing all four color components in BGRA. + + + + Initializes a new instance of the struct. + + The values to assign to the red, green, and blue, alpha components of the color. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Initializes a new instance of the struct. + + The values to assign to the red, green, and blue, alpha components of the color. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the alpha, red, green, or blue component, depending on the index. + The index of the component to access. Use 0 for the alpha component, 1 for the red component, 2 for the green component, and 3 for the blue component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a packed integer. + + A packed integer containing all four color components. + + + + Converts the color into a three component vector. + + A three component vector containing the red, green, and blue components of the color. + + + + Converts the color into a three component color. + + A three component color containing the red, green, and blue components of the color. + + + + Converts the color into a four component vector. + + A four component vector containing all four color components. + + + + Creates an array containing the elements of the color. + + A four-element array containing the components of the color in BGRA order. + + + + Gets the brightness. + + The Hue-Saturation-Brightness (HSB) saturation for this + + + + Gets the hue. + + The Hue-Saturation-Brightness (HSB) saturation for this + + + + Gets the saturation. + + The Hue-Saturation-Brightness (HSB) saturation for this + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in BGRA order + A color. + + + + Converts the color from a packed BGRA integer. + + A packed integer containing all four color components in BGRA order + A color. + + + + Converts the color from a packed RGBA integer. + + A packed integer containing all four color components in RGBA order + A color. + + + + Converts the color from a packed RGBA integer. + + A packed integer containing all four color components in RGBA order + A color. + + + + Adds two colors. + + The first color to add. + The second color to add. + When the method completes, completes the sum of the two colors. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + WHen the method completes, contains the difference of the two colors. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract + The difference of the two colors. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + When the method completes, contains the modulated color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + When the method completes, contains the scaled color. + + + + Scales a color. + + The color to scale. + The amount by which to scale. + The scaled color. + + + + Negates a color. + + The color to negate. + When the method completes, contains the negated color. + + + + Negates a color. + + The color to negate. + The negated color. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two colors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two colors. + + + + Performs a cubic interpolation between two colors. + + Start color. + End color. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two colors. + + + + Returns a color containing the smallest components of the specified colorss. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the largest components of the source colorss. + + + + Returns a color containing the largest components of the specified colorss. + + The first source color. + The second source color. + A color containing the largest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + When the method completes, contains an new color composed of the smallest components of the source colors. + + + + Returns a color containing the smallest components of the specified colors. + + The first source color. + The second source color. + A color containing the smallest components of the source colors. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + When the method completes, contains the adjusted color. + + + + Adjusts the contrast of a color. + + The color whose contrast is to be adjusted. + The amount by which to adjust the contrast. + The adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + When the method completes, contains the adjusted color. + + + + Adjusts the saturation of a color. + + The color whose saturation is to be adjusted. + The amount by which to adjust the saturation. + The adjusted color. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Computes the premultiplied value of the provided color. + + The non-premultiplied value. + The premultiplied result. + + + + Adds two colors. + + The first color to add. + The second color to add. + The sum of the two colors. + + + + Assert a color (return it unchanged). + + The color to assert (unchange). + The asserted (unchanged) color. + + + + Subtracts two colors. + + The first color to subtract. + The second color to subtract. + The difference of the two colors. + + + + Negates a color. + + The color to negate. + A negated color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Scales a color. + + The factor by which to scale the color. + The color to scale. + The scaled color. + + + + Modulates two colors. + + The first color to modulate. + The second color to modulate. + The modulated color. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel (byte). + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format to apply to each channel (byte). + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Describes the type of angle. + + + + + Specifies an angle measurement in revolutions. + + + + + Specifies an angle measurement in degrees. + + + + + Specifies an angle measurement in radians. + + + + + Specifies an angle measurement in gradians. + + + + + Describes how one bounding volume contains another. + + + + + The two bounding volumes don't intersect at all. + + + + + One bounding volume completely contains another. + + + + + The two bounding volumes overlap. + + + + + Describes the result of an intersection with a plane in three dimensions. + + + + + The object is behind the plane. + + + + + The object is in front of the plane. + + + + + The object is intersecting the plane. + + + + + Frustum camera parameters. + + + + + Position of the camera. + + + + + Looking at direction of the camera. + + + + + Up direction. + + + + + Field of view. + + + + + Z near distance. + + + + + Z far distance. + + + + + Aspect ratio. + + + + + A half precision (16 bit) floating point value. + + + + + Number of decimal digits of precision. + + + + + Number of bits in the mantissa. + + + + + Maximum decimal exponent. + + + + + Maximum binary exponent. + + + + + Minimum decimal exponent. + + + + + Minimum binary exponent. + + + + + Exponent radix. + + + + + Additional rounding. + + + + + Smallest such that 1.0 + epsilon != 1.0 + + + + + Maximum value of the number. + + + + + Minimum value of the number. + + + + + Initializes a new instance of the structure. + + The floating point value that should be stored in 16 bit format. + + + + Initializes a new instance of the structure. + + The floating point value that should be stored in 16 bit format. + + + + Gets or sets the raw 16 bit value used to back this half-float. + + + + + Converts an array of half precision values into full precision values. + + The values to be converted. + An array of converted values. + + + + Converts an array of full precision values into half precision values. + + The values to be converted. + An array of converted values. + + + + Performs an explicit conversion from to . + + The value to be converted. + The converted value. + + + + Performs an implicit conversion from to . + + The value to be converted. + The converted value. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + + true if has a different value than ; otherwise, false. + + + + Converts the value of the object to its equivalent string representation. + + The string representation of the value of this instance. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Determines whether the specified object instances are considered equal. + + + + + true if is the same instance as or + if both are null references or if value1.Equals(value2) returns true; otherwise, false. + + + + Returns a value that indicates whether the current instance is equal to the specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Defines a two component vector, using half precision floating point coordinates. + + + + + Gets or sets the X component of the vector. + + The X component of the vector. + + + + Gets or sets the Y component of the vector. + + The Y component of the vector. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + + + + Initializes a new instance of the structure. + + The value to set for both the X and Y components. + + + + Initializes a new instance of the structure. + + Value to initialize X and Y components with. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + + true if has a different value than ; otherwise, false. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Determines whether the specified object instances are considered equal. + + + + + true if is the same instance as or + if both are null references or if value1.Equals(value2) returns true; otherwise, false. + + + + Returns a value that indicates whether the current instance is equal to the specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Defines a three component vector, using half precision floating point coordinates. + + + + + Gets or sets the X component of the vector. + + The X component of the vector. + + + + Gets or sets the Y component of the vector. + + The Y component of the vector. + + + + Gets or sets the Z component of the vector. + + The Z component of the vector. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + + + + Initializes a new instance of the structure. + + The value to set for the X, Y, and Z components. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + + true if has a different value than ; otherwise, false. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Determines whether the specified object instances are considered equal. + + + + + true if is the same instance as or + if both are null references or if value1.Equals(value2) returns true; otherwise, false. + + + + Returns a value that indicates whether the current instance is equal to the specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Defines a four component vector, using half precision floating point coordinates. + + + + + Gets or sets the X component of the vector. + + The X component of the vector. + + + + Gets or sets the Y component of the vector. + + The Y component of the vector. + + + + Gets or sets the Z component of the vector. + + The Z component of the vector. + + + + Gets or sets the W component of the vector. + + The W component of the vector. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + The W component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + The W component. + + + + Initializes a new instance of the structure. + + The X component. + The Y component. + The Z component. + The W component. + + + + Initializes a new instance of the structure. + + The value to set for the X, Y, Z, and W components. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + + true if has a different value than ; otherwise, false. + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Determines whether the specified object instances are considered equal. + + + + + true if is the same instance as or + if both are null references or if value1.Equals(value2) returns true; otherwise, false. + + + + Returns a value that indicates whether the current instance is equal to the specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + Object to make the comparison with. + + true if the current instance is equal to the specified object; false otherwise. + + + + Helper class to perform Half/Float conversion. + Code extract from paper : www.fox-toolkit.org/ftp/fasthalffloatconversion.pdf by Jeroen van der Zijp + + + + + Unpacks the specified h. + + The h. + + + + + Packs the specified f. + + The f. + + + + + Represents a three dimensional mathematical int vector. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The X unit (1, 0, 0). + + + + + The Y unit (0, 1, 0). + + + + + The Z unit (0, 0, 1). + + + + + A with all of its components set to one. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + Initial value for the Z component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, Z, and W components of the vector. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the X, Y, Z, or W component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, 2 for the Z component, and 3 for the W component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Creates an array containing the elements of the vector. + + A four-element array containing the components of the vector. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + When the method completes, contains the sum of the two vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + When the method completes, contains the difference of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Modulates a vector with another by performing component-wise multiplication. + + The first vector to modulate. + The second vector to modulate. + When the method completes, contains the modulated vector. + + + + Modulates a vector with another by performing component-wise multiplication. + + The first vector to modulate. + The second vector to modulate. + The modulated vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Reverses the direction of a given vector. + + The vector to negate. + When the method completes, contains a vector facing in the opposite direction. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the largest components of the source vectors. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the largest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the smallest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the smallest components of the source vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Assert a vector (return it unchanged). + + The vector to assert (unchanged). + The asserted (unchanged) vector. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from array to . + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to array. + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a four dimensional mathematical vector. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The X unit (1, 0, 0, 0). + + + + + The Y unit (0, 1, 0, 0). + + + + + The Z unit (0, 0, 1, 0). + + + + + The W unit (0, 0, 0, 1). + + + + + A with all of its components set to one. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + The W component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + Initial value for the Z component of the vector. + Initial value for the W component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, Z, and W components of the vector. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the X, Y, Z, or W component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, 2 for the Z component, and 3 for the W component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Creates an array containing the elements of the vector. + + A four-element array containing the components of the vector. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + When the method completes, contains the sum of the two vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + When the method completes, contains the difference of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Modulates a vector with another by performing component-wise multiplication. + + The first vector to modulate. + The second vector to modulate. + When the method completes, contains the modulated vector. + + + + Modulates a vector with another by performing component-wise multiplication. + + The first vector to modulate. + The second vector to modulate. + The modulated vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Reverses the direction of a given vector. + + The vector to negate. + When the method completes, contains a vector facing in the opposite direction. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the largest components of the source vectors. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the largest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the smallest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the smallest components of the source vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Assert a vector (return it unchanged). + + The vector to assert (unchanged). + The asserted (unchanged) vector. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from array to . + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to array. + + The input. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + The value for which all absolute numbers smaller than are considered equal to zero. + + + + + A value specifying the approximation of π which is 180 degrees. + + + + + A value specifying the approximation of 2π which is 360 degrees. + + + + + A value specifying the approximation of π/2 which is 90 degrees. + + + + + A value specifying the approximation of π/4 which is 45 degrees. + + + + + Checks if a and b are almost equals, taking into account the magnitude of floating point numbers (unlike method). See Remarks. + See remarks. + + The left value to compare. + The right value to compare. + true if a almost equal to b, false otherwise + + The code is using the technique described by Bruce Dawson in + Comparing Floating point numbers 2012 edition. + + + + + Determines whether the specified value is close to zero (0.0f). + + The floating value. + true if the specified value is close to zero (0.0f); otherwise, false. + + + + Determines whether the specified value is close to one (1.0f). + + The floating value. + true if the specified value is close to one (1.0f); otherwise, false. + + + + Checks if a - b are almost equals within a float epsilon. + + The left value to compare. + The right value to compare. + Epsilon value + true if a almost equal to b within a float epsilon, false otherwise + + + + Converts revolutions to degrees. + + The value to convert. + The converted value. + + + + Converts revolutions to radians. + + The value to convert. + The converted value. + + + + Converts revolutions to gradians. + + The value to convert. + The converted value. + + + + Converts degrees to revolutions. + + The value to convert. + The converted value. + + + + Converts degrees to radians. + + The value to convert. + The converted value. + + + + Converts radians to revolutions. + + The value to convert. + The converted value. + + + + Converts radians to gradians. + + The value to convert. + The converted value. + + + + Converts gradians to revolutions. + + The value to convert. + The converted value. + + + + Converts gradians to degrees. + + The value to convert. + The converted value. + + + + Converts gradians to radians. + + The value to convert. + The converted value. + + + + Converts radians to degrees. + + The value to convert. + The converted value. + + + + Clamps the specified value. + + The value. + The min. + The max. + The result of clamping a value between min and max + + + + Clamps the specified value. + + The value. + The min. + The max. + The result of clamping a value between min and max + + + + Interpolates between two values using a linear function by a given amount. + + + See http://www.encyclopediaofmath.org/index.php/Linear_interpolation and + http://fgiesen.wordpress.com/2012/08/15/linear-interpolation-past-present-and-future/ + + Value to interpolate from. + Value to interpolate to. + Interpolation amount. + The result of linear interpolation of values based on the amount. + + + + Interpolates between two values using a linear function by a given amount. + + + See http://www.encyclopediaofmath.org/index.php/Linear_interpolation and + http://fgiesen.wordpress.com/2012/08/15/linear-interpolation-past-present-and-future/ + + Value to interpolate from. + Value to interpolate to. + Interpolation amount. + The result of linear interpolation of values based on the amount. + + + + Interpolates between two values using a linear function by a given amount. + + + See http://www.encyclopediaofmath.org/index.php/Linear_interpolation and + http://fgiesen.wordpress.com/2012/08/15/linear-interpolation-past-present-and-future/ + + Value to interpolate from. + Value to interpolate to. + Interpolation amount. + The result of linear interpolation of values based on the amount. + + + + Performs smooth (cubic Hermite) interpolation between 0 and 1. + + + See https://en.wikipedia.org/wiki/Smoothstep + + Value between 0 and 1 indicating interpolation amount. + + + + Performs a smooth(er) interpolation between 0 and 1 with 1st and 2nd order derivatives of zero at endpoints. + + + See https://en.wikipedia.org/wiki/Smoothstep + + Value between 0 and 1 indicating interpolation amount. + + + + Calculates the modulo of the specified value. + + The value. + The modulo. + The result of the modulo applied to value + + + + Calculates the modulo 2*PI of the specified value. + + The value. + The result of the modulo applied to value + + + + Wraps the specified value into a range [min, max] + + The value to wrap. + The min. + The max. + Result of the wrapping. + Is thrown when is greater than . + + + + Wraps the specified value into a range [min, max[ + + The value. + The min. + The max. + Result of the wrapping. + Is thrown when is greater than . + + + + Gauss function. + http://en.wikipedia.org/wiki/Gaussian_function#Two-dimensional_Gaussian_function + + Curve amplitude. + Position X. + Position Y + Center X. + Center Y. + Curve sigma X. + Curve sigma Y. + The result of Gaussian function. + + + + Gauss function. + http://en.wikipedia.org/wiki/Gaussian_function#Two-dimensional_Gaussian_function + + Curve amplitude. + Position X. + Position Y + Center X. + Center Y. + Curve sigma X. + Curve sigma Y. + The result of Gaussian function. + + + + Represents a 4x4 mathematical matrix. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The identity . + + + + + Value at row 1 column 1 of the matrix. + + + + + Value at row 1 column 2 of the matrix. + + + + + Value at row 1 column 3 of the matrix. + + + + + Value at row 1 column 4 of the matrix. + + + + + Value at row 2 column 1 of the matrix. + + + + + Value at row 2 column 2 of the matrix. + + + + + Value at row 2 column 3 of the matrix. + + + + + Value at row 2 column 4 of the matrix. + + + + + Value at row 3 column 1 of the matrix. + + + + + Value at row 3 column 2 of the matrix. + + + + + Value at row 3 column 3 of the matrix. + + + + + Value at row 3 column 4 of the matrix. + + + + + Value at row 4 column 1 of the matrix. + + + + + Value at row 4 column 2 of the matrix. + + + + + Value at row 4 column 3 of the matrix. + + + + + Value at row 4 column 4 of the matrix. + + + + + Gets or sets the up of the matrix; that is M21, M22, and M23. + + + + + Gets or sets the down of the matrix; that is -M21, -M22, and -M23. + + + + + Gets or sets the right of the matrix; that is M11, M12, and M13. + + + + + Gets or sets the left of the matrix; that is -M11, -M12, and -M13. + + + + + Gets or sets the forward of the matrix; that is -M31, -M32, and -M33. + + + + + Gets or sets the backward of the matrix; that is M31, M32, and M33. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value to assign at row 1 column 1 of the matrix. + The value to assign at row 1 column 2 of the matrix. + The value to assign at row 1 column 3 of the matrix. + The value to assign at row 1 column 4 of the matrix. + The value to assign at row 2 column 1 of the matrix. + The value to assign at row 2 column 2 of the matrix. + The value to assign at row 2 column 3 of the matrix. + The value to assign at row 2 column 4 of the matrix. + The value to assign at row 3 column 1 of the matrix. + The value to assign at row 3 column 2 of the matrix. + The value to assign at row 3 column 3 of the matrix. + The value to assign at row 3 column 4 of the matrix. + The value to assign at row 4 column 1 of the matrix. + The value to assign at row 4 column 2 of the matrix. + The value to assign at row 4 column 3 of the matrix. + The value to assign at row 4 column 4 of the matrix. + + + + Initializes a new instance of the struct. + + The values to assign to the components of the matrix. This must be an array with sixteen elements. + Thrown when is null. + Thrown when contains more or less than sixteen elements. + + + + Gets or sets the first row in the matrix; that is M11, M12, M13, and M14. + + + + + Gets or sets the second row in the matrix; that is M21, M22, M23, and M24. + + + + + Gets or sets the third row in the matrix; that is M31, M32, M33, and M34. + + + + + Gets or sets the fourth row in the matrix; that is M41, M42, M43, and M44. + + + + + Gets or sets the first column in the matrix; that is M11, M21, M31, and M41. + + + + + Gets or sets the second column in the matrix; that is M12, M22, M32, and M42. + + + + + Gets or sets the third column in the matrix; that is M13, M23, M33, and M43. + + + + + Gets or sets the fourth column in the matrix; that is M14, M24, M34, and M44. + + + + + Gets or sets the translation of the matrix; that is M41, M42, and M43. + + + + + Gets or sets the scale of the matrix; that is M11, M22, and M33. + + + + + Gets a value indicating whether this instance is an identity matrix. + + + true if this instance is an identity matrix; otherwise, false. + + + + + Gets or sets the component at the specified index. + + The value of the matrix component, depending on the index. + The zero-based index of the component to access. + The value of the component at the specified index. + Thrown when the is out of the range [0, 15]. + + + + Gets or sets the component at the specified index. + + The value of the matrix component, depending on the index. + The row of the matrix to access. + The column of the matrix to access. + The value of the component at the specified index. + Thrown when the or is out of the range [0, 3]. + + + + Calculates the determinant of the matrix. + + The determinant of the matrix. + + + + Inverts the matrix. + + + + + Transposes the matrix. + + + + + Orthogonalizes the specified matrix. + + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the matrix will be orthogonal to any other given row in the + matrix. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified matrix. + + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Decomposes a matrix into an orthonormalized matrix Q and a right triangular matrix R. + + When the method completes, contains the orthonormalized matrix of the decomposition. + When the method completes, contains the right triangular matrix of the decomposition. + + + + Decomposes a matrix into a lower triangular matrix L and an orthonormalized matrix Q. + + When the method completes, contains the lower triangular matrix of the decomposition. + When the method completes, contains the orthonormalized matrix of the decomposition. + + + + Decomposes a matrix into a scale, rotation, and translation. + + When the method completes, contains the scaling component of the decomposed matrix. + When the method completes, contains the rotation component of the decomposed matrix. + When the method completes, contains the translation component of the decomposed matrix. + + This method is designed to decompose an SRT transformation matrix only. + + + + + Decomposes a uniform scale matrix into a scale, rotation, and translation. + A uniform scale matrix has the same scale in every axis. + + When the method completes, contains the scaling component of the decomposed matrix. + When the method completes, contains the rotation component of the decomposed matrix. + When the method completes, contains the translation component of the decomposed matrix. + + This method is designed to decompose only an SRT transformation matrix that has the same scale in every axis. + + + + + Exchanges two rows in the matrix. + + The first row to exchange. This is an index of the row starting at zero. + The second row to exchange. This is an index of the row starting at zero. + + + + Exchanges two columns in the matrix. + + The first column to exchange. This is an index of the column starting at zero. + The second column to exchange. This is an index of the column starting at zero. + + + + Creates an array containing the elements of the matrix. + + A sixteen-element array containing the components of the matrix. + + + + Determines the sum of two matrices. + + The first matrix to add. + The second matrix to add. + When the method completes, contains the sum of the two matrices. + + + + Determines the sum of two matrices. + + The first matrix to add. + The second matrix to add. + The sum of the two matrices. + + + + Determines the difference between two matrices. + + The first matrix to subtract. + The second matrix to subtract. + When the method completes, contains the difference between the two matrices. + + + + Determines the difference between two matrices. + + The first matrix to subtract. + The second matrix to subtract. + The difference between the two matrices. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + When the method completes, contains the scaled matrix. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Determines the product of two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Determines the product of two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + When the method completes, contains the scaled matrix. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Determines the quotient of two matrices. + + The first matrix to divide. + The second matrix to divide. + When the method completes, contains the quotient of the two matrices. + + + + Determines the quotient of two matrices. + + The first matrix to divide. + The second matrix to divide. + The quotient of the two matrices. + + + + Performs the exponential operation on a matrix. + + The matrix to perform the operation on. + The exponent to raise the matrix to. + When the method completes, contains the exponential matrix. + Thrown when the is negative. + + + + Performs the exponential operation on a matrix. + + The matrix to perform the operation on. + The exponent to raise the matrix to. + The exponential matrix. + Thrown when the is negative. + + + + Negates a matrix. + + The matrix to be negated. + When the method completes, contains the negated matrix. + + + + Negates a matrix. + + The matrix to be negated. + The negated matrix. + + + + Performs a linear interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two matrices. + + + + Performs a cubic interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two matrices. + + + + Calculates the transpose of the specified matrix. + + The matrix whose transpose is to be calculated. + When the method completes, contains the transpose of the specified matrix. + + + + Calculates the transpose of the specified matrix. + + The matrix whose transpose is to be calculated. + When the method completes, contains the transpose of the specified matrix. + + + + Calculates the transpose of the specified matrix. + + The matrix whose transpose is to be calculated. + The transpose of the specified matrix. + + + + Calculates the inverse of the specified matrix. + + The matrix whose inverse is to be calculated. + When the method completes, contains the inverse of the specified matrix. + + + + Calculates the inverse of the specified matrix. + + The matrix whose inverse is to be calculated. + The inverse of the specified matrix. + + + + Orthogonalizes the specified matrix. + + The matrix to orthogonalize. + When the method completes, contains the orthogonalized matrix. + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the matrix will be orthogonal to any other given row in the + matrix. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthogonalizes the specified matrix. + + The matrix to orthogonalize. + The orthogonalized matrix. + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the matrix will be orthogonal to any other given row in the + matrix. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified matrix. + + The matrix to orthonormalize. + When the method completes, contains the orthonormalized matrix. + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified matrix. + + The matrix to orthonormalize. + The orthonormalized matrix. + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting matrix + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the matrix rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Brings the matrix into upper triangular form using elementary row operations. + + The matrix to put into upper triangular form. + When the method completes, contains the upper triangular matrix. + + If the matrix is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the matrix represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the matrix into upper triangular form using elementary row operations. + + The matrix to put into upper triangular form. + The upper triangular matrix. + + If the matrix is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the matrix represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the matrix into lower triangular form using elementary row operations. + + The matrix to put into lower triangular form. + When the method completes, contains the lower triangular matrix. + + If the matrix is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the matrix represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the matrix into lower triangular form using elementary row operations. + + The matrix to put into lower triangular form. + The lower triangular matrix. + + If the matrix is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the matrix represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the matrix into row echelon form using elementary row operations; + + The matrix to put into row echelon form. + When the method completes, contains the row echelon form of the matrix. + + + + Brings the matrix into row echelon form using elementary row operations; + + The matrix to put into row echelon form. + When the method completes, contains the row echelon form of the matrix. + + + + Brings the matrix into reduced row echelon form using elementary row operations. + + The matrix to put into reduced row echelon form. + The fifth column of the matrix. + When the method completes, contains the resultant matrix after the operation. + When the method completes, contains the resultant fifth column of the matrix. + + The fifth column is often called the augmented part of the matrix. This is because the fifth + column is really just an extension of the matrix so that there is a place to put all of the + non-zero components after the operation is complete. + Often times the resultant matrix will the identity matrix or a matrix similar to the identity + matrix. Sometimes, however, that is not possible and numbers other than zero and one may appear. + This method can be used to solve systems of linear equations. Upon completion of this method, + the will contain the solution for the system. It is up to the user + to analyze both the input and the result to determine if a solution really exists. + + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard matrix. + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard matrix. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard matrix. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard matrix. + + + + Creates a left-handed, look-at matrix. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at matrix. + + + + Creates a left-handed, look-at matrix. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at matrix. + + + + Creates a right-handed, look-at matrix. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at matrix. + + + + Creates a right-handed, look-at matrix. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at matrix. + + + + Creates a left-handed, orthographic projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a left-handed, orthographic projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a right-handed, orthographic projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a right-handed, orthographic projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a left-handed, customized orthographic projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a left-handed, customized orthographic projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a right-handed, customized orthographic projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a right-handed, customized orthographic projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a left-handed, perspective projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a left-handed, perspective projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a right-handed, perspective projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a right-handed, perspective projection matrix. + + Width of the viewing volume. + Height of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a left-handed, perspective projection matrix based on a field of view. + + Field of view in the y direction, in radians. + Aspect ratio, defined as view space width divided by height. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a left-handed, perspective projection matrix based on a field of view. + + Field of view in the y direction, in radians. + Aspect ratio, defined as view space width divided by height. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a right-handed, perspective projection matrix based on a field of view. + + Field of view in the y direction, in radians. + Aspect ratio, defined as view space width divided by height. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a right-handed, perspective projection matrix based on a field of view. + + Field of view in the y direction, in radians. + Aspect ratio, defined as view space width divided by height. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a left-handed, customized perspective projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a left-handed, customized perspective projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a right-handed, customized perspective projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + When the method completes, contains the created projection matrix. + + + + Creates a right-handed, customized perspective projection matrix. + + Minimum x-value of the viewing volume. + Maximum x-value of the viewing volume. + Minimum y-value of the viewing volume. + Maximum y-value of the viewing volume. + Minimum z-value of the viewing volume. + Maximum z-value of the viewing volume. + The created projection matrix. + + + + Creates a matrix that scales along the x-axis, y-axis, and y-axis. + + Scaling factor for all three axes. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that scales along the x-axis, y-axis, and y-axis. + + Scaling factor for all three axes. + The created scaling matrix. + + + + Creates a matrix that scales along the x-axis, y-axis, and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that scales along the x-axis, y-axis, and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + The created scaling matrix. + + + + Creates a matrix that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + The created scaling matrix. + + + + Creates a matrix that rotates around the x-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation matrix. + + + + Creates a matrix that rotates around the x-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation matrix. + + + + Creates a matrix that rotates around the y-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation matrix. + + + + Creates a matrix that rotates around the y-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation matrix. + + + + Creates a matrix that rotates around the z-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation matrix. + + + + Creates a matrix that rotates around the z-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation matrix. + + + + Creates a matrix that rotates around an arbitrary axis. + + The axis around which to rotate. This parameter is assumed to be normalized. + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation matrix. + + + + Creates a matrix that rotates around an arbitrary axis. + + The axis around which to rotate. This parameter is assumed to be normalized. + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation matrix. + + + + Creates a rotation matrix from a quaternion. + + The quaternion to use to build the matrix. + The created rotation matrix. + + + + Creates a rotation matrix from a quaternion. + + The quaternion to use to build the matrix. + The created rotation matrix. + + + + Creates a rotation matrix with a specified yaw, pitch, and roll. + + Yaw around the y-axis, in radians. + Pitch around the x-axis, in radians. + Roll around the z-axis, in radians. + When the method completes, contains the created rotation matrix. + + + + Creates a rotation matrix with a specified yaw, pitch, and roll. + + Yaw around the y-axis, in radians. + Pitch around the x-axis, in radians. + Roll around the z-axis, in radians. + The created rotation matrix. + + + + Creates a translation matrix using the specified offsets. + + The offset for all three coordinate planes. + When the method completes, contains the created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + The offset for all three coordinate planes. + The created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + Z-coordinate offset. + When the method completes, contains the created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + Z-coordinate offset. + The created translation matrix. + + + + Creates a skew/shear matrix by means of a translation vector, a rotation vector, and a rotation angle. + shearing is performed in the direction of translation vector, where translation vector and rotation vector define the shearing plane. + The effect is such that the skewed rotation vector has the specified angle with rotation itself. + + The rotation angle. + The rotation vector + The translation vector + Contains the created skew/shear matrix. + + + + Creates a 3D affine transformation matrix. + + Scaling factor. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created affine transformation matrix. + + + + Creates a 3D affine transformation matrix. + + Scaling factor. + The rotation of the transformation. + The translation factor of the transformation. + The created affine transformation matrix. + + + + Creates a 3D affine transformation matrix. + + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created affine transformation matrix. + + + + Creates a 3D affine transformation matrix. + + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + The created affine transformation matrix. + + + + Creates a 2D affine transformation matrix. + + Scaling factor. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created affine transformation matrix. + + + + Creates a 2D affine transformation matrix. + + Scaling factor. + The rotation of the transformation. + The translation factor of the transformation. + The created affine transformation matrix. + + + + Creates a 2D affine transformation matrix. + + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created affine transformation matrix. + + + + Creates a 2D affine transformation matrix. + + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + The created affine transformation matrix. + + + + Creates a transformation matrix. + + Center point of the scaling operation. + Scaling rotation amount. + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created transformation matrix. + + + + Creates a transformation matrix. + + Center point of the scaling operation. + Scaling rotation amount. + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + The created transformation matrix. + + + + Creates a 2D transformation matrix. + + Center point of the scaling operation. + Scaling rotation amount. + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + When the method completes, contains the created transformation matrix. + + + + Creates a 2D transformation matrix. + + Center point of the scaling operation. + Scaling rotation amount. + Scaling factor. + The center of the rotation. + The rotation of the transformation. + The translation factor of the transformation. + The created transformation matrix. + + + + Adds two matrices. + + The first matrix to add. + The second matrix to add. + The sum of the two matrices. + + + + Assert a matrix (return it unchanged). + + The matrix to assert (unchanged). + The asserted (unchanged) matrix. + + + + Subtracts two matrices. + + The first matrix to subtract. + The second matrix to subtract. + The difference between the two matrices. + + + + Negates a matrix. + + The matrix to negate. + The negated matrix. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Multiplies two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Divides two matrices. + + The first matrix to divide. + The second matrix to divide. + The quotient of the two matrices. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Direct2D Matrix3x2. Supports implicit cast from . + + + + + Gets the identity matrix. + + The identity matrix. + + + + Element (1,1) + + + + + Element (1,2) + + + + + Element (2,1) + + + + + Element (2,2) + + + + + Element (3,1) + + + + + Element (3,2) + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value to assign at row 1 column 1 of the matrix. + The value to assign at row 1 column 2 of the matrix. + The value to assign at row 2 column 1 of the matrix. + The value to assign at row 2 column 2 of the matrix. + The value to assign at row 3 column 1 of the matrix. + The value to assign at row 3 column 2 of the matrix. + + + + Initializes a new instance of the struct. + + The values to assign to the components of the matrix. This must be an array with six elements. + Thrown when is null. + Thrown when contains more or less than six elements. + + + + Gets or sets the first row in the matrix; that is M11 and M12. + + + + + Gets or sets the second row in the matrix; that is M21 and M22. + + + + + Gets or sets the third row in the matrix; that is M31 and M32. + + + + + Gets or sets the first column in the matrix; that is M11, M21, and M31. + + + + + Gets or sets the second column in the matrix; that is M12, M22, and M32. + + + + + Gets or sets the translation of the matrix; that is M31 and M32. + + + + + Gets or sets the scale of the matrix; that is M11 and M22. + + + + + Gets a value indicating whether this instance is an identity matrix. + + + true if this instance is an identity matrix; otherwise, false. + + + + + Gets or sets the component at the specified index. + + The value of the matrix component, depending on the index. + The zero-based index of the component to access. + The value of the component at the specified index. + Thrown when the is out of the range [0, 5]. + + + + Gets or sets the component at the specified index. + + The value of the matrix component, depending on the index. + The row of the matrix to access. + The column of the matrix to access. + The value of the component at the specified index. + Thrown when the or is out of the range [0, 3]. + + + + Creates an array containing the elements of the matrix. + + A sixteen-element array containing the components of the matrix. + + + + Determines the sum of two matrices. + + The first matrix to add. + The second matrix to add. + When the method completes, contains the sum of the two matrices. + + + + Determines the sum of two matrices. + + The first matrix to add. + The second matrix to add. + The sum of the two matrices. + + + + Determines the difference between two matrices. + + The first matrix to subtract. + The second matrix to subtract. + When the method completes, contains the difference between the two matrices. + + + + Determines the difference between two matrices. + + The first matrix to subtract. + The second matrix to subtract. + The difference between the two matrices. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + When the method completes, contains the scaled matrix. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Determines the product of two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Determines the product of two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Scales a matrix by the given value. + + The matrix to scale. + The amount by which to scale. + When the method completes, contains the scaled matrix. + + + + Determines the quotient of two matrices. + + The first matrix to divide. + The second matrix to divide. + When the method completes, contains the quotient of the two matrices. + + + + Negates a matrix. + + The matrix to be negated. + When the method completes, contains the negated matrix. + + + + Negates a matrix. + + The matrix to be negated. + The negated matrix. + + + + Performs a linear interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two matrices. + + + + Performs a cubic interpolation between two matrices. + + Start matrix. + End matrix. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two matrices. + + + + Creates a matrix that scales along the x-axis and y-axis. + + Scaling factor for both axes. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that scales along the x-axis and y-axis. + + Scaling factor for both axes. + The created scaling matrix. + + + + Creates a matrix that scales along the x-axis and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that scales along the x-axis and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + The created scaling matrix. + + + + Creates a matrix that uniformly scales along both axes. + + The uniform scale that is applied along both axes. + When the method completes, contains the created scaling matrix. + + + + Creates a matrix that uniformly scales along both axes. + + The uniform scale that is applied along both axes. + The created scaling matrix. + + + + Creates a matrix that is scaling from a specified center. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + The center of the scaling. + The created scaling matrix. + + + + Creates a matrix that is scaling from a specified center. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + The center of the scaling. + The created scaling matrix. + + + + Calculates the determinant of this matrix. + + Result of the determinant. + + + + Creates a matrix that rotates. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis. + When the method completes, contains the created rotation matrix. + + + + Creates a matrix that rotates. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis. + The created rotation matrix. + + + + Creates a matrix that rotates about a specified center. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis. + The center of the rotation. + The created rotation matrix. + + + + Creates a matrix that rotates about a specified center. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis. + The center of the rotation. + When the method completes, contains the created rotation matrix. + + + + Creates a transformation matrix. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis. + X-coordinate offset. + Y-coordinate offset. + When the method completes, contains the created transformation matrix. + + + + Creates a transformation matrix. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Angle of rotation in radians. + X-coordinate offset. + Y-coordinate offset. + The created transformation matrix. + + + + Creates a translation matrix using the specified offsets. + + The offset for both coordinate planes. + When the method completes, contains the created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + The offset for both coordinate planes. + The created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + When the method completes, contains the created translation matrix. + + + + Creates a translation matrix using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + The created translation matrix. + + + + Transforms a vector by this matrix. + + The matrix to use as a transformation matrix. + The original vector to apply the transformation. + The result of the transformation for the input vector. + + + + Transforms a vector by this matrix. + + The matrix to use as a transformation matrix. + The original vector to apply the transformation. + The result of the transformation for the input vector. + + + + + Calculates the inverse of this matrix instance. + + + + + Calculates the inverse of the specified matrix. + + The matrix whose inverse is to be calculated. + the inverse of the specified matrix. + + + + Creates a skew matrix. + + Angle of skew along the X-axis in radians. + Angle of skew along the Y-axis in radians. + The created skew matrix. + + + + Creates a skew matrix. + + Angle of skew along the X-axis in radians. + Angle of skew along the Y-axis in radians. + When the method completes, contains the created skew matrix. + + + + Calculates the inverse of the specified matrix. + + The matrix whose inverse is to be calculated. + When the method completes, contains the inverse of the specified matrix. + + + + Adds two matrices. + + The first matrix to add. + The second matrix to add. + The sum of the two matrices. + + + + Assert a matrix (return it unchanged). + + The matrix to assert (unchanged). + The asserted (unchanged) matrix. + + + + Subtracts two matrices. + + The first matrix to subtract. + The second matrix to subtract. + The difference between the two matrices. + + + + Negates a matrix. + + The matrix to negate. + The negated matrix. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Multiplies two matrices. + + The first matrix to multiply. + The second matrix to multiply. + The product of the two matrices. + + + + Scales a matrix by a given value. + + The matrix to scale. + The amount by which to scale. + The scaled matrix. + + + + Divides two matrices. + + The first matrix to divide. + The second matrix to divide. + The quotient of the two matrices. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The matrix. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a 3x3 Matrix ( contains only Scale and Rotation ). + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The identity . + + + + + Value at row 1 column 1 of the Matrix3x3. + + + + + Value at row 1 column 2 of the Matrix3x3. + + + + + Value at row 1 column 3 of the Matrix3x3. + + + + + Value at row 2 column 1 of the Matrix3x3. + + + + + Value at row 2 column 2 of the Matrix3x3. + + + + + Value at row 2 column 3 of the Matrix3x3. + + + + + Value at row 3 column 1 of the Matrix3x3. + + + + + Value at row 3 column 2 of the Matrix3x3. + + + + + Value at row 3 column 3 of the Matrix3x3. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value to assign at row 1 column 1 of the Matrix3x3. + The value to assign at row 1 column 2 of the Matrix3x3. + The value to assign at row 1 column 3 of the Matrix3x3. + The value to assign at row 2 column 1 of the Matrix3x3. + The value to assign at row 2 column 2 of the Matrix3x3. + The value to assign at row 2 column 3 of the Matrix3x3. + The value to assign at row 3 column 1 of the Matrix3x3. + The value to assign at row 3 column 2 of the Matrix3x3. + The value to assign at row 3 column 3 of the Matrix3x3. + + + + Initializes a new instance of the struct. + + The values to assign to the components of the Matrix3x3. This must be an array with sixteen elements. + Thrown when is null. + Thrown when contains more or less than sixteen elements. + + + + Gets or sets the first row in the Matrix3x3; that is M11, M12, M13 + + + + + Gets or sets the second row in the Matrix3x3; that is M21, M22, M23 + + + + + Gets or sets the third row in the Matrix3x3; that is M31, M32, M33 + + + + + Gets or sets the first column in the Matrix3x3; that is M11, M21, M31 + + + + + Gets or sets the second column in the Matrix3x3; that is M12, M22, M32 + + + + + Gets or sets the third column in the Matrix3x3; that is M13, M23, M33 + + + + + Gets or sets the scale of the Matrix3x3; that is M11, M22, and M33. + + + + + Gets a value indicating whether this instance is an identity Matrix3x3. + + + true if this instance is an identity Matrix3x3; otherwise, false. + + + + + Gets or sets the component at the specified index. + + The value of the Matrix3x3 component, depending on the index. + The zero-based index of the component to access. + The value of the component at the specified index. + Thrown when the is out of the range [0, 15]. + + + + Gets or sets the component at the specified index. + + The value of the Matrix3x3 component, depending on the index. + The row of the Matrix3x3 to access. + The column of the Matrix3x3 to access. + The value of the component at the specified index. + Thrown when the or is out of the range [0, 3]. + + + + Calculates the determinant of the Matrix3x3. + + The determinant of the Matrix3x3. + + + + Inverts the Matrix3x3. + + + + + Transposes the Matrix3x3. + + + + + Orthogonalizes the specified Matrix3x3. + + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the Matrix3x3 will be orthogonal to any other given row in the + Matrix3x3. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified Matrix3x3. + + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Decomposes a Matrix3x3 into an orthonormalized Matrix3x3 Q and a right triangular Matrix3x3 R. + + When the method completes, contains the orthonormalized Matrix3x3 of the decomposition. + When the method completes, contains the right triangular Matrix3x3 of the decomposition. + + + + Decomposes a Matrix3x3 into a lower triangular Matrix3x3 L and an orthonormalized Matrix3x3 Q. + + When the method completes, contains the lower triangular Matrix3x3 of the decomposition. + When the method completes, contains the orthonormalized Matrix3x3 of the decomposition. + + + + Decomposes a Matrix3x3 into a scale, rotation, and translation. + + When the method completes, contains the scaling component of the decomposed Matrix3x3. + When the method completes, contains the rotation component of the decomposed Matrix3x3. + + This method is designed to decompose an SRT transformation Matrix3x3 only. + + + + + Decomposes a uniform scale matrix into a scale, rotation, and translation. + A uniform scale matrix has the same scale in every axis. + + When the method completes, contains the scaling component of the decomposed matrix. + When the method completes, contains the rotation component of the decomposed matrix. + + This method is designed to decompose only an SRT transformation matrix that has the same scale in every axis. + + + + + Exchanges two rows in the Matrix3x3. + + The first row to exchange. This is an index of the row starting at zero. + The second row to exchange. This is an index of the row starting at zero. + + + + Exchanges two columns in the Matrix3x3. + + The first column to exchange. This is an index of the column starting at zero. + The second column to exchange. This is an index of the column starting at zero. + + + + Creates an array containing the elements of the Matrix3x3. + + A 9-element array containing the components of the Matrix3x3. + + + + Determines the sum of two matrices. + + The first Matrix3x3 to add. + The second Matrix3x3 to add. + When the method completes, contains the sum of the two matrices. + + + + Determines the sum of two matrices. + + The first Matrix3x3 to add. + The second Matrix3x3 to add. + The sum of the two matrices. + + + + Determines the difference between two matrices. + + The first Matrix3x3 to subtract. + The second Matrix3x3 to subtract. + When the method completes, contains the difference between the two matrices. + + + + Determines the difference between two matrices. + + The first Matrix3x3 to subtract. + The second Matrix3x3 to subtract. + The difference between the two matrices. + + + + Scales a Matrix3x3 by the given value. + + The Matrix3x3 to scale. + The amount by which to scale. + When the method completes, contains the scaled Matrix3x3. + + + + Scales a Matrix3x3 by the given value. + + The Matrix3x3 to scale. + The amount by which to scale. + The scaled Matrix3x3. + + + + Determines the product of two matrices. + + The first Matrix3x3 to multiply. + The second Matrix3x3 to multiply. + The product of the two matrices. + + + + Determines the product of two matrices. + + The first Matrix3x3 to multiply. + The second Matrix3x3 to multiply. + The product of the two matrices. + + + + Scales a Matrix3x3 by the given value. + + The Matrix3x3 to scale. + The amount by which to scale. + When the method completes, contains the scaled Matrix3x3. + + + + Scales a Matrix3x3 by the given value. + + The Matrix3x3 to scale. + The amount by which to scale. + The scaled Matrix3x3. + + + + Determines the quotient of two matrices. + + The first Matrix3x3 to divide. + The second Matrix3x3 to divide. + When the method completes, contains the quotient of the two matrices. + + + + Determines the quotient of two matrices. + + The first Matrix3x3 to divide. + The second Matrix3x3 to divide. + The quotient of the two matrices. + + + + Performs the exponential operation on a Matrix3x3. + + The Matrix3x3 to perform the operation on. + The exponent to raise the Matrix3x3 to. + When the method completes, contains the exponential Matrix3x3. + Thrown when the is negative. + + + + Performs the exponential operation on a Matrix3x3. + + The Matrix3x3 to perform the operation on. + The exponent to raise the Matrix3x3 to. + The exponential Matrix3x3. + Thrown when the is negative. + + + + Negates a Matrix3x3. + + The Matrix3x3 to be negated. + When the method completes, contains the negated Matrix3x3. + + + + Negates a Matrix3x3. + + The Matrix3x3 to be negated. + The negated Matrix3x3. + + + + Performs a linear interpolation between two matrices. + + Start Matrix3x3. + End Matrix3x3. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two matrices. + + Start Matrix3x3. + End Matrix3x3. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two matrices. + + Start Matrix3x3. + End Matrix3x3. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two matrices. + + + + Performs a cubic interpolation between two matrices. + + Start Matrix3x3. + End Matrix3x3. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two matrices. + + + + Calculates the transpose of the specified Matrix3x3. + + The Matrix3x3 whose transpose is to be calculated. + When the method completes, contains the transpose of the specified Matrix3x3. + + + + Calculates the transpose of the specified Matrix3x3. + + The Matrix3x3 whose transpose is to be calculated. + When the method completes, contains the transpose of the specified Matrix3x3. + + + + Calculates the transpose of the specified Matrix3x3. + + The Matrix3x3 whose transpose is to be calculated. + The transpose of the specified Matrix3x3. + + + + Calculates the inverse of the specified Matrix3x3. + + The Matrix3x3 whose inverse is to be calculated. + When the method completes, contains the inverse of the specified Matrix3x3. + + + + Calculates the inverse of the specified Matrix3x3. + + The Matrix3x3 whose inverse is to be calculated. + The inverse of the specified Matrix3x3. + + + + Orthogonalizes the specified Matrix3x3. + + The Matrix3x3 to orthogonalize. + When the method completes, contains the orthogonalized Matrix3x3. + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the Matrix3x3 will be orthogonal to any other given row in the + Matrix3x3. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthogonalizes the specified Matrix3x3. + + The Matrix3x3 to orthogonalize. + The orthogonalized Matrix3x3. + + Orthogonalization is the process of making all rows orthogonal to each other. This + means that any given row in the Matrix3x3 will be orthogonal to any other given row in the + Matrix3x3. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified Matrix3x3. + + The Matrix3x3 to orthonormalize. + When the method completes, contains the orthonormalized Matrix3x3. + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Orthonormalizes the specified Matrix3x3. + + The Matrix3x3 to orthonormalize. + The orthonormalized Matrix3x3. + + Orthonormalization is the process of making all rows and columns orthogonal to each + other and making all rows and columns of unit length. This means that any given row will + be orthogonal to any other given row and any given column will be orthogonal to any other + given column. Any given row will not be orthogonal to any given column. Every row and every + column will be of unit length. + Because this method uses the modified Gram-Schmidt process, the resulting Matrix3x3 + tends to be numerically unstable. The numeric stability decreases according to the rows + so that the first row is the most stable and the last row is the least stable. + This operation is performed on the rows of the Matrix3x3 rather than the columns. + If you wish for this operation to be performed on the columns, first transpose the + input and than transpose the output. + + + + + Brings the Matrix3x3 into upper triangular form using elementary row operations. + + The Matrix3x3 to put into upper triangular form. + When the method completes, contains the upper triangular Matrix3x3. + + If the Matrix3x3 is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the Matrix3x3 represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the Matrix3x3 into upper triangular form using elementary row operations. + + The Matrix3x3 to put into upper triangular form. + The upper triangular Matrix3x3. + + If the Matrix3x3 is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the Matrix3x3 represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the Matrix3x3 into lower triangular form using elementary row operations. + + The Matrix3x3 to put into lower triangular form. + When the method completes, contains the lower triangular Matrix3x3. + + If the Matrix3x3 is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the Matrix3x3 represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the Matrix3x3 into lower triangular form using elementary row operations. + + The Matrix3x3 to put into lower triangular form. + The lower triangular Matrix3x3. + + If the Matrix3x3 is not invertible (i.e. its determinant is zero) than the result of this + method may produce Single.Nan and Single.Inf values. When the Matrix3x3 represents a system + of linear equations, than this often means that either no solution exists or an infinite + number of solutions exist. + + + + + Brings the Matrix3x3 into row echelon form using elementary row operations; + + The Matrix3x3 to put into row echelon form. + When the method completes, contains the row echelon form of the Matrix3x3. + + + + Brings the Matrix3x3 into row echelon form using elementary row operations; + + The Matrix3x3 to put into row echelon form. + When the method completes, contains the row echelon form of the Matrix3x3. + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard Matrix3x3. + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard Matrix3x3. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard Matrix3x3. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard Matrix3x3. + + + + Creates a left-handed, look-at Matrix3x3. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at Matrix3x3. + + + + Creates a left-handed, look-at Matrix3x3. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at Matrix3x3. + + + + Creates a right-handed, look-at Matrix3x3. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at Matrix3x3. + + + + Creates a right-handed, look-at Matrix3x3. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at Matrix3x3. + + + + Creates a Matrix3x3 that scales along the x-axis, y-axis, and y-axis. + + Scaling factor for all three axes. + When the method completes, contains the created scaling Matrix3x3. + + + + Creates a Matrix3x3 that scales along the x-axis, y-axis, and y-axis. + + Scaling factor for all three axes. + The created scaling Matrix3x3. + + + + Creates a Matrix3x3 that scales along the x-axis, y-axis, and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + When the method completes, contains the created scaling Matrix3x3. + + + + Creates a Matrix3x3 that scales along the x-axis, y-axis, and y-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + The created scaling Matrix3x3. + + + + Creates a Matrix3x3 that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + When the method completes, contains the created scaling Matrix3x3. + + + + Creates a Matrix3x3 that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + The created scaling Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the x-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the x-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the y-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the y-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the z-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around the z-axis. + + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around an arbitrary axis. + + The axis around which to rotate. This parameter is assumed to be normalized. + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + When the method completes, contains the created rotation Matrix3x3. + + + + Creates a Matrix3x3 that rotates around an arbitrary axis. + + The axis around which to rotate. This parameter is assumed to be normalized. + Angle of rotation in radians. Angles are measured clockwise when looking along the rotation axis toward the origin. + The created rotation Matrix3x3. + + + + Creates a rotation Matrix3x3 from a quaternion. + + The quaternion to use to build the Matrix3x3. + The created rotation Matrix3x3. + + + + Creates a rotation Matrix3x3 from a quaternion. + + The quaternion to use to build the Matrix3x3. + The created rotation Matrix3x3. + + + + Creates a rotation Matrix3x3 with a specified yaw, pitch, and roll. + + Yaw around the y-axis, in radians. + Pitch around the x-axis, in radians. + Roll around the z-axis, in radians. + When the method completes, contains the created rotation Matrix3x3. + + + + Creates a rotation Matrix3x3 with a specified yaw, pitch, and roll. + + Yaw around the y-axis, in radians. + Pitch around the x-axis, in radians. + Roll around the z-axis, in radians. + The created rotation Matrix3x3. + + + + Adds two matrices. + + The first Matrix3x3 to add. + The second Matrix3x3 to add. + The sum of the two matrices. + + + + Assert a Matrix3x3 (return it unchanged). + + The Matrix3x3 to assert (unchanged). + The asserted (unchanged) Matrix3x3. + + + + Subtracts two matrices. + + The first Matrix3x3 to subtract. + The second Matrix3x3 to subtract. + The difference between the two matrices. + + + + Negates a Matrix3x3. + + The Matrix3x3 to negate. + The negated Matrix3x3. + + + + Scales a Matrix3x3 by a given value. + + The Matrix3x3 to scale. + The amount by which to scale. + The scaled Matrix3x3. + + + + Scales a Matrix3x3 by a given value. + + The Matrix3x3 to scale. + The amount by which to scale. + The scaled Matrix3x3. + + + + Multiplies two matrices. + + The first Matrix3x3 to multiply. + The second Matrix3x3 to multiply. + The product of the two matrices. + + + + Scales a Matrix3x3 by a given value. + + The Matrix3x3 to scale. + The amount by which to scale. + The scaled Matrix3x3. + + + + Divides two matrices. + + The first Matrix3x3 to divide. + The second Matrix3x3 to divide. + The quotient of the two matrices. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Convert the 3x3 Matrix to a 4x4 Matrix. + + A 4x4 Matrix with zero translation and M44=1 + + + + Convert the 4x4 Matrix to a 3x3 Matrix. + + A 3x3 Matrix + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified are equal. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Represents a 4x4 mathematical Matrix5x4. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The identity . + + + + + Value at row 1 column 1 of the Matrix5x4. + + + + + Value at row 1 column 2 of the Matrix5x4. + + + + + Value at row 1 column 3 of the Matrix5x4. + + + + + Value at row 1 column 4 of the Matrix5x4. + + + + + Value at row 2 column 1 of the Matrix5x4. + + + + + Value at row 2 column 2 of the Matrix5x4. + + + + + Value at row 2 column 3 of the Matrix5x4. + + + + + Value at row 2 column 4 of the Matrix5x4. + + + + + Value at row 3 column 1 of the Matrix5x4. + + + + + Value at row 3 column 2 of the Matrix5x4. + + + + + Value at row 3 column 3 of the Matrix5x4. + + + + + Value at row 3 column 4 of the Matrix5x4. + + + + + Value at row 4 column 1 of the Matrix5x4. + + + + + Value at row 4 column 2 of the Matrix5x4. + + + + + Value at row 4 column 3 of the Matrix5x4. + + + + + Value at row 4 column 4 of the Matrix5x4. + + + + + Value at row 5 column 1 of the Matrix5x4. + + + + + Value at row 5 column 2 of the Matrix5x4. + + + + + Value at row 5 column 3 of the Matrix5x4. + + + + + Value at row 5 column 4 of the Matrix5x4. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The value to assign at row 1 column 1 of the Matrix5x4. + The value to assign at row 1 column 2 of the Matrix5x4. + The value to assign at row 1 column 3 of the Matrix5x4. + The value to assign at row 1 column 4 of the Matrix5x4. + The value to assign at row 2 column 1 of the Matrix5x4. + The value to assign at row 2 column 2 of the Matrix5x4. + The value to assign at row 2 column 3 of the Matrix5x4. + The value to assign at row 2 column 4 of the Matrix5x4. + The value to assign at row 3 column 1 of the Matrix5x4. + The value to assign at row 3 column 2 of the Matrix5x4. + The value to assign at row 3 column 3 of the Matrix5x4. + The value to assign at row 3 column 4 of the Matrix5x4. + The value to assign at row 4 column 1 of the Matrix5x4. + The value to assign at row 4 column 2 of the Matrix5x4. + The value to assign at row 4 column 3 of the Matrix5x4. + The value to assign at row 4 column 4 of the Matrix5x4. + The value to assign at row 5 column 1 of the Matrix5x4. + The value to assign at row 5 column 2 of the Matrix5x4. + The value to assign at row 5 column 3 of the Matrix5x4. + The value to assign at row 5 column 4 of the Matrix5x4. + + + + Initializes a new instance of the struct. + + The values to assign to the components of the Matrix5x4. This must be an array with sixteen elements. + Thrown when is null. + Thrown when contains more or less than sixteen elements. + + + + Gets or sets the first row in the Matrix5x4; that is M11, M12, M13, and M14. + + + + + Gets or sets the second row in the Matrix5x4; that is M21, M22, M23, and M24. + + + + + Gets or sets the third row in the Matrix5x4; that is M31, M32, M33, and M34. + + + + + Gets or sets the fourth row in the Matrix5x4; that is M41, M42, M43, and M44. + + + + + Gets or sets the fifth row in the Matrix5x4; that is M51, M52, M53, and M54. + + + + + Gets or sets the translation of the Matrix5x4; that is M41, M42, and M43. + + + + + Gets or sets the scale of the Matrix5x4; that is M11, M22, and M33. + + + + + Gets a value indicating whether this instance is an identity Matrix5x4. + + + true if this instance is an identity Matrix5x4; otherwise, false. + + + + + Gets or sets the component at the specified index. + + The value of the Matrix5x4 component, depending on the index. + The zero-based index of the component to access. + The value of the component at the specified index. + Thrown when the is out of the range [0, 15]. + + + + Gets or sets the component at the specified index. + + The value of the Matrix5x4 component, depending on the index. + The row of the Matrix5x4 to access. + The column of the Matrix5x4 to access. + The value of the component at the specified index. + Thrown when the or is out of the range [0, 3]. + + + + Determines the sum of two matrices. + + The first Matrix5x4 to add. + The second Matrix5x4 to add. + When the method completes, contains the sum of the two matrices. + + + + Determines the sum of two matrices. + + The first Matrix5x4 to add. + The second Matrix5x4 to add. + The sum of the two matrices. + + + + Determines the difference between two matrices. + + The first Matrix5x4 to subtract. + The second Matrix5x4 to subtract. + When the method completes, contains the difference between the two matrices. + + + + Determines the difference between two matrices. + + The first Matrix5x4 to subtract. + The second Matrix5x4 to subtract. + The difference between the two matrices. + + + + Scales a Matrix5x4 by the given value. + + The Matrix5x4 to scale. + The amount by which to scale. + When the method completes, contains the scaled Matrix5x4. + + + + Scales a Matrix5x4 by the given value. + + The Matrix5x4 to scale. + The amount by which to scale. + When the method completes, contains the scaled Matrix5x4. + + + + Negates a Matrix5x4. + + The Matrix5x4 to be negated. + When the method completes, contains the negated Matrix5x4. + + + + Negates a Matrix5x4. + + The Matrix5x4 to be negated. + The negated Matrix5x4. + + + + Performs a linear interpolation between two matrices. + + Start Matrix5x4. + End Matrix5x4. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two matrices. + + Start Matrix5x4. + End Matrix5x4. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two matrices. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two matrices. + + Start Matrix5x4. + End Matrix5x4. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two matrices. + + + + Performs a cubic interpolation between two matrices. + + Start Matrix5x4. + End Matrix5x4. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two matrices. + + + + Creates a Matrix5x4 that scales along the x-axis, y-axis, y-axis and w-axis + + Scaling factor for all three axes. + When the method completes, contains the created scaling Matrix5x4. + + + + Creates a Matrix5x4 that scales along the x-axis, y-axis, and y-axis. + + Scaling factor for all three axes. + The created scaling Matrix5x4. + + + + Creates a Matrix5x4 that scales along the x-axis, y-axis, z-axis and w-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + Scaling factor that is applied along the w-axis. + When the method completes, contains the created scaling Matrix5x4. + + + + Creates a Matrix5x4 that scales along the x-axis, y-axis, z-axis and w-axis. + + Scaling factor that is applied along the x-axis. + Scaling factor that is applied along the y-axis. + Scaling factor that is applied along the z-axis. + Scaling factor that is applied along the w-axis. + The created scaling Matrix5x4. + + + + Creates a Matrix5x4 that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + When the method completes, contains the created scaling Matrix5x4. + + + + Creates a Matrix5x4 that uniformly scales along all three axis. + + The uniform scale that is applied along all axis. + The created scaling Matrix5x4. + + + + Creates a translation Matrix5x4 using the specified offsets. + + The offset for all three coordinate planes. + When the method completes, contains the created translation Matrix5x4. + + + + Creates a translation Matrix5x4 using the specified offsets. + + The offset for all three coordinate planes. + The created translation Matrix5x4. + + + + Creates a translation Matrix5x4 using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + Z-coordinate offset. + W-coordinate offset. + When the method completes, contains the created translation Matrix5x4. + + + + Creates a translation Matrix5x4 using the specified offsets. + + X-coordinate offset. + Y-coordinate offset. + Z-coordinate offset. + W-coordinate offset. + The created translation Matrix5x4. + + + + Adds two matrices. + + The first Matrix5x4 to add. + The second Matrix5x4 to add. + The sum of the two matrices. + + + + Assert a Matrix5x4 (return it unchanged). + + The Matrix5x4 to assert (unchanged). + The asserted (unchanged) Matrix5x4. + + + + Subtracts two matrices. + + The first Matrix5x4 to subtract. + The second Matrix5x4 to subtract. + The difference between the two matrices. + + + + Negates a Matrix5x4. + + The Matrix5x4 to negate. + The negated Matrix5x4. + + + + Scales a Matrix5x4 by a given value. + + The Matrix5x4 to scale. + The amount by which to scale. + The scaled Matrix5x4. + + + + Scales a Matrix5x4 by a given value. + + The Matrix5x4 to scale. + The amount by which to scale. + The scaled Matrix5x4. + + + + Scales a Matrix5x4 by a given value. + + The Matrix5x4 to scale. + The amount by which to scale. + The scaled Matrix5x4. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + OrientedBoundingBox (OBB) is a rectangular block, much like an AABB (BoundingBox) but with an arbitrary orientation. + + + + + Half lengths of the box along each axis. + + + + + The matrix which aligns and scales the box, and its translation vector represents the center of the box. + + + + + Creates an from a BoundingBox. + + The BoundingBox to create from. + + Initially, the OBB is axis-aligned box, but it can be rotated and transformed later. + + + + + Creates an which contained between two minimum and maximum points. + + The minimum vertex of the bounding box. + The maximum vertex of the bounding box. + + Initially, the OrientedBoundingBox is axis-aligned box, but it can be rotated and transformed later. + + + + + Creates an that fully contains the given points. + + The points that will be contained by the box. + + This method is not for computing the best tight-fitting OrientedBoundingBox. + And initially, the OrientedBoundingBox is axis-aligned box, but it can be rotated and transformed later. + + + + + Retrieves the eight corners of the bounding box. + + An array of points representing the eight corners of the bounding box. + + + + Transforms this box using a transformation matrix. + + The transformation matrix. + + While any kind of transformation can be applied, it is recommended to apply scaling using scale method instead, which + scales the Extents and keeps the Transformation matrix for rotation only, and that preserves collision detection accuracy. + + + + + Transforms this box using a transformation matrix. + + The transformation matrix. + + While any kind of transformation can be applied, it is recommended to apply scaling using scale method instead, which + scales the Extents and keeps the Transformation matrix for rotation only, and that preserves collision detection accuracy. + + + + + Scales the by scaling its Extents without affecting the Transformation matrix, + By keeping Transformation matrix scaling-free, the collision detection methods will be more accurate. + + + + + + Scales the by scaling its Extents without affecting the Transformation matrix, + By keeping Transformation matrix scaling-free, the collision detection methods will be more accurate. + + + + + + Scales the by scaling its Extents without affecting the Transformation matrix, + By keeping Transformation matrix scaling-free, the collision detection methods will be more accurate. + + + + + + Translates the to a new position using a translation vector; + + the translation vector. + + + + Translates the to a new position using a translation vector; + + the translation vector. + + + + The size of the if no scaling is applied to the transformation matrix. + + + The property will return the actual size even if the scaling is applied using Scale method, + but if the scaling is applied to transformation matrix, use GetSize Function instead. + + + + + Returns the size of the taking into consideration the scaling applied to the transformation matrix. + + The size of the consideration + + This method is computationally expensive, so if no scale is applied to the transformation matrix + use property instead. + + + + + Returns the square size of the taking into consideration the scaling applied to the transformation matrix. + + The size of the consideration + + + + Returns the center of the . + + + + + Determines whether a contains a point. + + The point to test. + The type of containment the two objects have. + + + + Determines whether a contains a point. + + The point to test. + The type of containment the two objects have. + + + + Determines whether a contains an array of points>. + + The points array to test. + The type of containment. + + + + Determines whether a contains a . + + The sphere to test. + Optimize the check operation by assuming that has no scaling applied + The type of containment the two objects have. + + This method is not designed for which has a non-uniform scaling applied to its transformation matrix. + But any type of scaling applied using Scale method will keep this method accurate. + + + + + Check the intersection between two + + The OrientedBoundingBoxs to test. + The type of containment the two objects have. + + For accuracy, The transformation matrix for both must not have any scaling applied to it. + Anyway, scaling using Scale method will keep this method accurate. + + + + + Check the intersection between an and a line defined by two points + + The first point in the line. + The second point in the line. + The type of containment the two objects have. + + For accuracy, The transformation matrix for the must not have any scaling applied to it. + Anyway, scaling using Scale method will keep this method accurate. + + + + + Check the intersection between an and + + The BoundingBox to test. + The type of containment the two objects have. + + For accuracy, The transformation matrix for the must not have any scaling applied to it. + Anyway, scaling using Scale method will keep this method accurate. + + + + + Determines whether there is an intersection between a and a . + + The ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines whether there is an intersection between a and a . + + The ray to test. + Whether the two objects intersected. + + + + Get the axis-aligned which contains all corners. + + The axis-aligned BoundingBox of this OrientedBoundingBox. + + + + Calculates the matrix required to transfer any point from one local coordinates to another. + + The source OrientedBoundingBox. + The target OrientedBoundingBox. + + If true, the method will use a fast algorithm which is inapplicable if a scale is applied to the transformation matrix of the OrientedBoundingBox. + + + + + + Merge an OrientedBoundingBox B into another OrientedBoundingBox A, by expanding A to contain B and keeping A orientation. + + The to merge into it. + The to be merged + + If true, the method will use a fast algorithm which is inapplicable if a scale is applied to the transformation matrix of the OrientedBoundingBox. + + + Unlike merging axis aligned boxes, The operation is not interchangeable, because it keeps A orientation and merge B into it. + + + + + Merge this OrientedBoundingBox into another OrientedBoundingBox, keeping the other OrientedBoundingBox orientation. + + The other to merge into. + + If true, the method will use a fast algorithm which is inapplicable if a scale is applied to the transformation matrix of the OrientedBoundingBox. + + + + + Merge another OrientedBoundingBox into this OrientedBoundingBox. + + The other to merge into this OrientedBoundingBox. + + If true, the method will use a fast algorithm which is inapplicable if a scale is applied to the transformation matrix of the OrientedBoundingBox. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Represents a plane in three dimensional space. + + + + + The normal vector of the plane. + + + + + The distance of the plane along its normal from the origin. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + + Initializes a new instance of the class. + + Any point that lies along the plane. + The normal vector to the plane. + + + + Initializes a new instance of the struct. + + The normal of the plane. + The distance of the plane along its normal from the origin + + + + Initializes a new instance of the struct. + + First point of a triangle defining the plane. + Second point of a triangle defining the plane. + Third point of a triangle defining the plane. + + + + Initializes a new instance of the struct. + + The values to assign to the A, B, C, and D components of the plane. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets or sets the component at the specified index. + + The value of the A, B, C, or D component, depending on the index. + The index of the component to access. Use 0 for the A component, 1 for the B component, 2 for the C component, and 3 for the D component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Changes the coefficients of the normal vector of the plane to make it of unit length. + + + + + Creates an array containing the elements of the plane. + + A four-element array containing the components of the plane. + + + + Determines if there is an intersection between the current object and a point. + + The point to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + When the method completes, contains the line of intersection + as a , or a zero ray if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Builds a matrix that can be used to reflect vectors about a plane. + + The plane for which the reflection occurs. This parameter is assumed to be normalized. + When the method completes, contains the reflection matrix. + + + + Builds a matrix that can be used to reflect vectors about a plane. + + The reflection matrix. + + + + Creates a matrix that flattens geometry into a shadow from this the plane onto which to project the geometry as a shadow. + This plane is assumed to be normalized + + The light direction. If the W component is 0, the light is directional light; if the + W component is 1, the light is a point light. + When the method completes, contains the shadow matrix. + + + + Creates a matrix that flattens geometry into a shadow from this the plane onto which to project the geometry as a shadow. + This plane is assumed to be normalized + + The light direction. If the W component is 0, the light is directional light; if the + W component is 1, the light is a point light. + The shadow matrix. + + + + Builds a Matrix3x3 that can be used to reflect vectors about a plane for which the reflection occurs. + This plane is assumed to be normalized + + When the method completes, contains the reflection Matrix3x3. + + + + Builds a Matrix3x3 that can be used to reflect vectors about a plane for which the reflection occurs. + This plane is assumed to be normalized + + The reflection Matrix3x3. + + + + Creates a Matrix3x3 that flattens geometry into a shadow. + + The light direction. If the W component is 0, the light is directional light; if the + W component is 1, the light is a point light. + The plane onto which to project the geometry as a shadow. This parameter is assumed to be normalized. + When the method completes, contains the shadow Matrix3x3. + + + + Creates a Matrix3x3 that flattens geometry into a shadow. + + The light direction. If the W component is 0, the light is directional light; if the + W component is 1, the light is a point light. + The plane onto which to project the geometry as a shadow. This parameter is assumed to be normalized. + The shadow Matrix3x3. + + + + Scales the plane by the given scaling factor. + + The plane to scale. + The amount by which to scale the plane. + When the method completes, contains the scaled plane. + + + + Scales the plane by the given scaling factor. + + The plane to scale. + The amount by which to scale the plane. + The scaled plane. + + + + Calculates the dot product of the specified vector and plane. + + The source plane. + The source vector. + When the method completes, contains the dot product of the specified plane and vector. + + + + Calculates the dot product of the specified vector and plane. + + The source plane. + The source vector. + The dot product of the specified plane and vector. + + + + Calculates the dot product of a specified vector and the normal of the plane plus the distance value of the plane. + + The source plane. + The source vector. + When the method completes, contains the dot product of a specified vector and the normal of the Plane plus the distance value of the plane. + + + + Calculates the dot product of a specified vector and the normal of the plane plus the distance value of the plane. + + The source plane. + The source vector. + The dot product of a specified vector and the normal of the Plane plus the distance value of the plane. + + + + Calculates the dot product of the specified vector and the normal of the plane. + + The source plane. + The source vector. + When the method completes, contains the dot product of the specified vector and the normal of the plane. + + + + Calculates the dot product of the specified vector and the normal of the plane. + + The source plane. + The source vector. + The dot product of the specified vector and the normal of the plane. + + + + Changes the coefficients of the normal vector of the plane to make it of unit length. + + The source plane. + When the method completes, contains the normalized plane. + + + + Changes the coefficients of the normal vector of the plane to make it of unit length. + + The source plane. + The normalized plane. + + + + Transforms a normalized plane by a quaternion rotation. + + The normalized source plane. + The quaternion rotation. + When the method completes, contains the transformed plane. + + + + Transforms a normalized plane by a quaternion rotation. + + The normalized source plane. + The quaternion rotation. + The transformed plane. + + + + Transforms an array of normalized planes by a quaternion rotation. + + The array of normalized planes to transform. + The quaternion rotation. + Thrown when is null. + + + + Transforms a normalized plane by a matrix. + + The normalized source plane. + The transformation matrix. + When the method completes, contains the transformed plane. + + + + Transforms a normalized plane by a matrix. + + The normalized source plane. + The transformation matrix. + When the method completes, contains the transformed plane. + + + + Transforms an array of normalized planes by a matrix. + + The array of normalized planes to transform. + The transformation matrix. + Thrown when is null. + + + + Scales a plane by the given value. + + The amount by which to scale the plane. + The plane to scale. + The scaled plane. + + + + Scales a plane by the given value. + + The plane to scale. + The amount by which to scale the plane. + The scaled plane. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Structure using the same layout than . + + + + + A point with (0,0) coordinates. + + + + + Initializes a new instance of the struct. + + The x. + The y. + + + + Left coordinate. + + + + + Top coordinate. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + + + + + + + Implements the operator ==. + + The left. + The right. + + The result of the operator. + + + + + Implements the operator !=. + + The left. + The right. + + The result of the operator. + + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a four dimensional mathematical quaternion. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + A with all of its components set to one. + + + + + The identity (0, 0, 0, 1). + + + + + The X component of the quaternion. + + + + + The Y component of the quaternion. + + + + + The Z component of the quaternion. + + + + + The W component of the quaternion. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the components. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the X, Y, and Z components. + Initial value for the W component of the quaternion. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the X and Y components. + Initial value for the Z component of the quaternion. + Initial value for the W component of the quaternion. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the quaternion. + Initial value for the Y component of the quaternion. + Initial value for the Z component of the quaternion. + Initial value for the W component of the quaternion. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, Z, and W components of the quaternion. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets a value indicating whether this instance is equivalent to the identity quaternion. + + + true if this instance is an identity quaternion; otherwise, false. + + + + + Gets a value indicting whether this instance is normalized. + + + + + Gets the angle of the quaternion. + + The quaternion's angle. + + + + Gets the axis components of the quaternion. + + The axis components of the quaternion. + + + + Gets or sets the component at the specified index. + + The value of the X, Y, Z, or W component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, 2 for the Z component, and 3 for the W component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Conjugates the quaternion. + + + + + Conjugates and renormalizes the quaternion. + + + + + Calculates the length of the quaternion. + + The length of the quaternion. + + may be preferred when only the relative length is needed + and speed is of the essence. + + + + + Calculates the squared length of the quaternion. + + The squared length of the quaternion. + + This method may be preferred to when only a relative length is needed + and speed is of the essence. + + + + + Converts the quaternion into a unit quaternion. + + + + + Creates an array containing the elements of the quaternion. + + A four-element array containing the components of the quaternion. + + + + Adds two quaternions. + + The first quaternion to add. + The second quaternion to add. + When the method completes, contains the sum of the two quaternions. + + + + Adds two quaternions. + + The first quaternion to add. + The second quaternion to add. + The sum of the two quaternions. + + + + Subtracts two quaternions. + + The first quaternion to subtract. + The second quaternion to subtract. + When the method completes, contains the difference of the two quaternions. + + + + Subtracts two quaternions. + + The first quaternion to subtract. + The second quaternion to subtract. + The difference of the two quaternions. + + + + Scales a quaternion by the given value. + + The quaternion to scale. + The amount by which to scale the quaternion. + When the method completes, contains the scaled quaternion. + + + + Scales a quaternion by the given value. + + The quaternion to scale. + The amount by which to scale the quaternion. + The scaled quaternion. + + + + Multiplies a quaternion by another. + + The first quaternion to multiply. + The second quaternion to multiply. + When the method completes, contains the multiplied quaternion. + + + + Multiplies a quaternion by another. + + The first quaternion to multiply. + The second quaternion to multiply. + The multiplied quaternion. + + + + Reverses the direction of a given quaternion. + + The quaternion to negate. + When the method completes, contains a quaternion facing in the opposite direction. + + + + Reverses the direction of a given quaternion. + + The quaternion to negate. + A quaternion facing in the opposite direction. + + + + Returns a containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle. + + A containing the 4D Cartesian coordinates of vertex 1 of the triangle. + A containing the 4D Cartesian coordinates of vertex 2 of the triangle. + A containing the 4D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + When the method completes, contains a new containing the 4D Cartesian coordinates of the specified point. + + + + Returns a containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle. + + A containing the 4D Cartesian coordinates of vertex 1 of the triangle. + A containing the 4D Cartesian coordinates of vertex 2 of the triangle. + A containing the 4D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + A new containing the 4D Cartesian coordinates of the specified point. + + + + Conjugates a quaternion. + + The quaternion to conjugate. + When the method completes, contains the conjugated quaternion. + + + + Conjugates a quaternion. + + The quaternion to conjugate. + The conjugated quaternion. + + + + Calculates the dot product of two quaternions. + + First source quaternion. + Second source quaternion. + When the method completes, contains the dot product of the two quaternions. + + + + Calculates the dot product of two quaternions. + + First source quaternion. + Second source quaternion. + The dot product of the two quaternions. + + + + Exponentiates a quaternion. + + The quaternion to exponentiate. + When the method completes, contains the exponentiated quaternion. + + + + Exponentiates a quaternion. + + The quaternion to exponentiate. + The exponentiated quaternion. + + + + Conjugates and renormalizes the quaternion. + + The quaternion to conjugate and renormalize. + When the method completes, contains the conjugated and renormalized quaternion. + + + + Conjugates and renormalizes the quaternion. + + The quaternion to conjugate and renormalize. + The conjugated and renormalized quaternion. + + + + Performs a linear interpolation between two quaternions. + + Start quaternion. + End quaternion. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two quaternions. + + This method performs the linear interpolation based on the following formula. + start + (end - start) * amount + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two quaternion. + + Start quaternion. + End quaternion. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two quaternions. + + This method performs the linear interpolation based on the following formula. + start + (end - start) * amount + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Calculates the natural logarithm of the specified quaternion. + + The quaternion whose logarithm will be calculated. + When the method completes, contains the natural logarithm of the quaternion. + + + + Calculates the natural logarithm of the specified quaternion. + + The quaternion whose logarithm will be calculated. + The natural logarithm of the quaternion. + + + + Converts the quaternion into a unit quaternion. + + The quaternion to normalize. + When the method completes, contains the normalized quaternion. + + + + Converts the quaternion into a unit quaternion. + + The quaternion to normalize. + The normalized quaternion. + + + + Creates a quaternion given a rotation and an axis. + + The axis of rotation. + The angle of rotation. + When the method completes, contains the newly created quaternion. + + + + Creates a quaternion given a rotation and an axis. + + The axis of rotation. + The angle of rotation. + The newly created quaternion. + + + + Creates a quaternion given a rotation matrix. + + The rotation matrix. + When the method completes, contains the newly created quaternion. + + + + Creates a quaternion given a rotation matrix. + + The rotation matrix. + When the method completes, contains the newly created quaternion. + + + + Creates a left-handed, look-at quaternion. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at quaternion. + + + + Creates a left-handed, look-at quaternion. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at quaternion. + + + + Creates a left-handed, look-at quaternion. + + The camera's forward direction. + The camera's up vector. + When the method completes, contains the created look-at quaternion. + + + + Creates a left-handed, look-at quaternion. + + The camera's forward direction. + The camera's up vector. + The created look-at quaternion. + + + + Creates a right-handed, look-at quaternion. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + When the method completes, contains the created look-at quaternion. + + + + Creates a right-handed, look-at quaternion. + + The position of the viewer's eye. + The camera look-at target. + The camera's up vector. + The created look-at quaternion. + + + + Creates a right-handed, look-at quaternion. + + The camera's forward direction. + The camera's up vector. + When the method completes, contains the created look-at quaternion. + + + + Creates a right-handed, look-at quaternion. + + The camera's forward direction. + The camera's up vector. + The created look-at quaternion. + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard quaternion. + + + + Creates a left-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard quaternion. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + When the method completes, contains the created billboard quaternion. + + + + Creates a right-handed spherical billboard that rotates around a specified object position. + + The position of the object around which the billboard will rotate. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard quaternion. + + + + Creates a quaternion given a rotation matrix. + + The rotation matrix. + The newly created quaternion. + + + + Creates a quaternion given a yaw, pitch, and roll value. + + The yaw of rotation. + The pitch of rotation. + The roll of rotation. + When the method completes, contains the newly created quaternion. + + + + Creates a quaternion given a yaw, pitch, and roll value. + + The yaw of rotation. + The pitch of rotation. + The roll of rotation. + The newly created quaternion. + + + + Interpolates between two quaternions, using spherical linear interpolation. + + Start quaternion. + End quaternion. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the spherical linear interpolation of the two quaternions. + + + + Interpolates between two quaternions, using spherical linear interpolation. + + Start quaternion. + End quaternion. + Value between 0 and 1 indicating the weight of . + The spherical linear interpolation of the two quaternions. + + + + Interpolates between quaternions, using spherical quadrangle interpolation. + + First source quaternion. + Second source quaternion. + Third source quaternion. + Fourth source quaternion. + Value between 0 and 1 indicating the weight of interpolation. + When the method completes, contains the spherical quadrangle interpolation of the quaternions. + + + + Interpolates between quaternions, using spherical quadrangle interpolation. + + First source quaternion. + Second source quaternion. + Third source quaternion. + Fourth source quaternion. + Value between 0 and 1 indicating the weight of interpolation. + The spherical quadrangle interpolation of the quaternions. + + + + Sets up control points for spherical quadrangle interpolation. + + First source quaternion. + Second source quaternion. + Third source quaternion. + Fourth source quaternion. + An array of three quaternions that represent control points for spherical quadrangle interpolation. + + + + Adds two quaternions. + + The first quaternion to add. + The second quaternion to add. + The sum of the two quaternions. + + + + Subtracts two quaternions. + + The first quaternion to subtract. + The second quaternion to subtract. + The difference of the two quaternions. + + + + Reverses the direction of a given quaternion. + + The quaternion to negate. + A quaternion facing in the opposite direction. + + + + Scales a quaternion by the given value. + + The quaternion to scale. + The amount by which to scale the quaternion. + The scaled quaternion. + + + + Scales a quaternion by the given value. + + The quaternion to scale. + The amount by which to scale the quaternion. + The scaled quaternion. + + + + Multiplies a quaternion by another. + + The first quaternion to multiply. + The second quaternion to multiply. + The multiplied quaternion. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Random functions on commun types. + + + + + Gets random float number within range. + + Current . + Minimum. + Maximum. + Random float number. + + + + Gets random double number within range. + + Current . + Minimum. + Maximum. + Random double number. + + + + Gets random long number. + + Current . + Random long number. + + + + Gets random long number within range. + + Current . + Minimum. + Maximum. + Random long number. + + + + Gets random within range. + + Current . + Minimum. + Maximum. + Random . + + + + Gets random within range. + + Current . + Minimum. + Maximum. + Random . + + + + Gets random within range. + + Current . + Minimum. + Maximum. + Random . + + + + Gets random opaque . + + Current . + Random . + + + + Gets random opaque . + + Current . + Minimum brightness. + Maximum brightness + Random . + + + + Gets random . + + Current . + Minimum brightness. + Maximum brightness + Alpha value. + Random . + + + + Gets random . + + Current . + Minimum brightness. + Maximum brightness + Minimum alpha. + Maximum alpha. + Random . + + + + Gets random . + + Current . + Minimum. + Maximum. + Random . + + + + Gets random . + + Current . + Minimum. + Maximum. + Random . + + + + Represents a three dimensional line based on a point in space and a direction. + + + + + The position in three dimensional space where the ray starts. + + + + + The normalized direction in which the ray points. + + + + + Initializes a new instance of the struct. + + The position in three dimensional space of the origin of the ray. + The normalized direction of the ray. + + + + Determines if there is an intersection between the current object and a point. + + The point to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The ray to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The plane to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a triangle. + + The first vertex of the triangle to test. + The second vertex of the triangle to test. + The third vertex of the triangle to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The box to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + When the method completes, contains the distance of the intersection, + or 0 if there was no intersection. + Whether the two objects intersected. + + + + Determines if there is an intersection between the current object and a . + + The sphere to test. + When the method completes, contains the point of intersection, + or if there was no intersection. + Whether the two objects intersected. + + + + Calculates a world space from 2d screen coordinates. + + X coordinate on 2d screen. + Y coordinate on 2d screen. + . + Transformation . + Resulting . + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Define a Rectangle. This structure is slightly different from System.Drawing.Rectangle as it is + internally storing Left,Top,Right,Bottom instead of Left,Top,Width,Height. + + + + + The left. + + + + + The top. + + + + + The right. + + + + + The bottom. + + + + + An empty rectangle. + + + + + Initializes a new instance of the struct. + + The left. + The top. + The width. + The height. + + + + Gets or sets the X position. + + The X position. + + + + Gets or sets the Y position. + + The Y position. + + + + Gets or sets the width. + + The width. + + + + Gets or sets the height. + + The height. + + + + Gets a value that indicates whether the rectangle is empty. + + + true if [is empty]; otherwise, false. + + + + Changes the position of the rectangle. + Change in the x-position. + Change in the y-position. + + + Pushes the edges of the rectangle out by the horizontal and vertical values specified. + Value to push the sides out by. + Value to push the top and bottom out by. + + + Determines whether this rectangle contains a specified point represented by its x- and y-coordinates. + The x-coordinate of the specified point. + The y-coordinate of the specified point. + + + Determines whether this rectangle entirely contains a specified rectangle. + The rectangle to evaluate. + + + Determines whether this rectangle entirely contains a specified rectangle. + The rectangle to evaluate. + [OutAttribute] On exit, is true if this rectangle entirely contains the specified rectangle, or false if not. + + + + Checks, if specified point is inside . + + X point coordinate. + Y point coordinate. + true if point is inside , otherwise false. + + + Determines whether a specified rectangle intersects with this rectangle. + The rectangle to evaluate. + + + + Determines whether a specified rectangle intersects with this rectangle. + + The rectangle to evaluate + [OutAttribute] true if the specified rectangle intersects with this one; false otherwise. + + + + Creates a rectangle defining the area where one rectangle overlaps with another rectangle. + + The first rectangle to compare. + The second rectangle to compare. + The intersection rectangle. + + + Creates a rectangle defining the area where one rectangle overlaps with another rectangle. + The first rectangle to compare. + The second rectangle to compare. + [OutAttribute] The area where the two first parameters overlap. + + + + Creates a new rectangle that exactly contains two other rectangles. + + The first rectangle to contain. + The second rectangle to contain. + The union rectangle. + + + + Creates a new rectangle that exactly contains two other rectangles. + + The first rectangle to contain. + The second rectangle to contain. + [OutAttribute] The rectangle that must be the union of the first two rectangles. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Define a RectangleF. This structure is slightly different from System.Drawing.RectangleF as it is + internally storing Left,Top,Right,Bottom instead of Left,Top,Width,Height. + + + + + The left. + + + + + The top. + + + + + The right. + + + + + The bottom. + + + + + An empty rectangle. + + + + + An infinite rectangle. See remarks. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/dd372261%28v=vs.85%29.aspx + Any properties that involve computations, like , or + may return incorrect results - . + + + + + Initializes a new instance of the struct. + + The left. + The top. + The width. + The height. + + + + Gets or sets the X position. + + The X position. + + + + Gets or sets the Y position. + + The Y position. + + + + Gets or sets the width. + + The width. + + + + Gets or sets the height. + + The height. + + + + Gets or sets the location. + + + The location. + + + + + Gets the Point that specifies the center of the rectangle. + + + The center. + + + + + Gets a value that indicates whether the rectangle is empty. + + + true if [is empty]; otherwise, false. + + + + + Gets or sets the size of the rectangle. + + The size of the rectangle. + + + + Gets the position of the top-left corner of the rectangle. + + The top-left corner of the rectangle. + + + + Gets the position of the top-right corner of the rectangle. + + The top-right corner of the rectangle. + + + + Gets the position of the bottom-left corner of the rectangle. + + The bottom-left corner of the rectangle. + + + + Gets the position of the bottom-right corner of the rectangle. + + The bottom-right corner of the rectangle. + + + Changes the position of the rectangle. + The values to adjust the position of the rectangle by. + + + Changes the position of the rectangle. + The values to adjust the position of the rectangle by. + + + Changes the position of the rectangle. + Change in the x-position. + Change in the y-position. + + + Pushes the edges of the rectangle out by the horizontal and vertical values specified. + Value to push the sides out by. + Value to push the top and bottom out by. + + + Determines whether this rectangle contains a specified Point. + The Point to evaluate. + [OutAttribute] true if the specified Point is contained within this rectangle; false otherwise. + + + Determines whether this rectangle entirely contains a specified rectangle. + The rectangle to evaluate. + + + Determines whether this rectangle entirely contains a specified rectangle. + The rectangle to evaluate. + [OutAttribute] On exit, is true if this rectangle entirely contains the specified rectangle, or false if not. + + + + Checks, if specified point is inside . + + X point coordinate. + Y point coordinate. + true if point is inside , otherwise false. + + + + Checks, if specified is inside . + + Coordinate . + true if is inside , otherwise false. + + + + Checks, if specified is inside . + + Coordinate . + true if is inside , otherwise false. + + + Determines whether a specified rectangle intersects with this rectangle. + The rectangle to evaluate. + + + + Determines whether a specified rectangle intersects with this rectangle. + + The rectangle to evaluate + [OutAttribute] true if the specified rectangle intersects with this one; false otherwise. + + + + Creates a rectangle defining the area where one rectangle overlaps with another rectangle. + + The first Rectangle to compare. + The second Rectangle to compare. + The intersection rectangle. + + + Creates a rectangle defining the area where one rectangle overlaps with another rectangle. + The first rectangle to compare. + The second rectangle to compare. + [OutAttribute] The area where the two first parameters overlap. + + + + Creates a new rectangle that exactly contains two other rectangles. + + The first rectangle to contain. + The second rectangle to contain. + The union rectangle. + + + + Creates a new rectangle that exactly contains two other rectangles. + + The first rectangle to contain. + The second rectangle to contain. + [OutAttribute] The rectangle that must be the union of the first two rectangles. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Performs an explicit conversion to structure. + + Performs direct float to int conversion, any fractional data is truncated. + The source value. + A converted structure. + + + + Performs an explicit conversion to structure. + + Performs direct float to int conversion, any fractional data is truncated. + The source value. + A converted structure. + + + + Performs an explicit conversion to structure. + + Performs direct float to int conversion, any fractional data is truncated. + The source value. + A converted structure. + + + + Represents a two dimensional mathematical vector. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The X unit (1, 0). + + + + + The Y unit (0, 1). + + + + + A with all of its components set to one. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X and Y components of the vector. This must be an array with two elements. + Thrown when is null. + Thrown when contains more or less than two elements. + + + + Gets a value indicting whether this instance is normalized. + + + + + Gets a value indicting whether this vector is zero + + + + + Gets or sets the component at the specified index. + + The value of the X or Y component, depending on the index. + The index of the component to access. Use 0 for the X component and 1 for the Y component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 1]. + + + + Calculates the length of the vector. + + The length of the vector. + + may be preferred when only the relative length is needed + and speed is of the essence. + + + + + Calculates the squared length of the vector. + + The squared length of the vector. + + This method may be preferred to when only a relative length is needed + and speed is of the essence. + + + + + Converts the vector into a unit vector. + + + + + Creates an array containing the elements of the vector. + + A two-element array containing the components of the vector. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + When the method completes, contains the sum of the two vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + When the method completes, contains the difference of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector + The vector with subtracted scalar for each element. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Multiplies a vector with another by performing component-wise multiplication. + + The first vector to multiply. + The second vector to multiply. + When the method completes, contains the multiplied vector. + + + + Multiplies a vector with another by performing component-wise multiplication. + + The first vector to multiply. + The second vector to multiply. + The multiplied vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Reverses the direction of a given vector. + + The vector to negate. + When the method completes, contains a vector facing in the opposite direction. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Returns per component absolute value of a vector + + Input vector + When the method completes, contains a vector with each component being the absolute value of the input component + + + + Returns per component absolute value of a vector + + Input vector + A vector with each component being the absolute value of the input component + + + + Returns a containing the 2D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle. + + A containing the 2D Cartesian coordinates of vertex 1 of the triangle. + A containing the 2D Cartesian coordinates of vertex 2 of the triangle. + A containing the 2D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + When the method completes, contains the 2D Cartesian coordinates of the specified point. + + + + Returns a containing the 2D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle. + + A containing the 2D Cartesian coordinates of vertex 1 of the triangle. + A containing the 2D Cartesian coordinates of vertex 2 of the triangle. + A containing the 2D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + A new containing the 2D Cartesian coordinates of the specified point. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Saturates this instance in the range [0,1] + + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + When the method completes, contains the distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + The distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector + When the method completes, contains the squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector. + The squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Calculates the dot product of two vectors. + + First source vector. + Second source vector. + When the method completes, contains the dot product of the two vectors. + + + + Calculates the dot product of two vectors. + + First source vector. + Second source vector. + The dot product of the two vectors. + + + + Converts the vector into a unit vector. + + The vector to normalize. + When the method completes, contains the normalized vector. + + + + Converts the vector into a unit vector. + + The vector to normalize. + The normalized vector. + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two vectors. + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two vectors. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + When the method completes, contains the result of the Hermite spline interpolation. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + The result of the Hermite spline interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + When the method completes, contains the result of the Catmull-Rom interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + A vector that is the result of the Catmull-Rom interpolation. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the largest components of the source vectors. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the largest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the smallest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the smallest components of the source vectors. + + + + Returns the reflection of a vector off a surface that has the specified normal. + + The source vector. + Normal of the surface. + When the method completes, contains the reflected vector. + Reflect only gives the direction of a reflection off a surface, it does not determine + whether the original vector was close enough to the surface to hit it. + + + + Returns the reflection of a vector off a surface that has the specified normal. + + The source vector. + Normal of the surface. + The reflected vector. + Reflect only gives the direction of a reflection off a surface, it does not determine + whether the original vector was close enough to the surface to hit it. + + + + Orthogonalizes a list of vectors. + + The list of orthogonalized vectors. + The list of vectors to orthogonalize. + + Orthogonalization is the process of making all vectors orthogonal to each other. This + means that any given vector in the list will be orthogonal to any other given vector in the + list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Orthonormalizes a list of vectors. + + The list of orthonormalized vectors. + The list of vectors to orthonormalize. + + Orthonormalization is the process of making all vectors orthogonal to each + other and making all vectors of unit length. This means that any given vector will + be orthogonal to any other given vector in the list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 2D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + When the method completes, contains the transformed . + + + + Transforms a 2D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + The transformed . + + + + Transforms an array of vectors by the given rotation. + + The array of vectors to transform. + The rotation to apply. + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 2D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 2D vector by the given . + + The source vector. + The transformation . + The transformed . + + + + Transforms an array of 2D vectors by the given . + + The array of vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + Thrown when or is null. + Thrown when is shorter in length than . + + + + Performs a coordinate transformation using the given . + + The coordinate vector to transform. + The transformation . + When the method completes, contains the transformed coordinates. + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a coordinate transformation using the given . + + The coordinate vector to transform. + The transformation . + The transformed coordinates. + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a coordinate transformation on an array of vectors using the given . + + The array of coordinate vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a normal transformation using the given . + + The normal vector to transform. + The transformation . + When the method completes, contains the transformed normal. + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Performs a normal transformation using the given . + + The normal vector to transform. + The transformation . + The transformed normal. + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Performs a normal transformation on an array of vectors using the given . + + The array of normal vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Multiplies a vector with another by performing component-wise multiplication equivalent to . + + The first vector to multiply. + The second vector to multiply. + The multiplication of the two vectors. + + + + Assert a vector (return it unchanged). + + The vector to assert (unchanged). + The asserted (unchanged) vector. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with subtraced scalar from each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with subtraced scalar from each element. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a three dimensional mathematical vector. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The X unit (1, 0, 0). + + + + + The Y unit (0, 1, 0). + + + + + The Z unit (0, 0, 1). + + + + + A with all of its components set to one. + + + + + A unit designating up (0, 1, 0). + + + + + A unit designating down (0, -1, 0). + + + + + A unit designating left (-1, 0, 0). + + + + + A unit designating right (1, 0, 0). + + + + + A unit designating forward in a right-handed coordinate system (0, 0, -1). + + + + + A unit designating forward in a left-handed coordinate system (0, 0, 1). + + + + + A unit designating backward in a right-handed coordinate system (0, 0, 1). + + + + + A unit designating backward in a left-handed coordinate system (0, 0, -1). + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + Initial value for the Z component of the vector. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the X and Y components. + Initial value for the Z component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, and Z components of the vector. This must be an array with three elements. + Thrown when is null. + Thrown when contains more or less than three elements. + + + + Gets a value indicting whether this instance is normalized. + + + + + Gets a value indicting whether this vector is zero + + + + + Gets or sets the component at the specified index. + + The value of the X, Y, or Z component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, and 2 for the Z component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 2]. + + + + Calculates the length of the vector. + + The length of the vector. + + may be preferred when only the relative length is needed + and speed is of the essence. + + + + + Calculates the squared length of the vector. + + The squared length of the vector. + + This method may be preferred to when only a relative length is needed + and speed is of the essence. + + + + + Converts the vector into a unit vector. + + + + + Creates an array containing the elements of the vector. + + A three-element array containing the components of the vector. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + When the method completes, contains the sum of the two vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + When the method completes, contains the difference of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector. + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector. + The vector with subtracted scalar for each element. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Multiply a vector with another by performing component-wise multiplication. + + The first vector to multiply. + The second vector to multiply. + When the method completes, contains the multiplied vector. + + + + Multiply a vector with another by performing component-wise multiplication. + + The first vector to Multiply. + The second vector to multiply. + The multiplied vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Reverses the direction of a given vector. + + The vector to negate. + When the method completes, contains a vector facing in the opposite direction. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Returns per component absolute value of a vector + + Input vector + When the method completes, contains a vector with each component being the absolute value of the input component + + + + Returns per component absolute value of a vector + + Input vector + A vector with each component being the absolute value of the input component + + + + Returns a containing the 3D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 3D triangle. + + A containing the 3D Cartesian coordinates of vertex 1 of the triangle. + A containing the 3D Cartesian coordinates of vertex 2 of the triangle. + A containing the 3D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + When the method completes, contains the 3D Cartesian coordinates of the specified point. + + + + Returns a containing the 3D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 3D triangle. + + A containing the 3D Cartesian coordinates of vertex 1 of the triangle. + A containing the 3D Cartesian coordinates of vertex 2 of the triangle. + A containing the 3D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + A new containing the 3D Cartesian coordinates of the specified point. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Calculates the cross product of two vectors. + + First source vector. + Second source vector. + When the method completes, contains he cross product of the two vectors. + + + + Calculates the cross product of two vectors. + + First source vector. + Second source vector. + The cross product of the two vectors. + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + When the method completes, contains the distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + The distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector. + When the method completes, contains the squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector. + The squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Tests whether one 3D vector is near another 3D vector. + + The left vector. + The right vector. + The epsilon. + true if left and right are near another 3D, false otherwise + + + + Tests whether one 3D vector is near another 3D vector. + + The left vector. + The right vector. + The epsilon. + true if left and right are near another 3D, false otherwise + + + + Calculates the dot product of two vectors. + + First source vector. + Second source vector. + When the method completes, contains the dot product of the two vectors. + + + + Calculates the dot product of two vectors. + + First source vector. + Second source vector. + The dot product of the two vectors. + + + + Converts the vector into a unit vector. + + The vector to normalize. + When the method completes, contains the normalized vector. + + + + Converts the vector into a unit vector. + + The vector to normalize. + The normalized vector. + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two vectors. + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two vectors. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + When the method completes, contains the result of the Hermite spline interpolation. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + The result of the Hermite spline interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + When the method completes, contains the result of the Catmull-Rom interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + A vector that is the result of the Catmull-Rom interpolation. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the largest components of the source vectors. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the largest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the smallest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the smallest components of the source vectors. + + + + Projects a 3D vector from object space into screen space. + + The vector to project. + The X position of the viewport. + The Y position of the viewport. + The width of the viewport. + The height of the viewport. + The minimum depth of the viewport. + The maximum depth of the viewport. + The combined world-view-projection matrix. + When the method completes, contains the vector in screen space. + + + + Projects a 3D vector from object space into screen space. + + The vector to project. + The X position of the viewport. + The Y position of the viewport. + The width of the viewport. + The height of the viewport. + The minimum depth of the viewport. + The maximum depth of the viewport. + The combined world-view-projection matrix. + The vector in screen space. + + + + Projects a 3D vector from screen space into object space. + + The vector to project. + The X position of the viewport. + The Y position of the viewport. + The width of the viewport. + The height of the viewport. + The minimum depth of the viewport. + The maximum depth of the viewport. + The combined world-view-projection matrix. + When the method completes, contains the vector in object space. + + + + Projects a 3D vector from screen space into object space. + + The vector to project. + The X position of the viewport. + The Y position of the viewport. + The width of the viewport. + The height of the viewport. + The minimum depth of the viewport. + The maximum depth of the viewport. + The combined world-view-projection matrix. + The vector in object space. + + + + Returns the reflection of a vector off a surface that has the specified normal. + + The source vector. + Normal of the surface. + When the method completes, contains the reflected vector. + Reflect only gives the direction of a reflection off a surface, it does not determine + whether the original vector was close enough to the surface to hit it. + + + + Returns the reflection of a vector off a surface that has the specified normal. + + The source vector. + Normal of the surface. + The reflected vector. + Reflect only gives the direction of a reflection off a surface, it does not determine + whether the original vector was close enough to the surface to hit it. + + + + Orthogonalizes a list of vectors. + + The list of orthogonalized vectors. + The list of vectors to orthogonalize. + + Orthogonalization is the process of making all vectors orthogonal to each other. This + means that any given vector in the list will be orthogonal to any other given vector in the + list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Orthonormalizes a list of vectors. + + The list of orthonormalized vectors. + The list of vectors to orthonormalize. + + Orthonormalization is the process of making all vectors orthogonal to each + other and making all vectors of unit length. This means that any given vector will + be orthogonal to any other given vector in the list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 3D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + When the method completes, contains the transformed . + + + + Transforms a 3D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + The transformed . + + + + Transforms an array of vectors by the given rotation. + + The array of vectors to transform. + The rotation to apply. + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 3D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 3D vector by the given . + + The source vector. + The transformation . + The transformed . + + + + Transforms a 3D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 3D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 3D vector by the given . + + The source vector. + The transformation . + The transformed . + + + + Transforms an array of 3D vectors by the given . + + The array of vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + Thrown when or is null. + Thrown when is shorter in length than . + + + + Performs a coordinate transformation using the given . + + The coordinate vector to transform. + The transformation . + When the method completes, contains the transformed coordinates. + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a coordinate transformation using the given . + + The coordinate vector to transform. + The transformation . + The transformed coordinates. + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a coordinate transformation on an array of vectors using the given . + + The array of coordinate vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + A coordinate transform performs the transformation with the assumption that the w component + is one. The four dimensional vector obtained from the transformation operation has each + component in the vector divided by the w component. This forces the w component to be one and + therefore makes the vector homogeneous. The homogeneous vector is often preferred when working + with coordinates as the w component can safely be ignored. + + + + + Performs a normal transformation using the given . + + The normal vector to transform. + The transformation . + When the method completes, contains the transformed normal. + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Performs a normal transformation using the given . + + The normal vector to transform. + The transformation . + The transformed normal. + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Performs a normal transformation on an array of vectors using the given . + + The array of normal vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + A normal transform performs the transformation with the assumption that the w component + is zero. This causes the fourth row and fourth column of the matrix to be unused. The + end result is a vector that is not translated, but all other transformation properties + apply. This is often preferred for normal vectors as normals purely represent direction + rather than location because normal vectors should not be translated. + + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Multiplies a vector with another by performing component-wise multiplication equivalent to . + + The first vector to multiply. + The second vector to multiply. + The multiplication of the two vectors. + + + + Assert a vector (return it unchanged). + + The vector to assert (unchanged). + The asserted (unchanged) vector. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with added scalar from each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with subtraced scalar from each element. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Represents a four dimensional mathematical vector. + + + + + The size of the type, in bytes. + + + + + A with all of its components set to zero. + + + + + The X unit (1, 0, 0, 0). + + + + + The Y unit (0, 1, 0, 0). + + + + + The Z unit (0, 0, 1, 0). + + + + + The W unit (0, 0, 0, 1). + + + + + A with all of its components set to one. + + + + + The X component of the vector. + + + + + The Y component of the vector. + + + + + The Z component of the vector. + + + + + The W component of the vector. + + + + + Initializes a new instance of the struct. + + The value that will be assigned to all components. + + + + Initializes a new instance of the struct. + + Initial value for the X component of the vector. + Initial value for the Y component of the vector. + Initial value for the Z component of the vector. + Initial value for the W component of the vector. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the X, Y, and Z components. + Initial value for the W component of the vector. + + + + Initializes a new instance of the struct. + + A vector containing the values with which to initialize the X and Y components. + Initial value for the Z component of the vector. + Initial value for the W component of the vector. + + + + Initializes a new instance of the struct. + + The values to assign to the X, Y, Z, and W components of the vector. This must be an array with four elements. + Thrown when is null. + Thrown when contains more or less than four elements. + + + + Gets a value indicting whether this instance is normalized. + + + + + Gets a value indicting whether this vector is zero + + + + + Gets or sets the component at the specified index. + + The value of the X, Y, Z, or W component, depending on the index. + The index of the component to access. Use 0 for the X component, 1 for the Y component, 2 for the Z component, and 3 for the W component. + The value of the component at the specified index. + Thrown when the is out of the range [0, 3]. + + + + Calculates the length of the vector. + + The length of the vector. + + may be preferred when only the relative length is needed + and speed is of the essence. + + + + + Calculates the squared length of the vector. + + The squared length of the vector. + + This method may be preferred to when only a relative length is needed + and speed is of the essence. + + + + + Converts the vector into a unit vector. + + + + + Creates an array containing the elements of the vector. + + A four-element array containing the components of the vector. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + When the method completes, contains the sum of the two vectors. + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector + The scalar value to be added to elements + The vector with added scalar for each element. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + When the method completes, contains the difference of the two vectors. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The input vector + The scalar value to be subtraced from elements + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector. + The vector with subtracted scalar for each element. + + + + Perform a component-wise subtraction + + The scalar value to be subtraced from elements + The input vector. + The vector with subtracted scalar for each element. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Multiplies a vector with another by performing component-wise multiplication. + + The first vector to multiply. + The second vector to multiply. + When the method completes, contains the multiplied vector. + + + + Multiplies a vector with another by performing component-wise multiplication. + + The first vector to multiply. + The second vector to multiply. + The multiplied vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + When the method completes, contains the scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Reverses the direction of a given vector. + + The vector to negate. + When the method completes, contains a vector facing in the opposite direction. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Returns a containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 4D triangle. + + A containing the 4D Cartesian coordinates of vertex 1 of the triangle. + A containing the 4D Cartesian coordinates of vertex 2 of the triangle. + A containing the 4D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + When the method completes, contains the 4D Cartesian coordinates of the specified point. + + + + Returns a containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 4D triangle. + + A containing the 4D Cartesian coordinates of vertex 1 of the triangle. + A containing the 4D Cartesian coordinates of vertex 2 of the triangle. + A containing the 4D Cartesian coordinates of vertex 3 of the triangle. + Barycentric coordinate b2, which expresses the weighting factor toward vertex 2 (specified in ). + Barycentric coordinate b3, which expresses the weighting factor toward vertex 3 (specified in ). + A new containing the 4D Cartesian coordinates of the specified point. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + When the method completes, contains the clamped value. + + + + Restricts a value to be within a specified range. + + The value to clamp. + The minimum value. + The maximum value. + The clamped value. + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + When the method completes, contains the distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the distance between two vectors. + + The first vector. + The second vector. + The distance between the two vectors. + + may be preferred when only the relative distance is needed + and speed is of the essence. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector. + When the method completes, contains the squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Calculates the squared distance between two vectors. + + The first vector. + The second vector. + The squared distance between the two vectors. + Distance squared is the value before taking the square root. + Distance squared can often be used in place of distance if relative comparisons are being made. + For example, consider three points A, B, and C. To determine whether B or C is further from A, + compare the distance between A and B to the distance between A and C. Calculating the two distances + involves two square roots, which are computationally expensive. However, using distance squared + provides the same information and avoids calculating two square roots. + + + + + Calculates the dot product of two vectors. + + First source vector + Second source vector. + When the method completes, contains the dot product of the two vectors. + + + + Calculates the dot product of two vectors. + + First source vector. + Second source vector. + The dot product of the two vectors. + + + + Converts the vector into a unit vector. + + The vector to normalize. + When the method completes, contains the normalized vector. + + + + Converts the vector into a unit vector. + + The vector to normalize. + The normalized vector. + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a linear interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The linear interpolation of the two vectors. + + Passing a value of 0 will cause to be returned; a value of 1 will cause to be returned. + + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + When the method completes, contains the cubic interpolation of the two vectors. + + + + Performs a cubic interpolation between two vectors. + + Start vector. + End vector. + Value between 0 and 1 indicating the weight of . + The cubic interpolation of the two vectors. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + When the method completes, contains the result of the Hermite spline interpolation. + + + + Performs a Hermite spline interpolation. + + First source position vector. + First source tangent vector. + Second source position vector. + Second source tangent vector. + Weighting factor. + The result of the Hermite spline interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + When the method completes, contains the result of the Catmull-Rom interpolation. + + + + Performs a Catmull-Rom interpolation using the specified positions. + + The first position in the interpolation. + The second position in the interpolation. + The third position in the interpolation. + The fourth position in the interpolation. + Weighting factor. + A vector that is the result of the Catmull-Rom interpolation. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the largest components of the source vectors. + + + + Returns a vector containing the largest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the largest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + When the method completes, contains an new vector composed of the smallest components of the source vectors. + + + + Returns a vector containing the smallest components of the specified vectors. + + The first source vector. + The second source vector. + A vector containing the smallest components of the source vectors. + + + + Orthogonalizes a list of vectors. + + The list of orthogonalized vectors. + The list of vectors to orthogonalize. + + Orthogonalization is the process of making all vectors orthogonal to each other. This + means that any given vector in the list will be orthogonal to any other given vector in the + list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Orthonormalizes a list of vectors. + + The list of orthonormalized vectors. + The list of vectors to orthonormalize. + + Orthonormalization is the process of making all vectors orthogonal to each + other and making all vectors of unit length. This means that any given vector will + be orthogonal to any other given vector in the list. + Because this method uses the modified Gram-Schmidt process, the resulting vectors + tend to be numerically unstable. The numeric stability decreases according to the vectors + position in the list so that the first vector is the most stable and the last vector is the + least stable. + + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 4D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + When the method completes, contains the transformed . + + + + Transforms a 4D vector by the given rotation. + + The vector to rotate. + The rotation to apply. + The transformed . + + + + Transforms an array of vectors by the given rotation. + + The array of vectors to transform. + The rotation to apply. + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + + + Transforms a 4D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 4D vector by the given . + + The source vector. + The transformation . + The transformed . + + + + Transforms a 4D vector by the given . + + The source vector. + The transformation . + When the method completes, contains the transformed . + + + + Transforms a 4D vector by the given . + + The source vector. + The transformation . + The transformed . + + + + Transforms an array of 4D vectors by the given . + + The array of vectors to transform. + The transformation . + The array for which the transformed vectors are stored. + This array may be the same array as . + Thrown when or is null. + Thrown when is shorter in length than . + + + + Adds two vectors. + + The first vector to add. + The second vector to add. + The sum of the two vectors. + + + + Multiplies a vector with another by performing component-wise multiplication equivalent to . + + The first vector to multiply. + The second vector to multiply. + The multiplication of the two vectors. + + + + Assert a vector (return it unchanged). + + The vector to assert (unchanged). + The asserted (unchanged) vector. + + + + Subtracts two vectors. + + The first vector to subtract. + The second vector to subtract. + The difference of the two vectors. + + + + Reverses the direction of a given vector. + + The vector to negate. + A vector facing in the opposite direction. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Scales a vector by the given value. + + The amount by which to scale the vector. + The vector to scale. + The scaled vector. + + + + Scales a vector by the given value. + + The vector to scale. + The amount by which to scale the vector. + The scaled vector. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise addition + + The input vector. + The scalar value to be added on elements + The vector with added scalar for each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with subtraced scalar from each element. + + + + Perform a component-wise subtraction + + The input vector. + The scalar value to be subtraced from elements + The vector with subtraced scalar from each element. + + + + Tests for equality between two objects. + + The first value to compare. + The second value to compare. + true if has the same value as ; otherwise, false. + + + + Tests for inequality between two objects. + + The first value to compare. + The second value to compare. + true if has a different value than ; otherwise, false. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Defines the viewport dimensions. + + + + + Position of the pixel coordinate of the upper-left corner of the viewport. + + + + + Position of the pixel coordinate of the upper-left corner of the viewport. + + + + + Width dimension of the viewport. + + + + + Height dimension of the viewport. + + + + + Gets or sets the minimum depth of the clip volume. + + + + + Gets or sets the maximum depth of the clip volume. + + + + + Initializes a new instance of the struct. + + The x coordinate of the upper-left corner of the viewport in pixels. + The y coordinate of the upper-left corner of the viewport in pixels. + The width of the viewport in pixels. + The height of the viewport in pixels. + + + + Initializes a new instance of the struct. + + The x coordinate of the upper-left corner of the viewport in pixels. + The y coordinate of the upper-left corner of the viewport in pixels. + The width of the viewport in pixels. + The height of the viewport in pixels. + The minimum depth of the clip volume. + The maximum depth of the clip volume. + + + + Initializes a new instance of the struct. + + A bounding box that defines the location and size of the viewport in a render target. + + + + Gets the size of this resource. + + The bounds. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified object is equal to this instance. + + The object to compare with this instance. + + true if the specified object is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Retrieves a string representation of this object. + + A that represents this instance. + + + + Projects a 3D vector from object space into screen space. + + The vector to project. + The projection matrix. + The view matrix. + The world matrix. + The projected vector. + + + + Projects a 3D vector from object space into screen space. + + The vector to project. + A combined WorldViewProjection matrix. + The projected vector. + + + + Converts a screen space point into a corresponding point in world space. + + The vector to project. + The projection matrix. + The view matrix. + The world matrix. + The unprojected Vector. + + + + Converts a screen space point into a corresponding point in world space. + + The vector to project. + An inverted combined WorldViewProjection matrix. + The unprojected vector. + + + + Gets the aspect ratio used by the viewport. + + The aspect ratio. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Defines the viewport dimensions using float coordinates for (X,Y,Width,Height). + + + + + Position of the pixel coordinate of the upper-left corner of the viewport. + + + + + Position of the pixel coordinate of the upper-left corner of the viewport. + + + + + Width dimension of the viewport. + + + + + Height dimension of the viewport. + + + + + Gets or sets the minimum depth of the clip volume. + + + + + Gets or sets the maximum depth of the clip volume. + + + + + Initializes a new instance of the struct. + + The x coordinate of the upper-left corner of the viewport in pixels. + The y coordinate of the upper-left corner of the viewport in pixels. + The width of the viewport in pixels. + The height of the viewport in pixels. + + + + Initializes a new instance of the struct. + + The x coordinate of the upper-left corner of the viewport in pixels. + The y coordinate of the upper-left corner of the viewport in pixels. + The width of the viewport in pixels. + The height of the viewport in pixels. + The minimum depth of the clip volume. + The maximum depth of the clip volume. + + + + Initializes a new instance of the struct. + + A bounding box that defines the location and size of the viewport in a render target. + + + + Gets the size of this resource. + + The bounds. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified object is equal to this instance. + + The object to compare with this instance. + + true if the specified object is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Implements the operator ==. + + The left. + The right. + The result of the operator. + + + + Implements the operator !=. + + The left. + The right. + The result of the operator. + + + + Retrieves a string representation of this object. + + A that represents this instance. + + + + + Projects a 3D vector from object space into screen space. + + The vector to project. + A combined WorldViewProjection matrix. + The projected vector. + + + + Converts a screen space point into a corresponding point in world space. + + The vector to project. + The projection matrix. + The view matrix. + The world matrix. + The unprojected Vector. + + + + Converts a screen space point into a corresponding point in world space. + + The vector to project. + An inverted combined WorldViewProjection matrix. + The unprojected vector. + + + + Gets the aspect ratio used by the viewport. + + The aspect ratio. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value. + The result of the conversion. + + + diff --git a/CarConverter/bin/Release/SharpDX.dll b/CarConverter/bin/Release/SharpDX.dll new file mode 100644 index 0000000..d4163a8 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.dll differ diff --git a/CarConverter/bin/Release/SharpDX.pdb b/CarConverter/bin/Release/SharpDX.pdb new file mode 100644 index 0000000..f8872f1 Binary files /dev/null and b/CarConverter/bin/Release/SharpDX.pdb differ diff --git a/CarConverter/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs b/CarConverter/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs deleted file mode 100644 index 15efebf..0000000 --- a/CarConverter/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs +++ /dev/null @@ -1,4 +0,0 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] diff --git a/CarConverter/obj/Debug/App.g.cs b/CarConverter/obj/Debug/App.g.cs deleted file mode 100644 index 3ff8101..0000000 --- a/CarConverter/obj/Debug/App.g.cs +++ /dev/null @@ -1,71 +0,0 @@ -#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "23E6860267D9E9B9F4E98FCEE83DD76122960903F8ED004E2DAF13A401785A34" -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -using CarConverter; -using System; -using System.Diagnostics; -using System.Windows; -using System.Windows.Automation; -using System.Windows.Controls; -using System.Windows.Controls.Primitives; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Forms.Integration; -using System.Windows.Ink; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Effects; -using System.Windows.Media.Imaging; -using System.Windows.Media.Media3D; -using System.Windows.Media.TextFormatting; -using System.Windows.Navigation; -using System.Windows.Shapes; -using System.Windows.Shell; - - -namespace CarConverter { - - - /// - /// App - /// - public partial class App : System.Windows.Application { - - /// - /// InitializeComponent - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public void InitializeComponent() { - - #line 5 "..\..\App.xaml" - this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative); - - #line default - #line hidden - } - - /// - /// Application Entry Point. - /// - [System.STAThreadAttribute()] - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public static void Main() { - CarConverter.App app = new CarConverter.App(); - app.InitializeComponent(); - app.Run(); - } - } -} - diff --git a/CarConverter/obj/Debug/App.g.i.cs b/CarConverter/obj/Debug/App.g.i.cs deleted file mode 100644 index 3ff8101..0000000 --- a/CarConverter/obj/Debug/App.g.i.cs +++ /dev/null @@ -1,71 +0,0 @@ -#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "23E6860267D9E9B9F4E98FCEE83DD76122960903F8ED004E2DAF13A401785A34" -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -using CarConverter; -using System; -using System.Diagnostics; -using System.Windows; -using System.Windows.Automation; -using System.Windows.Controls; -using System.Windows.Controls.Primitives; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Forms.Integration; -using System.Windows.Ink; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Effects; -using System.Windows.Media.Imaging; -using System.Windows.Media.Media3D; -using System.Windows.Media.TextFormatting; -using System.Windows.Navigation; -using System.Windows.Shapes; -using System.Windows.Shell; - - -namespace CarConverter { - - - /// - /// App - /// - public partial class App : System.Windows.Application { - - /// - /// InitializeComponent - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public void InitializeComponent() { - - #line 5 "..\..\App.xaml" - this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative); - - #line default - #line hidden - } - - /// - /// Application Entry Point. - /// - [System.STAThreadAttribute()] - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public static void Main() { - CarConverter.App app = new CarConverter.App(); - app.InitializeComponent(); - app.Run(); - } - } -} - diff --git a/CarConverter/obj/Debug/CarConverter.Properties.Resources.resources b/CarConverter/obj/Debug/CarConverter.Properties.Resources.resources deleted file mode 100644 index 6c05a97..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.Properties.Resources.resources and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter.csproj.AssemblyReference.cache b/CarConverter/obj/Debug/CarConverter.csproj.AssemblyReference.cache deleted file mode 100644 index 855932c..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.csproj.AssemblyReference.cache and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter.csproj.CoreCompileInputs.cache b/CarConverter/obj/Debug/CarConverter.csproj.CoreCompileInputs.cache deleted file mode 100644 index 141e0fb..0000000 --- a/CarConverter/obj/Debug/CarConverter.csproj.CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -d19514ee31f8df67514cf327cba817e3581740d2 diff --git a/CarConverter/obj/Debug/CarConverter.csproj.FileListAbsolute.txt b/CarConverter/obj/Debug/CarConverter.csproj.FileListAbsolute.txt deleted file mode 100644 index 09c7574..0000000 --- a/CarConverter/obj/Debug/CarConverter.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,15 +0,0 @@ -D:\Programmierstuff\FiveM\CarConverter\bin\Debug\CarConverter.exe.config -D:\Programmierstuff\FiveM\CarConverter\bin\Debug\CarConverter.exe -D:\Programmierstuff\FiveM\CarConverter\bin\Debug\CarConverter.pdb -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.csproj.AssemblyReference.cache -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.csproj.SuggestedBindingRedirects.cache -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\MainWindow.g.cs -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\App.g.cs -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter_MarkupCompile.cache -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\MainWindow.baml -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.g.resources -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.Properties.Resources.resources -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.csproj.GenerateResource.cache -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.csproj.CoreCompileInputs.cache -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.exe -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\CarConverter.pdb diff --git a/CarConverter/obj/Debug/CarConverter.csproj.GenerateResource.cache b/CarConverter/obj/Debug/CarConverter.csproj.GenerateResource.cache deleted file mode 100644 index 2443fad..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.csproj.GenerateResource.cache and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter.csproj.SuggestedBindingRedirects.cache b/CarConverter/obj/Debug/CarConverter.csproj.SuggestedBindingRedirects.cache deleted file mode 100644 index e69de29..0000000 diff --git a/CarConverter/obj/Debug/CarConverter.exe b/CarConverter/obj/Debug/CarConverter.exe deleted file mode 100644 index acbaa88..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.exe and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter.g.resources b/CarConverter/obj/Debug/CarConverter.g.resources deleted file mode 100644 index 34c5060..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.g.resources and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter.pdb b/CarConverter/obj/Debug/CarConverter.pdb deleted file mode 100644 index dccecd2..0000000 Binary files a/CarConverter/obj/Debug/CarConverter.pdb and /dev/null differ diff --git a/CarConverter/obj/Debug/CarConverter_Content.g.i.cs b/CarConverter/obj/Debug/CarConverter_Content.g.i.cs deleted file mode 100644 index 4227b65..0000000 --- a/CarConverter/obj/Debug/CarConverter_Content.g.i.cs +++ /dev/null @@ -1,13 +0,0 @@ -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("convertibles.png")] - - diff --git a/CarConverter/obj/Debug/CarConverter_MarkupCompile.cache b/CarConverter/obj/Debug/CarConverter_MarkupCompile.cache deleted file mode 100644 index 9733b28..0000000 --- a/CarConverter/obj/Debug/CarConverter_MarkupCompile.cache +++ /dev/null @@ -1,20 +0,0 @@ -CarConverter - - -winexe -C# -.cs -D:\Programmierstuff\FiveM\CarConverter\obj\Debug\ -CarConverter -none -false -DEBUG;TRACE -D:\Programmierstuff\FiveM\CarConverter\App.xaml -11151548125 - -5-502624746 -251795321033 -MainWindow.xaml; - -False - diff --git a/CarConverter/obj/Debug/GeneratedInternalTypeHelper.g.i.cs b/CarConverter/obj/Debug/GeneratedInternalTypeHelper.g.i.cs deleted file mode 100644 index 47c9b7f..0000000 --- a/CarConverter/obj/Debug/GeneratedInternalTypeHelper.g.i.cs +++ /dev/null @@ -1,62 +0,0 @@ -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -namespace XamlGeneratedNamespace { - - - /// - /// GeneratedInternalTypeHelper - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper { - - /// - /// CreateInstance - /// - protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) { - return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic) - | (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture); - } - - /// - /// GetPropertyValue - /// - protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) { - return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture); - } - - /// - /// SetPropertyValue - /// - protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) { - propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture); - } - - /// - /// CreateDelegate - /// - protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) { - return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod - | (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] { - delegateType, - handler}, null))); - } - - /// - /// AddEventHandler - /// - protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) { - eventInfo.AddEventHandler(target, handler); - } - } -} - diff --git a/CarConverter/obj/Debug/MainWindow.baml b/CarConverter/obj/Debug/MainWindow.baml deleted file mode 100644 index 128d571..0000000 Binary files a/CarConverter/obj/Debug/MainWindow.baml and /dev/null differ diff --git a/CarConverter/obj/Debug/MainWindow.g.cs b/CarConverter/obj/Debug/MainWindow.g.cs deleted file mode 100644 index 3637b4b..0000000 --- a/CarConverter/obj/Debug/MainWindow.g.cs +++ /dev/null @@ -1,171 +0,0 @@ -#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "64DE227BEF6F33E971FFB9C078DA08012CEC776C9FC1A1FBC3CB4EBE8E1B2A19" -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -using System; -using System.Diagnostics; -using System.Windows; -using System.Windows.Automation; -using System.Windows.Controls; -using System.Windows.Controls.Primitives; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Forms.Integration; -using System.Windows.Ink; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Effects; -using System.Windows.Media.Imaging; -using System.Windows.Media.Media3D; -using System.Windows.Media.TextFormatting; -using System.Windows.Navigation; -using System.Windows.Shapes; -using System.Windows.Shell; - - -namespace CarConverter { - - - /// - /// MainWindow - /// - public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { - - - #line 104 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TreeView FolderView; - - #line default - #line hidden - - - #line 119 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView StreamFiles; - - #line default - #line hidden - - - #line 122 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView MetaFiles; - - #line default - #line hidden - - - #line 134 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TextBox CarName; - - #line default - #line hidden - - - #line 142 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.Label OutPath; - - #line default - #line hidden - - private bool _contentLoaded; - - /// - /// InitializeComponent - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public void InitializeComponent() { - if (_contentLoaded) { - return; - } - _contentLoaded = true; - System.Uri resourceLocater = new System.Uri("/CarConverter;component/mainwindow.xaml", System.UriKind.Relative); - - #line 1 "..\..\MainWindow.xaml" - System.Windows.Application.LoadComponent(this, resourceLocater); - - #line default - #line hidden - } - - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] - void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { - switch (connectionId) - { - case 1: - - #line 7 "..\..\MainWindow.xaml" - ((CarConverter.MainWindow)(target)).Closing += new System.ComponentModel.CancelEventHandler(this.OnClose); - - #line default - #line hidden - return; - case 2: - this.FolderView = ((System.Windows.Controls.TreeView)(target)); - - #line 104 "..\..\MainWindow.xaml" - this.FolderView.Drop += new System.Windows.DragEventHandler(this.OnDrop); - - #line default - #line hidden - return; - case 3: - this.StreamFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 4: - this.MetaFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 5: - - #line 130 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Build); - - #line default - #line hidden - return; - case 6: - - #line 131 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Clear); - - #line default - #line hidden - return; - case 7: - this.CarName = ((System.Windows.Controls.TextBox)(target)); - return; - case 8: - this.OutPath = ((System.Windows.Controls.Label)(target)); - return; - case 9: - - #line 143 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.ChooseOutDir); - - #line default - #line hidden - return; - } - this._contentLoaded = true; - } - } -} - diff --git a/CarConverter/obj/Debug/MainWindow.g.i.cs b/CarConverter/obj/Debug/MainWindow.g.i.cs deleted file mode 100644 index 3637b4b..0000000 --- a/CarConverter/obj/Debug/MainWindow.g.i.cs +++ /dev/null @@ -1,171 +0,0 @@ -#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "64DE227BEF6F33E971FFB9C078DA08012CEC776C9FC1A1FBC3CB4EBE8E1B2A19" -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -using System; -using System.Diagnostics; -using System.Windows; -using System.Windows.Automation; -using System.Windows.Controls; -using System.Windows.Controls.Primitives; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Forms.Integration; -using System.Windows.Ink; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Effects; -using System.Windows.Media.Imaging; -using System.Windows.Media.Media3D; -using System.Windows.Media.TextFormatting; -using System.Windows.Navigation; -using System.Windows.Shapes; -using System.Windows.Shell; - - -namespace CarConverter { - - - /// - /// MainWindow - /// - public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { - - - #line 104 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TreeView FolderView; - - #line default - #line hidden - - - #line 119 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView StreamFiles; - - #line default - #line hidden - - - #line 122 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView MetaFiles; - - #line default - #line hidden - - - #line 134 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TextBox CarName; - - #line default - #line hidden - - - #line 142 "..\..\MainWindow.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.Label OutPath; - - #line default - #line hidden - - private bool _contentLoaded; - - /// - /// InitializeComponent - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public void InitializeComponent() { - if (_contentLoaded) { - return; - } - _contentLoaded = true; - System.Uri resourceLocater = new System.Uri("/CarConverter;component/mainwindow.xaml", System.UriKind.Relative); - - #line 1 "..\..\MainWindow.xaml" - System.Windows.Application.LoadComponent(this, resourceLocater); - - #line default - #line hidden - } - - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] - void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { - switch (connectionId) - { - case 1: - - #line 7 "..\..\MainWindow.xaml" - ((CarConverter.MainWindow)(target)).Closing += new System.ComponentModel.CancelEventHandler(this.OnClose); - - #line default - #line hidden - return; - case 2: - this.FolderView = ((System.Windows.Controls.TreeView)(target)); - - #line 104 "..\..\MainWindow.xaml" - this.FolderView.Drop += new System.Windows.DragEventHandler(this.OnDrop); - - #line default - #line hidden - return; - case 3: - this.StreamFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 4: - this.MetaFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 5: - - #line 130 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Build); - - #line default - #line hidden - return; - case 6: - - #line 131 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Clear); - - #line default - #line hidden - return; - case 7: - this.CarName = ((System.Windows.Controls.TextBox)(target)); - return; - case 8: - this.OutPath = ((System.Windows.Controls.Label)(target)); - return; - case 9: - - #line 143 "..\..\MainWindow.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.ChooseOutDir); - - #line default - #line hidden - return; - } - this._contentLoaded = true; - } - } -} - diff --git a/CarConverter/obj/Release/CarConverter.csproj.AssemblyReference.cache b/CarConverter/obj/Release/CarConverter.csproj.AssemblyReference.cache index 4bec73d..df5e178 100644 Binary files a/CarConverter/obj/Release/CarConverter.csproj.AssemblyReference.cache and b/CarConverter/obj/Release/CarConverter.csproj.AssemblyReference.cache differ diff --git a/CarConverter/obj/Release/CarConverter.csproj.CoreCompileInputs.cache b/CarConverter/obj/Release/CarConverter.csproj.CoreCompileInputs.cache index 221cec7..5c79a55 100644 --- a/CarConverter/obj/Release/CarConverter.csproj.CoreCompileInputs.cache +++ b/CarConverter/obj/Release/CarConverter.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -c5a724810ded647758ce46f4418e2ae04fd1259e +647a317d46b69b56d53f75c3078978a0736b3222 diff --git a/CarConverter/obj/Release/CarConverter.csproj.FileListAbsolute.txt b/CarConverter/obj/Release/CarConverter.csproj.FileListAbsolute.txt index 7f3f927..3c4b67a 100644 --- a/CarConverter/obj/Release/CarConverter.csproj.FileListAbsolute.txt +++ b/CarConverter/obj/Release/CarConverter.csproj.FileListAbsolute.txt @@ -1,6 +1,31 @@ D:\Programmierstuff\FiveM\CarConverter\bin\Release\CarConverter.exe.config D:\Programmierstuff\FiveM\CarConverter\bin\Release\CarConverter.exe D:\Programmierstuff\FiveM\CarConverter\bin\Release\CarConverter.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.Shell.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\RageLib.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\RageLib.GTA5.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\DirectXTex.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Mathematics.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Direct3D11.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\HtmlAgilityPack.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.D3DCompiler.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.DXGI.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.dll +D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.Shell.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\RageLib.GTA5.dll.config +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Mathematics.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Mathematics.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Direct3D11.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.Direct3D11.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\HtmlAgilityPack.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\HtmlAgilityPack.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.D3DCompiler.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.D3DCompiler.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.DXGI.pdb +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.DXGI.xml +D:\Programmierstuff\FiveM\CarConverter\bin\Release\SharpDX.pdb D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.AssemblyReference.cache D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.SuggestedBindingRedirects.cache D:\Programmierstuff\FiveM\CarConverter\obj\Release\MainWindow.baml @@ -11,12 +36,6 @@ D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.g.resources D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.Properties.Resources.resources D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.GenerateResource.cache D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.CoreCompileInputs.cache +D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.CopyComplete D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.exe D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.pdb -D:\Programmierstuff\FiveM\CarConverter\obj\Release\CarConverter.csproj.CopyComplete -D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.Shell.dll -D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.Shell.xml -D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.dll -D:\Programmierstuff\FiveM\CarConverter\bin\Release\Microsoft.WindowsAPICodePack.xml -D:\Programmierstuff\FiveM\CarConverter\bin\Release\CodeWalker.Core.dll -D:\Programmierstuff\FiveM\CarConverter\bin\Release\CodeWalker.Core.pdb diff --git a/CarConverter/obj/Release/CarConverter.exe b/CarConverter/obj/Release/CarConverter.exe index 951d9ff..c7abad9 100644 Binary files a/CarConverter/obj/Release/CarConverter.exe and b/CarConverter/obj/Release/CarConverter.exe differ diff --git a/CarConverter/obj/Release/CarConverter.g.i.cs b/CarConverter/obj/Release/CarConverter.g.i.cs deleted file mode 100644 index 6bae3a0..0000000 --- a/CarConverter/obj/Release/CarConverter.g.i.cs +++ /dev/null @@ -1,182 +0,0 @@ -#pragma checksum "..\..\CarConverter.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "1949A70E2528254E0C092EDB2934635D191A3393EBC5B7F696A2E249EAB83E44" -//------------------------------------------------------------------------------ -// -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 -// -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. -// -//------------------------------------------------------------------------------ - -using System; -using System.Diagnostics; -using System.Windows; -using System.Windows.Automation; -using System.Windows.Controls; -using System.Windows.Controls.Primitives; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Forms.Integration; -using System.Windows.Ink; -using System.Windows.Input; -using System.Windows.Markup; -using System.Windows.Media; -using System.Windows.Media.Animation; -using System.Windows.Media.Effects; -using System.Windows.Media.Imaging; -using System.Windows.Media.Media3D; -using System.Windows.Media.TextFormatting; -using System.Windows.Navigation; -using System.Windows.Shapes; -using System.Windows.Shell; - - -namespace CarConverter { - - - /// - /// CarConverter - /// - public partial class CarConverter : System.Windows.Window, System.Windows.Markup.IComponentConnector { - - - #line 113 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TreeView FolderView; - - #line default - #line hidden - - - #line 114 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.CheckBox Compress; - - #line default - #line hidden - - - #line 129 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView StreamFiles; - - #line default - #line hidden - - - #line 132 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ListView MetaFiles; - - #line default - #line hidden - - - #line 144 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.TextBox CarName; - - #line default - #line hidden - - - #line 152 "..\..\CarConverter.xaml" - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.Label OutPath; - - #line default - #line hidden - - private bool _contentLoaded; - - /// - /// InitializeComponent - /// - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - public void InitializeComponent() { - if (_contentLoaded) { - return; - } - _contentLoaded = true; - System.Uri resourceLocater = new System.Uri("/CarConverter;component/carconverter.xaml", System.UriKind.Relative); - - #line 1 "..\..\CarConverter.xaml" - System.Windows.Application.LoadComponent(this, resourceLocater); - - #line default - #line hidden - } - - [System.Diagnostics.DebuggerNonUserCodeAttribute()] - [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] - [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] - [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] - void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { - switch (connectionId) - { - case 1: - - #line 7 "..\..\CarConverter.xaml" - ((CarConverter.CarConverter)(target)).Closing += new System.ComponentModel.CancelEventHandler(this.OnClose); - - #line default - #line hidden - return; - case 2: - this.FolderView = ((System.Windows.Controls.TreeView)(target)); - - #line 113 "..\..\CarConverter.xaml" - this.FolderView.Drop += new System.Windows.DragEventHandler(this.OnDrop); - - #line default - #line hidden - return; - case 3: - this.Compress = ((System.Windows.Controls.CheckBox)(target)); - return; - case 4: - this.StreamFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 5: - this.MetaFiles = ((System.Windows.Controls.ListView)(target)); - return; - case 6: - - #line 140 "..\..\CarConverter.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Build); - - #line default - #line hidden - return; - case 7: - - #line 141 "..\..\CarConverter.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Clear); - - #line default - #line hidden - return; - case 8: - this.CarName = ((System.Windows.Controls.TextBox)(target)); - return; - case 9: - this.OutPath = ((System.Windows.Controls.Label)(target)); - return; - case 10: - - #line 153 "..\..\CarConverter.xaml" - ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.ChooseOutDir); - - #line default - #line hidden - return; - } - this._contentLoaded = true; - } - } -} - diff --git a/CarConverter/obj/Release/CarConverter.pdb b/CarConverter/obj/Release/CarConverter.pdb index f7b9868..beb87f6 100644 Binary files a/CarConverter/obj/Release/CarConverter.pdb and b/CarConverter/obj/Release/CarConverter.pdb differ diff --git a/CarConverter/obj/Release/CarConverter_MarkupCompile.cache b/CarConverter/obj/Release/CarConverter_MarkupCompile.cache index 1f17128..4380319 100644 --- a/CarConverter/obj/Release/CarConverter_MarkupCompile.cache +++ b/CarConverter/obj/Release/CarConverter_MarkupCompile.cache @@ -13,7 +13,7 @@ D:\Programmierstuff\FiveM\CarConverter\App.xaml 11151548125 5-502624746 -181389952794 +18-155306982 MainWindow.xaml; False diff --git a/FiveMHelpPrograms.sln.DotSettings.user b/FiveMHelpPrograms.sln.DotSettings.user index 6550e56..8d30b09 100644 --- a/FiveMHelpPrograms.sln.DotSettings.user +++ b/FiveMHelpPrograms.sln.DotSettings.user @@ -1,5 +1,7 @@  True + True + True True True True \ No newline at end of file diff --git a/MloCombiner/obj/MloCombiner.csproj.nuget.dgspec.json b/MloCombiner/obj/MloCombiner.csproj.nuget.dgspec.json index 39975c4..fa84e3a 100644 --- a/MloCombiner/obj/MloCombiner.csproj.nuget.dgspec.json +++ b/MloCombiner/obj/MloCombiner.csproj.nuget.dgspec.json @@ -59,7 +59,7 @@ "privateAssets": "all" } }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.402\\RuntimeIdentifierGraph.json" + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json" } } } diff --git a/MloCombiner/obj/MloCombiner.csproj.nuget.g.props b/MloCombiner/obj/MloCombiner.csproj.nuget.g.props index e86b4ab..7f9411d 100644 --- a/MloCombiner/obj/MloCombiner.csproj.nuget.g.props +++ b/MloCombiner/obj/MloCombiner.csproj.nuget.g.props @@ -7,7 +7,7 @@ $(UserProfile)\.nuget\packages\ C:\Users\leon\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages PackageReference - 6.3.1 + 6.4.0 diff --git a/MloCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/MloCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs index 2f7e5ec..3b1554c 100644 --- a/MloCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs +++ b/MloCombiner/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ // using System; using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")] +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = ".NET 5.0")] diff --git a/MloCombiner/obj/Release/net5.0/MloCombiner.GeneratedMSBuildEditorConfig.editorconfig b/MloCombiner/obj/Release/net5.0/MloCombiner.GeneratedMSBuildEditorConfig.editorconfig index 49fa3de..11ab5d5 100644 --- a/MloCombiner/obj/Release/net5.0/MloCombiner.GeneratedMSBuildEditorConfig.editorconfig +++ b/MloCombiner/obj/Release/net5.0/MloCombiner.GeneratedMSBuildEditorConfig.editorconfig @@ -5,6 +5,7 @@ build_property.UsingMicrosoftNETSdkWeb = build_property.ProjectTypeGuids = build_property.InvariantGlobalization = build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = MloCombiner build_property.ProjectDir = D:\Programmierstuff\FiveM\MloCombiner\ diff --git a/MloCombiner/obj/Release/net5.0/MloCombiner.assets.cache b/MloCombiner/obj/Release/net5.0/MloCombiner.assets.cache index 733a69b..d3132d0 100644 Binary files a/MloCombiner/obj/Release/net5.0/MloCombiner.assets.cache and b/MloCombiner/obj/Release/net5.0/MloCombiner.assets.cache differ diff --git a/MloCombiner/obj/project.assets.json b/MloCombiner/obj/project.assets.json index 6ef9a03..6ee8e58 100644 --- a/MloCombiner/obj/project.assets.json +++ b/MloCombiner/obj/project.assets.json @@ -66,7 +66,7 @@ "privateAssets": "all" } }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.402\\RuntimeIdentifierGraph.json" + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json" } } } diff --git a/MloCombiner/obj/project.nuget.cache b/MloCombiner/obj/project.nuget.cache index fdafa73..1732156 100644 --- a/MloCombiner/obj/project.nuget.cache +++ b/MloCombiner/obj/project.nuget.cache @@ -1,6 +1,6 @@ { "version": 2, - "dgSpecHash": "rHtO+w9Iuk/xyW12OSFhKZH6ENc7pBflPOYLvZ24c7VW+gnAbXDf5ijCR1hfT/GJe0XVmpQagexTxJRJOW4wcw==", + "dgSpecHash": "2wX3M0MsGtT6Me6OWkYrY1l2EMxJVixwPuEDif03fRYKFxiCUCKJC/dFntndeYLGwHVAI+Qw7NPN4syjBulL0g==", "success": true, "projectFilePath": "D:\\Programmierstuff\\FiveM\\MloCombiner\\MloCombiner.csproj", "expectedPackageFiles": [], diff --git a/MloCombiner/obj/project.packagespec.json b/MloCombiner/obj/project.packagespec.json index 2c240d4..25d121d 100644 --- a/MloCombiner/obj/project.packagespec.json +++ b/MloCombiner/obj/project.packagespec.json @@ -1 +1 @@ -"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\MloCombiner\\MloCombiner.csproj","projectName":"MloCombiner","projectPath":"D:\\Programmierstuff\\FiveM\\MloCombiner\\MloCombiner.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\MloCombiner\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\6.0.402\\RuntimeIdentifierGraph.json"}}"runtimes":{"":{"#import":[]}} \ No newline at end of file +"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\MloCombiner\\MloCombiner.csproj","projectName":"MloCombiner","projectPath":"D:\\Programmierstuff\\FiveM\\MloCombiner\\MloCombiner.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\MloCombiner\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json"}}"runtimes":{"":{"#import":[]}} \ No newline at end of file diff --git a/MloCombiner/obj/rider.project.restore.info b/MloCombiner/obj/rider.project.restore.info index 4fe57a9..18a9a65 100644 --- a/MloCombiner/obj/rider.project.restore.info +++ b/MloCombiner/obj/rider.project.restore.info @@ -1 +1 @@ -16668109765853863 \ No newline at end of file +16688631626454512 \ No newline at end of file diff --git a/MloFinder/bin/Release/net5.0/MloFinder.dll b/MloFinder/bin/Release/net5.0/MloFinder.dll index c75d4db..fda6a41 100644 Binary files a/MloFinder/bin/Release/net5.0/MloFinder.dll and b/MloFinder/bin/Release/net5.0/MloFinder.dll differ diff --git a/MloFinder/bin/Release/net5.0/MloFinder.pdb b/MloFinder/bin/Release/net5.0/MloFinder.pdb index 7ed8b08..7a396a0 100644 Binary files a/MloFinder/bin/Release/net5.0/MloFinder.pdb and b/MloFinder/bin/Release/net5.0/MloFinder.pdb differ diff --git a/MloFinder/obj/MloFinder.csproj.nuget.g.props b/MloFinder/obj/MloFinder.csproj.nuget.g.props index e86b4ab..7f9411d 100644 --- a/MloFinder/obj/MloFinder.csproj.nuget.g.props +++ b/MloFinder/obj/MloFinder.csproj.nuget.g.props @@ -7,7 +7,7 @@ $(UserProfile)\.nuget\packages\ C:\Users\leon\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages PackageReference - 6.3.1 + 6.4.0 diff --git a/MloFinder/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/MloFinder/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs index 2f7e5ec..3b1554c 100644 --- a/MloFinder/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs +++ b/MloFinder/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ // using System; using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")] +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = ".NET 5.0")] diff --git a/MloFinder/obj/Release/net5.0/MloFinder.GeneratedMSBuildEditorConfig.editorconfig b/MloFinder/obj/Release/net5.0/MloFinder.GeneratedMSBuildEditorConfig.editorconfig index bfb87a0..5bfe9f2 100644 --- a/MloFinder/obj/Release/net5.0/MloFinder.GeneratedMSBuildEditorConfig.editorconfig +++ b/MloFinder/obj/Release/net5.0/MloFinder.GeneratedMSBuildEditorConfig.editorconfig @@ -5,6 +5,7 @@ build_property.UsingMicrosoftNETSdkWeb = build_property.ProjectTypeGuids = build_property.InvariantGlobalization = build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = MloFinder build_property.ProjectDir = D:\Programmierstuff\FiveM\MloFinder\ diff --git a/MloFinder/obj/Release/net5.0/MloFinder.assets.cache b/MloFinder/obj/Release/net5.0/MloFinder.assets.cache index 543aa9f..c0be8ae 100644 Binary files a/MloFinder/obj/Release/net5.0/MloFinder.assets.cache and b/MloFinder/obj/Release/net5.0/MloFinder.assets.cache differ diff --git a/MloFinder/obj/Release/net5.0/MloFinder.dll b/MloFinder/obj/Release/net5.0/MloFinder.dll index c75d4db..fda6a41 100644 Binary files a/MloFinder/obj/Release/net5.0/MloFinder.dll and b/MloFinder/obj/Release/net5.0/MloFinder.dll differ diff --git a/MloFinder/obj/Release/net5.0/MloFinder.pdb b/MloFinder/obj/Release/net5.0/MloFinder.pdb index 7ed8b08..7a396a0 100644 Binary files a/MloFinder/obj/Release/net5.0/MloFinder.pdb and b/MloFinder/obj/Release/net5.0/MloFinder.pdb differ diff --git a/MloFinder/obj/project.packagespec.json b/MloFinder/obj/project.packagespec.json new file mode 100644 index 0000000..8264f24 --- /dev/null +++ b/MloFinder/obj/project.packagespec.json @@ -0,0 +1 @@ +"restore":{"projectUniqueName":"D:\\Programmierstuff\\FiveM\\MloFinder\\MloFinder.csproj","projectName":"MloFinder","projectPath":"D:\\Programmierstuff\\FiveM\\MloFinder\\MloFinder.csproj","outputPath":"D:\\Programmierstuff\\FiveM\\MloFinder\\obj\\","projectStyle":"PackageReference","fallbackFolders":["C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"],"originalTargetFrameworks":["net5.0"],"sources":{"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\":{},"https://api.nuget.org/v3/index.json":{}},"frameworks":{"net5.0":{"targetAlias":"net5.0","projectReferences":{}}},"warningProperties":{"warnAsError":["NU1605"]}}"frameworks":{"net5.0":{"targetAlias":"net5.0","dependencies":{"SharpDX.Mathematics":{"target":"Package","version":"[4.2.0, )"}},"imports":["net461","net462","net47","net471","net472","net48","net481"],"assetTargetFallback":true,"warn":true,"frameworkReferences":{"Microsoft.NETCore.App":{"privateAssets":"all"}},"runtimeIdentifierGraphPath":"C:\\Program Files\\dotnet\\sdk\\7.0.100\\RuntimeIdentifierGraph.json"}} \ No newline at end of file diff --git a/MloFinder/obj/rider.project.restore.info b/MloFinder/obj/rider.project.restore.info new file mode 100644 index 0000000..c9b1dd2 --- /dev/null +++ b/MloFinder/obj/rider.project.restore.info @@ -0,0 +1 @@ +16688631633807807 \ No newline at end of file