More bindings and completed D3D generation

This commit is contained in:
Amer Koleci
2022-09-05 11:32:20 +02:00
parent 329416d510
commit 19489dfb08
7 changed files with 4324 additions and 148 deletions

View File

@@ -61,6 +61,8 @@ public class ApiFunction
public string Name { get; set; } public string Name { get; set; }
public bool SetLastError { get; set; } public bool SetLastError { get; set; }
public ApiDataType ReturnType { get; set; } public ApiDataType ReturnType { get; set; }
public List<object> ReturnAttrs { get; set; }
public IList<ApiParameter> Params { get; set; } = new List<ApiParameter>(); public IList<ApiParameter> Params { get; set; } = new List<ApiParameter>();
public List<object> Attrs { get; set; } public List<object> Attrs { get; set; }
@@ -97,6 +99,7 @@ public class ApiType
{ {
public string Name { get; set; } public string Name { get; set; }
public string Kind { get; set; } public string Kind { get; set; }
public List<object> Attrs { get; set; }
// Enum // Enum
public bool Flags { get; set; } public bool Flags { get; set; }
@@ -113,6 +116,12 @@ public class ApiType
public string Guid { get; set; } public string Guid { get; set; }
public ApiDataType Interface { get; set; } public ApiDataType Interface { get; set; }
public IList<ApiFunction> Methods { get; set; } = new List<ApiFunction>(); public IList<ApiFunction> Methods { get; set; } = new List<ApiFunction>();
// Function
public bool SetLastError { get; set; }
public ApiDataType ReturnType { get; set; }
public List<object> ReturnAttrs { get; set; }
public IList<ApiParameter> Params { get; set; } = new List<ApiParameter>();
} }
public sealed class ApiData public sealed class ApiData

View File

@@ -6,6 +6,7 @@ using System.Text.RegularExpressions;
using System.Xml; using System.Xml;
using MessagePack; using MessagePack;
using Microsoft.Windows.SDK.Win32Docs; using Microsoft.Windows.SDK.Win32Docs;
using Newtonsoft.Json.Linq;
namespace Generator; namespace Generator;
@@ -33,6 +34,21 @@ public static class DocGenerator
{ {
if (key.StartsWith(prefix) || key.StartsWith("I" + prefix)) if (key.StartsWith(prefix) || key.StartsWith("I" + prefix))
{ {
if (prefix == "D3D")
{
if (key.StartsWith("D3D10") ||
key.StartsWith("D3D11") ||
key.StartsWith("D3DX11") ||
key.StartsWith("D3D12") ||
key.StartsWith("ID3D10") ||
key.StartsWith("ID3D11") ||
key.StartsWith("ID3D12") ||
key.StartsWith("ID3DX"))
{
continue;
}
}
documentationData.Add(key, data[key]); documentationData.Add(key, data[key]);
} }
} }

View File

@@ -86,6 +86,14 @@ public static class Program
{ "D3D_TESSELLATOR_OUTPUT_PRIMITIVE", "D3D_TESSELLATOR_OUTPUT" }, { "D3D_TESSELLATOR_OUTPUT_PRIMITIVE", "D3D_TESSELLATOR_OUTPUT" },
{ "D3D_REGISTER_COMPONENT_TYPE", "D3D_REGISTER_COMPONENT" }, { "D3D_REGISTER_COMPONENT_TYPE", "D3D_REGISTER_COMPONENT" },
{ "D3D_RESOURCE_RETURN_TYPE", "D3D_RETURN_TYPE" }, { "D3D_RESOURCE_RETURN_TYPE", "D3D_RETURN_TYPE" },
{ "D3D_CBUFFER_TYPE", "D3D_CT" },
{ "D3D_INCLUDE_TYPE", "D3D_INCLUDE" },
{ "D3D_SHADER_VARIABLE_CLASS", "D3D_SVC" },
{ "D3D_SHADER_VARIABLE_FLAGS", "D3D_SVF" },
{ "D3D_SHADER_VARIABLE_TYPE", "D3D_SVT" },
{ "D3D_SHADER_INPUT_FLAGS", "D3D_SIF" },
{ "D3D_SHADER_INPUT_TYPE", "D3D_SIT" },
{ "D3D_SHADER_CBUFFER_FLAGS", "D3D_CBF" },
}; };
private static readonly Dictionary<string, string> s_partRenames = new() private static readonly Dictionary<string, string> s_partRenames = new()
@@ -98,6 +106,8 @@ public static class Program
{ "TRIANGLESTRIP", "TriangleStrip" }, { "TRIANGLESTRIP", "TriangleStrip" },
{ "PATCHLIST", "PatchList" }, { "PATCHLIST", "PatchList" },
{ "CBUFFER", "CBuffer" },
{ "TBUFFER", "TBuffer" },
{ "NOPERSPECTIVE", "NoPerspective" }, { "NOPERSPECTIVE", "NoPerspective" },
{ "TEXTURE1D", "Texture1D" }, { "TEXTURE1D", "Texture1D" },
{ "TEXTURE1DARRAY", "Texture1DArray" }, { "TEXTURE1DARRAY", "Texture1DArray" },
@@ -108,7 +118,43 @@ public static class Program
{ "TEXTURE3D", "Texture3D" }, { "TEXTURE3D", "Texture3D" },
{ "TEXTURECUBE", "TextureCube" }, { "TEXTURECUBE", "TextureCube" },
{ "TEXTURECUBEARRAY", "TextureCubeArray" }, { "TEXTURECUBEARRAY", "TextureCubeArray" },
{ "RWTEXTURE1D", "RwTexture1D" },
{ "RWTEXTURE1DARRAY", "RwTexture1DArray" },
{ "RWTEXTURE2D", "RwTexture2D" },
{ "RWTEXTURE2DARRAY", "RwTexture2DArray" },
{ "RWTEXTURE3D", "RwTexture3D" },
{ "RWBUFFER", "RwBuffer" },
{ "BUFFEREX", "BufferExtended" }, { "BUFFEREX", "BufferExtended" },
{ "USERPACKED", "UserPacked" },
{ "SAMPLER1D", "Sampler1D" },
{ "SAMPLER2D", "Sampler2D" },
{ "SAMPLER3D", "Sampler3D" },
{ "SAMPLERCUBE", "SamplerCube" },
{ "RWTYPED", "RwTyped" },
{ "RWSTRUCTURED", "RwStructured" },
{ "BYTEADDRESS", "ByteAddress" },
{ "RWBYTEADDRESS", "RwByteAddress" },
{ "RTACCELERATIONSTRUCTURE", "RtAccelerationStructure" },
{ "FEEDBACKTEXTURE", "FeedbackTexture" },
{ "TESSFACTOR", "TessFactor" },
{ "SHADINGRATE", "ShadingRate" },
{ "CULLPRIMITIVE", "CullPrimitive" },
{ "VERTEXSHADER", "VertexShader" },
{ "PIXELSHADER", "PixelShader" },
{ "VERTEXFRAGMENT", "VertexFragment" },
{ "PIXELFRAGMENT", "PixelFragment" },
{ "GEOMETRYSHADER", "GeometryShader" },
{ "DOMAINSHADER", "DomainShader" },
{ "COMPUTESHADER", "ComputeShader" },
{ "DEPTHSTENCIL", "DepthStencil" },
{ "RENDERTARGETVIEW", "RenderTargetView" },
{ "DEPTHSTENCILVIEW", "DepthStencilView" },
{ "MIN8FLOAT", "Min8Float" },
{ "MIN10FLOAT", "Min10Float" },
{ "MIN16FLOAT", "Min16Float" },
{ "MIN12INT", "Min12Int" },
{ "MIN16INT", "Min16Int" },
{ "MIN16UINT", "Min16Uint" },
}; };
private static readonly Dictionary<string, string> s_knownEnumValueNames = new() private static readonly Dictionary<string, string> s_knownEnumValueNames = new()
@@ -198,8 +244,8 @@ public static class Program
} }
// Generate docs // Generate docs
DocGenerator.Generate(new[] { "D3D" }, Path.Combine(outputPath, "Direct3D.xml"));
DocGenerator.Generate(new[] { "DXGI" }, Path.Combine(outputPath, "Dxgi.xml")); DocGenerator.Generate(new[] { "DXGI" }, Path.Combine(outputPath, "Dxgi.xml"));
//DocGenerator.Generate(new[] { "D3D" }, Path.Combine(outputPath, "Direct3D.xml"));
DocGenerator.Generate(new[] { "D3D11" }, Path.Combine(outputPath, "D3D11.xml")); DocGenerator.Generate(new[] { "D3D11" }, Path.Combine(outputPath, "D3D11.xml"));
return 0; return 0;
} }
@@ -409,15 +455,17 @@ public static class Program
if (s_generateUnmanagedDocs) if (s_generateUnmanagedDocs)
writer.WriteLine($"/// <unmanaged>{enumType.Name}</unmanaged>"); writer.WriteLine($"/// <unmanaged>{enumType.Name}</unmanaged>");
if (enumType.Flags) bool isFlags = false;
if (enumType.Flags || csTypeName.EndsWith("Flags"))
{ {
isFlags = true;
writer.WriteLine("[Flags]"); writer.WriteLine("[Flags]");
} }
bool noneAdded = false; bool noneAdded = false;
using (writer.PushBlock($"public enum {csTypeName} : {baseTypeName}")) using (writer.PushBlock($"public enum {csTypeName} : {baseTypeName}"))
{ {
if (enumType.Flags && if (isFlags &&
!enumType.Values.Any(item => GetPrettyFieldName(item.Name, enumPrefix) == "None")) !enumType.Values.Any(item => GetPrettyFieldName(item.Name, enumPrefix) == "None"))
{ {
writer.WriteLine("None = 0,"); writer.WriteLine("None = 0,");
@@ -432,11 +480,12 @@ public static class Program
continue; continue;
} }
// Ignore D3D10 and D3D11 in D3D // Ignore D3D10, D3D11 and D3D12 in D3D
if (enumType.Name.StartsWith("D3D_")) if (enumType.Name.StartsWith("D3D_"))
{ {
if (value.Name.StartsWith("D3D10_") || if (value.Name.StartsWith("D3D10_") ||
value.Name.StartsWith("D3D11_")) value.Name.StartsWith("D3D11_") ||
value.Name.StartsWith("D3D12_"))
{ {
continue; continue;
} }
@@ -444,7 +493,7 @@ public static class Program
string enumValueName = GetPrettyFieldName(value.Name, enumPrefix); string enumValueName = GetPrettyFieldName(value.Name, enumPrefix);
if (enumType.Name == "D3D_PRIMITIVE_TOPOLOGY") if (enumType.Name == "D3D_SHADER_VARIABLE_TYPE")
{ {
} }
@@ -568,7 +617,6 @@ public static class Program
writer.WriteLine(); writer.WriteLine();
} }
} }
writer.WriteLine(); writer.WriteLine();
} }
@@ -728,10 +776,13 @@ public static class Program
foreach (var parameter in method.Params) foreach (var parameter in method.Params)
{ {
bool asPointer = false; bool asPointer = false;
string parameterType = default;
if (parameter.Type.Kind == "ApiRef") if (parameter.Type.Kind == "ApiRef")
{ {
if (parameter.Type.TargetKind == "FunctionPointer") if (parameter.Type.TargetKind == "FunctionPointer")
{ {
var functionType = api.Types.First(item => item.Name == parameter.Type.Name && item.Kind == "FunctionPointer");
parameterType = "delegate* unmanaged[Stdcall]<void*, void>";
} }
else else
{ {
@@ -743,7 +794,11 @@ public static class Program
} }
} }
string parameterType = GetTypeName(parameter.Type, asPointer); if (string.IsNullOrEmpty(parameterType))
{
parameterType = GetTypeName(parameter.Type, asPointer);
}
parameterType = NormalizeTypeName(writer.Api, parameterType); parameterType = NormalizeTypeName(writer.Api, parameterType);
string parameterName = parameter.Name; string parameterName = parameter.Name;
@@ -890,21 +945,19 @@ public static class Program
} }
else else
{ {
if (part.Equals("DESC", StringComparison.OrdinalIgnoreCase)) if (s_partRenames.TryGetValue(part, out string? partRemap))
{
sb.Append(partRemap!);
}
else if (part.StartsWith("DESC", StringComparison.OrdinalIgnoreCase))
{ {
sb.Append("Description"); sb.Append("Description");
} string numericPart = part.Replace("DESC", string.Empty);
else if (part.Equals("DESC1", StringComparison.OrdinalIgnoreCase)) if (string.IsNullOrEmpty(numericPart) == false &&
int.TryParse(numericPart, out int numericValue))
{ {
sb.Append("Description1"); sb.Append(numericValue);
} }
else if (part.Equals("DESC2", StringComparison.OrdinalIgnoreCase))
{
sb.Append("Description2");
}
else if (part.Equals("DESC3", StringComparison.OrdinalIgnoreCase))
{
sb.Append("Description3");
} }
else else
{ {

File diff suppressed because it is too large Load Diff

View File

@@ -440,10 +440,10 @@ public enum IncludeType : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_INCLUDE_TYPE::D3D_INCLUDE_LOCAL"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_INCLUDE_TYPE::D3D_INCLUDE_LOCAL"]/*' />
/// <unmanaged>D3D_INCLUDE_LOCAL</unmanaged> /// <unmanaged>D3D_INCLUDE_LOCAL</unmanaged>
D3D_INCLUDE_LOCAL = 0, Local = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_INCLUDE_TYPE::D3D_INCLUDE_SYSTEM"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_INCLUDE_TYPE::D3D_INCLUDE_SYSTEM"]/*' />
/// <unmanaged>D3D_INCLUDE_SYSTEM</unmanaged> /// <unmanaged>D3D_INCLUDE_SYSTEM</unmanaged>
D3D_INCLUDE_SYSTEM = 1, System = 1,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS"]/*' />
@@ -452,46 +452,48 @@ public enum ShaderVariableClass : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_SCALAR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_SCALAR"]/*' />
/// <unmanaged>D3D_SVC_SCALAR</unmanaged> /// <unmanaged>D3D_SVC_SCALAR</unmanaged>
D3D_SVC_SCALAR = 0, Scalar = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_VECTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_VECTOR"]/*' />
/// <unmanaged>D3D_SVC_VECTOR</unmanaged> /// <unmanaged>D3D_SVC_VECTOR</unmanaged>
D3D_SVC_VECTOR = 1, Vector = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_MATRIX_ROWS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_MATRIX_ROWS"]/*' />
/// <unmanaged>D3D_SVC_MATRIX_ROWS</unmanaged> /// <unmanaged>D3D_SVC_MATRIX_ROWS</unmanaged>
D3D_SVC_MATRIX_ROWS = 2, MatrixRows = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_MATRIX_COLUMNS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_MATRIX_COLUMNS"]/*' />
/// <unmanaged>D3D_SVC_MATRIX_COLUMNS</unmanaged> /// <unmanaged>D3D_SVC_MATRIX_COLUMNS</unmanaged>
D3D_SVC_MATRIX_COLUMNS = 3, MatrixColumns = 3,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_OBJECT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_OBJECT"]/*' />
/// <unmanaged>D3D_SVC_OBJECT</unmanaged> /// <unmanaged>D3D_SVC_OBJECT</unmanaged>
D3D_SVC_OBJECT = 4, Object = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_STRUCT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_STRUCT"]/*' />
/// <unmanaged>D3D_SVC_STRUCT</unmanaged> /// <unmanaged>D3D_SVC_STRUCT</unmanaged>
D3D_SVC_STRUCT = 5, Struct = 5,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_INTERFACE_CLASS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_INTERFACE_CLASS"]/*' />
/// <unmanaged>D3D_SVC_INTERFACE_CLASS</unmanaged> /// <unmanaged>D3D_SVC_INTERFACE_CLASS</unmanaged>
D3D_SVC_INTERFACE_CLASS = 6, InterfaceClass = 6,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_INTERFACE_POINTER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_CLASS::D3D_SVC_INTERFACE_POINTER"]/*' />
/// <unmanaged>D3D_SVC_INTERFACE_POINTER</unmanaged> /// <unmanaged>D3D_SVC_INTERFACE_POINTER</unmanaged>
D3D_SVC_INTERFACE_POINTER = 7, InterfacePointer = 7,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS"]/*' />
/// <unmanaged>D3D_SHADER_VARIABLE_FLAGS</unmanaged> /// <unmanaged>D3D_SHADER_VARIABLE_FLAGS</unmanaged>
[Flags]
public enum ShaderVariableFlags : int public enum ShaderVariableFlags : int
{ {
None = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_USERPACKED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_USERPACKED"]/*' />
/// <unmanaged>D3D_SVF_USERPACKED</unmanaged> /// <unmanaged>D3D_SVF_USERPACKED</unmanaged>
D3D_SVF_USERPACKED = 1, UserPacked = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_USED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_USED"]/*' />
/// <unmanaged>D3D_SVF_USED</unmanaged> /// <unmanaged>D3D_SVF_USED</unmanaged>
D3D_SVF_USED = 2, Used = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_INTERFACE_POINTER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_INTERFACE_POINTER"]/*' />
/// <unmanaged>D3D_SVF_INTERFACE_POINTER</unmanaged> /// <unmanaged>D3D_SVF_INTERFACE_POINTER</unmanaged>
D3D_SVF_INTERFACE_POINTER = 4, InterfacePointer = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_INTERFACE_PARAMETER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_FLAGS::D3D_SVF_INTERFACE_PARAMETER"]/*' />
/// <unmanaged>D3D_SVF_INTERFACE_PARAMETER</unmanaged> /// <unmanaged>D3D_SVF_INTERFACE_PARAMETER</unmanaged>
D3D_SVF_INTERFACE_PARAMETER = 8, InterfaceParameter = 8,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE"]/*' />
@@ -500,217 +502,219 @@ public enum ShaderVariableType : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VOID"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VOID"]/*' />
/// <unmanaged>D3D_SVT_VOID</unmanaged> /// <unmanaged>D3D_SVT_VOID</unmanaged>
D3D_SVT_VOID = 0, Void = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BOOL"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BOOL"]/*' />
/// <unmanaged>D3D_SVT_BOOL</unmanaged> /// <unmanaged>D3D_SVT_BOOL</unmanaged>
D3D_SVT_BOOL = 1, Bool = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT"]/*' />
/// <unmanaged>D3D_SVT_INT</unmanaged> /// <unmanaged>D3D_SVT_INT</unmanaged>
D3D_SVT_INT = 2, Int = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_FLOAT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_FLOAT"]/*' />
/// <unmanaged>D3D_SVT_FLOAT</unmanaged> /// <unmanaged>D3D_SVT_FLOAT</unmanaged>
D3D_SVT_FLOAT = 3, Float = 3,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_STRING"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_STRING"]/*' />
/// <unmanaged>D3D_SVT_STRING</unmanaged> /// <unmanaged>D3D_SVT_STRING</unmanaged>
D3D_SVT_STRING = 4, String = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE</unmanaged>
D3D_SVT_TEXTURE = 5, Texture = 5,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE1D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE1D"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE1D</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE1D</unmanaged>
D3D_SVT_TEXTURE1D = 6, Texture1D = 6,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2D"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE2D</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE2D</unmanaged>
D3D_SVT_TEXTURE2D = 7, Texture2D = 7,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE3D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE3D"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE3D</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE3D</unmanaged>
D3D_SVT_TEXTURE3D = 8, Texture3D = 8,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURECUBE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURECUBE"]/*' />
/// <unmanaged>D3D_SVT_TEXTURECUBE</unmanaged> /// <unmanaged>D3D_SVT_TEXTURECUBE</unmanaged>
D3D_SVT_TEXTURECUBE = 9, TextureCube = 9,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER"]/*' />
/// <unmanaged>D3D_SVT_SAMPLER</unmanaged> /// <unmanaged>D3D_SVT_SAMPLER</unmanaged>
D3D_SVT_SAMPLER = 10, Sampler = 10,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER1D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER1D"]/*' />
/// <unmanaged>D3D_SVT_SAMPLER1D</unmanaged> /// <unmanaged>D3D_SVT_SAMPLER1D</unmanaged>
D3D_SVT_SAMPLER1D = 11, Sampler1D = 11,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER2D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER2D"]/*' />
/// <unmanaged>D3D_SVT_SAMPLER2D</unmanaged> /// <unmanaged>D3D_SVT_SAMPLER2D</unmanaged>
D3D_SVT_SAMPLER2D = 12, Sampler2D = 12,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER3D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLER3D"]/*' />
/// <unmanaged>D3D_SVT_SAMPLER3D</unmanaged> /// <unmanaged>D3D_SVT_SAMPLER3D</unmanaged>
D3D_SVT_SAMPLER3D = 13, Sampler3D = 13,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLERCUBE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_SAMPLERCUBE"]/*' />
/// <unmanaged>D3D_SVT_SAMPLERCUBE</unmanaged> /// <unmanaged>D3D_SVT_SAMPLERCUBE</unmanaged>
D3D_SVT_SAMPLERCUBE = 14, SamplerCube = 14,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_PIXELSHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_PIXELSHADER"]/*' />
/// <unmanaged>D3D_SVT_PIXELSHADER</unmanaged> /// <unmanaged>D3D_SVT_PIXELSHADER</unmanaged>
D3D_SVT_PIXELSHADER = 15, PixelShader = 15,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VERTEXSHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VERTEXSHADER"]/*' />
/// <unmanaged>D3D_SVT_VERTEXSHADER</unmanaged> /// <unmanaged>D3D_SVT_VERTEXSHADER</unmanaged>
D3D_SVT_VERTEXSHADER = 16, VertexShader = 16,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_PIXELFRAGMENT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_PIXELFRAGMENT"]/*' />
/// <unmanaged>D3D_SVT_PIXELFRAGMENT</unmanaged> /// <unmanaged>D3D_SVT_PIXELFRAGMENT</unmanaged>
D3D_SVT_PIXELFRAGMENT = 17, PixelFragment = 17,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VERTEXFRAGMENT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_VERTEXFRAGMENT"]/*' />
/// <unmanaged>D3D_SVT_VERTEXFRAGMENT</unmanaged> /// <unmanaged>D3D_SVT_VERTEXFRAGMENT</unmanaged>
D3D_SVT_VERTEXFRAGMENT = 18, VertexFragment = 18,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT"]/*' />
/// <unmanaged>D3D_SVT_UINT</unmanaged> /// <unmanaged>D3D_SVT_UINT</unmanaged>
D3D_SVT_UINT = 19, Uint = 19,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT8"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT8"]/*' />
/// <unmanaged>D3D_SVT_UINT8</unmanaged> /// <unmanaged>D3D_SVT_UINT8</unmanaged>
D3D_SVT_UINT8 = 20, Uint8 = 20,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_GEOMETRYSHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_GEOMETRYSHADER"]/*' />
/// <unmanaged>D3D_SVT_GEOMETRYSHADER</unmanaged> /// <unmanaged>D3D_SVT_GEOMETRYSHADER</unmanaged>
D3D_SVT_GEOMETRYSHADER = 21, GeometryShader = 21,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RASTERIZER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RASTERIZER"]/*' />
/// <unmanaged>D3D_SVT_RASTERIZER</unmanaged> /// <unmanaged>D3D_SVT_RASTERIZER</unmanaged>
D3D_SVT_RASTERIZER = 22, Rasterizer = 22,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DEPTHSTENCIL"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DEPTHSTENCIL"]/*' />
/// <unmanaged>D3D_SVT_DEPTHSTENCIL</unmanaged> /// <unmanaged>D3D_SVT_DEPTHSTENCIL</unmanaged>
D3D_SVT_DEPTHSTENCIL = 23, DepthStencil = 23,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BLEND"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BLEND"]/*' />
/// <unmanaged>D3D_SVT_BLEND</unmanaged> /// <unmanaged>D3D_SVT_BLEND</unmanaged>
D3D_SVT_BLEND = 24, Blend = 24,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_BUFFER</unmanaged>
D3D_SVT_BUFFER = 25, Buffer = 25,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_CBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_CBUFFER"]/*' />
/// <unmanaged>D3D_SVT_CBUFFER</unmanaged> /// <unmanaged>D3D_SVT_CBUFFER</unmanaged>
D3D_SVT_CBUFFER = 26, CBuffer = 26,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TBUFFER"]/*' />
/// <unmanaged>D3D_SVT_TBUFFER</unmanaged> /// <unmanaged>D3D_SVT_TBUFFER</unmanaged>
D3D_SVT_TBUFFER = 27, TBuffer = 27,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE1DARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE1DARRAY"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE1DARRAY</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE1DARRAY</unmanaged>
D3D_SVT_TEXTURE1DARRAY = 28, Texture1DArray = 28,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DARRAY"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE2DARRAY</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE2DARRAY</unmanaged>
D3D_SVT_TEXTURE2DARRAY = 29, Texture2DArray = 29,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RENDERTARGETVIEW"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RENDERTARGETVIEW"]/*' />
/// <unmanaged>D3D_SVT_RENDERTARGETVIEW</unmanaged> /// <unmanaged>D3D_SVT_RENDERTARGETVIEW</unmanaged>
D3D_SVT_RENDERTARGETVIEW = 30, RenderTargetView = 30,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DEPTHSTENCILVIEW"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DEPTHSTENCILVIEW"]/*' />
/// <unmanaged>D3D_SVT_DEPTHSTENCILVIEW</unmanaged> /// <unmanaged>D3D_SVT_DEPTHSTENCILVIEW</unmanaged>
D3D_SVT_DEPTHSTENCILVIEW = 31, DepthStencilView = 31,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DMS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DMS"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE2DMS</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE2DMS</unmanaged>
D3D_SVT_TEXTURE2DMS = 32, Texture2DMs = 32,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DMSARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURE2DMSARRAY"]/*' />
/// <unmanaged>D3D_SVT_TEXTURE2DMSARRAY</unmanaged> /// <unmanaged>D3D_SVT_TEXTURE2DMSARRAY</unmanaged>
D3D_SVT_TEXTURE2DMSARRAY = 33, Texture2DMsArray = 33,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURECUBEARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_TEXTURECUBEARRAY"]/*' />
/// <unmanaged>D3D_SVT_TEXTURECUBEARRAY</unmanaged> /// <unmanaged>D3D_SVT_TEXTURECUBEARRAY</unmanaged>
D3D_SVT_TEXTURECUBEARRAY = 34, TextureCubeArray = 34,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_HULLSHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_HULLSHADER"]/*' />
/// <unmanaged>D3D_SVT_HULLSHADER</unmanaged> /// <unmanaged>D3D_SVT_HULLSHADER</unmanaged>
D3D_SVT_HULLSHADER = 35, Hullshader = 35,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DOMAINSHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DOMAINSHADER"]/*' />
/// <unmanaged>D3D_SVT_DOMAINSHADER</unmanaged> /// <unmanaged>D3D_SVT_DOMAINSHADER</unmanaged>
D3D_SVT_DOMAINSHADER = 36, DomainShader = 36,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INTERFACE_POINTER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INTERFACE_POINTER"]/*' />
/// <unmanaged>D3D_SVT_INTERFACE_POINTER</unmanaged> /// <unmanaged>D3D_SVT_INTERFACE_POINTER</unmanaged>
D3D_SVT_INTERFACE_POINTER = 37, InterfacePointer = 37,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_COMPUTESHADER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_COMPUTESHADER"]/*' />
/// <unmanaged>D3D_SVT_COMPUTESHADER</unmanaged> /// <unmanaged>D3D_SVT_COMPUTESHADER</unmanaged>
D3D_SVT_COMPUTESHADER = 38, ComputeShader = 38,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DOUBLE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_DOUBLE"]/*' />
/// <unmanaged>D3D_SVT_DOUBLE</unmanaged> /// <unmanaged>D3D_SVT_DOUBLE</unmanaged>
D3D_SVT_DOUBLE = 39, Double = 39,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE1D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE1D"]/*' />
/// <unmanaged>D3D_SVT_RWTEXTURE1D</unmanaged> /// <unmanaged>D3D_SVT_RWTEXTURE1D</unmanaged>
D3D_SVT_RWTEXTURE1D = 40, RwTexture1D = 40,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE1DARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE1DARRAY"]/*' />
/// <unmanaged>D3D_SVT_RWTEXTURE1DARRAY</unmanaged> /// <unmanaged>D3D_SVT_RWTEXTURE1DARRAY</unmanaged>
D3D_SVT_RWTEXTURE1DARRAY = 41, RwTexture1DArray = 41,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE2D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE2D"]/*' />
/// <unmanaged>D3D_SVT_RWTEXTURE2D</unmanaged> /// <unmanaged>D3D_SVT_RWTEXTURE2D</unmanaged>
D3D_SVT_RWTEXTURE2D = 42, RwTexture2D = 42,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE2DARRAY"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE2DARRAY"]/*' />
/// <unmanaged>D3D_SVT_RWTEXTURE2DARRAY</unmanaged> /// <unmanaged>D3D_SVT_RWTEXTURE2DARRAY</unmanaged>
D3D_SVT_RWTEXTURE2DARRAY = 43, RwTexture2DArray = 43,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE3D"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWTEXTURE3D"]/*' />
/// <unmanaged>D3D_SVT_RWTEXTURE3D</unmanaged> /// <unmanaged>D3D_SVT_RWTEXTURE3D</unmanaged>
D3D_SVT_RWTEXTURE3D = 44, RwTexture3D = 44,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWBUFFER"]/*' />
/// <unmanaged>D3D_SVT_RWBUFFER</unmanaged> /// <unmanaged>D3D_SVT_RWBUFFER</unmanaged>
D3D_SVT_RWBUFFER = 45, RwBuffer = 45,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BYTEADDRESS_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_BYTEADDRESS_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_BYTEADDRESS_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_BYTEADDRESS_BUFFER</unmanaged>
D3D_SVT_BYTEADDRESS_BUFFER = 46, ByteAddressBuffer = 46,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWBYTEADDRESS_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWBYTEADDRESS_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_RWBYTEADDRESS_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_RWBYTEADDRESS_BUFFER</unmanaged>
D3D_SVT_RWBYTEADDRESS_BUFFER = 47, RwByteAddressBuffer = 47,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_STRUCTURED_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_STRUCTURED_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_STRUCTURED_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_STRUCTURED_BUFFER</unmanaged>
D3D_SVT_STRUCTURED_BUFFER = 48, StructuredBuffer = 48,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWSTRUCTURED_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_RWSTRUCTURED_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_RWSTRUCTURED_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_RWSTRUCTURED_BUFFER</unmanaged>
D3D_SVT_RWSTRUCTURED_BUFFER = 49, RwStructuredBuffer = 49,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_APPEND_STRUCTURED_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_APPEND_STRUCTURED_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_APPEND_STRUCTURED_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_APPEND_STRUCTURED_BUFFER</unmanaged>
D3D_SVT_APPEND_STRUCTURED_BUFFER = 50, AppendStructuredBuffer = 50,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_CONSUME_STRUCTURED_BUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_CONSUME_STRUCTURED_BUFFER"]/*' />
/// <unmanaged>D3D_SVT_CONSUME_STRUCTURED_BUFFER</unmanaged> /// <unmanaged>D3D_SVT_CONSUME_STRUCTURED_BUFFER</unmanaged>
D3D_SVT_CONSUME_STRUCTURED_BUFFER = 51, ConsumeStructuredBuffer = 51,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN8FLOAT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN8FLOAT"]/*' />
/// <unmanaged>D3D_SVT_MIN8FLOAT</unmanaged> /// <unmanaged>D3D_SVT_MIN8FLOAT</unmanaged>
D3D_SVT_MIN8FLOAT = 52, Min8Float = 52,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN10FLOAT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN10FLOAT"]/*' />
/// <unmanaged>D3D_SVT_MIN10FLOAT</unmanaged> /// <unmanaged>D3D_SVT_MIN10FLOAT</unmanaged>
D3D_SVT_MIN10FLOAT = 53, Min10Float = 53,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16FLOAT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16FLOAT"]/*' />
/// <unmanaged>D3D_SVT_MIN16FLOAT</unmanaged> /// <unmanaged>D3D_SVT_MIN16FLOAT</unmanaged>
D3D_SVT_MIN16FLOAT = 54, Min16Float = 54,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN12INT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN12INT"]/*' />
/// <unmanaged>D3D_SVT_MIN12INT</unmanaged> /// <unmanaged>D3D_SVT_MIN12INT</unmanaged>
D3D_SVT_MIN12INT = 55, Min12Int = 55,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16INT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16INT"]/*' />
/// <unmanaged>D3D_SVT_MIN16INT</unmanaged> /// <unmanaged>D3D_SVT_MIN16INT</unmanaged>
D3D_SVT_MIN16INT = 56, Min16Int = 56,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16UINT"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_MIN16UINT"]/*' />
/// <unmanaged>D3D_SVT_MIN16UINT</unmanaged> /// <unmanaged>D3D_SVT_MIN16UINT</unmanaged>
D3D_SVT_MIN16UINT = 57, Min16Uint = 57,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT16"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT16"]/*' />
/// <unmanaged>D3D_SVT_INT16</unmanaged> /// <unmanaged>D3D_SVT_INT16</unmanaged>
D3D_SVT_INT16 = 58, Int16 = 58,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT16"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT16"]/*' />
/// <unmanaged>D3D_SVT_UINT16</unmanaged> /// <unmanaged>D3D_SVT_UINT16</unmanaged>
D3D_SVT_UINT16 = 59, Uint16 = 59,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_FLOAT16"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_FLOAT16"]/*' />
/// <unmanaged>D3D_SVT_FLOAT16</unmanaged> /// <unmanaged>D3D_SVT_FLOAT16</unmanaged>
D3D_SVT_FLOAT16 = 60, Float16 = 60,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT64"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_INT64"]/*' />
/// <unmanaged>D3D_SVT_INT64</unmanaged> /// <unmanaged>D3D_SVT_INT64</unmanaged>
D3D_SVT_INT64 = 61, Int64 = 61,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT64"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_VARIABLE_TYPE::D3D_SVT_UINT64"]/*' />
/// <unmanaged>D3D_SVT_UINT64</unmanaged> /// <unmanaged>D3D_SVT_UINT64</unmanaged>
D3D_SVT_UINT64 = 62, Uint64 = 62,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS"]/*' />
/// <unmanaged>D3D_SHADER_INPUT_FLAGS</unmanaged> /// <unmanaged>D3D_SHADER_INPUT_FLAGS</unmanaged>
[Flags]
public enum ShaderInputFlags : int public enum ShaderInputFlags : int
{ {
None = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_USERPACKED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_USERPACKED"]/*' />
/// <unmanaged>D3D_SIF_USERPACKED</unmanaged> /// <unmanaged>D3D_SIF_USERPACKED</unmanaged>
D3D_SIF_USERPACKED = 1, UserPacked = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_COMPARISON_SAMPLER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_COMPARISON_SAMPLER"]/*' />
/// <unmanaged>D3D_SIF_COMPARISON_SAMPLER</unmanaged> /// <unmanaged>D3D_SIF_COMPARISON_SAMPLER</unmanaged>
D3D_SIF_COMPARISON_SAMPLER = 2, ComparisonSampler = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENT_0"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENT_0"]/*' />
/// <unmanaged>D3D_SIF_TEXTURE_COMPONENT_0</unmanaged> /// <unmanaged>D3D_SIF_TEXTURE_COMPONENT_0</unmanaged>
D3D_SIF_TEXTURE_COMPONENT_0 = 4, TextureComponent0 = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENT_1"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENT_1"]/*' />
/// <unmanaged>D3D_SIF_TEXTURE_COMPONENT_1</unmanaged> /// <unmanaged>D3D_SIF_TEXTURE_COMPONENT_1</unmanaged>
D3D_SIF_TEXTURE_COMPONENT_1 = 8, TextureComponent1 = 8,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENTS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_TEXTURE_COMPONENTS"]/*' />
/// <unmanaged>D3D_SIF_TEXTURE_COMPONENTS</unmanaged> /// <unmanaged>D3D_SIF_TEXTURE_COMPONENTS</unmanaged>
D3D_SIF_TEXTURE_COMPONENTS = 12, TextureComponents = 12,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_UNUSED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_FLAGS::D3D_SIF_UNUSED"]/*' />
/// <unmanaged>D3D_SIF_UNUSED</unmanaged> /// <unmanaged>D3D_SIF_UNUSED</unmanaged>
D3D_SIF_UNUSED = 16, Unused = 16,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE"]/*' />
@@ -719,73 +723,75 @@ public enum ShaderInputType : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_CBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_CBUFFER"]/*' />
/// <unmanaged>D3D_SIT_CBUFFER</unmanaged> /// <unmanaged>D3D_SIT_CBUFFER</unmanaged>
D3D_SIT_CBUFFER = 0, CBuffer = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_TBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_TBUFFER"]/*' />
/// <unmanaged>D3D_SIT_TBUFFER</unmanaged> /// <unmanaged>D3D_SIT_TBUFFER</unmanaged>
D3D_SIT_TBUFFER = 1, TBuffer = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_TEXTURE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_TEXTURE"]/*' />
/// <unmanaged>D3D_SIT_TEXTURE</unmanaged> /// <unmanaged>D3D_SIT_TEXTURE</unmanaged>
D3D_SIT_TEXTURE = 2, Texture = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_SAMPLER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_SAMPLER"]/*' />
/// <unmanaged>D3D_SIT_SAMPLER</unmanaged> /// <unmanaged>D3D_SIT_SAMPLER</unmanaged>
D3D_SIT_SAMPLER = 3, Sampler = 3,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWTYPED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWTYPED"]/*' />
/// <unmanaged>D3D_SIT_UAV_RWTYPED</unmanaged> /// <unmanaged>D3D_SIT_UAV_RWTYPED</unmanaged>
D3D_SIT_UAV_RWTYPED = 4, UavRwTyped = 4,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_STRUCTURED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_STRUCTURED"]/*' />
/// <unmanaged>D3D_SIT_STRUCTURED</unmanaged> /// <unmanaged>D3D_SIT_STRUCTURED</unmanaged>
D3D_SIT_STRUCTURED = 5, Structured = 5,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWSTRUCTURED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWSTRUCTURED"]/*' />
/// <unmanaged>D3D_SIT_UAV_RWSTRUCTURED</unmanaged> /// <unmanaged>D3D_SIT_UAV_RWSTRUCTURED</unmanaged>
D3D_SIT_UAV_RWSTRUCTURED = 6, UavRwStructured = 6,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_BYTEADDRESS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_BYTEADDRESS"]/*' />
/// <unmanaged>D3D_SIT_BYTEADDRESS</unmanaged> /// <unmanaged>D3D_SIT_BYTEADDRESS</unmanaged>
D3D_SIT_BYTEADDRESS = 7, ByteAddress = 7,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWBYTEADDRESS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWBYTEADDRESS"]/*' />
/// <unmanaged>D3D_SIT_UAV_RWBYTEADDRESS</unmanaged> /// <unmanaged>D3D_SIT_UAV_RWBYTEADDRESS</unmanaged>
D3D_SIT_UAV_RWBYTEADDRESS = 8, UavRwByteAddress = 8,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_APPEND_STRUCTURED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_APPEND_STRUCTURED"]/*' />
/// <unmanaged>D3D_SIT_UAV_APPEND_STRUCTURED</unmanaged> /// <unmanaged>D3D_SIT_UAV_APPEND_STRUCTURED</unmanaged>
D3D_SIT_UAV_APPEND_STRUCTURED = 9, UavAppendStructured = 9,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_CONSUME_STRUCTURED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_CONSUME_STRUCTURED"]/*' />
/// <unmanaged>D3D_SIT_UAV_CONSUME_STRUCTURED</unmanaged> /// <unmanaged>D3D_SIT_UAV_CONSUME_STRUCTURED</unmanaged>
D3D_SIT_UAV_CONSUME_STRUCTURED = 10, UavConsumeStructured = 10,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER"]/*' />
/// <unmanaged>D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER</unmanaged> /// <unmanaged>D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER</unmanaged>
D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER = 11, UavRwStructuredWithCounter = 11,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_RTACCELERATIONSTRUCTURE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_RTACCELERATIONSTRUCTURE"]/*' />
/// <unmanaged>D3D_SIT_RTACCELERATIONSTRUCTURE</unmanaged> /// <unmanaged>D3D_SIT_RTACCELERATIONSTRUCTURE</unmanaged>
D3D_SIT_RTACCELERATIONSTRUCTURE = 12, RtAccelerationStructure = 12,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_FEEDBACKTEXTURE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_INPUT_TYPE::D3D_SIT_UAV_FEEDBACKTEXTURE"]/*' />
/// <unmanaged>D3D_SIT_UAV_FEEDBACKTEXTURE</unmanaged> /// <unmanaged>D3D_SIT_UAV_FEEDBACKTEXTURE</unmanaged>
D3D_SIT_UAV_FEEDBACKTEXTURE = 13, UavFeedbackTexture = 13,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_CBUFFER_FLAGS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_CBUFFER_FLAGS"]/*' />
/// <unmanaged>D3D_SHADER_CBUFFER_FLAGS</unmanaged> /// <unmanaged>D3D_SHADER_CBUFFER_FLAGS</unmanaged>
public enum ShaderCbufferFlags : int [Flags]
public enum ShaderCBufferFlags : int
{ {
None = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_CBUFFER_FLAGS::D3D_CBF_USERPACKED"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_SHADER_CBUFFER_FLAGS::D3D_CBF_USERPACKED"]/*' />
/// <unmanaged>D3D_CBF_USERPACKED</unmanaged> /// <unmanaged>D3D_CBF_USERPACKED</unmanaged>
D3D_CBF_USERPACKED = 1, UserPacked = 1,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE"]/*' />
/// <unmanaged>D3D_CBUFFER_TYPE</unmanaged> /// <unmanaged>D3D_CBUFFER_TYPE</unmanaged>
public enum CbufferType : int public enum CBufferType : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_CBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_CBUFFER"]/*' />
/// <unmanaged>D3D_CT_CBUFFER</unmanaged> /// <unmanaged>D3D_CT_CBUFFER</unmanaged>
D3D_CT_CBUFFER = 0, CBuffer = 0,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_TBUFFER"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_TBUFFER"]/*' />
/// <unmanaged>D3D_CT_TBUFFER</unmanaged> /// <unmanaged>D3D_CT_TBUFFER</unmanaged>
D3D_CT_TBUFFER = 1, TBuffer = 1,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_INTERFACE_POINTERS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_INTERFACE_POINTERS"]/*' />
/// <unmanaged>D3D_CT_INTERFACE_POINTERS</unmanaged> /// <unmanaged>D3D_CT_INTERFACE_POINTERS</unmanaged>
D3D_CT_INTERFACE_POINTERS = 2, InterfacePointers = 2,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_RESOURCE_BIND_INFO"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_CBUFFER_TYPE::D3D_CT_RESOURCE_BIND_INFO"]/*' />
/// <unmanaged>D3D_CT_RESOURCE_BIND_INFO</unmanaged> /// <unmanaged>D3D_CT_RESOURCE_BIND_INFO</unmanaged>
D3D_CT_RESOURCE_BIND_INFO = 3, ResourceBindInfo = 3,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME"]/*' />
@@ -827,31 +833,31 @@ public enum Name : int
SampleIndex = 10, SampleIndex = 10,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR</unmanaged>
FinalQuadEdgeTessfactor = 11, FinalQuadEdgeTessFactor = 11,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR</unmanaged>
FinalQuadInsideTessfactor = 12, FinalQuadInsideTessFactor = 12,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR</unmanaged>
FinalTriEdgeTessfactor = 13, FinalTriEdgeTessFactor = 13,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR</unmanaged>
FinalTriInsideTessfactor = 14, FinalTriInsideTessFactor = 14,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR</unmanaged>
FinalLineDetailTessfactor = 15, FinalLineDetailTessFactor = 15,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR"]/*' />
/// <unmanaged>D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR</unmanaged> /// <unmanaged>D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR</unmanaged>
FinalLineDensityTessfactor = 16, FinalLineDensityTessFactor = 16,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_BARYCENTRICS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_BARYCENTRICS"]/*' />
/// <unmanaged>D3D_NAME_BARYCENTRICS</unmanaged> /// <unmanaged>D3D_NAME_BARYCENTRICS</unmanaged>
Barycentrics = 23, Barycentrics = 23,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_SHADINGRATE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_SHADINGRATE"]/*' />
/// <unmanaged>D3D_NAME_SHADINGRATE</unmanaged> /// <unmanaged>D3D_NAME_SHADINGRATE</unmanaged>
Shadingrate = 24, ShadingRate = 24,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_CULLPRIMITIVE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_CULLPRIMITIVE"]/*' />
/// <unmanaged>D3D_NAME_CULLPRIMITIVE</unmanaged> /// <unmanaged>D3D_NAME_CULLPRIMITIVE</unmanaged>
Cullprimitive = 25, CullPrimitive = 25,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_TARGET"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_TARGET"]/*' />
/// <unmanaged>D3D_NAME_TARGET</unmanaged> /// <unmanaged>D3D_NAME_TARGET</unmanaged>
Target = 64, Target = 64,
@@ -873,15 +879,6 @@ public enum Name : int
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_INNER_COVERAGE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D_NAME_INNER_COVERAGE"]/*' />
/// <unmanaged>D3D_NAME_INNER_COVERAGE</unmanaged> /// <unmanaged>D3D_NAME_INNER_COVERAGE</unmanaged>
InnerCoverage = 70, InnerCoverage = 70,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D12_NAME_BARYCENTRICS"]/*' />
/// <unmanaged>D3D12_NAME_BARYCENTRICS</unmanaged>
D3D12_NAME_BARYCENTRICS = 23,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D12_NAME_SHADINGRATE"]/*' />
/// <unmanaged>D3D12_NAME_SHADINGRATE</unmanaged>
D3D12_NAME_SHADINGRATE = 24,
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_NAME::D3D12_NAME_CULLPRIMITIVE"]/*' />
/// <unmanaged>D3D12_NAME_CULLPRIMITIVE</unmanaged>
D3D12_NAME_CULLPRIMITIVE = 25,
} }
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_RESOURCE_RETURN_TYPE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_RESOURCE_RETURN_TYPE"]/*' />
@@ -1054,6 +1051,7 @@ public enum InterpolationMode : int
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_PARAMETER_FLAGS"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_PARAMETER_FLAGS"]/*' />
/// <unmanaged>D3D_PARAMETER_FLAGS</unmanaged> /// <unmanaged>D3D_PARAMETER_FLAGS</unmanaged>
[Flags]
public enum ParameterFlags : int public enum ParameterFlags : int
{ {
/// <include file='../Direct3D.xml' path='doc/member[@name="D3D_PARAMETER_FLAGS::D3D_PF_NONE"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="D3D_PARAMETER_FLAGS::D3D_PF_NONE"]/*' />
@@ -1242,12 +1240,12 @@ public unsafe partial struct ID3DDestructionNotifier : ID3DDestructionNotifier.I
/// <include file='../Direct3D.xml' path='doc/member[@name="ID3DDestructionNotifier::RegisterDestructionCallback"]/*' /> /// <include file='../Direct3D.xml' path='doc/member[@name="ID3DDestructionNotifier::RegisterDestructionCallback"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(3)] [VtblIndex(3)]
public HResult RegisterDestructionCallback(PFN_DESTRUCTION_CALLBACK callbackFn, void* pData, uint* pCallbackID) public HResult RegisterDestructionCallback(delegate* unmanaged[Stdcall]<void*, void> callbackFn, void* pData, uint* pCallbackID)
{ {
#if NET6_0_OR_GREATER #if NET6_0_OR_GREATER
return ((delegate* unmanaged<ID3DDestructionNotifier*, PFN_DESTRUCTION_CALLBACK, void*, uint*, int>)(lpVtbl[3]))((ID3DDestructionNotifier*)Unsafe.AsPointer(ref this), callbackFn, pData, pCallbackID); return ((delegate* unmanaged<ID3DDestructionNotifier*, delegate* unmanaged[Stdcall]<void*, void>, void*, uint*, int>)(lpVtbl[3]))((ID3DDestructionNotifier*)Unsafe.AsPointer(ref this), callbackFn, pData, pCallbackID);
#else #else
return ((delegate* unmanaged[Stdcall]<ID3DDestructionNotifier*, PFN_DESTRUCTION_CALLBACK, void*, uint*, int>)(lpVtbl[3]))((ID3DDestructionNotifier*)Unsafe.AsPointer(ref this), callbackFn, pData, pCallbackID); return ((delegate* unmanaged[Stdcall]<ID3DDestructionNotifier*, delegate* unmanaged[Stdcall]<void*, void>, void*, uint*, int>)(lpVtbl[3]))((ID3DDestructionNotifier*)Unsafe.AsPointer(ref this), callbackFn, pData, pCallbackID);
#endif #endif
} }

View File

@@ -122,8 +122,10 @@ public enum SwapEffect : int
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FLAG"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FLAG"]/*' />
/// <unmanaged>DXGI_SWAP_CHAIN_FLAG</unmanaged> /// <unmanaged>DXGI_SWAP_CHAIN_FLAG</unmanaged>
[Flags]
public enum SwapChainFlags : int public enum SwapChainFlags : int
{ {
None = 0,
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FLAG::DXGI_SWAP_CHAIN_FLAG_NONPREROTATED"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_SWAP_CHAIN_FLAG::DXGI_SWAP_CHAIN_FLAG_NONPREROTATED"]/*' />
/// <unmanaged>DXGI_SWAP_CHAIN_FLAG_NONPREROTATED</unmanaged> /// <unmanaged>DXGI_SWAP_CHAIN_FLAG_NONPREROTATED</unmanaged>
NonPrerotated = 1, NonPrerotated = 1,
@@ -270,8 +272,10 @@ public enum ComputePreemptionGranularity : int
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS"]/*' />
/// <unmanaged>DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS</unmanaged> /// <unmanaged>DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS</unmanaged>
[Flags]
public enum MultiplaneOverlayYcbcrFlags : int public enum MultiplaneOverlayYcbcrFlags : int
{ {
None = 0,
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS::DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS::DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE"]/*' />
/// <unmanaged>DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE</unmanaged> /// <unmanaged>DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE</unmanaged>
YcbcrFlagNominalRange = 1, YcbcrFlagNominalRange = 1,
@@ -372,8 +376,10 @@ public enum HdrMetadataType : int
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OFFER_RESOURCE_FLAGS"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OFFER_RESOURCE_FLAGS"]/*' />
/// <unmanaged>DXGI_OFFER_RESOURCE_FLAGS</unmanaged> /// <unmanaged>DXGI_OFFER_RESOURCE_FLAGS</unmanaged>
[Flags]
public enum OfferResourceFlags : int public enum OfferResourceFlags : int
{ {
None = 0,
/// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OFFER_RESOURCE_FLAGS::DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT"]/*' /> /// <include file='../Dxgi.xml' path='doc/member[@name="DXGI_OFFER_RESOURCE_FLAGS::DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT"]/*' />
/// <unmanaged>DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT</unmanaged> /// <unmanaged>DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT</unmanaged>
AllowDecommit = 1, AllowDecommit = 1,

View File

@@ -12,9 +12,6 @@ public static unsafe class Program
{ {
public static void Main() public static void Main()
{ {
string test = StringUtilities.GetString(new sbyte[] { (sbyte)'A', (sbyte)'B', (sbyte)'C' });
test = StringUtilities.GetString(new ushort[] { 'A', 'B', 'C' });
using ComPtr<IDXGIFactory1> factory = default; using ComPtr<IDXGIFactory1> factory = default;
HResult hr = CreateDXGIFactory1(__uuidof<IDXGIFactory4>(), (void**)&factory); HResult hr = CreateDXGIFactory1(__uuidof<IDXGIFactory4>(), (void**)&factory);