mirror of
https://github.com/izzy2lost/WeeU.git
synced 2026-07-06 00:19:59 -07:00
Disable unsupported features
This commit is contained in:
@@ -276,7 +276,10 @@ void VulkanRenderer::GetDeviceFeatures()
|
||||
cemuLog_log(LogType::Force, "Vulkan: present_wait extension: {}", (pwf.presentWait && pidf.presentId) ? "supported" : "unsupported");
|
||||
m_featureControl.deviceFeatures.geometry_shader = physicalDeviceFeatures2.features.geometryShader;
|
||||
m_featureControl.deviceFeatures.logic_op = physicalDeviceFeatures2.features.logicOp;
|
||||
|
||||
m_featureControl.deviceFeatures.sampler_anisotropy = physicalDeviceFeatures2.features.samplerAnisotropy;
|
||||
m_featureControl.deviceFeatures.occlusion_query_precise = physicalDeviceFeatures2.features.occlusionQueryPrecise;
|
||||
m_featureControl.deviceFeatures.depth_clamp = physicalDeviceFeatures2.features.depthClamp;
|
||||
m_featureControl.deviceFeatures.vertex_pipeline_stores_and_atomics = physicalDeviceFeatures2.features.vertexPipelineStoresAndAtomics;
|
||||
/* Get Vulkan device properties and limits */
|
||||
VkPhysicalDeviceFloatControlsPropertiesKHR pfcp{};
|
||||
prevStruct = nullptr;
|
||||
@@ -465,12 +468,12 @@ VulkanRenderer::VulkanRenderer()
|
||||
VkPhysicalDeviceFeatures deviceFeatures = {};
|
||||
|
||||
deviceFeatures.independentBlend = VK_TRUE;
|
||||
deviceFeatures.samplerAnisotropy = VK_TRUE;
|
||||
deviceFeatures.samplerAnisotropy = m_featureControl.deviceFeatures.sampler_anisotropy;
|
||||
deviceFeatures.imageCubeArray = VK_TRUE;
|
||||
deviceFeatures.geometryShader = m_featureControl.deviceFeatures.geometry_shader;
|
||||
deviceFeatures.logicOp = m_featureControl.deviceFeatures.logic_op;
|
||||
deviceFeatures.occlusionQueryPrecise = VK_TRUE;
|
||||
deviceFeatures.depthClamp = VK_TRUE;
|
||||
deviceFeatures.occlusionQueryPrecise = m_featureControl.deviceFeatures.occlusion_query_precise;
|
||||
deviceFeatures.depthClamp = m_featureControl.deviceFeatures.depth_clamp;
|
||||
deviceFeatures.depthBiasClamp = VK_TRUE;
|
||||
if (m_vendor == GfxVendor::AMD)
|
||||
{
|
||||
@@ -479,7 +482,7 @@ VulkanRenderer::VulkanRenderer()
|
||||
}
|
||||
if (m_featureControl.mode.useTFEmulationViaSSBO)
|
||||
{
|
||||
deviceFeatures.vertexPipelineStoresAndAtomics = true;
|
||||
m_featureControl.mode.useTFEmulationViaSSBO = deviceFeatures.vertexPipelineStoresAndAtomics = m_featureControl.deviceFeatures.vertex_pipeline_stores_and_atomics;
|
||||
}
|
||||
|
||||
void* deviceExtensionFeatures = nullptr;
|
||||
|
||||
@@ -462,6 +462,10 @@ private:
|
||||
{
|
||||
bool geometry_shader;
|
||||
bool logic_op;
|
||||
bool sampler_anisotropy;
|
||||
bool occlusion_query_precise;
|
||||
bool depth_clamp;
|
||||
bool vertex_pipeline_stores_and_atomics;
|
||||
} deviceFeatures;
|
||||
|
||||
struct
|
||||
|
||||
Reference in New Issue
Block a user