diff --git a/data/shaders/deferredshadows/shadow.geom b/data/shaders/deferredshadows/shadow.geom index 04ca7d7e..fdd2dba7 100644 --- a/data/shaders/deferredshadows/shadow.geom +++ b/data/shaders/deferredshadows/shadow.geom @@ -16,6 +16,11 @@ layout (binding = 0) uniform UBO layout (location = 0) in int inInstanceIndex[]; +out gl_PerVertex +{ + vec4 gl_Position; +}; + void main() { vec4 instancedPos = ubo.instancePos[inInstanceIndex[0]]; diff --git a/data/shaders/deferredshadows/shadow.geom.spv b/data/shaders/deferredshadows/shadow.geom.spv index 290cad98..111e9a8b 100644 Binary files a/data/shaders/deferredshadows/shadow.geom.spv and b/data/shaders/deferredshadows/shadow.geom.spv differ diff --git a/deferredshadows/deferredshadows.cpp b/deferredshadows/deferredshadows.cpp index 68cfb362..f49e177a 100644 --- a/deferredshadows/deferredshadows.cpp +++ b/deferredshadows/deferredshadows.cpp @@ -169,17 +169,6 @@ public: // Semaphore used to synchronize between offscreen and final scene rendering VkSemaphore offscreenSemaphore = VK_NULL_HANDLE; - // Device features to be enabled for this example - virtual VkPhysicalDeviceFeatures getEnabledFeatures() - { - VkPhysicalDeviceFeatures enabledFeatures{}; - enabledFeatures.geometryShader = VK_TRUE; - enabledFeatures.shaderClipDistance = VK_TRUE; - enabledFeatures.shaderCullDistance = VK_TRUE; - enabledFeatures.shaderTessellationAndGeometryPointSize = VK_TRUE; - return enabledFeatures; - } - VulkanExample() : VulkanExampleBase(ENABLE_VALIDATION) { enableTextOverlay = true; @@ -196,6 +185,8 @@ public: camera.setPerspective(60.0f, (float)width / (float)height, zNear, zFar); timerSpeed *= 0.25f; paused = true; + // Device features to be enabled for this example + enabledFeatures.geometryShader = VK_TRUE; } ~VulkanExample()