renderer_vulkan: Trim down used features

This commit is contained in:
GPUCode
2023-01-19 23:37:02 +02:00
parent 9f385ddeb7
commit e9ccd51286
2 changed files with 4 additions and 3 deletions

View File

@@ -561,15 +561,12 @@ bool Instance::CreateDevice() {
}, },
vk::PhysicalDeviceFeatures2{ vk::PhysicalDeviceFeatures2{
.features{ .features{
.robustBufferAccess = features.robustBufferAccess,
.geometryShader = features.geometryShader, .geometryShader = features.geometryShader,
.dualSrcBlend = features.dualSrcBlend,
.logicOp = features.logicOp, .logicOp = features.logicOp,
.depthClamp = features.depthClamp, .depthClamp = features.depthClamp,
.largePoints = features.largePoints, .largePoints = features.largePoints,
.samplerAnisotropy = features.samplerAnisotropy, .samplerAnisotropy = features.samplerAnisotropy,
.fragmentStoresAndAtomics = features.fragmentStoresAndAtomics, .fragmentStoresAndAtomics = features.fragmentStoresAndAtomics,
.shaderStorageImageMultisample = features.shaderStorageImageMultisample,
.shaderClipDistance = features.shaderClipDistance, .shaderClipDistance = features.shaderClipDistance,
}, },
}, },

View File

@@ -47,7 +47,9 @@ static std::string GetVertexInterfaceDeclaration(bool is_output) {
out += R"( out += R"(
out gl_PerVertex { out gl_PerVertex {
vec4 gl_Position; vec4 gl_Position;
#if defined(GL_EXT_clip_cull_distance)
float gl_ClipDistance[2]; float gl_ClipDistance[2];
#endif
}; };
)"; )";
} }
@@ -1587,12 +1589,14 @@ void main() {
gl_Position = vert_position; gl_Position = vert_position;
gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0;
#if defined(GL_EXT_clip_cull_distance)
gl_ClipDistance[0] = -vert_position.z; // fixed PICA clipping plane z <= 0 gl_ClipDistance[0] = -vert_position.z; // fixed PICA clipping plane z <= 0
if (enable_clip1) { if (enable_clip1) {
gl_ClipDistance[1] = dot(clip_coef, vert_position); gl_ClipDistance[1] = dot(clip_coef, vert_position);
} else { } else {
gl_ClipDistance[1] = 0; gl_ClipDistance[1] = 0;
} }
#endif
} }
)"; )";