mirror of
https://github.com/KhronosGroup/SPIRV-Cross.git
synced 2024-11-14 16:01:07 +00:00
GLSL: Add more test shaders for hit attribute types.
This commit is contained in:
parent
66ec3e3e54
commit
b4dd0b6fb1
@ -0,0 +1,24 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
struct Foo2
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
||||
|
@ -0,0 +1,24 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
struct Foo2
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
||||
|
@ -0,0 +1,11 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
layout(location = 0) rayPayloadInNV vec2 payload;
|
||||
hitAttributeNV vec2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
||||
|
@ -0,0 +1,17 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
||||
|
@ -0,0 +1,24 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
struct Foo2
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
||||
|
@ -0,0 +1,29 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
struct Foo2
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo2 hit;
|
||||
|
||||
void in_function()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
in_function();
|
||||
}
|
||||
|
@ -0,0 +1,11 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
layout(location = 0) rayPayloadInNV vec2 payload;
|
||||
hitAttributeNV vec2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
||||
|
@ -0,0 +1,17 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo
|
||||
{
|
||||
float a;
|
||||
float b;
|
||||
};
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
||||
|
11
shaders/vulkan/rchit/hit_attribute_block.nocompat.vk.rchit
Normal file
11
shaders/vulkan/rchit/hit_attribute_block.nocompat.vk.rchit
Normal file
@ -0,0 +1,11 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo { float a; float b; } payload;
|
||||
hitAttributeNV Foo2 { float a; float b; } hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo { float a; float b; } payload;
|
||||
hitAttributeNV Foo2 { float a; float b; } hit;
|
||||
|
||||
void in_function()
|
||||
{
|
||||
payload.a = hit.a;
|
||||
payload.b = hit.b;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
in_function();
|
||||
}
|
10
shaders/vulkan/rchit/hit_attribute_plain.nocompat.vk.rchit
Normal file
10
shaders/vulkan/rchit/hit_attribute_plain.nocompat.vk.rchit
Normal file
@ -0,0 +1,10 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
layout(location = 0) rayPayloadInNV vec2 payload;
|
||||
hitAttributeNV vec2 hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
12
shaders/vulkan/rchit/hit_attribute_struct.nocompat.vk.rchit
Normal file
12
shaders/vulkan/rchit/hit_attribute_struct.nocompat.vk.rchit
Normal file
@ -0,0 +1,12 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : require
|
||||
|
||||
struct Foo { float a; float b; };
|
||||
|
||||
layout(location = 0) rayPayloadInNV Foo payload;
|
||||
hitAttributeNV Foo hit;
|
||||
|
||||
void main()
|
||||
{
|
||||
payload = hit;
|
||||
}
|
Loading…
Reference in New Issue
Block a user