Merge pull request #733 from amdrexu/bugfix
SPV: Unexpected declarations of capabilities from NV extensions.
This commit is contained in:
commit
cb34945e3b
@ -635,23 +635,32 @@ spv::BuiltIn TGlslangToSpvTraverser::TranslateBuiltInDecoration(glslang::TBuiltI
|
|||||||
builder.addCapability(spv::CapabilityShaderViewportMaskNV);
|
builder.addCapability(spv::CapabilityShaderViewportMaskNV);
|
||||||
return spv::BuiltInViewportMaskNV;
|
return spv::BuiltInViewportMaskNV;
|
||||||
case glslang::EbvSecondaryPositionNV:
|
case glslang::EbvSecondaryPositionNV:
|
||||||
|
if (!memberDeclaration) {
|
||||||
builder.addExtension(spv::E_SPV_NV_stereo_view_rendering);
|
builder.addExtension(spv::E_SPV_NV_stereo_view_rendering);
|
||||||
builder.addCapability(spv::CapabilityShaderStereoViewNV);
|
builder.addCapability(spv::CapabilityShaderStereoViewNV);
|
||||||
|
}
|
||||||
return spv::BuiltInSecondaryPositionNV;
|
return spv::BuiltInSecondaryPositionNV;
|
||||||
case glslang::EbvSecondaryViewportMaskNV:
|
case glslang::EbvSecondaryViewportMaskNV:
|
||||||
|
if (!memberDeclaration) {
|
||||||
builder.addExtension(spv::E_SPV_NV_stereo_view_rendering);
|
builder.addExtension(spv::E_SPV_NV_stereo_view_rendering);
|
||||||
builder.addCapability(spv::CapabilityShaderStereoViewNV);
|
builder.addCapability(spv::CapabilityShaderStereoViewNV);
|
||||||
|
}
|
||||||
return spv::BuiltInSecondaryViewportMaskNV;
|
return spv::BuiltInSecondaryViewportMaskNV;
|
||||||
case glslang::EbvPositionPerViewNV:
|
case glslang::EbvPositionPerViewNV:
|
||||||
|
if (!memberDeclaration) {
|
||||||
builder.addExtension(spv::E_SPV_NVX_multiview_per_view_attributes);
|
builder.addExtension(spv::E_SPV_NVX_multiview_per_view_attributes);
|
||||||
builder.addCapability(spv::CapabilityPerViewAttributesNV);
|
builder.addCapability(spv::CapabilityPerViewAttributesNV);
|
||||||
|
}
|
||||||
return spv::BuiltInPositionPerViewNV;
|
return spv::BuiltInPositionPerViewNV;
|
||||||
case glslang::EbvViewportMaskPerViewNV:
|
case glslang::EbvViewportMaskPerViewNV:
|
||||||
|
if (!memberDeclaration) {
|
||||||
builder.addExtension(spv::E_SPV_NVX_multiview_per_view_attributes);
|
builder.addExtension(spv::E_SPV_NVX_multiview_per_view_attributes);
|
||||||
builder.addCapability(spv::CapabilityPerViewAttributesNV);
|
builder.addCapability(spv::CapabilityPerViewAttributesNV);
|
||||||
|
}
|
||||||
return spv::BuiltInViewportMaskPerViewNV;
|
return spv::BuiltInViewportMaskPerViewNV;
|
||||||
#endif
|
#endif
|
||||||
default: return spv::BuiltInMax;
|
default:
|
||||||
|
return spv::BuiltInMax;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -835,6 +835,7 @@ const char* CapabilityString(int info)
|
|||||||
case 5254: return "ShaderViewportIndexLayerNV";
|
case 5254: return "ShaderViewportIndexLayerNV";
|
||||||
case 5255: return "ShaderViewportMaskNV";
|
case 5255: return "ShaderViewportMaskNV";
|
||||||
case 5259: return "ShaderStereoViewNV";
|
case 5259: return "ShaderStereoViewNV";
|
||||||
|
case 5262: return "PerViewAttributesNV";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,7 @@ Warning, version 450 is not yet complete; most version-specific features are pre
|
|||||||
// Id's are bound by 37
|
// Id's are bound by 37
|
||||||
|
|
||||||
Capability Tessellation
|
Capability Tessellation
|
||||||
Capability Bad
|
Capability PerViewAttributesNV
|
||||||
Extension "SPV_NVX_multiview_per_view_attributes"
|
Extension "SPV_NVX_multiview_per_view_attributes"
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
|
@ -6,7 +6,7 @@ Warning, version 450 is not yet complete; most version-specific features are pre
|
|||||||
// Id's are bound by 29
|
// Id's are bound by 29
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Bad
|
Capability PerViewAttributesNV
|
||||||
Extension "SPV_NVX_multiview_per_view_attributes"
|
Extension "SPV_NVX_multiview_per_view_attributes"
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
|
Loading…
x
Reference in New Issue
Block a user