mirror of
https://github.com/amerkoleci/Vortice.Win32.git
synced 2026-01-14 08:06:02 +08:00
Improve more D3D11 generation and helper methods.
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
<EnableTrimAnalyzer>true</EnableTrimAnalyzer>
|
||||
<RestoreConfigFile>$(MSBuildThisFileDirectory)NuGet.config</RestoreConfigFile>
|
||||
|
||||
<VersionPrefix>1.9.6</VersionPrefix>
|
||||
<VersionPrefix>1.9.7</VersionPrefix>
|
||||
<VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix>
|
||||
|
||||
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
||||
|
||||
@@ -2409,11 +2409,6 @@ public static class Program
|
||||
|
||||
foreach (ApiParameter parameter in method.Params)
|
||||
{
|
||||
if (method.Name == "CreateRenderTargetView" && comType.Name == "ID3D12Device")
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
GetParameterSignature(api, writer, parameter,
|
||||
$"{comType.Name}::{method.Name}",
|
||||
out string parameterType,
|
||||
@@ -2434,6 +2429,36 @@ public static class Program
|
||||
{
|
||||
argumentBuilder.Append(" = null");
|
||||
}
|
||||
else if (method.Name.EndsWith("SetShader") && comType.Name.StartsWith("ID3D11DeviceContext"))
|
||||
{
|
||||
if (parameterName.EndsWith("Shader"))
|
||||
{
|
||||
argumentBuilder.Append(" = null");
|
||||
}
|
||||
else if (parameterName == "ppClassInstances")
|
||||
{
|
||||
argumentBuilder.Append(" = null");
|
||||
}
|
||||
else if (parameterName == "NumClassInstances")
|
||||
{
|
||||
argumentBuilder.Append(" = 0");
|
||||
}
|
||||
}
|
||||
else if (method.Name == "OMSetBlendState" && comType.Name.StartsWith("ID3D11DeviceContext"))
|
||||
{
|
||||
if (parameterName == "pBlendState")
|
||||
{
|
||||
argumentBuilder.Append(" = default");
|
||||
}
|
||||
else if (parameterName == "BlendFactor")
|
||||
{
|
||||
argumentBuilder.Append(" = null");
|
||||
}
|
||||
else if (parameterName == "SampleMask")
|
||||
{
|
||||
argumentBuilder.Append(" = 0xffffffff");
|
||||
}
|
||||
}
|
||||
|
||||
argumentsTypesBuilder.Append(parameterType);
|
||||
argumentsNameBuilder.Append(parameterName);
|
||||
|
||||
@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::PSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(9)]
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11PixelShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[9]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pPixelShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -141,7 +141,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::VSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(11)]
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11VertexShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[11]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pVertexShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::GSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(23)]
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11GeometryShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[23]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::OMSetBlendState"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(35)]
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask)
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11BlendState*, float*, uint, void>)(lpVtbl[35]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pBlendState, BlendFactor, SampleMask);
|
||||
}
|
||||
@@ -533,7 +533,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::HSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(60)]
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11HullShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[60]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pHullShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -565,7 +565,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::DSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(64)]
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11DomainShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[64]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pDomainShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::CSSetShader"]/*' />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(69)]
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -979,13 +979,13 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void PSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
|
||||
|
||||
[VtblIndex(9)]
|
||||
void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(10)]
|
||||
void PSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);
|
||||
|
||||
[VtblIndex(11)]
|
||||
void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(12)]
|
||||
void DrawIndexed(uint IndexCount, uint StartIndexLocation, int BaseVertexLocation);
|
||||
@@ -1021,7 +1021,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void GSSetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer** ppConstantBuffers);
|
||||
|
||||
[VtblIndex(23)]
|
||||
void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(24)]
|
||||
void IASetPrimitiveTopology(Graphics.Direct3D.PrimitiveTopology Topology);
|
||||
@@ -1057,7 +1057,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void OMSetRenderTargetsAndUnorderedAccessViews(uint NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, uint UAVStartSlot, uint NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint* pUAVInitialCounts);
|
||||
|
||||
[VtblIndex(35)]
|
||||
void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask);
|
||||
void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff);
|
||||
|
||||
[VtblIndex(36)]
|
||||
void OMSetDepthStencilState(ID3D11DepthStencilState* pDepthStencilState, uint StencilRef);
|
||||
@@ -1132,7 +1132,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void HSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
|
||||
|
||||
[VtblIndex(60)]
|
||||
void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(61)]
|
||||
void HSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);
|
||||
@@ -1144,7 +1144,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void DSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
|
||||
|
||||
[VtblIndex(64)]
|
||||
void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(65)]
|
||||
void DSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);
|
||||
@@ -1159,7 +1159,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
|
||||
void CSSetUnorderedAccessViews(uint StartSlot, uint NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint* pUAVInitialCounts);
|
||||
|
||||
[VtblIndex(69)]
|
||||
void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances);
|
||||
void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
|
||||
|
||||
[VtblIndex(70)]
|
||||
void CSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);
|
||||
|
||||
@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(9)]
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11PixelShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[9]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pPixelShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -141,7 +141,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(11)]
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11VertexShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[11]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pVertexShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(23)]
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11GeometryShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[23]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(35)]
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask)
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11BlendState*, float*, uint, void>)(lpVtbl[35]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pBlendState, BlendFactor, SampleMask);
|
||||
}
|
||||
@@ -533,7 +533,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(60)]
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11HullShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[60]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pHullShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -565,7 +565,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(64)]
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11DomainShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[64]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pDomainShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(69)]
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
|
||||
@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(9)]
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11PixelShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[9]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pPixelShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -141,7 +141,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(11)]
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11VertexShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[11]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pVertexShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(23)]
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11GeometryShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[23]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(35)]
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask)
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11BlendState*, float*, uint, void>)(lpVtbl[35]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pBlendState, BlendFactor, SampleMask);
|
||||
}
|
||||
@@ -533,7 +533,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(60)]
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11HullShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[60]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pHullShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -565,7 +565,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(64)]
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11DomainShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[64]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pDomainShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(69)]
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
|
||||
@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(9)]
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11PixelShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[9]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pPixelShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -141,7 +141,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(11)]
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11VertexShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[11]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pVertexShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(23)]
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11GeometryShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[23]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(35)]
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask)
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11BlendState*, float*, uint, void>)(lpVtbl[35]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pBlendState, BlendFactor, SampleMask);
|
||||
}
|
||||
@@ -533,7 +533,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(60)]
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11HullShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[60]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pHullShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -565,7 +565,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(64)]
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11DomainShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[64]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pDomainShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(69)]
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
|
||||
@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(9)]
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11PixelShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[9]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pPixelShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -141,7 +141,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(11)]
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11VertexShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[11]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pVertexShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -237,7 +237,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(23)]
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11GeometryShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[23]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -333,7 +333,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(35)]
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask)
|
||||
public void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11BlendState*, float*, uint, void>)(lpVtbl[35]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pBlendState, BlendFactor, SampleMask);
|
||||
}
|
||||
@@ -533,7 +533,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(60)]
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11HullShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[60]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pHullShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -565,7 +565,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(64)]
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11DomainShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[64]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pDomainShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
|
||||
/// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
[VtblIndex(69)]
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances)
|
||||
public void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0)
|
||||
{
|
||||
((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
|
||||
}
|
||||
|
||||
@@ -356,4 +356,40 @@ public static unsafe class ID3D11DeviceExtension
|
||||
|
||||
return shader.Move();
|
||||
}
|
||||
|
||||
public static HResult CreateInputLayout<TD3D11Device>(ref this TD3D11Device self,
|
||||
ReadOnlySpan<InputElementDescription> inputElements,
|
||||
ReadOnlySpan<byte> shaderBytecode,
|
||||
ID3D11InputLayout** ppInputLayout)
|
||||
where TD3D11Device : unmanaged, ID3D11Device.Interface
|
||||
{
|
||||
fixed (InputElementDescription* pInputElements = inputElements)
|
||||
fixed (byte* pShaderBytecode = shaderBytecode)
|
||||
{
|
||||
return self.CreateInputLayout(
|
||||
pInputElements, (uint)inputElements.Length,
|
||||
pShaderBytecode, (nuint)shaderBytecode.Length,
|
||||
ppInputLayout);
|
||||
}
|
||||
}
|
||||
|
||||
public static ComPtr<ID3D11InputLayout> CreateInputLayout<TD3D11Device>(ref this TD3D11Device self,
|
||||
ReadOnlySpan<InputElementDescription> inputElements,
|
||||
ReadOnlySpan<byte> shaderBytecode)
|
||||
where TD3D11Device : unmanaged, ID3D11Device.Interface
|
||||
{
|
||||
using ComPtr<ID3D11InputLayout> inputLayout = default;
|
||||
|
||||
fixed (InputElementDescription* pInputElements = inputElements)
|
||||
fixed (byte* pShaderBytecode = shaderBytecode)
|
||||
{
|
||||
ThrowIfFailed(self.CreateInputLayout(
|
||||
pInputElements, (uint)inputElements.Length,
|
||||
pShaderBytecode, (nuint)shaderBytecode.Length,
|
||||
inputLayout.GetAddressOf())
|
||||
);
|
||||
}
|
||||
|
||||
return inputLayout.Move();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,13 +32,12 @@ public static unsafe class ID3D11DeviceChildExtensions
|
||||
{
|
||||
fixed (sbyte* valuePtr = value.GetUtf8Span())
|
||||
{
|
||||
_ = self.SetPrivateData(ID3D11DeviceChild.D3DDebugObjectNameGuid, (uint)value.Length, valuePtr);
|
||||
_ = self.SetPrivateData(ID3D11DeviceChild.D3DDebugObjectNameGuid, (uint)value!.Length, valuePtr);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public unsafe partial struct ID3D11DeviceChild
|
||||
{
|
||||
public static ref readonly Guid WKPDID_D3DDebugObjectName
|
||||
|
||||
Reference in New Issue
Block a user