public static IComObject <ID3D11Buffer> CreateBuffer(this ID3D11Device device, D3D11_BUFFER_DESC desc, D3D11_SUBRESOURCE_DATA?initialData = null) { if (device == null) { throw new ArgumentNullException(nameof(device)); } using (var mem = new ComMemory(initialData)) { device.CreateBuffer(ref desc, mem.Pointer, out var buffer).ThrowOnError(); return(new ComObject <ID3D11Buffer>(buffer)); } }
public static IComObject <ID3D11Buffer> CreateBuffer(this IComObject <ID3D11Device> device, D3D11_BUFFER_DESC desc, D3D11_SUBRESOURCE_DATA?initialData = null) => CreateBuffer(device?.Object, desc, initialData);