• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#version 450 core
2
3#extension GL_EXT_spirv_intrinsics: enable
4
5#define GL_AMD_shader_explicit_vertex_parameter 1
6
7spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4992)
8in vec2 gl_BaryCoordNoPerspAMD;
9spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4993)
10in vec2 gl_BaryCoordNoPerspCentroidAMD;
11spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4994)
12in vec2 gl_BaryCoordNoPerspSampleAMD;
13spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4995)
14in vec2 gl_BaryCoordSmoothAMD;
15spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4996)
16in vec2 gl_BaryCoordSmoothCentroidAMD;
17spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4997)
18in vec2 gl_BaryCoordSmoothSampleAMD;
19spirv_decorate (extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 11, 4998)
20in vec3 gl_BaryCoordPullModelAMD;
21
22#define __explicitInterpAMD spirv_decorate(extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], 4999)
23
24spirv_instruction(extensions = ["SPV_AMD_shader_explicit_vertex_parameter"], set = "SPV_AMD_shader_explicit_vertex_parameter", id = 1)
25float interpolateAtVertexAMD(float interpolant, uint vertexIdx);
26
27layout(location = 0) in __explicitInterpAMD float floatIn;
28layout(location = 0) out float floatOut;
29layout(location = 1) out vec2 vec2Out;
30
31void main()
32{
33    floatOut = interpolateAtVertexAMD(floatIn, 1);
34    vec2Out = gl_BaryCoordNoPerspAMD + gl_BaryCoordNoPerspCentroidAMD + gl_BaryCoordNoPerspSampleAMD +
35              gl_BaryCoordSmoothAMD + gl_BaryCoordSmoothCentroidAMD + gl_BaryCoordSmoothSampleAMD +
36              gl_BaryCoordPullModelAMD.xy;
37}
38