Improve more D3D11 generation and helper methods.

This commit is contained in:
Amer Koleci
2022-12-29 17:58:35 +01:00
parent 43185286e8
commit ad6909ef04
9 changed files with 110 additions and 50 deletions

View File

@@ -14,7 +14,7 @@
<EnableTrimAnalyzer>true</EnableTrimAnalyzer> <EnableTrimAnalyzer>true</EnableTrimAnalyzer>
<RestoreConfigFile>$(MSBuildThisFileDirectory)NuGet.config</RestoreConfigFile> <RestoreConfigFile>$(MSBuildThisFileDirectory)NuGet.config</RestoreConfigFile>
<VersionPrefix>1.9.6</VersionPrefix> <VersionPrefix>1.9.7</VersionPrefix>
<VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix> <VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix>
<GenerateDocumentationFile>true</GenerateDocumentationFile> <GenerateDocumentationFile>true</GenerateDocumentationFile>

View File

@@ -2409,11 +2409,6 @@ public static class Program
foreach (ApiParameter parameter in method.Params) foreach (ApiParameter parameter in method.Params)
{ {
if (method.Name == "CreateRenderTargetView" && comType.Name == "ID3D12Device")
{
}
GetParameterSignature(api, writer, parameter, GetParameterSignature(api, writer, parameter,
$"{comType.Name}::{method.Name}", $"{comType.Name}::{method.Name}",
out string parameterType, out string parameterType,
@@ -2434,6 +2429,36 @@ public static class Program
{ {
argumentBuilder.Append(" = null"); 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); argumentsTypesBuilder.Append(parameterType);
argumentsNameBuilder.Append(parameterName); argumentsNameBuilder.Append(parameterName);

View File

@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext : ID3D11DeviceContext.Interface
/// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::PSSetShader"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::PSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(9)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::VSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(11)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::GSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(23)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::OMSetBlendState"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(35)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::HSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(60)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::DSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(64)] [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); ((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"]/*' /> /// <include file='../Direct3D11.xml' path='doc/member[@name="ID3D11DeviceContext::CSSetShader"]/*' />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(69)] [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); ((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); void PSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
[VtblIndex(9)] [VtblIndex(9)]
void PSSetShader(ID3D11PixelShader* pPixelShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void PSSetShader(ID3D11PixelShader* pPixelShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(10)] [VtblIndex(10)]
void PSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers); void PSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);
[VtblIndex(11)] [VtblIndex(11)]
void VSSetShader(ID3D11VertexShader* pVertexShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void VSSetShader(ID3D11VertexShader* pVertexShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(12)] [VtblIndex(12)]
void DrawIndexed(uint IndexCount, uint StartIndexLocation, int BaseVertexLocation); 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); void GSSetConstantBuffers(uint StartSlot, uint NumBuffers, ID3D11Buffer** ppConstantBuffers);
[VtblIndex(23)] [VtblIndex(23)]
void GSSetShader(ID3D11GeometryShader* pShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void GSSetShader(ID3D11GeometryShader* pShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(24)] [VtblIndex(24)]
void IASetPrimitiveTopology(Graphics.Direct3D.PrimitiveTopology Topology); 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); void OMSetRenderTargetsAndUnorderedAccessViews(uint NumRTVs, ID3D11RenderTargetView** ppRenderTargetViews, ID3D11DepthStencilView* pDepthStencilView, uint UAVStartSlot, uint NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint* pUAVInitialCounts);
[VtblIndex(35)] [VtblIndex(35)]
void OMSetBlendState(ID3D11BlendState* pBlendState, float* BlendFactor, uint SampleMask); void OMSetBlendState(ID3D11BlendState* pBlendState = default, float* BlendFactor = null, uint SampleMask = 0xffffffff);
[VtblIndex(36)] [VtblIndex(36)]
void OMSetDepthStencilState(ID3D11DepthStencilState* pDepthStencilState, uint StencilRef); 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); void HSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
[VtblIndex(60)] [VtblIndex(60)]
void HSSetShader(ID3D11HullShader* pHullShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void HSSetShader(ID3D11HullShader* pHullShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(61)] [VtblIndex(61)]
void HSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers); 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); void DSSetShaderResources(uint StartSlot, uint NumViews, ID3D11ShaderResourceView** ppShaderResourceViews);
[VtblIndex(64)] [VtblIndex(64)]
void DSSetShader(ID3D11DomainShader* pDomainShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void DSSetShader(ID3D11DomainShader* pDomainShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(65)] [VtblIndex(65)]
void DSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers); 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); void CSSetUnorderedAccessViews(uint StartSlot, uint NumUAVs, ID3D11UnorderedAccessView** ppUnorderedAccessViews, uint* pUAVInitialCounts);
[VtblIndex(69)] [VtblIndex(69)]
void CSSetShader(ID3D11ComputeShader* pComputeShader, ID3D11ClassInstance** ppClassInstances, uint NumClassInstances); void CSSetShader(ID3D11ComputeShader* pComputeShader = null, ID3D11ClassInstance** ppClassInstances = null, uint NumClassInstances = 0);
[VtblIndex(70)] [VtblIndex(70)]
void CSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers); void CSSetSamplers(uint StartSlot, uint NumSamplers, ID3D11SamplerState** ppSamplers);

View File

@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext1 : ID3D11DeviceContext1.Interfa
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" /> /// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(9)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(11)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(23)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(35)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(60)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(64)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(69)] [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); ((delegate* unmanaged[Stdcall]<ID3D11DeviceContext1*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext1*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
} }

View File

@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext2 : ID3D11DeviceContext2.Interfa
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" /> /// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(9)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(11)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(23)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(35)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(60)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(64)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(69)] [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); ((delegate* unmanaged[Stdcall]<ID3D11DeviceContext2*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext2*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
} }

View File

@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext3 : ID3D11DeviceContext3.Interfa
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" /> /// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(9)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(11)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(23)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(35)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(60)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(64)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(69)] [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); ((delegate* unmanaged[Stdcall]<ID3D11DeviceContext3*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext3*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
} }

View File

@@ -125,7 +125,7 @@ public unsafe partial struct ID3D11DeviceContext4 : ID3D11DeviceContext4.Interfa
/// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" /> /// <inheritdoc cref="ID3D11DeviceContext.PSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(9)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.VSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(11)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.GSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(23)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.OMSetBlendState" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(35)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.HSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(60)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.DSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(64)] [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); ((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" /> /// <inheritdoc cref="ID3D11DeviceContext.CSSetShader" />
[MethodImpl(MethodImplOptions.AggressiveInlining)] [MethodImpl(MethodImplOptions.AggressiveInlining)]
[VtblIndex(69)] [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); ((delegate* unmanaged[Stdcall]<ID3D11DeviceContext4*, ID3D11ComputeShader*, ID3D11ClassInstance**, uint, void>)(lpVtbl[69]))((ID3D11DeviceContext4*)Unsafe.AsPointer(ref this), pComputeShader, ppClassInstances, NumClassInstances);
} }

View File

@@ -356,4 +356,40 @@ public static unsafe class ID3D11DeviceExtension
return shader.Move(); 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();
}
} }

View File

@@ -32,13 +32,12 @@ public static unsafe class ID3D11DeviceChildExtensions
{ {
fixed (sbyte* valuePtr = value.GetUtf8Span()) 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 unsafe partial struct ID3D11DeviceChild
{ {
public static ref readonly Guid WKPDID_D3DDebugObjectName public static ref readonly Guid WKPDID_D3DDebugObjectName