diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm index 1d08714..ac74668 100644 --- a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm +++ b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm @@ -503,7 +503,10 @@ void MVKPhysicalDevice::initFeatures() { _features.robustBufferAccess = true; // XXX Required by Vulkan spec _features.fullDrawIndexUint32 = true; _features.independentBlend = true; + _features.geometryShader = true; // XXX Required by DXVK for D3D10 + _features.tessellationShader = true; // XXX Required by DXVK for D3D11 _features.sampleRateShading = true; + _features.logicOp = true; // XXX Required by DXVK for D3D11.1 _features.depthBiasClamp = true; _features.fillModeNonSolid = true; _features.largePoints = true; @@ -517,6 +520,7 @@ void MVKPhysicalDevice::initFeatures() { _features.shaderUniformBufferArrayDynamicIndexing = true; _features.shaderStorageBufferArrayDynamicIndexing = true; _features.shaderClipDistance = true; + _features.shaderCullDistance = true; // XXX Required by DXVK for 10level9 _features.shaderInt16 = true; _features.multiDrawIndirect = true;