mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-06 01:50:38 +00:00
Fix Vulkan mesh output for tessellated quads
When selecting a draw with a tessellation evaluation shader using layout(quads), RenderDoc would emit an "Unexpected output topology" error. Additional changes: * Fixes a typo in the VK_EXT_transform_feedback name in various debug prints. * Renames the "GS Out" 3D View tab in the Mesh Viewer to "GS/DS Out", to match the corresponding table. This affects all APIs.
This commit is contained in:
committed by
Baldur Karlsson
parent
6f07cc3ac4
commit
cc0069e72f
@@ -568,7 +568,7 @@
|
||||
</widget>
|
||||
<widget class="QWidget" name="gsoutTab">
|
||||
<attribute name="title">
|
||||
<string>GS Out</string>
|
||||
<string>GS/DS Out</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="leftMargin">
|
||||
|
||||
@@ -4659,6 +4659,10 @@ void SPVModule::MakeReflection(GraphicsAPI sourceAPI, ShaderStage stage, const s
|
||||
{
|
||||
patchData.outTopo = Topology::TriangleStrip;
|
||||
}
|
||||
else if(mode.mode == spv::ExecutionModeQuads)
|
||||
{
|
||||
patchData.outTopo = Topology::TriangleList;
|
||||
}
|
||||
else if(mode.mode == spv::ExecutionModeDepthGreater)
|
||||
{
|
||||
for(SigParameter &sig : outputs)
|
||||
|
||||
@@ -2758,7 +2758,7 @@ void VulkanReplay::FetchTessGSOut(uint32_t eventId)
|
||||
if(!ObjDisp(m_Device)->CmdBeginTransformFeedbackEXT)
|
||||
{
|
||||
RDCLOG(
|
||||
"VK_EXT_transform_feedback_extension not available, can't fetch tessellation/geometry "
|
||||
"VK_EXT_transform_feedback extension not available, can't fetch tessellation/geometry "
|
||||
"output");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1173,12 +1173,12 @@ bool WrappedVulkan::Serialise_vkCreateDevice(SerialiserType &ser, VkPhysicalDevi
|
||||
if(supportedExtensions.find(VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME) != supportedExtensions.end())
|
||||
{
|
||||
Extensions.push_back(VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME);
|
||||
RDCLOG("Enabling VK_EXT_transform_feedback_extension");
|
||||
RDCLOG("Enabling VK_EXT_transform_feedback extension");
|
||||
}
|
||||
else
|
||||
{
|
||||
RDCWARN(
|
||||
"VK_EXT_transform_feedback_extension not available, mesh output from "
|
||||
"VK_EXT_transform_feedback extension not available, mesh output from "
|
||||
"geometry/tessellation stages will not be available");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user