Merge pull request #1223 from cdavis5e/occlusion-query-rewrite
MVKQueryPool: Totally rework the way occlusion queries work.
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
index bdcbe15..5dde5d0 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
@@ -1396,7 +1396,6 @@
_metalFeatures.multisampleArrayTextures = true;
_metalFeatures.events = true;
_metalFeatures.textureBuffers = true;
- _metalFeatures.quadPermute = true;
_metalFeatures.simdPermute = true;
}
@@ -1405,6 +1404,7 @@
_metalFeatures.stencilFeedback = true;
_metalFeatures.depthResolve = true;
_metalFeatures.stencilResolve = true;
+ _metalFeatures.quadPermute = true;
_metalFeatures.simdReduction = true;
}
@@ -1412,13 +1412,13 @@
_metalFeatures.mslVersionEnum = MTLLanguageVersion2_2;
_metalFeatures.maxQueryBufferSize = (256 * KIBI);
_metalFeatures.native3DCompressedTextures = true;
- _metalFeatures.renderWithoutAttachments = true;
if ( mvkOSVersionIsAtLeast(mvkMakeOSVersion(10, 15, 6)) ) {
_metalFeatures.sharedLinearTextures = true;
}
if (supportsMTLGPUFamily(Mac2)) {
_metalFeatures.nativeTextureSwizzle = true;
_metalFeatures.placementHeaps = mvkGetMVKConfiguration()->useMTLHeap;
+ _metalFeatures.renderWithoutAttachments = true;
}
}