# C1.Util.DX.Direct3D11.D3D11.CreateDevice

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_Util_DX_Direct3D11_D3D11_CreateDevice_" data-uid="C1.Util.DX.Direct3D11.D3D11.CreateDevice*">CreateDevice Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_Util_DX_Direct3D11_D3D11_CreateDevice_" data-uid="C1.Util.DX.Direct3D11.D3D11.CreateDevice*"></a>
<h4 id="C1_Util_DX_Direct3D11_D3D11_CreateDevice_C1_Util_DX_DXGI_Adapter_C1_Util_DX_Direct3D11_DriverType_System_IntPtr_C1_Util_DX_Direct3D11_DeviceCreationFlags_C1_Util_DX_Direct3D11_FeatureLevel___System_Int32_System_Int32_C1_Util_DX_Direct3D11_Device_C1_Util_DX_Direct3D11_FeatureLevel__C1_Util_DX_Direct3D11_DeviceContext__" data-uid="C1.Util.DX.Direct3D11.D3D11.CreateDevice(C1.Util.DX.DXGI.Adapter,C1.Util.DX.Direct3D11.DriverType,System.IntPtr,C1.Util.DX.Direct3D11.DeviceCreationFlags,C1.Util.DX.Direct3D11.FeatureLevel[],System.Int32,System.Int32,C1.Util.DX.Direct3D11.Device,C1.Util.DX.Direct3D11.FeatureLevel@,C1.Util.DX.Direct3D11.DeviceContext@)">CreateDevice(Adapter, DriverType, IntPtr, DeviceCreationFlags, FeatureLevel[], int, int, Device, out FeatureLevel, out DeviceContext)</h4>
<div class="markdown level1 summary"><p>HRESULT D3D11CreateDevice([In, Optional] IDXGIAdapter* pAdapter,[In] D3D_DRIVER_TYPE DriverType,[In] HINSTANCE Software,[In] D3D11_CREATE_DEVICE_FLAG Flags,[In, Buffer, Optional] const D3D_FEATURE_LEVEL* pFeatureLevels,[In] unsigned int FeatureLevels,[In] unsigned int SDKVersion,[Out, Fast] ID3D11Device** ppDevice,[Out, Optional] D3D_FEATURE_LEVEL* pFeatureLevel,[Out, Optional] ID3D11DeviceContext** ppImmediateContext)</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public static HResult CreateDevice(Adapter adapterRef, DriverType driverType, IntPtr software, DeviceCreationFlags flags, FeatureLevel[] featureLevelsRef, int featureLevels, int sDKVersion, Device deviceOut, out FeatureLevel featureLevelRef, out DeviceContext immediateContextOut)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Shared Function CreateDevice(adapterRef As Adapter, driverType As DriverType, software As IntPtr, flags As DeviceCreationFlags, featureLevelsRef As FeatureLevel(), featureLevels As Integer, sDKVersion As Integer, deviceOut As Device, ByRef featureLevelRef As FeatureLevel, ByRef immediateContextOut As DeviceContext) As HResult</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="C1.Util.DX.DXGI.Adapter.html">Adapter</a></td>
      <td><span class="parametername">adapterRef</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.DriverType.html">DriverType</a></td>
      <td><span class="parametername">driverType</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.intptr">IntPtr</a></td>
      <td><span class="parametername">software</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.DeviceCreationFlags.html">DeviceCreationFlags</a></td>
      <td><span class="parametername">flags</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.FeatureLevel.html">FeatureLevel</a>[]</td>
      <td><span class="parametername">featureLevelsRef</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">featureLevels</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">sDKVersion</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.Device.html">Device</a></td>
      <td><span class="parametername">deviceOut</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.FeatureLevel.html">FeatureLevel</a></td>
      <td><span class="parametername">featureLevelRef</span></td>
      <td></td>
    </tr>
    <tr>
      <td><a class="xref" href="C1.Util.DX.Direct3D11.DeviceContext.html">DeviceContext</a></td>
      <td><span class="parametername">immediateContextOut</span></td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="C1.Util.DX.HResult.html">HResult</a></td>
      <td></td>
    </tr>
  </tbody>
</table>
</div>
