Я пытался создать контекст D3D11 в виртуальной машине B1s Azure для рендеринга в растровое изображение без цепочки обмена. Неудивительно, что мне не удалось создать аппаратный контекст. Тем не менее, я нахожу странным, что я также не могу использовать драйвер WARP, так как он не требует наличия какого-либо графического процессора. Я использую SharpDX. Следующая ошибка не работает на виртуальной машине Azure, но работает на настольном компьютере под управлением Win10 и на сервере под управлением Win Server 2016.
var device = new SharpDX.Direct3D11.Device(
SharpDX.Direct3D.DriverType.Warp,
DeviceCreationFlags.None,
SharpDX.Direct3D.FeatureLevel.Level_10_0);
Что касается варианта использования виртуальных машин с графическим процессором, мне нужно рендерить только несколько десятков кадров во время относительно простых сцен, и мне не нужна огромная производительность этих виртуальных машин. Также их стоимость на порядки выше, чем у нашей существующей виртуальной машины. Нечто эквивалентное бюджетной графике Intel более чем достаточно.